2009-03-31 21 views
2

仮想MIDIとのVST

  1. (...など、ビート、ボリューム)オーディオストリームを分析するには、(アナライザの出力にトリガを持っていますボリューム>しきい値)
  2. がトリガに基づいてMIDIイベント

を生成するときなど何かをこれは、彼らはそれのために設計されていない場合でも、チェーンのプラグインすることができることです。たとえば、プラグインのMIDI OUTをコンプレッサーのゲインボタンのMIDI INに接続するだけで、オーディオストリームのエンベロープでコンプレッサーのゲインをコントロールできます。

問題はどのようにこれを行うかわかりません。 VSTのような直接MIDI接続がサポートされていますか?あるいは、私は相互接続のために何らかの "仮想ミッドデバイス"が必要でしょうか?

答えて

5

あなたのここでの勘違いはおそらく正しいでしょう。この作業は、VSTプラグインではなく仮想MIDIデバイスを作成することで簡単に実現できます。 MIDIイベントをsendVstEventsToHost()呼び出しを使用してシーケンサに送信することは可能ですが、ドキュメントではホストがこれらのイベントにどのように反応する必要があるかを決して指定しないという問題があります。多くのホストは単にそれらを無視するだけで、プラグインからMIDIチャンネル(たぶんplogue bidule?)への簡単なルーティングを可能にするものは考えられません。

kAudioUnitType_GeneratorプラグインタイプのAudio Unitsでこれを実現できますが、このようなプラグインは一度も書かれていませんが、これはホストにMIDIを生成するためのものです。しかし、もう一度、ここでの問題は、ホストがどのようにオーディオをプラグインにルーティングし、MIDIからそれを受け入れることができるかわからないことです。

いずれにしても、プラグインとして実装されたアイデアは、最も広く使用されているシーケンサーの動作を標準化する際に実装するのが最も難しいでしょう。あなたが望むものを達成するもっと簡単な方法は、すでに考えていたように仮想MIDIデバイスを作成してから、再配線を使って入力信号をプログラムにルーティングすることです。

編集:ここでは、様々なシステムのためのMIDIドライバを書くには、いくつかのリソースです:

+0

感謝を見て.NETでプラグインを構築したい場合。そのような仮想MIDIデバイスを書く上の任意のポインター?グーグル "バーチャルミッド"は、90年代からいくつかのシェアーなシェアウェアを返し、私はどのようにそのようなドライバを書くためのドキュメントを見つけることができません。 –

2

VSTプラグインが直接MIDI接続をサポートしていない、彼らは唯一のMIDIを持つことができますイン/アウトポート。

これはまだ可能ですが、1つのプラグインから別のプラグインへのルーティングmidiをサポートするホストが必要です。 EnergyXT、Bidule、AudioMulch、Consoleなどのモジュラーホストがここで優れています。それらはすべて、オーディオおよびMIDI信号が自由にルーティングされることを可能にする(フィードバック経路を除いて)。しかし、より伝統的なミキサースタイルのvstラックを持つホストでも可能です。 (例えば、私の知る限り死神は、次の1つのプラグインから任意のMIDIを転送します。)

+0

これはAbleton Liveで、midiプラグインを最初に追加するとき(つまりトランスポーザー)に起こります。その後、それを追加することができますか? –