如何从WDM流音频源(Realtek HD Audio)捕获
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从WDM流音频源(Realtek HD Audio)捕获相关的知识,希望对你有一定的参考价值。
我正在尝试在DirectShow中使用各种音频源,并且我的系统中有这些捕获设备,我认为它们很常见(由芯片组驱动程序提供:]
Realtek高清音频线路输入Realtek高清音频立体声输入Realtek高清音频麦克风输入
它们看起来像捕获源,提供模拟输入和24位pcm输出,并且可以将输出连接到其他过滤器(渲染器等)。但是捕获过滤器的IMediaFilter :: Run返回的代码是ERROR_BAD_COMMAND,说明不多。我在程序中以及在GraphStudioNext中都尝试过,该程序没有显示任何其他信息。
是否有可能将其用于捕获以及如何使用?
更新
例如,我尝试使用麦克风输入(实际上已连接并正常工作)来绘制该图。在这种设置下,图形不会启动(ERROR_BAD_COMMAND),但是使用其他源,图形会启动。这是同一台设备,但驱动程序不同。一种有效的方法是“音频捕获源”类别,而另一种则不是“ WDM流捕获设备”。
使用GraphStudioNext检查设备的最简单方法是使用PCM音频输入设备本身,AVI Mux过滤器和File Writer过滤器以此连接(使用默认媒体类型)来构建记录图:
<< img src =“ https://image.soinside.com/eyJ1cmwiOiAiaHR0cHM6Ly9pLnN0YWNrLmltZ3VyLmNvbS9oeUFTNy5wbmcifQ==” alt =“在此处输入图像描述] [1”>
您点击运行,并且在图形创建过程中提示的位置中,记录图形通过Filter Writer通过Filter Writer生成非空文件。
-
所以现在我意识到您的问题有点不同。您可以在
下看到与您的音频输入设备相对应的过滤器- Audio Capture Sources-
CLSID_AudioInputDeviceCategory
- WDM流捕获设备-
AM_KSCATEGORY_CAPTURE
并且问题是第一个过滤器有效,而另一个过滤器无效。
来自AM_KSCATEGORY_CAPTURE
的类似过滤器似乎正在连接到拓扑,但是尝试运行触发器ERROR_BAD_COMMAND
。
首先,这些确实是不同的过滤器。即使底层硬件可能相同,“前端”筛选器也不同。 WDM设备支持“有效”的包装器Audio Capture Filter。在另一种情况下,通用WDM筛选器代理的行为通常是未定义的。过滤器未记录在案,我猜想它没有收到足够的初始化,否则未实现所需的行为,因此该代理不可以,也不应该与音频捕获过滤器代理互换。
以上是关于如何从WDM流音频源(Realtek HD Audio)捕获的主要内容,如果未能解决你的问题,请参考以下文章