KsStudio-筛选器和筛选器和工厂

本主题介绍如何使用 KSStudio 实用工具显示筛选器和筛选器工厂。

Microsoft Windows 驱动模型 (WDM) 音频驱动程序将音频设备表示为 KS 筛选器,它们表示设备上的硬件缓冲区作为筛选器上的 pin。 有关详细信息,请参阅 筛选器、固定和节点属性

KS 筛选器工厂枚举选项

KSStudio 中的会话通常通过枚举系统上安装的 KS 筛选器工厂来开始。 默认情况下,在启动时向用户显示枚举选项对话框。 在启动后,可以通过菜单栏 (" 选项 ... ") 调用此对话框。

KSStudio 枚举筛选器的方法有两种:

  • 设置 API。 这是目前最常见和最有用的筛选器工厂枚举方法。 如果在系统上正确安装了筛选器工厂,则会通过一个或多个筛选器类别对其进行枚举, (例如 KSCATEGORY_AUDIO、) KSCATEGORY_RENDER 等。 可以通过命中 "类 ..." 来选择要枚举的类别鼠标. 这将调用一个对话框,其中显示了当前在 KSMedia 中声明的所有类别。

  • 按设备名称显式显示。 如果安装 API 没有枚举筛选器工厂,但驱动程序安装 (即设备管理器) 中显示时没有错误,则可以按名称明确地实例化设备。 为此,可在 "附加筛选器" 编辑控件中输入设备名称。 这对于排查 (例如 INF 错误) 的枚举问题可能非常有用。

KSStudio 还提供了几个 "测试筛选器",仅存在于 KSStudio 程序中。 这些测试筛选器可用于将数据直接流式传输到 KS 筛选器,这对于故障排除非常有用。

KSStudio 实用工具中讨论的筛选器工厂视图中显示了 KSStudio 枚举的安装的筛选器工厂。

筛选器工厂

枚举筛选器工厂显示在 筛选器工厂视图中。 筛选器工厂是 WDM 驱动程序的一个方面,它公开了一个设备名称,该名称可传递到 CreateFile 来实例化筛选器 (这是一个) 的内核对象。 对于枚举的每个筛选器工厂,KSStudio 将显示使用 Windows 安装程序 api 检索到的属性的缩减列表,而无需实际实例化筛选器。

设备名称属性是用户选择实例化筛选器时由 KSStudio 传递给 CreateFile 的字符串。

筛选器实例化

若要实例化筛选器,请双击 筛选器工厂视图 中的筛选器工厂 (或右键单击工厂,然后选择实例化) 。 如果实例化成功,KSStudio 将通过属性) 调用的问询问筛选器 (,并使用获取的值生成一个配置文件。 此配置文件用于在 对象拓扑视图中生成筛选器实例的图形表示形式(从属性值推导出),并在 " 对象详细信息" 视图 中生成文本表示形式,其中显示了获得的实际属性值。

若要关闭某个筛选器,请右键单击该筛选器,然后从弹出菜单中选择 " 关闭 "。

测试筛选器

KSStudio 附带了几个内置的测试筛选器或数据泵,因此已命名,因为它们会提交数据缓冲区,这些缓冲区由 KS 筛选器填充或使用 Graph。

  • 波形文件泵。 此筛选器读取 .wav 文件,并将数据提交到可以使用 KSDATAFORMAT_TYPE_AUDIO 数据的 pin。

  • MIDI 文件泵。 此筛选器读取文件中的文件,并将数据提交到可以使用 KSDATAFORMAT_TYPE_MUSIC 数据的 pin。

  • 波形捕获泵。 此筛选器将空缓冲区提交给能够提供 KSDATAFORMAT_AUDIO 数据的 pin。 数据使用 VU 计量器显示。

  • MIDI 捕获泵。 此筛选器将空缓冲区提交给能够提供 KSDATAFORMAT_MUSIC 数据的 pin。 数据在 "日志记录" 窗口中显示为原始和转换后的 MIDI 消息。

  • 全双工流泵。 此筛选器将空缓冲区提交到 KSDATAFLOW_IN 的 pin,然后重新提交检索到 KSDATAFLOW_OUT pin 的数据。 例如,可以使用此泵从 mic pin 捕获 PCM 数据,并将其重新提交到呈现 pin。

另请参阅

KSStudio 实用程序

KSStudio-Pin 和节点

KSStudio-KSProperties 和事件

KSStudio 监视器

KSStudio-用法示例