MIDI レコーディングの管理
MIDI デバイスを開いた後、MIDI データの記録を開始できます。 Windows には、MIDI 録音を管理するための次の機能が用意されています。
値 | 説明 |
---|---|
midiInAddBuffer | 録音されたシステム排他 MIDI データを入力できるように、デバイス ドライバーにバッファーを送信します。 |
midiInReset | MIDI 録音を停止し、保留中のすべてのバッファを完了としてマークします。 |
midiInStart | MIDI 録音を開始し、タイムスタンプを 0 にリセットします。 |
midiInStop | MIDI 録音を停止します。 |
システム排他メッセージを記録するためにデバイス ドライバーにバッファーを送信するには、 midiInAddBuffer を使用します。 バッファーにシステム排他の記録データが入力されると、アプリケーションに通知されます。 通知手法の詳細については、「 MIDI データ ブロックの管理」を参照してください。
midiInStart 関数は、記録プロセスを開始します。 システム排他メッセージを記録する場合は、記録を開始する前に少なくとも 1 つのバッファーをドライバーに送信します。 録音を停止するには、 midiInStop を使用します。 midiInClose 関数を使用してデバイスを閉じる前に、保留中のデータ ブロックを midiInReset を呼び出して完了済みとしてマークします。
タイムスタンプ付きデータを必要とするアプリケーションでは、コールバック関数を使用して MIDI データを受信します。 タイミング要件が厳密でない場合は、ウィンドウまたはスレッド コールバックを使用できます。 ただし、イベント コールバックを使用して MIDI データを受信することはできません。
ストリーム バッファーを使用しないアプリケーションでシステム排他メッセージを記録するには、デバイス ドライバーにバッファーを指定する必要があります。 これらのバッファーは、 MIDIHDR 構造体を使用して指定されます。
関連トピック