WavePci 微型端口驱动程序

重要 不再建议使用 WavePci,而是使用 WaverRT。

WavePci 微型端口驱动程序管理波渲染或波形捕获设备的硬件依赖功能,该设备具有散点/收集 DMA 硬件,可以向/从物理内存中的任何位置传输音频数据。 如果波形设备无法执行散点/收集传输或只能访问物理内存中的受限区域,则应改用 WaveCyclic 微型端口驱动程序

WavePci 微型端口驱动程序应实现两个接口:

  • 微型端口接口 执行微型端口驱动程序初始化、通道枚举和流创建。

  • 流接口 管理波流并公开微型端口驱动程序的大部分功能。

微型端口接口 IMiniportWavePci 继承 IMiniport 接口中的方法。 IMiniportWavePci 提供以下附加方法:

IMiniportWavePci::Init

初始化微型端口对象。

IMiniportWavePci::NewStream

创建新的流对象。

IMiniportWavePci::Service

通知微型端口驱动程序服务请求。

流接口 IMiniportWavePciStreamIUnknown 接口继承方法。 IMiniportWavePciStream 提供以下附加方法:

IMiniportWavePciStream::GetAllocatorFraming

获取微型端口驱动程序为波流的首选分配器帧参数。

IMiniportWavePciStream::GetPosition

获取设备在波流中的当前位置。

IMiniportWavePciStream::MappingAvailable

指示端口驱动程序提供了新的映射。

IMiniportWavePciStream::NormalizePhysicalPosition

将物理缓冲区位置值转换为基于时间的值。

IMiniportWavePciStream::RevokeMappings

撤销以前颁发的映射。

IMiniportWavePciStream::Service

通知服务请求的流对象。

IMiniportWavePciStream::SetFormat

设置波流的数据格式。

IMiniportWavePciStream::SetState

设置波流的状态。