微型端口接口
如支持设备中所述,PortCls 系统驱动程序提供一组用于管理波次和 MIDI 设备的内置端口驱动程序。 若要使用其中一个端口驱动程序来管理特定类型的音频设备,适配器驱动程序必须提供相应的微型端口驱动程序,通过管理所有设备的硬件相关函数,这是端口驱动程序的有益补充。
本部分讨论以下微型端口驱动程序类型:
通过管理使用音频数据循环缓冲区的波次呈现或捕获设备的硬件相关函数,补充 WaveRT 端口驱动程序。
通过管理音频适配器混音器线路中的各种硬件控件(例如音量级别),补充拓扑端口驱动程序。
通过管理简单 MIDI 设备的硬件相关函数,补充 MIDI 端口驱动程序。
通过管理高级 MIDI 设备的硬件相关函数,补充 DMus 端口驱动程序。
每个端口驱动程序都实现一个呈现给微型端口驱动程序的 IPortXxx 接口。 反过来,微型端口驱动程序必须实现一个 IMiniportXxx 接口,端口驱动程序使用该接口与微型端口驱动程序通信。 下表显示了每种设备类型的 IPortXxx 接口,以及对应的 IMiniportXxx 接口。
设备类型 | 端口驱动程序接口 | 微型端口驱动程序接口 |
---|---|---|
WaveCyclic |
||
WavePci |
||
WaveRT |
||
拓扑 |
||
MIDI |
||
DirectMusic |
在上表中,所有 IPortXxx 接口都派生自基接口 IPort,而所有 IMiniportXxx 接口都派生自 IMiniport。