仮想MIDIポート対応
SMOutDevCtrl::Initialize にて、 MIDI出力デバイス一覧の作成方法を次のように変更する。 この変更により、オフラインデバイスが一覧に表示されなくなる。
MIDIGetNumberOfDevices, MIDIGetDevice を用いてエンドポイントを検索する
オフラインのデバイス | ○検索結果に含まれる |
仮想ポート | ×検索結果に含まれない |
MIDIGetNumberOfDestinations, MIDIGetDestination を用いてエンドポイントを検索する
オフラインのデバイス | ×検索結果に含まれない |
仮想ポート | ○検索結果に含まれる |
検索対象となるエンドポイントの違いは、CoreMIDIのリファレンスに記載されている(MIDIGetDevice)。
Core MIDI Framework Reference > MIDIServices.h : MIDIGetDevice https://developer.apple.com/library/mac/documentation/MusicAudio/Reference/CACoreMIDIRef/MIDIServices/CompositePage.html#//apple_ref/c/func/MIDIGetDevice
Mac OS X版にて、MIDI OUTの選択肢に仮想MIDIポートを表示するように修正する。
iOS版Ver.1.0.0をリリースするときに対策した修正をMac OS X版にマージする。