我正在研究一个小技巧,使用RtMidi作为OSX上CoreMIDI的包装器从应用程序发送MIDI消息。我使用RtMidiOut::openVirtualPort("MyAwesomePort")所以我可以选择我的应用程序作为DAW中的输入源。但是,如果我的程序关闭并再次打开它,我的DAW不会将输入设备识别为相同的端口,尽管被赋予了相同的名称。我本来是用pyrtmidi的,所以直接用RtMidi验证了用C++写的行为。在这种情况下,“我的DAW”是Reaper4,但我在ProTools、Logic和MuLab中复制了该行为。我知道保留虚拟MIDI端口的一些独特性是可能的,因为MidiKe