Video for Windows

USBカメラなんかで、キャプチャする方法。Video for Windows というマクロを使用します。

  • まずはライブラリにリンクさせる
  • #include <vfw.h>
    #pragma comment(lib,"vfw32.lib")

  • キャプチャーウィンドウをつくる
  • // キャプチャウインドを作成する
    //失敗するとNULLが返る。成功するとキャプチャハンドルが返る。
    ghWndCap = capCreateCaptureWindow(
        (LPTSTR) TEXT(""),// タイトルバー用の文字列
        WS_CHILD | WS_VISIBLE,  // ウィンドウスタイル
        225, 70, 500, 600,      // 左上の座標・横幅×高さ
        (HWND) hWnd,        // 親ウインドのハンドル
        (int)0 );           // ウインドウ識別子
    
    capDriverConnect( hWndCap, 0 ); //  接続
    
    // デフォルトでプレビューを開始する
    capPreviewRate(ghWndCap, MS_FOR_15FPS) ;
    capPreview(ghWndCap, TRUE) ;

    これで何とかダイアログにキャプチャウインドウがでた。 今回使ったカメラはI/O DATAのUSBCAM 30V です。

    参考リンク

  • Concept!のVideo Capture項
  • 。少なくとも私が持ってるMSDNのVideo for Windowsの項は日本語でないので、ここの日本語訳はものすごくたすかりました。