Frage:
Warum klingt meine synthetisierte Note nicht natürlich?
Nereid Regulus
2018-06-01 18:25:25 UTC
view on stackexchange narkive permalink

Ich entwickle gerade ein Spiel und versuche, eine Musiknote aus verschiedenen Instrumenten in C ++ zu synthetisieren. Im Moment versuche ich nur, einen A4 440Hz mit Hilfe einer vorhandenen Audiodatei als Referenz zu replizieren. Ich habe mein Bestes versucht, damit mein Signal in Bezug auf Frequenz und Harmonische dem Original entspricht, aber die Note klingt immer noch nicht natürlich. Ich bin ein bisschen neu in der Musiksynthese, also hoffe ich, dass Sie mein Problem lösen können. Links zu den Audiodateien:

Mein Programm fügt nur Sinuswellen mit unterschiedlichen Frequenzen zusammen. Hier ist der Vergleich der beiden Audiodateien:

Spektrogramm (links = real, rechts: synthetisiert)

enter image description here

FFT (Peak) (links = real, rechts = synthetisiert)

enter image description here

(die Peaks sind mit einem Unterschied von ~ = 3 Hz gleich)

Signal (links = real, rechts = synthetisiert)

enter image description here

Phasenverschiebung am Peak ( left = real, right = synthetisiert)

<Picture>

Periodenhüllkurve

Echtes Klavier

enter image description here

Synthetisiertes Klavier

enter image description here

Was habe ich vermisst? Ich habe mein Bestes versucht, um die harmonischen Frequenzen anzupassen, aber sie klingen immer noch anders. Gleiches gilt für ihren Umschlag. Sollte ich mehr Harmonische haben? Ich habe versucht, mehr hinzuzufügen, aber der Sound scheint sich nicht wirklich zu ändern. Sind die Harmonischen zwischen 15 kHz und 20 kHz wichtig?

PS: Ich möchte weder vorhandene Noten noch Musik für mein Spiel verwenden, da ich dies tue, um zu verstehen, wie Musiksynthese funktioniert.

Antworten, die nur Links zu anderen Websites sind, werden hier nicht geschätzt. Dieser Artikel ist jedoch möglicherweise hilfreich. https://www.soundonsound.com/techniques/synthesizing-pianos
Eine Sache, die definitiv fehlt: Ein echter Klaviersound hat * Tonnen * nicht harmonischer Komponenten während des Anschlags des Sounds. Die Obertonreihe hilft beim Sustain und Decay, aber der Attack benötigt viel Rauschen und unharmonische Komponenten.
"Mein Programm addiert nur Sinuswellen mit unterschiedlichen Frequenzen." - Meinst du, dass jede dieser Sinuswellen, die du addierst, eine feste Frequenz hat?
@topomorto Ja, ohne Phasenverschiebung
Ich würde empfehlen, http://www.klingbeil.com/spear/ herunterzuladen und einen Blick darauf zu werfen, wie sich analysierte Partials sowohl in der Tonhöhe als auch in der Frequenz ändern können.
@PatMuchmore genau! Als historische Randnotiz war dies etwas, was die Designer des [Roland D50] (https://www.youtube.com/watch?v=vSdPwdQTs_g) wussten und mit großer Wirkung nutzten, indem sie einen gesampelten Attack mit einem rein synthetisierten Sustain mischten .
Die Synthetic-Piano-Datei scheint beschädigt zu sein oder so - ich konnte sie nicht dazu bringen, mit irgendetwas zu spielen.
Konzentriere dich auf den Angriff. Es sind die anfänglichen ~ 100 ms Sound, die die meiste Arbeit beim Hören erfordern. Zoomen Sie so, dass Sie zum Vergleich ganz am Anfang der Wellenformen sehen. Ihre synthetisierte Wellenform hat am Anfang einen gewissen "Chop".
Potenziell hilfreich ist, dass in der Welt der Synthese diese Technik (Hinzufügen von Sinuswellen) als "additive Synthese" klassifiziert wird. Vielleicht möchten Sie einen Blick auf _ "subtraktive Synthese" _ Methoden werfen, bei denen eine Filterfunktion auf die resultierenden Wellendaten angewendet wird. Die Parameter dieses Filters können im Laufe der Zeit moduliert und häufig mit Notenangriffen synchronisiert werden, sodass der erste Teil einer Note hochfrequente unharmonische Komponenten aufweisen kann und diese dann während des Spielens allmählich ausgeblendet werden können. Techniken wie diese werden oft verwendet, um "natürliche" Instrumente zu emulieren.
Es ist sicherlich eine schöne Übung, einen Klaviersound zu synthetisieren, aber wenn Sie nur Sound für ein Spiel benötigen, sind Samples möglicherweise der einfachere Weg, um die Arbeit zu erledigen, und ich bin sicher, dass es dafür einige Bibliotheken gibt.
Sechs antworten:
#1
+33
Todd Wilcox
2018-06-01 20:12:56 UTC
view on stackexchange narkive permalink

Ich konnte die Dateien nicht anhören, aber ich denke, dass Pats Kommentar sehr wahrscheinlich der Marke am nächsten kommt. Aus den Spektrographen geht hervor, dass Ihnen möglicherweise zwei Dinge fehlen:

  • Inharmonische Teiltöne - Aufgrund der Steifheit der Klaviersaiten werden tatsächlich verschiedene Sinuswellen erzeugt nicht einmal ein Vielfaches des Grundlegenden. Stattdessen sind sie schärfer als erwartet. Dies führt dazu, dass die Saiten für die höchsten Noten etwas schärfer und für die niedrigsten Noten etwas flacher gestimmt sind. Hier ist ein Artikel mit einigen gemessenen und theoretischen Zahlen zu diesem Effekt.
  • Übergangsgeräusche - Es gibt viele wichtige Teile des Klangs eines echten Klaviers die nicht in den stationären Saitenschwingungen erfasst werden. Es gibt einige Übergangsfrequenzen und Teilfrequenzen sowie mehrere Geräusche . Das wichtigste davon ist wahrscheinlich das geringere Tastenrauschen , dh der Klang der Taste, die auf das Tastenbett schlägt. Es neigt dazu, kurz durch das Klaviergehäuse zu schwingen und erzeugt einen niederfrequenten, hölzernen "Schlag" -Sound. Hören Sie sich Klavieraufnahmen genau an und Sie sollten es hören. Spielen Sie ein echtes Klavier und Sie können es auch fühlen. Wie Pat kommentierte, gibt es auch vorübergehende hochfrequente Saitengeräusche, die durch das Schlagen des Hammers erzeugt werden. Die Geräuschkomponenten und ihre Amplituden hängen von der Härte des Hammerfilzes ab und werden als Helligkeit des Klaviers bezeichnet.

Einige Vorschläge:

  1. Lesen Der Artikel, den Pat verlinkt hat, bietet einen guten Überblick über die Herausforderungen der Klaviersynthese und Strategien, damit sie funktioniert: https://www.soundonsound.com/techniques/synthesizing-pianos
  2. Experimentieren Sie mit subtraktiven und FM-Synthesetechniken. Die Technik, die Sie derzeit verwenden, ist die additive Synthese, die ihre Vor- und Nachteile hat. Ich denke, Sie könnten viel über Inharmonizität lernen, indem Sie mit einer digitalen FM-Synth-Engine arbeiten, um einen E-Piano-Sound wiederherzustellen. Die subtraktive Synthese ist ein Typ zum Wiederherstellen von Geräuschen mit niedrigerer Tonart.
  3. Erwägen Sie das Erlernen einiger Percussion-Synthesetechniken mithilfe der subtraktiven Synthese. Selbst wenn Sie am Ende die additive Synthese verwenden, hilft das Üben von Schlägen und Noise Bursts mit einer subtraktiven Synth-Engine sehr beim Verständnis, wie Sie die gewünschten transienten Sounds erhalten.
  4. ol>

    Bearbeiten nach dem Hören der Datei:

    Der Klang einer Klaviernote ändert sich mit der Zeit. Ihre synthetisierte Probe ist nur 1 Sekunde lang. Sie sollten den Klang für die gesamte Lebensdauer der Note vergleichen. Sobald Sie einen anständigen Klang haben, können Sie ihn möglicherweise verdoppeln, da der größte Teil des Klavierbereichs zwei oder drei Saiten pro Note anstelle einer hat. Sobald es verdoppelt ist, verstimmen Sie einen (oder zwei) leicht. Und ich meine leicht . Gute Klavierstimmer bringen sie sehr in die Nähe, aber sie können sich immer noch um 0,5 Hz oder so unterscheiden. Beachten Sie, dass eine Schwebungsfrequenz von 0,5 Hz 2 Sekunden benötigt, um einen Zyklus abzuschließen. Dies ist ein weiterer Grund, warum ein 1-Sekunden-Sample nicht ausreicht, um zu hören. Insgesamt finde ich Ihr synthetisiertes Sample ziemlich gut. Einige der oben genannten Komponenten fehlen, und Sie sollten auch anfangen, niedrigere und höhere Noten zu vergleichen, um zu sehen, wie sich Ihr Algorithmus behauptet.

-1 Das größte Problem, das der Stichprobe fehlt, ist ein Angriff. Alles andere, was Sie hinzugefügt haben, wird dazu beitragen, dass der synthetisierte Klang nach dem Hinzufügen eines Angriffs noch besser wird. Ohne einen Angriff wird der Klang jedoch nie überzeugend wie ein Klavier klingen. Ich glaube nicht, dass Ihre Antwort die Notwendigkeit eines Angriffs betont, der hilfreich genug ist.
@Kevin Fairer Punkt. Ich frage mich, ob Sie mit "Angriff" über das sprechen, was ich "vorübergehende Geräusche" genannt habe. Sie sind ganz am Anfang einer Klaviernote zu hören und sterben dann sehr schnell ab. Die Teile eines Klaviersounds, die nicht der Attack sind, werden manchmal als "stationäre Vibrationen" bezeichnet, obwohl sie nicht wirklich stationär sind.
Schieß, du hast recht. Sie und ich sprechen über die gleichen Dinge. Vielen Dank für die Antwort auf meinen Kommentar! Ich werde Ihre Antwort positiv bewerten, wenn Sie eine kleine Änderung vornehmen.
@Kevin Fertig. :) :)
@ToddWilcox: Sie meinen das wie diesen hochfrequenten Buckel im Real-Piano-Spektrogramm gleich am Anfang der Note?
@Sean Ja, das gehört dazu. Auch wie Kevin betont hat, stimmt die Hüllkurve (die grünen Diagramme) der synthetisierten Note nicht. Es sollte sofort die Spitzenamplitude erreichen. Oder innerhalb von 10 ms oder so.
* Der größte Teil des Klavierbereichs besteht aus zwei Saiten pro Note anstelle von einer * Drei, nicht zwei.
@BenCromwell Es variiert von Klavier zu Klavier, aber ich kann nicht einmal eine Zählung eines bestimmten Klaviers für die Anzahl der Noten mit einer, zwei oder drei Saiten finden. Ich werde es also aus Sicherheitsgründen in "zwei oder drei" ändern. Vielen Dank.
#2
+24
Kevin
2018-06-02 01:04:59 UTC
view on stackexchange narkive permalink

Das Größte, was Sie vermissen, ist ein Angriff. Pat Muchmores Kommentar ist genau richtig:

Eine Sache, die definitiv fehlt: Ein echter Klavierklang hat während des Angriffs des Klangs Tonnen nicht harmonischer Komponenten. Die Obertonserie hilft beim Sustain und Decay, aber der Attack benötigt viel Rauschen und unharmonische Komponenten.

Fast alle Instrumente haben einen kurzen, nicht gestimmten, perkussiven Sound, der für a spielt winziger Bruchteil einer Sekunde, wenn eine Note zum ersten Mal abgespielt wird. Wenn Sie Ihre Sample-Piano-Note erneut anhören, werden Sie feststellen, dass der erste Sekundenbruchteil der Note viel lauter ist als der Rest der Note. Möglicherweise stellen Sie auch fest, dass es ein bisschen so klingt, als würde eine Snare-Trommel angeschlagen, wenn die Note zu spielen beginnt. Das ist der Angriff. (Bei einem tatsächlichen Klavier wird dieser Klang durch die Bewegung des Hammers verursacht, der an der Saite klebt.)

Im Gegensatz dazu ist Ihre synthetisierte Note am leisesten, wenn sie zu spielen beginnt. Es hat keinen Angriff. Dieser fehlende Angriff ist unglaublich wichtig! Ich glaube, wenn Sie Ihrer Note einen Attack hinzufügen, klingt sie überzeugend wie ein echtes Klavier.

Sie können dies tun, indem Sie entweder einen geformten weißen Rauschstoß spielen, wenn Ihre Note zu spielen beginnt, oder etwas mehr überzeugend, jedes Mal, wenn das Klavier eine Note spielt, ein subtil gemischtes Sample eines Schlaginstruments zu spielen. (Obwohl ein Ausbruch von weißem Rauschen ziemlich künstlich klingt, hatte ich sehr gute Erfolge beim Hinzufügen von Angriffen mit weißem Rauschen zu Synthesizern in meiner eigenen Musik. Es ist wirklich überzeugend genug, um in vielen Situationen zu arbeiten! Todd Wilcox 'Kommentar gibt gute Ratschläge, wie man weißes Rauschen für einen Angriff funktioniert.) Der überzeugendste Ansatz wäre, eine Aufnahme von jemandem zu finden, der den Klang eines Schlagschlags isoliert, ohne dass der Klang der Klaviersaite klingelt, und diesen für Ihr Angriffsprobe zu verwenden .


Mir ist aufgefallen, dass Ihr synthetisierter Ton bereits ein perkussives Element enthält. Es klingt jedoch in der Mitte der Note, nicht am Anfang. Der Attack muss genau in dem Moment seinen Höhepunkt erreichen, in dem die Note zu spielen beginnt. Sie haben dieses Diagramm zu Ihrem Beitrag hinzugefügt:

enter image description here

Beachten Sie, dass für den echten Klavierton links der lauteste Punkt des Klangs ist bis zum linken Rand der Schallwelle. Im Gegensatz dazu wird Ihr Ton eine halbe Sekunde lang lauter, bevor er am lautesten wird. Leider ist das zu spät. Der perkussive Sound muss am Anfang des Tons beginnen, um eine überzeugende Attacke zu erzielen.

Außerdem ist Ihr perkussiver Sound sehr tief. Ein Klavier hat normalerweise einen Attack, der auch einige mittlere und hohe Elemente enthält. Ich schlage vor, einen Snare-Drum-Hit, einen Soft-Wood-Block-Hit oder, wie oben erwähnt, eine Aufnahme eines Piano-Hammer-Schlags zu verwenden, um Ihren Angriff zu stimulieren, anstatt den tiefen Handdrum-Sound, den Sie jetzt verwenden.


Abgesehen von der Attacke ist Ihr synthetisierter Ton für mein Ohr fast da. Ich persönlich denke, wenn Sie einen Attack hinzufügen, erhalten Sie einen synthetisierten Klang, der genauso hochwertig ist wie der, der in den meisten 100-Dollar-MIDI-Keyboards zu finden ist. Es wird immer noch künstlich klingen, aber es wird angenehm klingen und es wird nicht seltsam erscheinen.

"* Fast alle Instrumente haben einen kurzen, nicht gestimmten, perkussiven Klang, der für den Bruchteil einer Sekunde abgespielt wird, wenn eine Note zum ersten Mal gespielt wird. *" Ja, und das Klavier hat ** mehrere ** nicht gestimmte, perkussive Klänge Spielen Sie für den Bruchteil einer Sekunde, wenn eine Note angeschlagen wird. Eines der wichtigsten, das das Klavier hat, ist * leiseres Tastengeräusch *. Es gibt auch das obere Tasten- und Hammergeräusch und die Transienten der oberen Harmonischen. Ich denke, wir verwenden verschiedene Wörter, um über dieselben Dinge zu sprechen.
Ich bin nicht der Meinung, dass weißes Rauschen allein ausreicht. Das Geräusch niedrigerer Tasten ist nicht einmal annähernd weiß. Es ist fast so, als würde man mit dem Finger auf eine große Holzkiste klopfen. Es ist sehr niederfrequent und hat nicht die Hochfrequenzkomponenten, die weißes Rauschen hat. Es ist auch sehr perkussiv. Ein gefilterter Rauschstoß würde für die unharmonischen transienten Teiltöne funktionieren, und dann würde möglicherweise eine Rechteckwelle ** sehr ** schnell nach unten gefegt, wie ein 808-Kick-Sound, für das Rauschen der unteren Tonart.
@ToddWilcox Shoot, du hast recht. Ich habe Ihre Antwort nicht sehr sorgfältig gelesen. Es tut mir leid, dass ich Ihnen und Ihrer Antwort gegenüber so antagonistisch bin, besonders wenn Sie Recht haben, dass wir dasselbe sagen.
Ich denke, Sie haben auch Recht mit dem weißen Rauschen. Ich habe festgestellt, dass ich jedes Mal, wenn ich weißes Rauschen für Angriffe auf meine Synthesizer verwende, diese auf eine niedrige Frequenz stelle und sie innerhalb weniger Millisekunden um mehrere Oktaven nach unten streiche, wie Sie vorgeschlagen haben. Ein einfacher weißer Rauschstoß wäre sehr offensichtlich. Und selbst die künstlichen Attacken, die ich benutze, beziehen sich auf klar synthetisierte Klänge, nicht auf Klänge, die wie akustische Instrumente klingen sollen.
Man kann es nur am Blick auf die Wellen erkennen. "Das ist zu spät." +1. Mit nur fünf Minuten, in denen mehrere Einblendungen durchgeführt, ein 5-stimmiger Refrain hinzugefügt und die 3D-Lautstärke direkt erhöht wurden, klingt es mindestens 10 Prozent mehr wie ein echtes Klavier;) Vorher hätte ich geschworen, dass es so ist rückwärts gespielt.
Es ist erwähnenswert, dass das Problem mit dem Angriff mathematisch erklärt werden kann, indem dort eine Diskontinuität in der Schallamplitude vorliegt oder etwas in der Nähe davon. Die Fourier-Näherung (dh das Ausdrücken des Klangs als Summe von Sinuswellen) funktioniert in der Nähe von Diskontinuitäten nicht sehr gut (siehe z. B. https://en.wikipedia.org/wiki/Gibbs_phenomenon).
#3
+8
user19146
2018-06-02 14:32:41 UTC
view on stackexchange narkive permalink

Nur um die vorherigen Antworten bezüglich des anfänglichen Übergangs des Tons zu ergänzen. In Ihrer Synthese fehlen zwei Dinge, die sich beide auf den Anfangston auswirken.

  1. Es gibt das mechanische Rauschen des Schlüsselmechanismus sowie das " Schlag "des Hammers auf die Saiten, die von den statischen Teilen des Klaviers stammen, nicht von den Saiten selbst. Diese Geräusche sind für jede Note auf dem Instrument ähnlich (und es ist eine ziemlich gute Annäherung anzunehmen, dass sie für jede Note genau gleich sind) und fallen normalerweise in etwa 0,1 Sekunden zu nichts ab.

  2. Der zweite Effekt wird normalerweise in Beschreibungen der "High School-Physik" -Ebene überhaupt nicht erwähnt, wie eine gedehnte Saite vibriert, aber ...

  3. ol>

    Der Klang des Klaviers kommt von der Übertragung der Energie der vibrierenden Saiten in den Resonanzboden, der ebenfalls mit einer kleinen Amplitude vibriert, aber eine große Oberfläche hat, die die Luft bewegt, um den Klang zu erzeugen, den Sie hören. Daher sind die Enden der Saiten nicht absolut starr fixiert, da an diesem Punkt eine Bewegung des Resonanzbodens vorhanden sein muss. Das Maß an Flexibilität ist für Bewegungen in zwei verschiedenen Richtungen unterschiedlich, senkrecht zur Ebene des Resonanzbodens und von Seite zu Seite parallel zum Resonanzboden.

    Aufgrund der unterschiedlichen Flexibilität vibriert eine einzelne Saite gleichzeitig mit zwei leicht unterschiedliche Frequenzen, senkrecht und parallel zu den Resonanzböden. Außerdem wird die Energie aus dem "senkrechten" Modus schneller auf den Resonanzboden übertragen, da dies die flexiblere Richtung ist.

    Die Folge all dessen ist, dass Sie als "eine einzige Harmonische" tatsächlich zwei Harmonische mit leicht unterschiedlichen Frequenzen messen, von denen eine schneller abfällt als die andere. Bei einer Note mit einer Frequenz um 500 Hz - 1 KHz beginnt die Vibration mit niedrigerer Frequenz mit einer höheren Amplitude, fällt jedoch recht schnell ab (z. B. in 0,5 Sekunden), während die etwas höhere Frequenz langsam abfällt und sich über die gesamte Länge der Note erstreckt (mehrere) Sekunden).

    Als weitere Komplikation beginnen die beiden Schwingungen in Phase miteinander, aber die Phase ändert sich mit der Zeit, da die Frequenzen leicht unterschiedlich sind. Wenn Sie sich ein Klaviermuster ansehen, das in der Nähe des Instruments aufgenommen wurde, um die akustischen Effekte des Raums, in dem sich das Klavier befindet, zu eliminieren, sehen Sie, dass die kombinierte Amplitude hoch beginnt und als die beiden Vibrationen schnell fast auf Null abfällt Gehen Sie außer Phase und heben Sie sich gegenseitig auf, und dann steigt wieder . Zu diesem Zeitpunkt ist eine der Vibrationen fast ausgestorben, und der Rest der Note ist der langsame Abfall der anderen.

    Tatsächlich ist dies auf einer Akustikgitarre einfacher zu messen und zu verstehen als auf einer Klavier, weil es nur eine Saite pro Note gibt und der Unterschied zwischen den beiden Schwingungsfrequenzen größer ist. Bei einer Gitarre können Sie auch die Anfangsamplituden der beiden Frequenzen ändern, indem Sie senkrecht zum Resonanzboden "zupfen" (wie bei der klassischen Gitarrentechnik mit einem Fingernagel zupfen) oder die Saiten seitlich parallel zum Resonanzboden "klimpern". P. >

    Auf dem Klavier gibt es die weitere Komplikation, dass die meisten Noten zwei oder drei Saiten haben, nicht nur eine. Die Saiten werden nicht perfekt im Einklang gestimmt und (wie eine andere Antwort sagte) ein erfahrener Tuner passt die Form der kombinierten Klanghüllkurve aller 6 Vibrationsmodi von drei Saiten an, um den gewünschten "Pianoklang" zu erzeugen - einen Bosendorfer Imperial und Ein akustischer Flügel von Yamaha für Rock- und Popmusik, beide "klingen wie Klaviere", klingen aber sehr unterschiedlich!

#4
+4
Carl Witthoft
2018-06-01 18:40:52 UTC
view on stackexchange narkive permalink

Ich würde sagen, Sie lernen, wie subtil das menschliche Ohr kleine Unterschiede in Phasen und Frequenzen erkennen kann. Ihr Synthesizer scheint bei höheren Amplituden als außerhalb der Frequenz einige Frequenzen zu haben, die etwas außerhalb der Spitzenzeiten liegen.

Ich kann nur sagen, dass es einen Grund gibt, warum alle High-End-Digitalpianos Samples anstelle von Rohfrequenzgeneratoren verwenden.

Können Menschen Phasen in einem Monosignal hören?
`Alle High-End-Digitalpianos verwenden Samples` tatsächlich einige Very High-End-Klaviere wie das Roland V-Piano, das RD-2000, Pianoteq (oder das Hardware-Instrument auf Pianoteq-Basis, das vor einigen Jahren von ... veröffentlicht wurde). Viscount?) Nicht :)
"Können Menschen Phasen in einem Monosignal hören?" Spielen Sie eine Aufnahme eines Arena-Rock-Songs aus den späten 1970er Jahren mit stark phasengesteuerter Leadgitarre in Mono. Sie werden den Effekt hören. Das Ergebnis von Phaseneffekten, die auf ein Signal angewendet werden, ist ... ein anderes Signal.
@Beanluc "Sicher" ist die richtige Antwort (zumindest unter bestimmten Umständen), aber Ihr Beispiel ist schlecht, da "Phasing" als Gitarreneffekt in Wirklichkeit viel mehr bewirkt, als nur die Phase einiger Harmonischer des Signals zu ändern.
@CodesInChaos Menschen können die Phase nicht isoliert hören. Wenn ich also eine Kosinuswelle und eine Sinuswelle spielen würde, könnte man keinen Unterschied feststellen. Aber in jedem Klang, der nicht rein sinusförmig ist, können wir Phasenunterschiede zwischen verschiedenen Teiltönen * hören *. Es kann einen signifikanten Schallunterschied zwischen zwei Sägezahnwellen mit unterschiedlichen Phasenvarianzen in den oberen Teilbereichen geben.
#5
+4
Eric Towers
2018-06-03 21:39:37 UTC
view on stackexchange narkive permalink

Ihre Amplituden- und Hüllkurvendiagramme machen deutlich, dass Sie die Phasen der Komponenten nicht angepasst haben. Dies führt dazu, dass der Angriff rechtzeitig verschmiert wird. Es verursacht auch das Fehlen einer "Neigung nach links" der Komponenten in der Hüllkurve - die Hüllkurve des Klaviers ist sägezahnartiger als Ihre bandbegrenzten Dreieckskunststoffe. Es wäre hilfreich, einige Ihrer Komponenten in frühere Phasen zu verschieben.

Eine Möglichkeit, dies zu beheben, besteht darin, das Argument zu verfolgen (komplexe Phase). Ich sehe, dass Sie die Amplituden in Ihren Periodogrammen angepasst haben (absolute FFT-Amplituden), aber es gibt Hinweise darauf, dass Sie die Argumente nicht angepasst haben.

Nebenbei ... Sie haben eines der schwierigsten Instrumente ausgewählt additiv synthetisieren. Der spektrale Inhalt verschiebt sich nichtlinear mit der Amplitude. Es gibt mehrere harmonische und Enharmonische Brummen durch induktive Übertragung auf die ungedämpften Saiten. Die Direktoszillatoren (Saiten) weisen drei Freiheitsgrade auf, sodass für jede Saite drei natürliche Spektren vorhanden sind und die meisten Noten von zwei oder drei Saiten erzeugt werden. Wenn Sie mit einem Tasteninstrument beginnen müssen, kann etwas wie eine Celesta für Sie wesentlich weniger frustrierend sein.

#6
+1
Residuum
2018-06-04 20:59:29 UTC
view on stackexchange narkive permalink

Wie viele andere bereits betont haben, emulieren Sie nur das Spektrum der harmonischen Phase, nicht jedoch den Angriff und den Zerfall des Klaviers.

Hier einige Optionen:

Verwenden Samples.

Ja, mehr als ein Sample, idealerweise eines pro Note, aber wahrscheinlich sollte eines pro Oktave für den Anfang ausreichen. Tonhöhe + - 6 Halbtöne. Trennen Sie die Attack-, die Harmonische- und die Abklingphase und wiederholen Sie nur die Harmonische-Phase. Verwenden Sie unterschiedliche Proben für gedämpfte / ungedämpfte Saiten. Holen Sie sich verschiedene Samples für unterschiedliche Dynamiken, da sich die Eigenschaften von Harmonischen, Attack und Decay ändern. Sie könnten wahrscheinlich mit 20 Samples pro Oktave davonkommen, um ein etwas überzeugendes Klavier zu machen. Und Sie werden anfangen, etwas sehr Kompliziertes und Teueres neu zu erstellen.

Modellieren Sie die Physik.

Anstatt über Harmonische mit additiver / subtraktiver Synthese nachzudenken, denken Sie an die Art und Weise, wie der Ton erzeugt wird. Saiteninstrumente verwenden eine gewisse Anregung an einer Saite, wodurch die Saite in Resonanz gebracht wird und nur Harmonische der physikalischen Eigenschaften der Saite verstärkt werden, andere Frequenzen werden gedämpft. Ein einfacher Algorithmus hierfür ist Karplus-Strong.

Sie können auch eine physische Modellierungsbibliothek verwenden, z. STK, das einige E-Piano-ähnliche Demos hat, aber es ist wahrscheinlich fast so schwierig, ein natürlich klingendes Klavier zu bekommen wie mit dem Sample-basierten Ansatz.

Aber was ist zu verwenden?

Wenn Sie nur einige Noten mit einem festen Dynamikbereich spielen möchten, verwenden Sie ein Sample. Wenn Noten unnatürlich klingen, fügen Sie ein zweites Sample hinzu und versuchen Sie dann, das Beste aus mehreren verfügbaren Samples basierend auf Tonhöhe, Dynamik und Dauer zu laden.

Theorie

Je nachdem, wie Wenn Sie tief in das Thema eintauchen möchten, gibt es mehrere Bücher, die dem Thema gewidmet sind, einige kostenlose:

  • Numerische Klangsynthese
  • Programmieren elektronischer Musik in Pd
  • Die Verwendung von Puredata für die Synthese ist möglicherweise eine gute Wahl, da Sie über libPd einige übergeordnete Klangabstraktionen erstellen können, während Sie Pd als Bibliothek in Ihrem späteren Programm verwenden.



    Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 4.0-Lizenz, unter der er vertrieben wird.
    Loading...