Wie verarbeitet man Instrumenten-Samples, um überzeugende Sustain-Phasenschleifen für die samplebasierte Synthese zu erstellen?

Ich bin daran interessiert, so etwas wie einen groben Sampler (Instrument) zu codieren. Nach dem, was ich gelesen habe, können Sie Samples von echtem Audio in einen Sampler einfügen und sie für verschiedene Noten verschieben.

Ich möchte Samples, die eine einzelne Note eines Instruments darstellen, das ich nachzuahmen versuche. Ich stelle mir ein Notensample als etwas mit einer Attack-Phase, einer Sustain-Phase und einer Decay-Phase vor. Die Sustain-Phase wird als Zyklus aufgezeichnet, den ich beliebig lange wiederhole; Das einfache Wiederholen eines Zyklus klingt fast immer wie eine feste Tonhöhe und Lautstärke.

Ich habe Probleme, Samples für Instrumente zu bekommen, deren Noten oft lange Sustain-Phasen haben. Noten können in dieser Phase in Tonhöhe und Lautstärke variieren, daher ist es schwierig, einen Zyklus zu bekommen. Ich denke, man würde das Audio der Note ändern, um ihre Tonhöhe und Lautstärke festzulegen, sodass es ungefähr einen wiederholten Zyklus gibt, aber ich weiß nicht, wie ich vorgehen würde. Hat jemand anderes, der mit Samplern gearbeitet hat, eine Methode, um eine anhaltende Note zu erhalten?

EDIT 1: Nachdem ich von der Existenz von Formanten erfahren habe, scheint der Tonhöhenfixierungsteil dieses Beitrags im Moment sehr zweifelhaft. Wenn ich Instrumente nachahmen möchte, muss ich ihre tonhöheninvarianten Formanten modellieren. Wenn Sie die Tonhöhe im Audio ändern, werden diese wahrscheinlich nicht beibehalten, als ob ich das Audio rechtzeitig gedehnt hätte, um die Tonhöhe zu verschieben.

Kommentare sind nicht für längere Diskussionen gedacht; Diese Konversation wurde in den Chat verschoben .

Antworten (1)

Was Sie ursprünglich versucht haben, ist mit der derzeit bekannten Technologie möglicherweise nicht wirklich möglich. Wahrscheinlich kann man für manche Instrumententypen etwas Sinnvolles erreichen, aber was kann ich nicht versprechen. :) Nach der Diskussion in den Kommentaren der Frage sieht es so aus, als hätten Sie versucht, Folgendes zu tun:

  • Nehmen Sie eine vorhandene Audioaufnahme mit vollständigem Mix oder zumindest eine Aufnahme, die nur eine Darbietung eines Songs oder einer Phrase ist, die nicht speziell für ein Sample-basiertes Instrument gespielt wurde.
  • Extrahieren Sie eine einzelne Note eines einzelnen Instruments aus der Aufnahme.
  • Produzieren Sie aus diesem Einzelton-Audio ein spielbares, hochwertiges Instrument, das die Klangfarbe und die ausdrucksstarken Eigenschaften des Originalinstruments und des Spielers (vielleicht des Sängers) beibehält, der die Originalnote erzeugt hat.

Dabei gibt es viele Herausforderungen. Je nachdem, welche Art von Raketenwissenschaft Sie anstreben, müssen Sie Folgendes tun:

  • Isolieren Sie die Frequenzen, die von dem einen Instrument/Spieler ( vielleicht einer Gruppe von Spielern, für ein "Streicher"-Instrument?) stammen.
  • Isolieren Sie die Komponenten des Klangs, z. B. wie viel des Klangs Atemgeräusche sind, wie viel Vibrationen des Instruments sind. Wenn Sie die Tonhöhe verschieben, verschiebt sich der Rauschanteil nicht unbedingt, obwohl er ein elementarer Bestandteil des Klangs des Instruments ist.
  • Isolieren/erfassen Sie die Tonhöhe des Tons. Welcher Ton wurde gespielt?
  • Tonhöhenänderungen aufgrund von Vibrato und anderen Tonhöhenausdrücken isolieren/entfernen
  • Isolieren Sie die Formanten des Klangs, dh die Gesamtform des Gesamtbildes des Klangspektrums des Instruments. Formanten werden durch die Körperform des Instruments (oder Sängers) erzeugt , die als Resonator fungiert und bestimmte charakteristische Frequenzen verstärkt und dämpft, die den Klang erkennbar machen. Jeder Vokal und jeder andere Ton in gesprochenen/gesungenen Sprachen hat eine Reihe von Formantenfrequenzen, die zur Identifizierung des Tons erforderlich sind.
  • Vielleicht müssen Sie Formant-Änderungen isolieren , zum Beispiel in gesungenen Vocals?
  • Vielleicht müssen Sie Instrumententypen erkennen oder automatisch zurückentwickeln , wie z.

Entwicklung eines Modells

Was auch immer Sie mit den Proben machen, Sie werden zwei Dinge haben:

  • (1) eine Art Modell der Welt und
  • (2) ein Modell/eine Architektur für den Synthesizer , der die Phänomene im Weltmodell reproduzieren soll.

Aus welchen Komponenten besteht der Zielsound und aus welchen Komponenten besteht Ihr Synthesizer/Sampler und wie sind sie verbunden?

Ihre ursprüngliche Idee für das Synth-Modell war sehr einfach:

  • Synth = Sample-Player mit Loop

Das ist ein so unglaublich einfaches Synthesizermodell, dass es überraschend ist, dass überhaupt irgendwelche Sounds damit modelliert werden können. Aber es ist nützlich, um viele reale Instrumente wie Klaviere und Schlagzeuge zu modellieren.

Aber nehmen wir an, Sie entdecken Formanten. Eine neue Funktion wurde Ihrem Weltmodell hinzugefügt ! Diese neue Funktion erfordert einige Änderungen am Synth-Modell. Was ist ein Formant? Es ist die insgesamt unveränderliche Form des Klangspektrums des Instruments, unabhängig von der Tonhöhe der gespielten Note. Das originale Sample-Player-Modell kann dies nicht reproduzieren! In einem einfachen Sample-Player bewegt sich das Gesamtspektrum zusammen mit der Tonhöhe der Note nach oben und unten. Wie kann man einen tonhöhenunabhängigen Formanten reproduzieren?

Bei Multi-Sample-Instrumenten ist die Reproduktion des Formantverhaltens darauf angewiesen, dass für jeden Zielnotenbereich ein separates Sample vorhanden ist. In allen Samples sind die Formant-Frequenzen in den PCM-Samples mit denselben Frequenzen "eingebacken", und das Ändern der Zielnote schaltet zwischen den Samples um. Solange die Zielnotenbereiche eng genug sind, sind die Formanten nicht zu weit vom Original entfernt, wodurch die Illusion entsteht, dass es im Synth-Modell eine Formant-Komponente gibt.

Sie möchten dies jedoch mit nur einem einzigen Sample beginnen, sodass Multisampling und Sample-Switching keine Option sind. Nehmen wir an, Sie versuchen, die Spektralform mit einer Reihe von 5 parametrischen Filtern zu reproduzieren, die unabhängig davon, welche Note gespielt wird, auf denselben Frequenzen bleiben. Tiefpass/Bandpass/Hochpass usw. Jetzt wird das überarbeitete Synthesizer-Modell/die überarbeitete Architektur

  • synth = Sample-Player mit Loop + Filterbank

Dann entdecken Sie das Problem mit Atemgeräuschen (also war es wahrscheinlich kein Gitarrist - Sie kümmern sich nicht darum, dass Gitarristen atmen), und Sie möchten Geräusche als unabhängig gesteuerte separate Ebene modellieren

  • Synth = Sampleplayer 1 mit Loop + Filterbank
  • ... + Sample-Player 2, für Atemgeräusche, mit einem Loop-Punkt + einer anderen Filterbank?

Nehmen wir dann an, Sie entdecken Vocals und möchten Worte haben

  • Synth = Sampleplayer 1 mit Loop + Filterbank
  • ... + eine Art programmierbare Hüllkurven , die die Filterparameter ändern, damit Sie Texte schreiben können
  • ... + Sample-Player 2, für Atemgeräusche, mit einem Loop-Punkt + einer anderen Filterbank?

(Dann stellen Sie fest, dass es äußerst schwierig ist, die Hüllkurven genau richtig hinzubekommen, und verwerfen diese Idee.)

Etc. Die Verwendung von Sample-Playern als Komponenten in der Architektur eines Synthesizers zum Modellieren aller Sounds ist eine Idee. Aber es gibt viele, viele andere Modelle. Grundsätzlich hat jede klangerzeugende Software ihr eigenes Modell und ihre eigene Architektur, und sie alle haben unterschiedliche Ausdruckseigenschaften. Es gibt viele Kategorien und Perspektiven für die Klassifizierung von Synthesizern. Synths mit analoger Modellierung, physikalische Modellierung , PCM-Sample-Player, subtraktive Synthese, additive Synthese, FM-Synthese, ... Die Idee, mehrere Komponenten-Samples zu verwenden und eine Reihe solcher Komponenten mit Instrumentenverhaltensmodellen zu steuern, erinnerte mich an Wallander Instruments. Einige Sample-Player unterstützen Formant-Filter und/oder Impulsantworten, wie NI Kontakt. Das Falten eines Klangs mit einer Impulsantwort, die von einem Instrument (oder Raum) aufgenommen wurde, kann zum Modellieren eines Instrumentenkörpers verwendet werden, und es sollte Ihnen zumindest einige der gewünschten Formanten liefern. Aber man kann aus einer Darbietung keine Impulsantwort extrahieren ! Sie müssen (irgendwie) speziell eine aufnehmen. Und AFAIK können Sie keine Impulsantwort vom Körper einer Person aufzeichnen. (Interessante Idee aber)

Wenn Sie mit verschiedenen Synth-Architekturen experimentieren möchten, einschließlich Sample-basierter, können Sie Prototyping-Umgebungen wie Pure Data, Max/MSP oder NI Reaktor verwenden. Oder sogar Sampler, aber dedizierte Sampler geben Ihnen nicht die Freiheit für architektonische Experimente, die Sie wahrscheinlich brauchen. Wie auch immer, ich ermutige Sie, weiterzumachen und Ihre Flügel damit zu versuchen. Sie werden sehr schnell viel mehr lernen und neue Entdeckungen machen. Viele der Entdeckungen werden anderen bereits bekannt sein, aber je länger Sie fortfahren, desto wahrscheinlicher werden Sie etwas völlig Neues entdecken. Das Wichtigste ist, es weiter zu versuchen. :)

Fasst (und darüber hinaus) meine derzeitige missliche Lage und Richtungen auf sehr klare Weise zusammen. Paar Kommentare: 1) Angesichts meiner Ziele bezweifle ich, dass ich so weit gehen werde wie die Sprachsynthese, vielleicht bestenfalls eine Singstimme mit einem einzelnen Vokal (la la la) nachzuahmen, 2) ich könnte mich von Single-Sample entfernen, weil ich es brauche um Formanteninformationen zu erfassen, aber ich werde versuchen, Formanten zu modellieren, damit ich aus Noten in einem begrenzten Bereich extrapolieren kann. Ich denke darüber nach, kurze, vibratolose Noten aus Soli mit Tonleitern und Arpeggios zu automatisieren. 3) Welche Art von Instrumenten außer der menschlichen Stimme benötigen Atemgeräusche für die Genauigkeit?
@BatWannaBe Blasinstrumente wie Flöte oder Saxophon. Ich habe mir nicht angesehen, was wirklich im Spektrum passiert, wenn verschiedene Noten gespielt werden, aber ich würde annehmen, dass die Tonhöhe von Windgeräuschen ziemlich unabhängig von der klingenden Tonhöhe ist. Sie können sogar leere Geräusche ohne klingende Noten blasen. Wenn Sie das Verhalten verschiedener Instrumente untersuchen, erhalten Sie viele solche Komponenten im "Weltmodell". Bei der physikalischen Modellierung versuchen sie, eine 1:1-Entsprechung zwischen dem Weltmodell und den Komponenten des Synth-Modells herzustellen, aber den Ergebnissen fehlen tendenziell einige der strukturellen Details, die das Sampling bieten kann.