如何才能在DirectShow.NET中仅播放特定的音频通道并将其余部分静音?

时间:2012-08-14 10:02:28

标签: c# audio directshow directshow.net

我正在尝试播放带有多声道音频的AVI文件。
如何使用DirectShow.NET静音或播放特定频道?

有没有办法使用现有的DirectShow过滤器接口执行此操作,还是有第三方过滤器可以执行此操作?

1 个答案:

答案 0 :(得分:2)

您需要将所有频道合并为一个并指定WaveFormatExtensible而不是WaveFormatEx,因为您需要指定输出频道的掩码。如果您收到需要输出的通道数量较少或相同,样本采集方式将起作用:例如 - 您接收立体声并且需要输出到后置或中央通道 - 这种方式不起作用,因为您无法更改样本采集器中的类型,但输出到左或右声道将正常工作。

您可以使用我执行该功能的directshow示例过滤器,您可以在此处找到它:Pure .NET DirectShow Filters in C#