Neue FM-Synths?

Moogulator schrieb:
Bin auch noch skeptisch, dass das wirklich tiefe FM ist mit dem, was man so mit 4-6OPs machen kann. Aber naja, es ist trotzdem nicht schlecht, dass zumindest minimal 2 OSCs irgendwie verzwurbelbar sind - Sehe da auch nur SHP und GAIN. Hmm..

Ich denke mal, daß das noch nicht richtig ausgereizt ist. V.A.S.T ist ja schon sowas wie ein digitales Modularsystem, und wenn man da was nachbauen will, ist das in diesem Fall doch einiges an Aufwand, man sieht ja die ganzen Handzettel, die er sich da gemacht hat.
 
Software: Sonic Charge Synplant. Sehr ungewöhnlich Bedienung, die man aber auch beiseite lassen und direkt in die FM Synthese eintauchen kann mit vielen vielen Parametern.

Ich hab mir mal das Blockschaltbild im Manual angeschaut. Mir scheint das eher ein substraktiver Aufbau zu sein mit zusätzlichen FM-Elementen. Zwei Oszillatoren, davon einer mit FM im Audiobereich, zwei Filter, Mixer, Verstärker. Keine 4 bis 8 FM-Operatoren mit variabler Verschaltung. Aber vielleicht übersehe ich da was.

Superspannend finde ich aber das Bedienungskonzept. Das System macht mir verschiedene Vorschläge, in welche Richtung der Sound sich entwickeln kann. Wenn ich einen annehme, gibt es von da aus neue Vorschläge ("Zweige") zur Weiterentwicklung. So ne Art intelligente Random-Funktion. Wenn's mir gefällt, dann gehts weiter in die Richtung, ansonsten hör' ich mir die anderen Zweige an.

Der Hammer wäre, sowas auf "richtige" FM-Synthese mit sechs oder acht Operatoren zu übertragen. Fragt sich nur, ob das funktionieren würde.
 
VAST hat aber nur eher wenige Module, daher ist es schon begrenzt, so weit ich weiss. Hab nie einen K besessen und mich damals für Emu entschieden.
ja, denke auch, dass das hier keine Algos sind und keine große Verknüpfung aber FM mit Samples ist schon ne Nummer, das können ja noch immer eher wenige, VSynth und Rolands Sampler Serie waren das.

Aber ich würde sagen - gesucht wird ein bedienbarer FM Synth, das geht aus meiner Sicht defintiv eh in eine andere Richtung als K und Co.
Hatte das ja schon hier und da fallen gelassen, das geht mit Knopf und schlauer Steuerung, man muss nicht einmal wirklich VIELE Knöpfe aufführen, nicht mehr als für einen besseren VA.
 
Keine Ahnung Synplant jetzt 2/4/6 etc. OP-FM ist oder ein Substraktiver/FM Hybrid, die Bedienung ließe sich IMHO auf jeden Fall auch mit einem Dutzend Drehregler und fünf sechs Knöpfen in Hardware realisieren (das wachsen von Sounds geht ja über Midi auch per Mod Wheel). Synplant als Hardwarekiste, mit 16 stimmiger Polyphonie, und vielleicht sogar Multitimbralität...in einem Microkorg Format und Arpeggiator...für 250.-...würde ich sofort kaufen. :)

Yamaha hat mit seinen Portasound PSS 380/390 in den 80er (leider nur ein 4OP FM Gerät) etwas ähnliches versucht (Schieberegler):

 
Ich sag am besten nochmal Nord Modular und G2, das sind imgrunde auch selbst gestaltete FM Synthesizer mit Knöpfen. Oder die Macroknöpfe von FM8, die weitgehend dem Dx200 entsprechen, nicht ganz.
 
FM und Samples haben doch vor allem SY77/99 und TG77, nannte sich RCM. Wenn schon die Möglichkeiten von FM nicht ausgereizt sind, dann diese Maschinen erst recht nicht.
 
Ist bekannt, aber das ganze für "heute" also bedienbar und spielbar zu machen - da bremst es noch. Das fänd ich jedenfalls wichtig zu betonen. Die historischen Teile sind sicher rel. bekannt.
 
Das wäre mal was Neues. Ich kenn ja beide, und einfach ist Anders, auch wenn ich die Bedienung meines PC361 einem SY77/99 nach wie vor vorziehe.
 
Man könnte ja auch dies kombinieren, zB das PArameter Set 1x umsetzen mit Endlospots oder aber mit 2 ADSR Schlangen, die zusammen notfalls eine 8fach Parameterfront bilden für Times und auf Knopfdruck für Pegel oder sowas. Das hat der Q doch schon gut vorgemacht. Oder eben in Offset-Manier im Stile FM8.

Wichtig ist nur, dass die Knöpfe sich nicht "verstellen", deshalb wäre ich bei so einer Lösung dann doch ausnahmsweise für Endlospotis, die mehrfach genutzt werden, auch für die OSCs zum stimmen, feinstimmen und so, das ist nicht so riesig viel, dass es die Kosten sprengen würde. Und man braucht zum größten Teil wenige Anzeigen, das könnte man in einem rel. einfachen Display schon unter kriegen. Nur die Verschaltung im Algo müsste man vielleicht mit einer 8x8 Knopftastermatrix herstellen und dann an einem Knpf drehen für den Aufbau.. Also bei 8OPs halt, sonst sinds halt 6. Also sagen wir mal - das sieht nicht schlimmer aus als ein Andromeda oder Q. Ich bin aber sehr dringend für Mehrsegmenthüllkurven, kein 4OP Spardings, denn das ist mir schon etwas zu wenig oft. Loopbare Envs - das ist im DXi schon gut umgesetzt, nur eben leider nur mit 4OP. die Hardware dazu existiert bereits. Korg hat sie auch im Kronos, sogar mit Samples und und und. Also alles schon da.

Die wollen das Risiko nicht und deshalb müssen wir wohl das selbst machen.
 
Ich finde in dieser Hinsicht den Solaris schon recht gelungen, wobei das an ein paar Stellen in sich stimmiger sein dürfte, so von der reinen Bedienung her.
 
Ja, finde auch dass der da gut ist, die Bedienung ist aber definitiv verbesserbar und übersichtlicher zu gestalten. Aber natürlich 4 OSCs.
 
Moogulator schrieb:
Ja, finde auch dass der da gut ist, die Bedienung ist aber definitiv verbesserbar und übersichtlicher zu gestalten. Aber natürlich 4 OSCs.

Huch, wo ist denn mein Posting hin? Offenbar beim Absturz von Tapatalk verschütt gegangen.

Das Konzept mit den Displays pro Funktionseinheit ist schon gut, das mittlere Display dagegen deutlich zu klein und überfrachtet, die Bedienung auch nicht ganz konsistent. Man schiele da mal zu Kurzweil, da wird in den Standardmodi mit dem Dial, Plusminustasten etc die Sounds umgeschaltet, beim Solaris muß man da welche aus den doppelreihigen Encodern bemühen. Wenn schon ein zentrales Display, dann konsequent. Hatte mir da vor Jahren mal einen Entwurf gebaut: großes, quadratisches Display in der Mitte, links/rechts je 4-6 Softbuttons und oben/unten je 4-6 Endlosencoder, dazu an den Ecken des Displays vielleicht noch Knöpfe mit fester Funktionalität wie Enter, etc. In der Displaymitte Infos und Parameter. Hab mal anhand eines Bildes gesehen, daß Wolfgang Palm beim Realizer einen sehr ähnlichen Ansatz verfolgte.
 
Moogulator schrieb:
Kurzweil ist so 90er, ein intuitives Instrument muss das anders umsetzen.

Glaube, Du hattest lange keinen mehr unter den Fingern :) Was ist intuitiver, als wenn Du einen Notenwert für einen Parameter haben willst, die ENTER-Taste gedrückt zu halten und auf die entsprechende Taste am Keyboard zu drücken? Geht genauso mit der Zuweisung von Controllern oder Slidern. Mach das mal bei einem SY99, der ist auch 90er, da liegen einfach Welten dazwischen. Sicher kann man das noch verbessern, aber die grundsätzliche Art und Weise der Bedienung finde ich wirklich gelungen, und ich hatte wirklich auch schon sehr viele Synths.
 
Mit ein paar Tagen Verspätung noch schnell eine Anmerkung zu Kurzweil und FM:

Eigentlich ist die Implementierung recht komplett und kann alles was man von einem FM Synth erwartet, nur Feedback gibt es keins. Da kann man sich allerdings meist drum rum beschummeln, indem man halt direkt noise oder eine angefilterte Säge als Modulator nimmt. Aliasen tut der passende VAST block schon gerne, die Neigung haben aber die Yamaha FM Synthies auch. Ansonsten neigt der Kurz eher zu einem gedämpften, mittigen Klang, der natürlich auch die FM Sounds anfärbt. Ihn richtig glasig bzw. metallisch zu kriegen kann in Arbeit ausarten. Außerdem sind die Hüllkurven halt lahm.

Nachdem vor ein paar Tagen jemand gefragt hat hier nochmal kurz eine Erklärung:
Der Kern eines FM Sounds auf dem Kurz ist der Saw+Shaper Block (ich hab die Abkürzung vergessen und das Ding steht grade nicht zuhause). Dieser Block tut folgendes: Der Eingang wird auf einen Sägezahn drauf addiert und das ganze dann durch einen Sinusshaper geschickt. Dass das dann FM macht ist erst mal nicht intuitiv. Was passiert ist folgendes: Der Sägezahn erzeugt wenn man ihn durch den Shaper schickt einen Sinus mit der Frequenz des Sägezahns. Addiert man nun ein Signal zum Sägezahn wird damit die Phase des Aussgangssinus moduliert. Das ist (angeblich) genau das was Yamaha FM Synthies tun. Die Gain Blöcke dienen eigentlich nur dazu Hüllkurven dranzukleben. Nun mag sich der eine oder andere nicht PC3 Benutzer fragen wie man nun einen vernünftigen FM Algorithmus bauen kann wenn man nur vier Blöcke pro Layer Platz hat. Das schöne an der PC3 ist das man den Ausgang einer Layer wieder in eine andere Layer reinschieben kann. Damit lassen sich schon recht komplexe Sachen bauen. Hässlich wird es nur, wenn man zwei Layer mischen und dann weiterverarbeiten will. Das macht normalerweise Kopfweh.

So, Oberlehrer Modus aus...
Sonstige Anmerkungen:

Meine lieblings knarz FM kommt momentan aus Reaktor. Der FM Oszi, der bei der Ampere Modulsammlung mitkommt klingt toll. Ich hab ihn nicht ernsthaft zerlegt/verstanden, also weiß ich nicht warum das so ist, mein erster Tipp wäre gutes Bandlimiten/Antialiasen. Ist natürlich Software, zählt also nicht wirklich für diesen Thread.

Sonst schraub ich grade gerne FM Sounds mit dem Accelerator. Der hat zwar nur 3 "Operatoren", da die aber kontinuierlich in Wellenform und Symetrie verbiegbar sind geht da schon einiges. Der große Vorteil gegenüber vielen VA Synths ist, das die FM hier als Phasenmodulation (Yamaha style) ausgelegt ist. Damit hat man keine Probleme mit Stimmstabilität. Die vielen und schnellen Hüllkurven helfen natürlich auch. Aliasen tut er auch schön spät. Zudem kann man natürlich Klänge schichten und sind wir ehrlich: Meistens nimmt man die 6-8 Ops doch als parallele Stapel von 2-3 Ops.

Der Blofeld kann das im Prinzip auch alles, aber irgendwie verleitet der mich immer eher dazu kaputte Klänge zu machen. Das ist natürlich toll und manchmal sogar nützlich...
 
Bug2342 schrieb:
Dieser Block tut folgendes: Der Eingang wird auf einen Sägezahn drauf addiert und das ganze dann durch einen Sinusshaper geschickt. Dass das dann FM macht ist erst mal nicht intuitiv. Was passiert ist folgendes: Der Sägezahn erzeugt wenn man ihn durch den Shaper schickt einen Sinus mit der Frequenz des Sägezahns. Addiert man nun ein Signal zum Sägezahn wird damit die Phase des Aussgangssinus moduliert. Das ist (angeblich) genau das was Yamaha FM Synthies tun.

Also im Prinzip zwei addierte Sinus Wellen mit (meist) unterschiedlicher Frequenz, die durch 'nen Shaper geschickt werden?

Meistens nimmt man die 6-8 Ops doch als parallele Stapel von 2-3 Ops.

In der klassischen FM-Synthese, Oldschool DX Sounds machen das gerne, aber wenn man viel mit Waveshaping (fixed Frequency um die 0Hz) arbeitet, hat man gar nicht mehr so viele Operatorene fuer parallele Straenge zur Verfuegung.
 
Summa schrieb:
Also im Prinzip zwei addierte Sinus Wellen mit (meist) unterschiedlicher Frequenz, die durch 'nen Shaper geschickt werden?

Nicht ganz. Ich versuch mal mich klarer auszudrücken:
Am einfachsten stellt man sich den saw+shaper Block als zwei getrennte Blöcke vor, einen "+saw" Block und einen Sinusshaper. Wenn man ein beliebig geformtes Signal in einen Sinusshaper steckt kann man das Signal als Phase interpretieren. In "Zahlen" schaut das dann so aus:

Eingang: f(x)
Ausgang: sin (f(x))

Wenn wir dem Block jetzt erst mal kein Signal geben ist f(x) einfach ein Sägezahn. Wenn die Amplitude des Sägezahns jetzt passend gewählt ist, ist das Ergebnis genau ein Sinus. Wenn wir also Pi als Amplitude annehmen ist es gerade egal ob die Phase unendlich weiter steigt oder bei +Pi auf -Pi zurückgesetzt wird. Damit gilt für den Saw Block in den Shaper:

sin (f(x))=sin(2*Pi*f*t)

Soweit so unspannend...
Wenn man unserem "+saw" Block aber ein Eingangssignal g(t) gibt passiert folgendes:

Vor dem "+saw" Block: g(t)
Nach dem "+saw" Block: g(t)+f(t)
Nach dem Sinusshaper: sin(g(t)+f(t))=sin (2Pi*f*t + g(t))

Und schon steht sie da die Phasenmodulation...

Zwei Sinuse in einen Sinusshaper ist zwar auch Spannend, ist aber was anderes. Das kann man sich baun indem man den normalen Sinusshaper nimmt und Vorher einen Sinus drauf addiert (statt dem Sägezahn. Vorsicht: Wenn ich mich richtig erinnere addiert der "+sin" Block beim Kurzweil keinen Sinus sondern ist ein Ringmodulator. Manchmal muss man die Kurzweil Leute einfach lieben...

So nachdem ich mir jetzt soviel generde hab raushängen lassen gehts raus in die Sonne.
 
Sorry, das war fuer mich jetzt komplett unverstaendlich, das haettest du genausogut in kyrillisch schreiben koennen, haette fuer mich keinen grossen Unterschied gemacht ;-) Bekommst du das Ganze auch ohne Formeln, allgemeinverstaendlich, in Klarschrift hin? So gewinnst du fuer VAST bestimmt keine Freunde, denn jeder halbwegs intelligente Mensch kann sich ein paar ineinander verschachtelte Formeln als Wellenform oder Klang vorstellen ;-)
 
Mein kyrillisch ist leider ein bisschen rostig also muss ich es nochmal auf deutsch probieren. Falls ich hier zu viel altbekanntes nochmal durchkau ... tschuldigung.

Erstmal das wichtigste: Wie macht man nun FM mit dem Kurz:
Ich werde hier alles am Beispiel der PC3 erklären. Im Prinzip müsste es mit älteren Modellen genauso gehen.

Grundlagen VAST:
Ein Programm besteht aus bis zu 32 Layern. Diese können (wie in den meisten Workstations) parallel Klänge erzeugen. Die Besonderheit des Kurz ist, dass man den Klang einer Layer in einer anderen weiterverarbeiten kann. (In einfach geht das auch bei Roland Romplern).

Jede dieser Layer besteht nun aus einem Multisample, bis zu vier DSP Blöcken und einer Verstärkerstufe am Ende. Zudem gehören einer Layer noch 3 Envelopes, 2 LFOs und ein bisschen anderes Spielzeug. Die DSP Blöcke können (nahezu) frei verschaltet werden, erlauben jedoch keine Rückkopplungen.

Ein DSP Block kann ein Oszillator, ein Filter oder noch ein paar andere Sachen sein. Zum bauen von FM Sounds brauchen wir zwei verschiedene DSP Blöcke:

- gain: Hier wird das Signal einfach Verstärkt bzw. Abgeschwächt. Wir brauchen den Block um Hüllkurven für die Modulationsstärke verwenden zu können. Im analogen Modularsystem wäre das ein VCA.

- saw+shp: Der magische Block....
Erstmal reicht es zu wissen, das sich dieser Block wie ein Sinusoszillator verhält wenn man kein zusätzliches Signal einspeist. Eingespeiste Signale modulieren die Phase. Das Ding verhält sich also im Prinzip wie ein Oszillator im DX7.

Zusammenbauen:
Als kleines Beispiel will ich schnell zeigen wie man sich einen 3 Operatoren FM Synth baut. Zunächst "verkabeln" wir unsere DSP Blöcke in Serie (da muss man bloß ein "Preset" auswählen):

Multisample --> DSP 1 --> DSP 2 --> DSP 3 --> DSP 4 --> Amp

Jetzt nehmen wir für das Sample einen Sinus, für DSP 1+3 je ienen Gain und für 2+4 einen saw+shp:

Sinus --> Gain --> saw+shp --> Gain --> saw+shp --> Amp

Um das klarer zu machen ersetz ich jetzt ein paar Wörter:

Sinus --> Envelope --> Sinus (FM) --> Envelope --> Sinus (FM) --> Amp

Und schon schaut es aus wie man sich einen (kleinen) FM Synth vorstellt.
Andere Algorithmen gehen auch, da müsste ich aber noch das Routing zwischen Layern und ein paar weitere Blöcke erklären, das würde glaube ich hier den Rahmen sprengen...

So, hoffentlich habe ich bis hierhin noch keinen Unwillen erzeugt. Wenn es einem egal ist warum der saw+shp Block tut was er tut sollte den folgenden Text besser ignorieren. Ansonsten hier ein Versuch von Mathe ohne Formeln:

Leider muss man da etwas ausholen und mit den Grundlagen eines digitalen Oszillator anfangen. Der Typ der uns hier interessiert besteht aus zwei Teilen: Einem Zähler und einer Look up table. Der Zähler beginnt von 0 zu zählen und addiert für jedes erzeugte Sample einen gewissen Wert. Wird ein gewisser Wert überschritten (im Beispiel 1000) wird dieser Wert wieder Abgezogen. Nehmen wir mal an wir erhöhen jedes mal um 3 dann kommt folgendes raus:

0, 3, 6, ...., 999, 2, 5, ..., 998, 1, 4, ...

Das kann man wenn man will schon als Sägezahn interpretieren. Offensichtlich braucht man für hohe Frequenzen Große Werte die man addiert und umgekehrt.

Will man jetzt daraus einen Sinus machen legt man sich einfach vorher eine Tabelle in den Speicher in der 1000 Zwischenschritte des Sinus abgelegt sind. Dann gibt man für jedes zu berechnende Sample den Wert aus, der in der Tabelle an der Stelle steht, die im Zähler steht. Dieser kryptische Satz soll heißen: Steht in meinem Zähler 5 gebt ich den 5. Wert aus meiner Sinustabelle aus.

So, jetzt zurück zu unserem DSP Block:
Im saw+shp Block passieren drei Sachen:

- Der Block erzeugt einen Sägezahn. Wie oben schon erwähnt kann man diesen auch als Zähler für den auszugebenden Wert aus der Sinustabelle verstehen.

- Er addiert dazu das Eingangssignal (dazu später mehr)

- Er schaut das passende Sample in der Sinustabelle nach und gibt es aus.

Die ganze Magie passiert im zweiten Schritt. Das Eingangssignal spult quasi den Ausgegebenen Sinus vor und zurück. Das heißt die Phase wird moduliert. Das ist genau das, was Yamaha in seinen FM Synthesizern getan hat. Warum das was mit Frequenzmodulation zu tun hat ist glaube ich Thema für wann anders.

Ich hoffe diesmal war es nicht ganz so kryptisch. Das gemeine an der VAST Synthese ist, das die eigentlichen Funktionen der DSP Blöcke recht simpel sind, aber leider ein recht tiefes Verständnis für die Interna der Synthese erfordern. Ist ein bisschen wie Assembler...
 
Ok, grundsaetzlich weiss ich wie ein Waveshaper funktioniert, Probleme hatte ich eher an dem Punkt an dem du irgenwelche Formeln wild ineinander eingesetzt hast um irgendwas zu beweisen. Was fuer mich in diesem Fall besonders interessant waere ist die Sache mit der Phase, wird jetzt die Phase des Shapers oder die Phase des Oszillators moduliert? Bisher macht es fuer mich eher den Eindruck, als ob du zum Saegezahn ein Offset addierts und das durch den Waveshaper schickst, auf diese Weise wird aber nur die Shaper Phase moduliert.
 
Summa schrieb:
Bisher macht es fuer mich eher den Eindruck, als ob du zum Saegezahn ein Offset addierts und das durch den Waveshaper schickst, auf diese Weise wird aber nur die Shaper Phase moduliert.

Exakt das passiert auch. Das hübsche ist das die "Phase" (=Ausleseposition) des Shapers genau der Phase des ausgegebenen Sinus entspricht.

Nochmal: Der Sägezahn Oszilliert mit fester Phase vor sich hin. Das Eingangssignal wird zum Sägezahn addiert und die Summe in den Shaper geschickt. Damit wird die Ausleseposition des Sinustabelle im Shaper modifiziert und damit die Phase der erzeugten Sinusschwingung geschoben.

Die Verwirrung entsteht glaube ich da man den "echten Oszillator", also den Sägezahn, niemals zu hören bekommt, sondern nur die Sinusschwingung. Die wird allerdings tatsächlich Phasenmoduliert.
 
Die Verwirrung entsteht, da sich das von dir verwendete Verfahren Waveshaping (aka Phase Distortion) nennt, im Gegensatz zur Yamaha Phasenmodulation, bei der die Phase nicht verschoben sondern die Auslesegeschwindigkeit veraendert wird.
 
Muss leider widersprechen (bzw. Details nachliefern).

Aber erst mal eine dumme Frage, nachdem ich neu hier bin und die Etikette in diesem Forum nicht kenne:
Sind wir schon weit genug off-topic, dass wir diese Diskussion in einen extra Thread packen sollten?

So, jetzt war ich höflich, jetzt kann ich wieder kleinlich rumdiskutieren. Du hast insofern recht, als die allgemeine Beschreibung sowohl Phase Distortion als auch Phasenmodulation abdeckt. Wenn man die Frequenz des Sägezahns auf 0 dreht und eine stückweise lineare Funktion in den Eingang steckt kriegt man Phase Distortion. Das ist relativ leicht zu verstehen: Die Steigung des jeweiligen Teilstücks kann als Auslesegeschwindigkeit des Sinus interpretiert werden. Bin grade zu faul zum Patentlesen, drum hier nur der Wiki Artikel (der englische Artikel ist eigentlich besser...):

http://de.wikipedia.org/wiki/Phase_Distortion-Synthese

Das hübsche ist, das wenn man nun den Sägezahn mit der Carrierfrequenz laufen lässt und als Eingang einen Sinus nimmt, genau das rauskommt was Yamaha tut. Wie üblich nur Wiki weil faul:

http://de.wikipedia.org/wiki/Phasenmodulation

Verwirrenderweise stehen die hier wichtigen Sachen im Teil über analoge Phasenmodulation. Der Teil über digitale Phasenmodulation behandelt digitale Signale, d.h. Rechtecke als Modulator. Empfelenswert ist es sicher mal die zweite Formel mit dem Ergebnis meiner wild ineinander eingesetzten Formeln zu vergleichen.

Ich hoffe das hilft (und ich hab nix offensichtliches übersehen und mich total zum Affen gemacht). Ist doch immer wieder schön wenn man mal wieder gezwungen wird halbwegs sauber zu argumentieren.
 
Mach einfach weiter. Das ist schon genug im Thema, Stören würden nur Spaßbildchen und Störbeiträge, welche dann auch verschoben werden, wenn es zu sehr nervt.
Du bist willkommen das auszuführen. Willkommen im Club.
 
Bug2342 schrieb:
Grundlagen VAST:
Ein Programm besteht aus bis zu 32 Layern.

Hier muß ich kurz einhaken: das gilt nur für das aktuelle Dynamic VAST der PC3-Modelle, bei den Älteren waren maximal 3 Layer möglich.

Ansonsten: danke für die umfangreichen Ausführungen. Der Vergleich mit Assembler gefällt mir, und ich hoffe, daß ich, wenn ich bei meinem PC3 gut zurande komme, wenn ich weiter in die Tiefe gehe :)
 
Bug2342 schrieb:
Du hast insofern recht, als die allgemeine Beschreibung sowohl Phase Distortion als auch Phasenmodulation abdeckt. Wenn man die Frequenz des Sägezahns auf 0 dreht und eine stückweise lineare Funktion in den Eingang steckt kriegt man Phase Distortion. Das ist relativ leicht zu verstehen: Die Steigung des jeweiligen Teilstücks kann als Auslesegeschwindigkeit des Sinus interpretiert werden.

Das ist aber nicht so wie das bei Yamahas FM-Synthesizer funktioniert, klar beherrschen die neuere FM-Synthesizer auch Waveshaping, in dem man Operatoren auf fixed 0Hz setzt, aber das ist dann doch eher eine Sonderform der FM. Auch da kann ich ein Operator mit Sinus oder Saegezahn in den 0Hz Traeger senden und einen zusaetzlichen Operator der dann die Phase moduliert, wobei es von der Lautstaerke des Operators abhaengt, welcher der beiden Operatoren die Grundfrequenz bestimmt und welcher die Phase verschiebt. Das duerfte dann in etwa das Selbe sein was du mit dem Kurzen machst...

Bin grade zu faul zum Patentlesen, drum hier nur der Wiki Artikel (der englische Artikel ist eigentlich besser...)

English ist ok, ich muss gezwungenermassen viel in englischer Sprache lesen, schau auch ganz gerne Filme und Serien in englisch. Wikipedia in diesem Fall eher nicht, zu allgemein, zu ungenau um so 'ne Frage zu beantworten.

Das hübsche ist, das wenn man nun den Sägezahn mit der Carrierfrequenz laufen lässt und als Eingang einen Sinus nimmt, genau das rauskommt was Yamaha tut. Wie üblich nur Wiki weil faul:

Es gibt viele Ueberschneidungen zwischen FM, Phasen Modulation und Waveshaping (aka Phase Distortion), ich weiss nur was ich hoere und das klingt in den Beispielen die ich zur VAST "FM-Emulation" gefunden habe stark nach Waveshaping und auch deine Beschreibung klingt ebenfalls danach, man muesste div. Faelle vergleichen, in denen die Unterschiede zwischen Waveshaping und Phasen Modulation deutlich werden. Nun kenn ich die VAST Algortihmen nicht, aber Probleme koennten unter Umstaenden schon dann auftreten, wenn die Traegerfrequenz hoeher als die Modulatorfrequenz ist, bei FM und Phasenmodulation kann man damit Formante erzeugen, mit steigender Traegerfrequenz verschiebt sich der Formant (in diesem Fall ein Cluster mit Harmonischen) nach oben, was z.B. fuer gezielt programmierte FM Choere interessant ist. Das Waveshaping unterscheidet sich in der Beziehung normalerweise relativ deutlich, weil es dabei keinen echten Traeger oder Modulator gibt.
 
@ Moogulator: Danke für die freundliche Begrüßung

@ microbug: Hast natürlich recht mit den 3 Layern bei älteren Kurzweils. Ich bin erst bei der Pc3 eingestiegen und vergess so was gerne.

@ Summa: Du erziehst mich langsam richtig gut. Aber hast ja recht, Wiki als Quelle ist Mist. Drum gibts jetzt aus Langeweile auch eine vernünftige Referenz. Aus Gründen des Urheberrechts (oder was da sonst so passt) muss man dafür aber etwas arbeiten. Also bitte hierhin gehen:

http://www.google.com/patents

und dieses Patent aufblättern (einfach ins Suchfeld stecken):

US Patent 4253367 Mar 1981

Hier interessiert uns vor allem die erste Formel (die weiteren sind nur für mehrere Modulatoren) und die Zeichnung (ist zweimal die gleiche, nur einmal in groß).

Die Formel sagt uns eigentlich bloß, das wir hier Phasenmodulation machen. Das Bild zeigt uns was da eigentlich passiert. Was ich jetzt versuchen werde ist die Komponenten im Bild auch DSP Blöcke in der PC3 abzubilden.

Anfangen möchte ich mit der zweiten Zeile, also dem Carrier. Für alle die das Bild grade nicht vor sich haben, die sieht so aus:

Frequency Number Memory --> Accumulator --> Adder --> Sinusoidal Function Memory --> Multiplier

Im Frequency Number Memory steht drin wie weit die Phase für jedes Sample vorwärts geschoben wird. Die Zahl ist direkt proportional zur Frequenz.

Der Accumulator macht daraus einen Sägezahn mit der passenden Frequenz.

Den Adder brauchen wir später, um unseren Modulator einzuspeisen.

Das Sinusoidal Function Memory ist eine lookup Tabelle für den Sinus, also im Prinzip ein Waveshaper.

Der Multiplier am Ende erlaubt es uns eine Hüllkurve an den Sound zu machen (skaliert halt den Ausgang).

Jetzt kommt die große Überraschung: Bis auf den Multiplier steckt das beim Kurzweil alles im "saw+shp" Block.
Die ersten beiden punkte werden durch den erzeugten Sägezahn erledigt. Zu dem wird der Eingang Addiert (Adder) und dann das ganze durch einen Waveshaper geblasen. Den Multiplier am Ende kriegen wir mit einem gain Block hin, bzw. kriegen ihn mit der amp Stufe am Ende umsonst.

Jetzt sind wir aber erst halb fertig (eigentlich nur 1/4, die 3. und 4. Zeile sind aber identisch aufgebaut und können nur noch zusätzlich als Modulatoren dienen).

Nun zur ersten Zeile. Da ich mich der Einfachheit halber mal auf 2 Operatoren beschränke lass ich den ersten Adder mal weg. Dann sieht das so aus:

Frequency Number Memory --> Accumulator --> Sinusoidal Function Memory --> Multiplier --> Adder........

und dann sind wir wieder im oben beschriebenen Schema.
Dafür können wir aber einfach einen Sinus Block (bzw. noch einen Saw+Shp) und einen weiteren Gain nehmen.

Damit haben wir (bis aufs Routing für mehrere Operatoren, das geht aber auch) jetzt alles was wir brauchen um einen patentgemäßen Yamaha-artigen FM Synth zu bauen.

Nun mag der eine oder andere sagen: Das Ding klingt aber trotzdem anders. Das hat mindestens zwei Gründe: Zum einen werden die Frequenzen der Operatoren beim Kurzweil über Pitch+fine tune angegeben und nicht über Verhältnisse, wie sich das für einen anständigen FM Synth gehört. Wenn man nicht sehr vorsichtig ist führt das gerne mal zu einer gewissen "knarzigkeit". Die andere Sache ist, das FM schnell Unterschied bei Aliasing, Hüllkurvenformen und anderem hörbar macht. Drum klingt auch jede FM Implementation ein bisschen anders.

Irgendwie muss ich noch an der Kürze für die Würze arbeiten...
 
Mal kurz, bevor ich mir die Patente nochmals anschaue, hab' aber hier fuer die Bilder im Moment kein Quicktime installiert, hatte mir Patente aber schon mal vor einigen Jahren angeschaut.

Hast du das mit den Traegern dessen Frequenzen hoeher als die des Modulators sind denn mal probiert, falls noetig lade ich ein paar Beispiele vom FM8 zum Vergleich hoch...

Was die Frequenzen betrifft, ich hab' mit beidem schon gearbeitet, gibt's zur Not Ratio/Semi Tone Tabellen, von daher laesst sich das meist abbilden, wenns nicht stimmt hoert man das eigentlich am Beating.
 
So, ich sehe gerade dass ich gar kein Quicktime gebraucht haette, bin ueber die Unofficial FS1R Seite auf die Patente gegangen, ueber google ist das gar nicht noetig.

Was du in dem Patent siehst ist die technisch Implementierung der Sinus Operatoren, mit Frequenztabellen etc. zur einfachereren Umsetzung in Chip Form, deine Erklaerungen aendern nichts an der Tatsache dass dein Offset nicht die Abspielgeschwindigkeit aendert sondern die Phase relativ zur aktuellen Postition in der Shaper Wellenform verschiebst (im extremfall springst), das ist was anderes, auch wenn es Spezialfaelle gibt wo beide Verfahren sich stark aehneln.
 
Langsam kriege ich das Gefühl, das wir das gleiche meinen und nur bei den Bezeichnungen nicht zusammenkommen. Ich werde mal versuchen mein Behauptungen klar herauszustellen, damit du sie einzeln abschießen kannst.

Zu deinem Formantentest: Ich kam nicht dazu meine PC3 zu besuchen (ist grade nicht zuhause). Ich habs dafür mal schnell mit fm4 (Reaktorensemble) ausprobiert. Da klappt das wunderbar. Ein Blick in die Eingeweide des Ensembles zeigt, dass die Operatoren genau aufgebaut ist die die Vorgeschlagene Struktur auf der PC3 (Modulation der Phase des Tabellenauslesens durch eine externes Signal).

Erstmal muss ich wie üblich ein Bisschen Wort klauben. Erstmal will ich hier sauber die Frequenz definieren. Normalerweise würde man das ja über eine Spektrale Darstellung (z.B. aus Fourier), oder einfacher über den Kehrbruch der Periodendauer machen. Beide Definitionen sind leider nicht mehr wirklich tauglich wenn man die Frequenz schneller ändert als eine Periodenlänge. Hier ist es am sinnvollsten die Frequenz als Ableitung der Phase nach der Zeit zu definieren (="Geschwindigkeit" der Phasenänderung=Auslesegeschwindigkeit). Womit wir bei deinem ersten Punkt sind:

Summa schrieb:
... deine Erklaerungen aendern nichts an der Tatsache dass dein Offset nicht die Abspielgeschwindigkeit aendert sondern die Phase relativ zur aktuellen Postition in der Shaper Wellenform verschiebst (im extremfall springst), das ist was anderes...

Da hast du selbstverständlich Recht! Würde ich die Abspielgeschwindigkeit mit dem Modulator ändern hieße das, dass ich die Frequenz moduliere. Das wäre genau lineare FM. Zugegebenermaßen habe ich manchmal das unangebrachte Wort FM für das Gezeigte verwendet, da bin ich aber in guter Gesellschaft, Yamaha tat das auch.

Damit:
Behauptung 1: Das was ich tu ist keine lineare FM. (Ich denke da sind wir uns einig)

Nun kann man freundlicherweise recht einfach testen ob ein Synthesizer lineare FM macht. Das einfachste ist man nimmt 3 Operatoren, die alle die gleiche Frequenz haben (und in Phase starten). Nun moduliert Operator 1 den 2. und der den 3. Damit kriegt aber Op2 einen DC Offset (positive und negative Hälfte der Wellenform werden unterschiedlich schnell abgespielt). Da aber Op2 die Frequenz von Op1 moduliert ist der danach verstimmt.

Zumindest FM8 und der Fs1r zeigen dieses Verhalten nicht, haben also KEINE lineare FM. Damit wird im Umkehrschluss auch nicht die Abspielgeschwindigkeit (also Frequenz) moduliert.

Damit:
Behauptung 2: Die Yamaha FM Synthese ist in Wirklichkeit eine Phasenmodulation.

Zugegeben, die Behauptung steht erst mal auf wackligen Beinen. Könnte ja auch was anderes sein. Hier hilft allerdings dann doch der Blick ins Patent (siehe oben). Wie üblich gilt: Wir brauchen das erste Bild und die erste Formel. Fangen wir mit dem Bild an. Neben der
Summa schrieb:
technisch[n] Implementierung der Sinus Operatoren, mit Frequenztabellen etc. zur einfachereren Umsetzung in Chip Form
sind da nämlich doch noch 1-2 Details abgebildet. Ein wichtiger Baustein ist der Accumulator. Der macht im Prinzip aus einer Frequenz eine Phase, ist also ein Integrator. Nun fällt aber auf, dass am Addierer einmal eine Phase anliegt (2. Zeile) und einmal ein Sinus (1. Zeile). Diese Summe wird als Ausleseindex, also als Phase verwendet. Damit modifiziert der Sinus direkt die Phase.

Damit:
3. Behauptung: Bei einem Operator in der Yamaha FM Synthese wird zur Phase eines Sinus ein Eingangssignal (im oberen Textblock ein Sinus) hinzuaddiert.

Und von meinem letzten Post:
4. Diese Struktur lässt sich 1 zu 1 auf einen VAST Algorithmus abbilden

Zur Verdeutlichung nochmal die Formel aus dem Patent (eine muss gehen):
F = A * Z { w_c * t + I*G(w_m * t)}
(w=Omega; _ steht für indizes; Summe + index i weggelassen)
mit A=Amplitude, w_c bzw. w_m Carrier bzw Modulator Frequenz, I Modulationsindex, Z,G "Vordefinierte mathematische Funktionen" (meistens Sinus).

Schaut in Text etwas unübersichtlich aus, heißt aber nix anderes, als das wir die Phase modulieren.

6. Behauptung: Das schaut bis auf meine leichte Schlampigkeit genau wie das Signal aus das ich für den Kurz berechnet hab.

Nun endlich:
7. Behauptung: Bis auf fehlende Feedbackschleifen lässt sich die Synthese eines Yamaha FM Synthesizers auf einer Kurzweil PC3 nachbilden.

Ich hoff mal ich werde jetzt nicht wegen exzessiven Gebrauch eines gewissen Markennahmen Abgemahnt...

Jedenfalls bleibt immer noch die Frage, was der ganze Käse nun mit FM zu tun hat. Hier hilft es wenn man sich schnell an den Anfang zurückerinnert, wo ich mal behauptet habe, das die Frequenz so was wie die Ableitung der Phase ist. Damit müsste man, wenn man die Frequenz mit einer gewissen Funktion moduliert die Phase einfach nur mit dem Integral der Funktion modulieren um den Gleichen Effekt zu erreichen. Umgekehrt gilt natürlich auch, das eine Modulation der Phase einer Modulation der Frequenz mit der Ableitung der Modulationsfunktion entspricht.

Daher rührt auch die Andersartigkeit der Phasenmodulation wenn man die Phase nicht stetig (z.B. mit einem Rechteck) moduliert. Da wird dann nämlich die Ableitung (und damit die entsprechende lineare FM) kurz mal unendlich...

Ein Sinus ist hingegen recht Wohlverhalten. Da führt das Ableiten eigentlich bloß zu einer Phasenschiebung und einem Frequenzabhängigen Vorfaktor.

Genug gelabert für heute (der Mist wird immer länger). Ich bin vermutlich die nächsten Tage nicht in Interneteichweite. Geniest die Ruhe...
 


News

Zurück
Oben