处理来自两个 MIDI 源的 MIDI 数据

MIDI 子系统可以将 MIDI 消息从两个数据源路由到单个 MIDI 输出设备进行并发播放。 例如,一个源可以是背景音乐或已预先录制并存储在文件中的低音线。 第二个源可以是来自 MIDI 乐器(如键盘或吉他)的实时数据。

这两个数据源将 MIDI 数据发送到使用一个句柄标识的单个 MIDI 设备。 使用 midiStreamOut 函数和一个或多个流缓冲区发送一个数据流。 此数据流通常包含打包到缓冲区中的预先录制的数据。

通常使用 midiOutShortMsg 函数从 MIDI 检测) 异步发送第二个数据流 (。 流缓冲区的运行状态不会受到第二个数据流进行的异步调用的不利影响。

使用 midiOutShortMsg 发送的每条短消息都必须是完整的 MIDI 消息,其中包含状态字节和适当的数据字节数。 如果省略状态字节, midiOutShortMsg 将返回错误。 (但是,流 output 没有运行状态。)