• 事前準備 対応するバージョンのPlatform SDK, DirectX, DirectShowをインストールする.
    • Platform SDK for Windows Server 2003 R2 をダウンロードする.ダウンロードした*.imgファイルをCDに焼くか,仮想ドライブソフトにマウントしてPlatform SDKをインストール.
    • DirectX 9.0 SDK (February 2005) をダウンロードしてインストール.
    • DirectX 9.0 SDK (February 2005) Extras (DirectShow SDK)をダウンロードする.自己解凍ファイルになっているので適当なフォルダに解凍して, できたExtrasフォルダをDirectX 9.0 SDKのフォルダ(x64環境だと以下)にコピーする.
      C:\Program Files (x86)\Microsoft DirectX 9.0 SDK (February 2005)
      より新しいDirectXもあるが,videoInputに対応するのはこのバージョン(February 2005)のみ.
  • ビルド
    1. videoInputをダウンロード(videoInput0.1995.zip)して解凍.
    2. 解凍したフォルダ内の videoInputSrcAndDemos/VC2008-videoInputcompileAsLib にVC2008用のプロジェクト,ソリューションファイルがあるのでVC2010で開いて変換.
    3. プロジェクトのプロパティ -> 構成プロパティ -> VC++ディレクトリ に以下を追加(Windows 7 x64の場合).
      • 実行可能ファイルディレクトリ
        C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Bin
        C:\Program Files (x86)\Microsoft DirectX 9.0 SDK (February 2005)\Utilities\Bin\x86
      • インクルードディレクトリ
        C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include
        C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include\mfc
        C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include\atl
        C:\Program Files (x86)\Microsoft DirectX 9.0 SDK (February 2005)\Include
        C:\Program Files (x86)\Microsoft DirectX 9.0 SDK (February 2005)\Extras\DirectShow\Include
        C:\Program Files (x86)\Microsoft DirectX 9.0 SDK (February 2005)\Extras\DirectShow\Samples\C++\DirectShow\BaseClasses
      • ライブラリディレクトリ
        C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Lib
        C:\Program Files (x86)\Microsoft DirectX 9.0 SDK (February 2005)\Lib\x86
        C:\Program Files (x86)\Microsoft DirectX 9.0 SDK (February 2005)\Extras\DirectShow\Lib\x86 
    4. その他プロジェクトの設定を必要に応じて変更してビルドする. ビルドするとctlutil.hのエラーC4430か,winnt.hのリンクエラーC2146が出るかもしれない. これはオペレータ関数の返値の問題なので,
      operator=(LONG);
      の部分を
      COARefTime& operator=(LONG);
      に変更する. (また,intrin.hで__MACHINEIの多重定義エラーが出たら該当箇所をコメントアウトする).
    5. 再度ビルド.
  • インクルードファイルとライブラリファイル インクルードファイル
    videoInputSrcAndDemos/libs/videoInput/videoInput.h
    ライブラリファイル
    videoInputSrcAndDemos/VC2008-videoInputcompileAsLib/Release/videoInput.lib
  • その他 自分のプロジェクトにリンクしたとき,
    error LNK2038: '_ITERATOR_DEBUG_LEVEL' の不一致が検出されました。値 '2' が 0 の値 'main.obj' と一致しません。
    というエラーが出た場合はライブラリのビルドオプションで,
    プロジェクトのプロパティ -> C/C++ -> プリプロセッサ
    に _ITERATOR_DEBUG_LEVEL=0 を追加.

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2024-03-08 (金) 18:06:08