IMXF 接口
DirectMusic 端口和微型端口驱动程序中的所有 MIDI 传输都使用同一接口执行:IMXF。
IMXF 是 DirectMusic MIDI 转换筛选器的 COM 接口。 端口驱动程序中处理 MIDI 数据的微型端口驱动程序、序列器和其他实体使用 IMXF 作为其通用 COM 接口。 微型端口驱动程序实现此接口时,它可以参与 MIDI 传输。 驻留在 PortCls 中的 IPortDMus 会管理 IMXF。 从捕获设备到捕获接收器的接口也是 IMXF 接口。
MIDI 数据在打包时间戳数据的缓冲区中在用户模式和内核模式之间传输。 内核端口驱动程序将这些缓冲区分解为个别事件(请参阅 DMUS_KERNEL_EVENT)。 当达到触发时间时,高分辨率 MIDI 序列器会将这些事件传递给微型端口驱动程序。
在输入端,内核端口驱动程序从微型端口驱动程序中提取个别输入消息,并生成打包缓冲区以传递到用户模式。 因此,DirectMusic 微型端口驱动程序的数据传输模型由 IMXF::PutMessage 和 IAllocatorMXF::GetMessage 组成。
IMXF 接口支持以下方法:
IAllocatorMXF 接口通过添加以下方法扩展 IMXF:
有关使用这些接口的详细信息,请参阅分配器。