0

我是 DirectShow 的新手。我正在用 C# 编写一个应用程序,用于从模拟采集卡进行采集。我有一个模拟采集卡,我想知道如何将模拟交叉开关过滤器属性从“0:模拟调谐器输入”更改为“1:视频复合输入”。这是我的过滤器图

过滤器图

我无法将 Tuner 的“Analog Video pin”连接到 Crossbar 滤波器的“Video Composite In”。我尝试运行 IAMCrossbar 过滤器的“Route”方法,但失败了。我不知道我的路径是否正确。请指导...

4

1 回答 1

0

IAMCrossbar::Route你是怎么做的。请务必阅读使用 Crossbars了解详细信息 - 它是 C++ API,但我想您使用的是 DirectShow.NET,它具有类似的方法。

从下面的评论中提取的解决方案代码片段:

IAMCrossbar Xbar = (IAMCrossbar)pNM8001AnalogXbar; 
//hr = Xbar.CanRoute(1, 0); 
hr = Xbar.Route(1, 0); 
checkHR(hr, "Some NM8001AnalogXbar Problem"); //CONNECT NM8001 Analog TUNER and NM8001 Analog XBAR 
hr = pGraph.ConnectDirect(
  GetPin(pNM8001AnalogTuner, "Analog Video"), 
  GetPin(pNM8001AnalogXbar, "0: Video Tuner In"), 
  null); 
checkHR(hr, "Can't Connect NM8001AnalogTuner and NM8001AnalogXbar");
于 2013-02-18T11:28:42.033 回答