用户模式 WDM 音频组件

用户模式 Microsoft Windows 驱动程序模型 (WDM) 音频组件包括:

  • WinMM 系统组件

  • WDMAud 系统驱动程序

  • DirectSound 系统组件

  • DirectMusic 系统组件

  • Windows 音频服务

WinMM 系统组件

WinMM 系统组件(Winmm.dll 及其 16 位对应组件 Mmsystem.dll)实现 Microsoft Windows 多媒体 API waveXxx、midiXxx、mixerXxx 和 auxXxx(请参阅 Microsoft Windows SDK 文档)。 WinMM 组件使用 WDMAud 系统驱动程序将 WinMM API 调用转换为内核流式处理 I/O 请求。

WDMAud 系统驱动程序

用户模式 WDMAud 系统驱动程序 (Wdmaud.drv) 与内核模式 WDMAud 系统驱动程序 (Wdmaud.sys) 配对。 总之,WDMAud 系统驱动程序在 WinMM API 调用和内核流式处理 I/O 请求之间转换。 内核模式模式 WDMAud 驱动程序是 SysAudio 系统驱动程序的客户端。

DirectSound 系统组件

DirectSound 系统组件 (Dsound.dll) 支持 DirectSound API(请参阅 Microsoft Windows SDK 文档)。 DirectSound 组件是 SysAudio 驱动程序的客户端。 如果硬件混合可用,SysAudio 驱动程序会将 DirectSound 硬件缓冲区直接连接到呈现设备。 否则,SysAudio 驱动程序会将 DirectSound 软件缓冲区连接到 KMixer 系统驱动程序。 有关详细信息,请参阅使用 DirectSound 软件和硬件缓冲区呈现波次内容

DirectMusic 系统组件

DirectMusic 系统组件 (DMusic.dll) 支持 DirectMusic API(请参阅 Microsoft Windows SDK 文档)。 此组件将 DirectMusic API 调用转换为 WDM 音频设备的 I/O 请求。 DirectMusic 组件是 SysAudio 系统驱动程序的客户端。

Windows 音频服务

在 Windows XP 及更高版本中,Windows 音频服务组件 (Audiosrv.dll) 管理基于 Windows 的程序的音频设备。 停止 Windows 音频服务可防止音频设备和效果正常运行。 如果禁用音频服务,显式依赖它们的任何其他服务(包括 WDM 音频驱动程序)将无法启动。 在 Windows XP 及更高版本的 Home Edition、Professional 和 Server 版本中,音频服务默认配置为自动启动。 但是,在 Windows Server 2003 及更高版本的 Advanced Server,、Data Center 和 Web Server 版本中,音频服务默认处于禁用状态。 禁用音频服务时,安装音频设备不会启用它们 -- 仅当管理员显式配置音频服务以执行此操作时,音频服务才会自动运行。 有关启动和停止 Windows 服务的信息,请参阅“服务”对话框中的帮助文件(在“管理员工具”下查看 Windows 控制面板)。