-事前準備
対応するバージョンのPlatform SDK, DirectX, DirectShowをインストールする.
--[[Platform SDK for Windows Server 2003 R2:http://www.microsoft.com/downloads/details.aspx?familyid=E15438AC-60BE-41BD-AA14-7F1E0F19CA0D&displaylang=en]]
をダウンロードする.ダウンロードした*.imgファイルをCDに焼くか,仮想ドライブソフトにマウントしてPlatform SDKをインストール.
--[[DirectX 9.0 SDK (February 2005):http://www.microsoft.com/downloads/details.aspx?FamilyID=77960733-06e9-47ba-914a-844575031b81&DisplayLang=en]]
をダウンロードしてインストール.
--[[DirectX 9.0 SDK (February 2005) Extras:http://www.microsoft.com/downloads/details.aspx?FamilyID=8af0afa9-1383-44b4-bc8b-7d6315212323&DisplayLang=en]]
(DirectShow SDK)をダウンロードする.自己解凍ファイルになっているので適当なフォルダに解凍して,
できたExtrasフォルダをDirectX 9.0 SDKのフォルダ(x64環境だと以下)にコピーする.
 C:\Program Files (x86)\Microsoft DirectX 9.0 SDK (February 2005)
より新しいDirectXもあるが,videoInputに対応するのはこのバージョン(February 2005)のみ.

-ビルド
++[[videoInput:http://muonics.net/school/spring05/videoInput/]]をダウンロード(videoInput0.1995.zip)して解凍.
++解凍したフォルダ内の videoInputSrcAndDemos/VC2008-videoInputcompileAsLib にVC2008用のプロジェクト,ソリューションファイルがあるのでVC2010で開いて変換.
++プロジェクトのプロパティ -> 構成プロパティ -> 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 
++その他プロジェクトの設定を必要に応じて変更してビルドする.
ビルドするとctlutil.hのエラーC4430か,winnt.hのリンクエラーC2146が出るかもしれない.
これはオペレータ関数の返値の問題なので,
 operator=(LONG);
の部分を
 COARefTime& operator=(LONG);
に変更する.
(また,intrin.hで__MACHINEIの多重定義エラーが出たら該当箇所をコメントアウトする).
++再度ビルド.

-インクルードファイルとライブラリファイル 
インクルードファイル
 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