Question

Je voudrais faire un simple plug-in VST qui fait cela:

  1. analyser un flux audio (volume, rythme, etc ...)
  2. a déclencheurs sur la sortie de l'analyseur (par exemple lorsque le volume de faire quelque chose> seuil)
  3. générer des événements MIDI sur la base des éléments déclencheurs

Ceci est d'être en mesure de plug-ins de la chaîne, même si elles ne sont pas conçus pour cela. Par exemple, je pouvais contrôler le gain d'un compresseur avec l'enveloppe d'un flux audio, en connectant simplement le MIDI OUT de mon plug-in à la prise MIDI IN du bouton de gain du compresseur.

Le problème est que je ne sais pas comment faire. Y at-il un soutien pour les connexions MIDI directs comme celui-ci dans VSTs? Ou peut-être que je besoin d'une sorte de « dispositif midi virtuel » pour interconnecte?

Était-ce utile?

La solution

Votre intuition est probablement correcte ici; cette tâche sera plus facile à réaliser en écrivant un périphérique MIDI virtuel au lieu d'un plug-in VST. Il est possible d'envoyer des événements MIDI à un séquenceur en utilisant l'appel, mais le problème sendVstEventsToHost () est que la documentation ne précise jamais comment le host est nécessaire pour réagir à ces événements. De nombreux hébergeurs les ignorent tout simplement, et je ne peux pas penser à celui qui permet le routage facile d'un plug-in à un canal MIDI (Bidule peut-être Plogue?).

Vous pourriez être en mesure d'y arriver avec les unités audio avec le type de plug-in kAudioUnitType_Generator ... mais je ne l'ai jamais écrit un tel plugin, mon impression est que c'est ce que vous utilisez pour générer MIDI à l'hôte. Mais encore une fois, le problème est que je ne sais pas comment l'hôte vous permettra de l'audio vers le plug-in et accepter MIDI de celui-ci.

En tout cas, votre idée mise en œuvre en tant que plug-in sera le plus difficile à mettre en œuvre lorsque vous souhaitez normaliser son comportement pour les séquenceurs les plus largement utilisés. Je pense qu'une façon d'accomplir beaucoup plus facile ce que vous voulez est de créer un périphérique MIDI virtuel, que vous aviez pensé déjà, puis utilisez recâbler pour acheminer un signal d'entrée à votre programme.

Modifier : Voici quelques ressources sur l'écriture de pilotes MIDI pour différents systèmes:

Autres conseils

plugins VST ne prennent pas en charge les connexions midi directs, ils ne peuvent avoir entrée / sortie MIDI ports.

Il est encore possible de le faire bien, vous avez juste besoin d'un hôte qui prend en charge midi de routage d'un plug-in à l'autre. hôtes modulaires tels que EnergyXT, Bidule, AudioMulch et Console excellent ici. Ils permettent tous les signaux audio et midi à être librement acheminés (sauf aucun chemin de retour). Mais il peut être aussi possible hôtes avec plus de style racks vst mélangeur « traditionnels ». (Par exemple, AFAIK Reaper transmettra tout midi d'un plug-in à l'autre.)

Si vous voulez construire votre plugin dans .NET consultez VST.NET

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top