Q:MIDI イベントの送信が効果を持たないようです。MIDI デスティネーションは正しく設定されているのでしょうか。
A:ミュージックプレーヤーはミュージックシーケンスに 1 対 1 で関連付けられています。ミュージックシーケンスはさまざまなミュージックトラックを保持するように設計されており、それはイベントの論理的グループになるように考えられています。MusicPlayerSetSequence メソッドはシーケンスとそのトラックをミュージックプレーヤーに関連付けます。MusicSequence には AUGraph オブジェクトが関連付けられている場合があります。AUGraph オブジェクトは一連の AudioUnit と、AudioUnit 間の接続を表します。このように、MusicSequence の各 MusicTrack が、そのイベントのデスティネーションを AUGraph 内の特定の AudioUnit にすることがあります。MusicPlayerSetSequence は、シーケンスの詳細設定の中で、自動的に MusicSequence を MusicPlayer に関連付けることになります。これには、シーケンスのトラックをそれらの標準設定のデスティネーションに設定することも含まれます。
MusicSequenceSetMIDIEndpoint メソッドまたは MusicSequenceSetAUGraph メソッドでシーケンス全体を特定のエンドポイントまたは AUGraph に割り当てることができます。しかし、クライアントがシーケンスのトラックを AUGraph 内の特定の AudioUnit にカスタム接続しようとする場合は、MusicTrackSetDestNode は MusicPlayerSetSequence の使用後に作成する必要があります。これは個々のトラックを MIDIEndpoints に接続するのと同じです。MusicTrackSetDestMIDIEndpoint は MusicPlayerSetSequence の後にのみ呼ばれる必要があります。
MusicPlayer API の詳細については、「Audio and MIDI on Mac OS X -May 2001」を参照してください。
[2004 年 1 月 15 日]
|