Date

DirectShowを使えばDVカメラから映像を取り込むだけでなく映像を出力することもできる。

DVカメラを「VTRモード」にする

DVカメラは、テープを制御して再生や録画をする「VTRモード」と、カメラから映像を取り込む「カメラモード」の2種類がある。映像をカメラに出力するには「VTRモード」を選ぶ。

これはコードを組むのではなくてデバイスを直接操作する。 VTRモードにしてからWindowsに認識させること。

このウィンドウが出たら何もせずに閉じる。というのもDVカメラがPCに向かって映像を出力するモードになってしまい、元に戻せなくなることがある。

フィルタグラフを構築する

フィルタグラフは次のようになる。

ここでは映像のみ扱っているが、もちろん音声も入力できる。映像は DV エンコーダフイルタを通して dvsd に設定する。カメラがNTSCの場合は720x480 29.97fpsである。音声はリニアPCM 48khz 16bit である。(音声 32khz 12bit 4chモードもある。)

映像と音声のデータがそろったら、DV Mux フィルタで音声と映像を統合したストリームを作成し、DVカメラを送出する。

DVエンコーダフィルタとDV Muxフィルタのインスタンスを作成する方法を示す。

1
2
3
4
// DVエンコーダフィルタ
CoCreateInstance(CLSID_DVVideoEnc,NULL,CLSCTX_INPROC_SERVER,IID_IBaseFilter,(void**)&pDVEnc);
// DV Mux フィルタ
CoCreateInstance(CLSID_DVMux,NULL,CLSCTX_INPROC_SERVER,IID_IBaseFilter,(void**)&pDVMux);
  • うまく映像が送出できないときはDVカメラの電源をいれなおしてみてください。

Comments

comments powered by Disqus