USBCAMD ミニドライバー ライブラリ
USBCAMD2は、USB ベースのストリーミング カメラのドライバー開発を簡略化するカーネル モード ミニドライバー ライブラリです。 USBCAMD2 ミニドライバー ライブラリは、Stream クラス (stream.sys) と USB バス ドライバーとの間のインターフェースを提供するので、カメラのプロパティと画像処理のサポート実装に集中することができます。
Microsoft は、Microsoft Windows 98 Driver Development Kit (DDK) と共に、オリジナルの USBCAMD ミニドライバー ライブラリをリリースしました。 オリジナルのライブラリは、Windows Server 2003、Windows XP、Windows 2000 DDK および Windows Driver Kit (WDK) でUSBCAMD2に更新されました。 USBCAMD2では、静止画ピン、電源管理 (休止状態など) および拡張バージョンのオリジナル API のサポートを提供する新機能が追加されました。
USBCAMD2 ミニドライバー ライブラリに加えて、Microsoft は、USB ベースのカメラをサポートする USB ビデオ クラス (UVC) ドライバー も提供しています。 UVC は、USBCAMD2の機能のスーパーセットをサポートしています。 Microsoft では、すべての新しいハードウェア開発に UVC ドライバーを使用することをお勧めします。 ただし、ハードウェア設計を UVC に準拠するように変更できない場合は、USBCAMD2ミニドライバーを記述する必要があります。
ミニドライバー ライブラリは、デバイスからの USB バス上のデータ ストリームを管理します。これには、USB バス上のストリームを維持することに関連する開始、停止、同期、およびエラー回復の問題の処理も含まれます。 USBCAMD2は、カーネル ストリーミング プロパティのサポート、代替 USB インターフェイス設定の選択、イメージの展開と処理などのハードウェア固有の操作を処理するために、ベンダーによって実装されたコールバック関数を呼び出します。
カメラ ミニドライバーは次の役割を担います。
PROPSETID_VIDCAP_VIDEOPROCAMP や PROPSETID_VIDCAP_CAMERACONTROL などのカーネル ストリーミング プロパティのサポートを実装します。
カメラ ミニドライバーの CamProcessUSBPacketEx コールバック関数で、データストリームが有効で、現在のビデオフレームまたは次のビデオフレームの一部であるかどうかを判断します。
ストリームからビデオフレームを抽出し、カメラミニドライバーの CamProcessRawVideoFrameEx コールバック関数で呼び出し元のアプリケーションに返す前にビデオフレームに対して処理を実行します。
元の USBCAMD ミニドライバー ライブラリは Windows 98 usbcamd.sys ではサポートされていますが、Windows 2000 ではサポートされていません。 USBCAMD2は、Windows 2000 以降および Windows Millennium Edition 以降で、usbcamd.sysand usbcamd2.sys としてサポートされています。 元の USBCAMD ミニドライバー ライブラリもUSBCAMD2も、64 ビット プラットフォームではサポートされていません。
Windows 2000 以降および Windows Millennium Edition 以降のオペレーティング システムの場合、カメラ ベンダーは、元のライブラリではなく、USBCAMD2 ミニドライバー ライブラリを使用してカメラ ミニドライバーを開発する必要があります。
usbintel のサンプル カメラ ミニドライバーを開始点として使用できます。 このサンプルは、Windows XP から Windows 7 (ビルド 7600) までのドライバー開発キット (DDK) と Windows Driver Kit (WDK) で利用可能です。 WDK は、このサンプルを src\wdm\videocap\usbintel にインストールします (インストールするオプションとして選択されている場合)。
その他のリソース
開発者は、カーネル ストリーミング、ストリーミング ミニドライバー、ビデオ キャプチャ デバイス資料について理解する必要があります。
USB 仕様を含む開発者向けの追加情報については、USB-IF 開発者向け領域を参照してください。
一般的な情報またはコンシューマー情報については、USB 実装者フォーラムを参照してください。