0

私は DirectShow を初めて使用します。アナログ キャプチャ カードからキャプチャするためのアプリケーションを C# で作成しています。アナログ キャプチャ カードを持っていますが、アナログ クロスバー フィルターのプロパティを "0: アナログ チューナー イン" から "1: ビデオ コンポジット イン" に変更する方法を知りたいです。これが私のフィルターグラフです

フィルターグラフ

チューナーの「アナログビデオピン」をクロスバーフィルターの「ビデオコンポジットイン」に接続できません。IAMCrossbar フィルターの「Route」メソッドを実行しようとしましたが、失敗しました。自分の道が正しいかどうかはわかりません。ガイドしてください...

4

1 に答える 1

0

IAMCrossbar::Routeあなたがそれを行う方法です。詳細については、クロスバーの操作を必ずお読みください - これは 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 に答える