PortClass提供的音频MINI端口驱动
PortClass提供了以下几种MiniPort驱动类型。
Cyclic DMA wave input and output:此类Mini端口驱动程序支持访问ISA和其他声卡的基于DMA的wave I/O功能。接口专门处理循环(autoinit)DMA缓冲区,流问题由端口驱动程序解决。
Scatter/gather wave input and output:此类微型端口驱动程序支持访问wave音频功能,如PCI声卡的wave I/O功能。在这个模型中,wave音频缓冲区的列表被逻辑地追加以创建wave音频流。
Static wave table output:此类微型端口驱动程序支持访问波形表合成器声音,如Creative Labs SoundBlaster AWE32适配器提供的声音。该接口允许将静态波形数据传输到适配器并操作语音参数。
Topology:此类微型端口驱动程序支持访问音频适配器通常提供的各种控件(音量、均衡、硬件混响)。接口本身与拓扑中组件(称为节点)的枚举、发现它们之间的互连以及控制参数的读写有关。
MIDI input and output:此类微型端口驱动程序支持访问基于MIDI的功能,如FM合成器和基于UART的硬件MIDI接口。定时由端口驱动程序或驱动程序堆栈中更高的某个其他组件处理,使微型端口能够集中精力立即实现或传递MIDI消息。MIDI设备,如MPU-401协处理器,它们处理自己的时间,需要一个专门的端口驱动程序,不在这个接口的范围内。
当然,随着Windows操作系统的版本升级,最新的微软文档支持以下6种:WavePci, WaveCyclic, WaveRT, MIDI, DMus, and Topology
WaveRT 从Vista之后开始初建议使用。
https://docs.microsoft.com/zh-cn/windows-hardware/drivers/audio/specifying-the-topology