mikrocontroller.net

Forum: FPGA, VHDL & Co. Pyratone II - Release


Autor: Jürgen S. (engineer) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe mich nun entschlossen, Teile der von mir entwickelten 
Audio-Plattform für B2C verfügbar zu machen. Kosten und Lizenmodell 
müssen noch erörtert werden. Erwerbsfähig sind schon mal alle für mich 
selber erstellten VHDL-Cores und Module, soweit diese nicht unter NDA 
liegen oder anderen rechtlichen Beschränkungen unterliegen.

Um das Ganze praktisch handhabbar zu machen, wird es ein release der 
Pyratone-Engine mit einer festen Konfiguration als komplettes bit-file 
geben, dass in ein konkretes Modul compiliert werden kann. Da Ich 
(momentan noch nicht) in den Geräteverkauf einsteigen möchte, werde Ich 
auf ein käufliches FPGA-Modul zurückgreifen, das entsprechend 
vorkonfiguriert ist und das als eval board für Bastler mitgeliefert 
wird. Das ist dann quasi der Datenträger :-)

Was derjenige sich daraus dann baut, ist seine Sache. Das System ist 
vielfältig verwendbar und skalierbar, siehe unten.

Um die IOs zu bedienen, kann man auf die einschlägigen I2S-Converter 
zurückgreifen oder sich eigene Hardware bauen. Zudem plane ich eine 
modulares Platinensystem:

Autor: Jürgen S. (engineer) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier ist der Link:

Beitrag "Analog-Audio-Video-IO-board für FPGAs und MCUs"


Als kleinen Vorgeschmack zur P2-DSP-Engine:

***********************************************************************

Je nach FPGA-Größe (ganz steht es noch nicht fest), sind mehrere 
Instrumente parallel möglich. Geplant sind 2 bis 4. Momentan sind 2 
verschiedene FPGAs im Fokus.

Alle, der bis zu geschätzt 4 Instrumente sind jeweils 64-fach parallel 
polyphon und gfs auch 64 fach multitimbral, d.h. man kann sie anspielen, 
wie ein Klavier. Jede Taste hat 4 parallele Oszillatoren, 6 Klangpfade 
mit Oberwellen und Subwellen und eigene LFOs. Jede Taste hat auch einen 
eigenen ADSR-Generator. Filter haben ebenfalls alle eigene ADSR und LFO 
je Taste! Es laufen also etwa 4000 Oszillatoren gleichzeitig!

Die 4 Instrumente können addiert und gelayert werden, sodass man mit 2 
Händen z.B. die rechte Hand mit der Linken zu einem 128 Manual 
kombiniert und ein komplettes 88er KB fahren kann. Mit Überlappung!

Das System versteht Fast MIDI 2000, kann aber auch mit normalem MIDI 
beschickt werden. Geplant ist auch der Anschluss von USB-Systemen, die 
speziell für Synthesizer entwickelt wurden, wie spezielle breath 
controller, das System von "touch keys", das Roli Seaboard und solche 
analogen Systeme wie Thermine.

Zudem gibt es eine UART zum Kontrollieren der Patches und Einstellungen.

Dazu gibt es einen Soundprozessor und einen MIDI-Prozessor mit ARPs, gfs 
auch dem ALGORYTHM-SYSTEM und den speziellen MIDI-Synch-Mechanismen aus 
dem Drumcomputer wie z.B. "BEATMORPH".

Aufgrund der Einzigartigkeit der Klangsynthese mit Echtzeiteingriff in 
alle Parameter sind Auflösungen bis 768kHz und Effektvariationen im 
Microsekundenbereich möglich. Damit sind Stereoszenen und Klangeffekte 
realisierbar, wie sie mit üblichen Stereo-DSPs nicht nachgestellt werden 
können. Ich bilde z.B. die Wirkung überlagerter Mikrofonsysteme nach AB 
und ORTF in Echtzeit nach.

Mehrere solcher Module sind kaskadierbar, um die Stimmen zu erhöhen. 
Zudem plane Ich langfristig ein Release des Real Pianos und der 
PLD-Orgel.

***********************************************************************

Das von mir favorisierte FPGA-board hat ein kleines RAM, das für Samples 
taugt und sogar ein 1920x1080 Bild speichern kann. Damit wären mit 3 
solcher FPGAs sogar ein eigener MIDI-Prozessor und HDMI-Grafik mit 
Zugriff durch Arduino oder Raspberry möglich. Ohnehin wird es beim Thema 
USB-MIDI wohl auf eine solche Lösung mit RAS/PI oder Arduino als 
Frontend hinauslaufen. Das USB-MIDI wird  ein zentrales Thema sein, weil 
nur damit entsprechende Bandbreiten externer Geräte zu generieren sind, 
um das System auch zu füttern.

: Bearbeitet durch User
Autor: Strubi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Jürgen,

das klingt spannend, obwohl ich noch nicht ganz durchblicke und die 
Historie nicht kenne, da sind ja sicher einige Jahre rein.
Der Fokus ist mir nicht ganz klar, soll das ein fertiges Synthese-Modul 
mit Midi rein->Audio raus werden, oder ein Community-Ding, an dem jeder 
bisschen rumbastelt?
Prinzipiell würde ich (vom Standpunkt des Musikers) bevorzugen, wenn das 
Ding nicht zuviel kann, aber das was es kann, gut kann. Ich wäre da 
primär nur User, ausser, es gibt ein Effektmodul, was 56k-Assembly 
versteht :-)
Sonst schreckt mich ehrlich gesagt auf den ersten Blick ab, was das Ding 
alles kann/können soll.

Ist gedacht, dass jemand Code für deinen Audio-DSP entwickeln kann? Oder 
ist das eine pure HDL-Sache?
Primär wäre natürlich eine modulare High-End Audio-Plattform schon cool, 
aber es gibt da die beiden Dimensionen:

- Musiker: Zahlen gut Geld für High End, aber es muss fertig sein
- Bastler: Zahlen nix und wollen alles selberfrickeln

Wie sollen die bedient werden?

und ganz konkret, welches Evalboard müsste ich mir kaufen, um z.B. deine 
Synthese zu evaluieren?

Grüsse,

- Strubi

Autor: Jürgen S. (engineer) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, wie üblich, MIDI-Notennummer mit Velocity und Start on/off rein und 
Audio raus. Bei den jeweils gültigen Parametern.

Benutzt wird entweder ein physischer MIDI-Eingang oder alternativ eine 
Spannung rein und in eine Frequenz wandeln lassen, also der klassische 
Gitarreneingang. Langfristig soll es einen VST-Plugin geben, der MIDI in 
mein MIDI 2000 über S/PDIF sendet, damit alle Stimmen vom Rechner aus 
ansprechbar sind.

Es ist alles stimm- und wählbar, wie man es von Synthies her kennt 
(global tuning, fine tuning, ocatave und midi shift, doubling, layering, 
arpeggio etc), von mir aus kann man auch einen Werckmeister oder 
Kirnberger reinprogrammieren und Cembalo spielen. Momentan ist 
hartverdrahtet aber er baut angesichts der Frequenzauflösung von 24 Bit 
ohnehin ein RAM, von daher wird es ein Blockram werden mit 
überschreibbarer Stimmung. Auch und vor allem wird es die von mir 
entwickelte 196/185 Schwebstimmung geben, sowie ein gespreiztes Piano! 
Das alles mit einer sehr hohen Genauigkeit von Bruchteilen von Cents.

Klangsynthese und Oszis werde Ich noch auf der Webseite genauer 
beschreiben, ist aber umfangreich. Im Prinzip müsste man alles, was so 
klassischerweise an Synthisounds generierbar ist, hinpatchen können. 
Inklusive SID, 8 BIt PCM und Murmelakkorde.

Alle Parameter haben 10 statt 7 bit und können von MIDI oder UART sowohl 
gesetzt als auch gelesen werden. Praktisch alles an verfügbaren 
Parametern für die Synthese wie Filtergüte, Frequenzen, 
Mischverhältnisse, Harmonische Anteile ist automatisierbar, hat also 
einen eigenen LFO und eine eigene Hüllkurve. Man kann z.B. die Obertöne 
und Verzerranteile getrennt automatisieren und einen gitarrenähnlichen 
Ton, der gezupft wird, in einen Flächensound überführen.

Und alles wirkt jeweils für jeden Ton einzeln! Wenn also ein Akkord mit 
3 Fingern gedrückt wird und dann schnell zwei Noten wechseln, laufen für 
die 5 Noten rund 30 ADSRs und LFOs parallel los und formen den Klang. 
Das Zeitverhalten der LFOs und ADSRs wird jeweils mit >10 Bit und 
16384kHz aufgelöst, d.h. man kann sie rund 10mal feiner einstellen, als 
an üblichen Synths.


>FPGA
Es wird wahrscheinlich ein Steckmodul von Trenz.

>Evaluieren
Ich werde eine selbstspielende Demo machen, ähnlich wie die Spartan 3 
PLD Orgel fürs Digilent.


> Basteln
Basteln mit Elektonik, ja - man darf sich anschließen was man will. Im 
einfachsten Fall das im parallelen thread diskutierte Audio-Video-IO 
board. Dann braucht man nur noch Strom und ein Gehäuse. Momentan arbeite 
Ich selber über I2S und verwende Chinamodule, um auf S/PDIF oder RCA 
Analog zu übersetzen. Die liegen bei 8-17 Euro das Stück. Ich habe das 
IO-board jetzt initiiert, weil Ich viele Kanäle brauche und die 8x 
S/PDIF lieber intern machen möchte, da billiger und weniger Pins 
benötigend.

Etwaiges eigenes Basteln mit dem VHDL oder virtuelles Umdrahten kann man 
abhaken. Das Ding ist schon in der monophonen Version nur mit Doku und 
viel Simulation weiterzuentwickeln und umzuverdrahten.
In der multiplex-Version für mehrere Kanäle sind so viele 
Randbedingungen gleichzeitig einzuhalten, dass da erstens kaum was geht 
und zweitens keiner durchblickt. An zwei Stellen kommen von mir 
erfundene Designprinzipien wie die 3D-pipeline und die roll-off-FSM zum 
Einsatz, die selbst ein geübter FPGA-Entwickler nicht nachbaut, ohne, 
dass Ich es ihm detailliert verklickere, was da passiert und wie die 
Zeitebenen konkret in diesem System verhakt sind. Das Excel, in dem das 
Timing geplant wird, hat 8 Seiten! Zudem steckt in der Art der 
Klangsynthese ein nicht unerhebliches tontechnisches Fachwissen aus dem 
Bereich Tonaufnahme und Mikrofonie aus dem sich viele Dinge ableiten. 
Das zu verbessern wird anspruchsvoll :-)

>Was Besonderes?
Ja. Insbesondere die Stereoplazierung ist einzigartig und mit normalem 
Equipment nicht zu machen, es sei denn, man nimmt 64 Soundmodule und 
einen 64zu8 Mixer, der Panning und samplegenaue Delays auf allen Kanälen 
kann und versteht etwas von der SATB-Stützmikrofonie bei Chören und 
Orchestern und deren Randerscheinungen, wie man da wo welche 
Mikrocharakteristik benutzt um welchen Effekt zu erzeugen.

Mit einem klassischen Synth mit nur 2 oder 4 Ausgängen ist der Käse 
komplett gegessen. Das ist auch der Grund, warum der Mixer mit dem 
Reverb ins FPGA muss. Ansonsten müssten hunderte Leitungen im Sampletakt 
auf ein anderes board. Auch mit TDM wären das noch zu viele und würden 
mir die Pins wegsaugen. Es sollen ja Module kaskadiert werden und für 
die fertigen 8 Kanäle kann Ich 4xTDM mit LVDS auf S/PDIF Takt fahren, 
passt bestens.

Ich sehe definitiv nicht, dass man das selber umbauen könnte, es gingen 
höchstens nur Details und dann passen ja sofort die Patches nicht mehr. 
Ich kenne ja das Problem der routbaren Synths: Jeder findet irgendwann 
mal "seine" Einstellung und belässt sie, damit wenigstens die eigenen 
mühsam erarbeiteten patches laufen.

Was Ich aber sehe: Um USB zu machen, wird wohl ein RasPI mit ins Spiel 
kommen, der die MIDI-Daten empfängt und weiter gibt. Der bekommt 
kurzerhand noch eine UART und kann damit auch den Synth komplett 
steuern. An der Stelle können sich die Mikrocontrollerentwickler 
austoben.

Und letzlich kann man den I2S-Datenstrom, der faktisch das Audio 
darstellt, abfangen und in eigene FPGAs umleiten. Es kommen 96kHz mit 24 
Bit auf 8 Kanälen. Dazu vielleicht schon Folgendes:

Ich habe das schon vor Jahren so gemacht und öfters in den 
Keyboardgruppen kommuniziert:

Man nimmt 4 Klangerzeuger mit Stereoausgang, füttert sie mit dem 
gleichen MIDI und legt sie tontechnisch auf die Seiten eines Quadrats 
mit den Punkten 1,2,3.4
"Front" spielt dann auf den Kanälen 1 und 2,  "Left" auf 2 und 3 etc...

So füllt man einen ganzen Raum. Das Ganze dann in die Höhe und nach 
Unten und man hat den 8 Punkt Würfel. Abzudecken mit bis zu 12 
Stereobasen. Angedacht sind im Modul 4 Instrumente mit 4 mal Short-Delay 
und 4mal Hall. Das wären dann die Zwölf. Damit spielst Du einen Akkord 
und er schwebt 3D durch den Raum, je nachdem wie der Frequenzverlauf und 
Amplitudenverlauf des Patches ist.

Sobald das board gebaut ist, gibt es reale Sounds mit Video über YT. 
Dann kannst Du Dir ja überlegen, ob Du es haben willst:- Am Design muss 
dann noch etwas gefeilt werden, besonders der PDM-Wandler muss angepasst 
werden.

Ich werde bis dahin schon mal eine Unterseite machen, wo man Interesse 
bekunden kann. Momentan habe Ich aus den Musikforen etwa 10-20 konkrete 
Interessenten.

Autor: Duke Scarring (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jürgen S. schrieb:

> Damit spielst Du einen Akkord
> und er schwebt 3D durch den Raum, je nachdem wie der Frequenzverlauf und
> Amplitudenverlauf des Patches ist.
Klingt spannend, aber...

> Abzudecken mit bis zu 12
> Stereobasen.
... 24 Lautsprecher? Selbst wenn man mit der Hälfte auskommt, der WAF 
dürfe umgekehrt proportional zur Zahl der Lautsprecher sein. Man 
bräuchte einen extra Abhörraum dafür, oder?
Wenn ds Ding spielt, würde ich gern mal probehören kommen.

Duke

Autor: Ordner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Duke Scarring schrieb:

> ... 24 Lautsprecher? Selbst wenn man mit der Hälfte auskommt, der WAF
> dürfe umgekehrt proportional zur Zahl der Lautsprecher sein. Man
> bräuchte einen extra Abhörraum dafür, oder?

Bau es doch in dein Auto, das ist doch WAF-freie Zone ?!

Autor: Jürgen S. (engineer) Benutzerseite
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
>24 Lautsprecher
Das muss man natürlich nicht machen. Wie in jedem anderen Klangerzeuger 
mit mehreren Ausgängen auch - kannst Du natürlich alles auf eine 
Stereomain mischen. Aber:

In den Instrumenten werden unterschiedliche Klangfarben je nach 
Verfügbarkeit der Resourcen parallel gehalten und erst "am Ende" auf 
virtuelle Ausgänge geschoben. Minimal kommen damit alle Sounds eines 
Instruments auf 2 Stereokanälen raus, die man bei mehreren (4) in einem 
Quadrat verschalten kann oder im Raum platziert - angedeutet durch 4 
parallele Geräte mit jeweils L/R-Ausgang. Sowas kann man bisher auch 
schon machen und Ich habe das mit bis zu 8 Lautsprechern gemacht. Ist 
halt ein Instrument für live.

Nun wird aber noch mehr gehen:

Ich werde wohl wenigstens (Zahl der restlichen Multiplier) 8 Ausgänge 
pro Line haben. Das wären dann schon mal 8 Lautsprecher allein durch ein 
einziges Instrument! Da die Klänge selber schon auf der Stereobasis 
verteilt sind, kann man durch leicht unterschiedliches Zeitverhalten 
oder programmierte Verschiebung die Klänge als Ganzes oder Teile davon 
durch den Raum bewegen.
Da das Ganze nun auch in Echtzeit modifizierbar ist, könnte man die 8 
Lautsprecher auch noch gegen die realen Ausgänge rotieren und damit das 
gesamte Instrument im Raum drehen. Man kann sogar einzelne Samples 
einzelner Instrumente woanders hinschicken und damit den Klang durch den 
Raum morphen und verschmieren. Das geht mit keinem anderen Instrument 
oder DSP weltweit. Die arbeiten alle auf der Stereosumme und könnten 
immer nur einen einzigen monohponen Kanal deratig manipulieren.

Beim MIDI ist es ähnlich flexibel:

Es kommen bis zu 4 MIDI-Kanäle, also Keyboards oder Senquencer rein.
Per Splitpunkte werden bis zu 16 Keyboardflächen definiert, die sich 
überlappen können, d.h. man spielt gfs mit einigen Akkorden 2 Fächen 
gleichzeitig.

Die 16 Flächen werden wieder zu 4 virtuellen Keyboards addiert, wobei 
man durch Konvergenz Manuale bis 127 Tasten herstellen kann, um Klaviere 
mit 88 Tasten abzudecken, auch wenn man nur 2 kleine Tastaturen hat.
Durch Divergenz kann man mit einem Manual wiederum zweimanualige Orgeln 
abzudecken, auch wenn man nur eine Tastatur hat. Die Manuale sind in den 
Tönen und Oktaven verschiebbar können MIDI-Töne generieren, die es 
normal nicht gibt. Es spielen damit bis zu 4 Personen gleichzeitig. 
Hinzu kommen MIDI-Echos, Arpeggios etc, die selber spielen. Das Ganze 
geht dann auf die Soundflächen mit den 64 MIDI Tönen mit fester Frequenz 
von denen Ich einen abzweigen werde, für einen monophonen Eingang 
beliebiger Frequenz.
(In aktuellen P3-Version sind es sogar 128 Töne mit 96 MIDI Noten + 32 
freie Kanäle).

Im kompakten Modul werden es 64 Töne, d.h. man kann sich mit einem oder 
zwei Keyboads spielen und sich eine Orgel mit 4 Manualen a 63 Tönen oder 
2 Manualen a 126 Tönen zusammenschrauben und hat noch 4 Monophone Synths 
frei.

In Verbindung mit dem Audiolayering bietet dieses Midilayering Optionen, 
die mit keiner bisherigen Hardware darstellbar sind. Nicht nur 
quantitativ und kostentechnisch nicht, sondern überhaupt gar nicht :D

Die Problematik ist jetzt nur, eine Architektur zu schaffen, die 
einerseits so flexibel ist, dass sie entsprechend umzuprogrammieren ist 
und dennoch nicht zu unübersichtlich wird, dass sie noch einsetzbar 
bleibt.

Ich habe übrigens einen Weg gefunden, die 8 dedizierten Klangkanäle in 
voller Auflösung in einen anderen FPGA zu transportieren und dort die 
Zeit-Flächenstruktur zu duplizieren abzubilden, die nötig ist, um das 
3D-Soundrouting zu vollziehen. Kostet einiges an BRAM, damit könnte man 
aber den Effektprozessor in einem zweiten FPGA abbilden - inklusive 
Morphfunktion auch für externe Quellen und meinem 
Multichannel-Audio-EQ-Mastering-Kompressor.

Damit wird es wahrscheinlich auf eine Lösung mit 2 FPGA-Steckboards 
hinauslaufen. Zusammen mit einem IO-Board sind das unter 300,- Kosten 
für einen Gegenwert von 3-4 aktuellen Synthesisern + Audio-DSPs. Der 
Benutzer kann sich dann aussuchen, ob er einen billigen AD-Wandler von 
M-Audio oder eine Rosetta dranhängt.

Autor: Strubi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin,

klingt mir alles ehrlich gesagt zu sehr nach Verkomplizierung für den 
Anwender.

Was mir noch mit Fragezeichen ins Auge sticht, ist die Vernetzung, d.h. 
wie sieht's mit Ethernet (Midi und Soundübertragung) aus?
Wenn ich in dem Zusammenhang RasPi lese, stellen sich mir die 
Nackenhaare auf. High end würde ich nicht mit Frickelkram kombinieren...

Aber mal eine konkrete Anregung: Bevor das Ding zuviel kann oder zig 
Leute ihre Wunschliste posten (ich nehme mich grade selber an der Nase), 
schau doch mal, ob Du einen der "Grossen Kleinen" mit ins Boot kriegst, 
z.B. die innovativen Recklinghausener (Kemper). Wenn dann ein paar 
Tester der einschlägigen Magazine die Sache auch cool finden, kannst du 
dich im Markt plazieren.
Die Studiosachen wie Effekte durch den Raum schwurbeln lassen sind 
sicher nerdy, aber da sehe ich jetzt weniger den Markt, das gibt es 
schon auf DSP-Basis in teuren PAs. Da klaut man dir höchstens noch ne 
Idee..
Habe mal vor Jahren mit nem Chorus rumexperimentiert, der auf 6 Kanälen 
(Standard-DSP-Evalboard) rausging. Das wabert schon lustig rum, aber 
wollte im Proberaum niemand haben, hätte man als Preset vielleicht 
gerade in ein Mischpult aus der anderen Liga einbauen müssen, und auch 
dann wär's Spielerei, die eher in die Film-Soundeffekt-Liga gehört. Mehr 
Lautsprecher braucht's IMHO nicht, da mit Phasenlage sehr viel erreicht 
wird. Übrigens geht sowas mit 2xStereo schon bei uralten Yamaha SY85.

Was sonst ein einfaches Expander-Modul angeht: Schlussendlich machen's 
bei mir (als Hobby-Keyboarder) die Sounds. Also kompliziertes Splitting 
und Rerouting braucht m.W. seltenst wer, pragmatisch stellt man einfach 
zwei Keyboards hin. Die meisten passen nicht mal ihre Presets an.

Insofern würde ich die Funktionalität zwischen Zielpublikum 
Studiotechniker und Musiker auftrennen. Den Musiker interessiert nicht, 
ob FPGA oder DSP drinsteckt. Muss vor allem haptischen Bedingungen 
genügen. Wenn dann die Sounds "geil" sind, ist der Preis auch fast egal.

Das dritte Zielpublikum "High end affiner Tüftler" dürfte mit FPGA 
schwer zu adressieren sein, weil es genügend DSP-Kits gibt, die für die 
meisten Low-End-Zwecke (16 bit/48 khz) ähnliches schaffen, vielleicht 
nicht in der von dir beschriebenen technischen Perfektion, aber das 
spielt typischerweise keine Rolle. Wie gesagt würde ich als Tüftler nur 
auf sowas umsteigen, wenn es einen Motorola 56002 in mehrfacher Instanz 
emulieren kann (mist, da war sie schon, die Wunschliste).

Nu genug Sermon, ich warte mal auf ne Demo...

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn ich mir Deine Website anschaue und überlege, wieviele Mann-Jahre 
Arbeit alleine in den Algorithmen stecken, solltest du das ganze an 
Yamaha/Casio/Roland verkaufen. Im Idealfall hast Du bereits einige 
zugehörige Patente eingereicht.
Ich sehe hier ein ähnliches Problem wie z.B. bei der Bildverarbeitung 
(Stichwort Mustererkennung, Szenenanalyse): Ein irrer Aufwand, dessen 
Ergebnisse von den Endnutzern kaum gewürdigt (sprich: bezahlt) werden 
und sich finanziell nur trägt, wenn es in Massenprodukte einfließt.

Autor: Jürgen S. (engineer) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Markus schrieb:
> solltest du das ganze an Yamaha/Casio/Roland verkaufen.
Angebote gab es, allerdings nicht in dem Rahmen, der den Aufwand bezahlt 
hätte. Da hätte die Firma dann einen super Schnitt gemacht. Immerhin 
sind da geschätzt 2 Mannjahre an Arbeit drin, um es allein zu 
programmieren. Ganz abgesehen, vom Knowhow.

> Im Idealfall hast Du bereits einige zugehörige Patente eingereicht
Eher nicht. Das was das Gerät ausmacht, ist vor allem Musik- und 
Tonknowhow, sowie die Art der Realisierung. Würde man Patente 
einreichen, würde man investieren und andere könnten es kostenlos 
kopieren. Wie willst Du ein Patent verteidigen, nur aufgrund des 
Verdachtes, dass irgendjemand was rausbringt, was ähnlich arbeitet?

Autor: Mac Gyver (macgyver0815)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jürgen S. schrieb:
> Wie willst Du ein Patent verteidigen, nur aufgrund des
> Verdachtes, dass irgendjemand was rausbringt, was ähnlich arbeitet?


Zumal man da i.d.R. auch Wege findet es leicht anders zu implementieren 
und dann ist das Patent eh für die Katz.
Und man muss auch erstmal das Geld haben gegen größere Firmen vorzugehen 
- wenn sich das durch mehrere Instanzen zieht wirds schnell sehr teuer 
und man muss das über mehrere Jahre durchhalten.

Autor: Jürgen S. (engineer) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Strubi schrieb:
> klingt mir alles ehrlich gesagt zu sehr nach Verkomplizierung für den
> Anwender.
Eigentlich nicht: MIDI rein, Audio raus.

> Was mir noch mit Fragezeichen ins Auge sticht, ist die Vernetzung, d.h.
> wie sieht's mit Ethernet (Midi und Soundübertragung) aus?
Wer's braucht. Dafür gibt es ja Lösungen. Wir reden hier ja von der 
Klangsynthese.

> Wenn ich in dem Zusammenhang RasPi lese
Das ist nur eine Idee. Es geht mir darum eine einfache kompakte 
Recheneinheit zu haben, die GUIs verarbeiten kann und die Sounds / 
Presets speichert.




> schau doch mal, ob Du einen der "Grossen Kleinen" mit ins Boot kriegst,
> z.B. die innovativen Recklinghausener (Kemper).
Access sind die letzten, die Unterstützung bei der Gestaltung eines 
Synths benötigen. Die Konzepte, die man in DSPs realisieren kann 
unterscheiden sich auch stark von dem was mit FPGAs geht.

> Wenn dann ein paar Tester der einschlägigen Magazine die Sache auch cool
> finden, kannst du dich im Markt plazieren.
warten wir's ab.

> Die Studiosachen wie Effekte durch den Raum schwurbeln lassen sind
> sicher nerdy, aber da sehe ich jetzt weniger den Markt, das gibt es
> schon auf DSP-Basis in teuren PAs.
Richtig: "teuer" und dafür nur zweikanalig. Wenn Du die Samples in 
Echtzeit auf der Stereobasis verteilst, kannst Du das individuell 
regeln. Quasi jedes Sample auf einem eigenen Kanal. In DSPs unmöglich. 
Nicht bei der Kanalzahl.

>Übrigens geht sowas mit 2xStereo schon bei uralten Yamaha SY85.
Ich weiß sehr wohl, was alte und aktuelle Geräte können und DAS können 
sie bei Weitem nicht.

> Was sonst ein einfaches Expander-Modul angeht: Schlussendlich machen's
> bei mir (als Hobby-Keyboarder) die Sounds.
Richtig und dazu gehört deren Wirkung im Raum. Wenn Du alles auf einen 
Punkt mischst, bist Du begrenzt.

> auf sowas umsteigen, wenn es einen Motorola 56002 in mehrfacher Instanz
> emulieren kann
Macht keinen Sinn. DSP-Systeme gibt es ja schon und mit solchen Geräten 
wie der Chameleon oder heute Mini-DSP ist das ja da. Aber da geht eben 
nur sequenziell.

Autor: Martin S. (strubi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin,


Jürgen S. schrieb:
>> schau doch mal, ob Du einen der "Grossen Kleinen" mit ins Boot kriegst,
>> z.B. die innovativen Recklinghausener (Kemper).
> Access sind die letzten, die Unterstützung bei der Gestaltung eines
> Synths benötigen. Die Konzepte, die man in DSPs realisieren kann
> unterscheiden sich auch stark von dem was mit FPGAs geht.
>

Ich meinte eher, dass Du Dir Unterstützung holst bzw. Synergien nutzt, 
die du von den Grossen im Geschäft sicher nicht kriegen kannst.

>> Wenn dann ein paar Tester der einschlägigen Magazine die Sache auch cool
>> finden, kannst du dich im Markt plazieren.
> warten wir's ab.
>
>> Die Studiosachen wie Effekte durch den Raum schwurbeln lassen sind
>> sicher nerdy, aber da sehe ich jetzt weniger den Markt, das gibt es
>> schon auf DSP-Basis in teuren PAs.
> Richtig: "teuer" und dafür nur zweikanalig. Wenn Du die Samples in
> Echtzeit auf der Stereobasis verteilst, kannst Du das individuell
> regeln. Quasi jedes Sample auf einem eigenen Kanal. In DSPs unmöglich.
> Nicht bei der Kanalzahl.
>

Not buying it. Die üblichen Verdächtigen machen genau sowas mit DSPs. 
Die Sounds können beliebig mit Phasenverzögerung irgendwo hingeroutet 
werden, das machte schon unser Kirchenmischpult aus den 90ern..dürfte 
eine Kanalmatrix von 4 auf 12 gewesen sein.
Und ein kleiner Audio-DSP kostet gerade mal 3 USD in Stückzahlen...
Aus ganz pragmatischen Gründen macht es mehr Sinn, auf dem Mixer viele 
DSPs zu verteilen als alles in ein dickes FPGA zu packen.


>>Übrigens geht sowas mit 2xStereo schon bei uralten Yamaha SY85.
> Ich weiß sehr wohl, was alte und aktuelle Geräte können und DAS können
> sie bei Weitem nicht.
>

Mein oller SY85 kann es immerhin mit 4 Kanälen. Und typischerweise 
reichen mir zwei. Mehr Korrektur brauch ich nicht, und wenn, läufts 
übers PA.

>> Was sonst ein einfaches Expander-Modul angeht: Schlussendlich machen's
>> bei mir (als Hobby-Keyboarder) die Sounds.
> Richtig und dazu gehört deren Wirkung im Raum. Wenn Du alles auf einen
> Punkt mischst, bist Du begrenzt.
>

Einverstanden. Aber mehr als 4 Lautsprecher für einen MIDI->Audio 
Expander? Das ist ein bisschen Overkill, sogar schon für einen digitalen 
Leslie.

>> auf sowas umsteigen, wenn es einen Motorola 56002 in mehrfacher Instanz
>> emulieren kann
> Macht keinen Sinn. DSP-Systeme gibt es ja schon und mit solchen Geräten
> wie der Chameleon oder heute Mini-DSP ist das ja da. Aber da geht eben
> nur sequenziell.

Ich sag mal so: Es gibt für mich bisher auch kaum einen Grund, das alles 
in ein FPGA zu packen, wenn ein Array vernetzte DSPs dasselbe liefert, 
der Aufwand ist bei purer HDL definitiv höher, wenngleich man da auch 
mit der Arithmetik mehr machen kann und was Clocksync angeht mehr 
Freiheiten hat.

Ich sehe den Sinn beim FPGA ansich auch nur in einer weiterverwertbaren 
DSP engine, allenfalls ein network-on-chip-Ansatz oder einfaches 
Sound-Routing, wo es einfach ne Menge Muxer braucht.
Der Punkt ist v.a. der: Wenn Du der einzige bist, der den hart 
gegossenen HDL-Code im Griff hat, und es fallen per Zufall 16t aus dem 
Himmel auf dich drauf, ist das alles nicht wiederverwertbar...

So wie ich verstehe, soll es aber nur bedingt ein Community-Projekt 
werden. Dann also in dem Sinne: Net viel schwätze, back doch einfach 
deine besten Sounds auf einen Papilio-Pro-Klone mit direkt eindesignten 
Codecs und ab ins Gehäuse. Das Verkaufsargument "FPGA inside" und welche 
technischen Fakten auch immer spielen dann da weniger ne Rolle als 3-4 
einfach gute Effekte/Sounds. Hauptsache, der Produktfokus und die 
Innovation ist klar erkennbar.

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jürgen S. schrieb:
> Angebote gab es, allerdings nicht in dem Rahmen, der den Aufwand bezahlt
> hätte.

???? Einer meiner Kommilitonen entwickelte sein eigenes MP3-Format und 
hätte es für einen (sehr) niedrigen sechsstelligen Betrag verkaufen 
können. Gut, das war zur Jahrtausendwende, also zu Zeiten des 
Internetbooms, trotzdem hätte ich hier ähnliches erwartet.

Autor: Jürgen S. (engineer) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Martin S. schrieb:
> Not buying it. Die üblichen Verdächtigen machen genau sowas mit DSPs.
> das machte schon unser Kirchenmischpult aus den 90ern..dürfte

Sei Dir mal sicher, dass Ich als musikalischer Nutzer solcher Systeme 
sowie als Mitentwickler auch industrieller DSP-Systeme und inzwischen 
>15 Jahren Erfahrung im Bereich digitaler Signalverarbeitung mit DSPs, 
PLDs und FPGAs sehr genau weiß, was mit DSPs geht und was nicht und dies 
in qualitativer und quantitativer Hinsicht. Ich selbst habe an mehreren 
Stellen bereits meine Haltung kundgetan, was Ich von FPGAs im Bereich 
Musikerzeugung halte und wie groß Ich den Markt dafür einschätze:

Beitrag "Re: Ideen für FPGA-Projekte?"

Aber:

Es gibt eben eine Reihe von Dingen, die eben nur damit gehen, weil Du 
die Parallelität der Daten über mehrere Zeitebenen hinweg benötigst. Und 
es gibt quantitative und kostentechnische Aspekte: Wenn der Klang im 
FPGA vorliegt, ist es ein Leichtes, "Musik-DSP-Effekte" hinzuzufügen und 
dies sogar preiswert(er):

Du kannst mit jeder Verzögerungslinie, ganz gleich wie sie gebaut ist, 
immer nur einen Kanal individuell verzögern. Eine Deformation eines 
Frequenzspektrums, wie es durch die schnelle Verschiebung von Objekten 
zustande kommt, verbunden mit deren Bewegung und Objekten auf mehreren 
Kanälen erfordert jeweils eine eigene Delayline, es sei denn man fast 
was zusammen, oder kann es implizit lösen, z.B. durch ein generisches 
Modell, welches das schon bei der Erzeugung kann. Ansonsten muss man 
brav jeden Kanal (je Stimme, jeden Klanganteil, jedes Sample etc..) 
einzeln anfassen, wobei Ich im FPGA einfachere Möglichkeiten und 
zugleich mehr Optionen habe, das zu realiseren. Ein solches Delay kostet 
im FPGA in der longitudinalen Achse der Klangverzögerung für Kanäle und 
Frequenzen entweder gar nichts (da nur Parameter für Phasen und 
Speicheradressen anders gesetzt werden), oder es kostet auf der 
transversalen Achse (Verteilung der Kanalgruppen und Reverb) ein 
ausdrückliches RAM, als etwas BRAM + MUL + Register. Anteilig sind das 
aber auch nur jeweils Hundertstel der gesamten Resourcen. Wenn Ich 
überschlage, kostet der 8 Kanal-Router inklusive Matrix für alle 64x8 
Kanäle inkusive Stereoplacer zusammen keine 3 Euro, leistet aber 
rechnerisch schon das 10fache.

Dann denke mal an sub sample Verschiebung. Die kann Ich im FPGA ganz 
einfach diskret bewerkstelligen, weil Ich 1000 ccs pro Sample habe. Das 
ist ungefiltert schon genauer, als ein DSP das mit bezahlbarem 
resampling hinbekommen kann. Ich brauche nur ein Filter gegen den glitch 
mit gerade 16 TAPs. Ein DSP müsste wenigstens Wurzel(16000) = 512 TAPs 
mit FIR berechnen, um ähnlich präzise zu verschieben.

Die Filterrei ist ein gutes Bespiel: Ich rechne für full range 
mindestens mit 8192 TAPs. Das sind bei 192kHz und Lamba/4  6Hz als 
niedrigste Frequenz, die noch ausreichend gut prozessiert wird. Das 
kostet mich 8 lanes mit jeweils Multiplieren und BRAM im Gegenwert von 
ebenfalls noch unter 3,00! Demgegenüber bräuchte es einen DSP, der z.B. 
auf 4,5GHz läuft und alle 3 Takte eine komplette Operation wegschaufelt. 
Das ist selbst für eine aktuelle Intel-CPU Vollauslastung!

Dann der Audio-2-MIDI-Converter: Den habe Ich nochmals angepackt und 
verbessert. Die Details möchte Ich dazu nicht publizieren, aber wie man 
meiner Website entnehmen kann, hatte die allererste Version von vor 
einer Dekade schon den Vorteil, dass sie das MIDI kurzerhand umgehen und 
den Synth direkt antreiben kann - (nur) so kann man auch tiefste 
Bassfrequenzen schnell genug erfassen und Klangsynthese betreiben.

Auf dem klassischen Wege, so wie man es momentan kaufen kann, braucht es 
immer einen ausreichend langen Zeitraum von z.B: 20 ms, um tiefe Töne zu 
erfassen, sie sicher der MIDI-Note zuzuordnen, einen Controllerwert für 
die Deviation zu definieren und dann beides per USB zu verschippern, 
damit ein Synthie es dann auspackt, interpretiert und verspätet in einen 
Ton umwandelt.

Das Ding wird es als Beipack geben. Wer nicht Gitarre spielen kann, 
singt einfach rein oder pfeifft.


Markus schrieb:
> ???? Einer meiner Kommilitonen entwickelte sein eigenes MP3-Format und
> hätte es für einen (sehr) niedrigen sechsstelligen Betrag verkaufen
Für den Preis hätte Ich das verkauft :)

Wenn das Gebot aber leicht unter einem Jahresumsatz liegt, Ich aber 
etliches mehr investiert habe, bleibt die Entwicklung eben bei mir :-)
Da verkaufe Ich lieber weiter Teile und Teilknowhow als Auftrag.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.