KS 拓扑注意事项

WDMAud 系统驱动程序 (Wdmaud.sys) 将 KS 筛选器拓扑转换为通过混音器 API 公开的旧混音器线路。 非 PCM 引脚对应于混音器 API 中的 SRC 线路 (MIXERLINE_COMPONENTTYPE_SRC_XXX)。 如果此引脚位于最终流入桥接引脚(图形终结点的物理连接)的数据路径(专用于非 PCM 数据)中,则混音器 API 会将桥接引脚公开为额外的 DST 线 (MIXERLINE_COMPONENTTYPE_DST_XXX),该线路与 PCM 数据的 DST 线路分开。 这会为通过混音器 API 客户端(例如 SndVol32 实用工具的替代)可见的控件添加无谓复杂性。

如果不想以这种方式公开非 PCM 引脚,一种方法是确保包含该引脚的数据路径最终馈送到由 PCM 数据路径共享的 SUM 节点中。 也就是说,将非 PCM DST 线路联接到主 DST 线路。 遗憾的是,此解决方法错误地陈述了真正的硬件拓扑,可能导致客户端将来出现问题,这些客户端尝试通过 SUM 节点下游的节点控制非 PCM 数据流。 更好的方法是修改混音器 API 客户端,只忽略没有控件的 SRC 和 DST 线路。

如果使用 KsStudio 实用工具 在 KSCATEGORY_AUDIO 中查看波形筛选器,则应该会看到非 PCM 数据的单独引脚。 在 KSCATEGORY_AUDIO_DEVICE 下查看复合系统音频图时,应该会看到主波形输出引脚上的非 PCM 数据范围以及所有 PCM 数据范围。

SysAudio (Sysaudio.sys) 是 Windows Server 2003、Windows XP、Windows 2000 和 Windows Me/98 中的系统音频设备。 请注意,SysAudio 会自动生成 KSCATEGORY_AUDIO_DEVICE,驱动程序不应将自身手动注册在此类别中。

无需将非 PCM 数据路径连接到拓扑微型端口驱动程序。 仅当非 PCM 数据路径与设备拓扑的其余部分交互时,例如,如果它馈送到通用混音器或采样率转换器中,此连接才有用。 将流式处理引脚连接到桥接引脚,其中两个引脚都位于波形微型端口驱动程序上,会为直接流向 S/PDIF 端口的非 PCM 数据流形成一个有效的完整拓扑。