Wie würde ich programmgesteuert mit VST (i) Plugins interagieren, um Audio zu synthetisieren?

Nehmen Sie zum Beispiel die VSTi Triforce, von Tweakbench. Wenn es in einem VST-Host auf dem Markt geladen ist, kann der Host ein (vermutlich MIDI-) Signal an das VSTi senden. Das VSTi verarbeitet dann dieses Signal und gibt synthetisches Audio aus, wie es von einem @ erzeugt wurdsoftware instrument innerhalb des VSTi.

Wenn Sie beispielsweise eine A4 (MIDI-Note, glaube ich) an das VSTi senden, wird das A über Middle C synthetisiert. Die Audiodaten werden an den VST-Host zurückgesendet, der sie dann entweder über meine Lautsprecher oder wiedergeben kann Speichern Sie es in .wav oder einem anderen Audio-Dateiformat.

Sagen wir, ich habe Triforce, und ich versuche, ein Programm in der Sprache meiner Wahl zu schreiben, das mit dem VSTi interagieren kann, indem ich eine zu synthetisierende A4-Notiz sende und sie automatisch in einer Datei auf dem System speichere?

Eventuell möchte ich in der Lage sein, eine gesamte einspurige MIDI-Datei (unter Verwendung von bereits vorhandenen, stabilen Bibliotheken, die für diesen Zweck verfügbar sind) zu analysieren und an das VSTi zu senden, um sie zu "rendern" / in eine Audiodatei zu synthetisieren.

Wie würde ich das machen, und inwelche Sprach soll ich nach dem Core Framework suchen?

Es wird letztendlich in einem Ruby-basierten Projekt verwendet, daher sind auch alle Verweise auf bestimmte Ruby-Ressourcen hilfreich.

Allerdings versuche ich nur, im Grunde zu verstehenwie die API eines VSTi funktioniert. (Ich habe festgestellt, dass diese Frage in hohem Maße mit der Frage zu tun hat, ob ein VST-Host überhaupt erstellt werden soll, obwohl nur VST-Ausgaben in einer Datei gespeichert und nicht wiedergegeben werden können, und dies mit erheblich geringerem Umfang.)

Vielen Dank im Voraus für jede Hilfe =)

Antworten auf die Frage(2)

Ihre Antwort auf die Frage