MIDI 端口驱动程序

MIDI 端口驱动程序负责管理 MIDI 合成器或捕获设备。 适配器驱动程序提供对应的 MIDI 微型端口驱动程序,该驱动程序将绑定到 MIDI 端口驱动程序对象,以形成 MIDI 筛选器(请参阅 MIDI 和 DirectMusic 筛选器),这些筛选器可以捕获或呈现 MIDI 流。

MIDI 端口驱动程序向微型端口驱动程序公开 IPortMidi 接口。 IPortMidi 会继承基接口 IPort 中的方法。 IPortMidi 提供以下其他方法:

IPortMidi::Notify

通知端口驱动程序 MIDI 合成器或捕获设备已前进到 MIDI 流中的新位置。 IPortMidi::RegisterServiceGroup

向端口驱动程序注册服务组对象。 服务组包含微型端口驱动程序调用 Notify 时要调用的一个或多个服务例程的列表;有关详细信息,请参阅服务接收器和服务组对象

MIDI 端口和微型端口驱动程序对象通过各自的 IPortMidiIMiniportMidi 接口相互通信。 微型端口驱动程序使用端口驱动程序的 IPortMidi 接口通知端口驱动程序硬件中断。 此外,端口驱动程序通过其 IMiniportMidiStream 接口与微型端口驱动程序的流对象通信。

在 Windows XP 及更高版本中,IPortMidiIPortDMus 接口均在单个内部驱动程序模块中实现。 这两个接口的相似性可促进这种整合。 例如,为这两个接口定义了相同的方法。 为早期版本的 Windows 编写的应用程序不会看到 IPortMidiIPortDMus 接口的任何行为变化,此类变化是因 MIDI 和 DMus 端口驱动程序的整合导致的。