Grabber::openDev Method
デバイスをオープンな状態にします。
構文
bool openDev( const VideoCaptureDeviceItem& dev );
bool openDev( const char* dev );
bool openDev( const std::string& devstring );
bool openDev( const std::wstring& devstring );
bool openDev( const __int64& serial );
パラメータ | 説明 |
---|---|
VideoCaptureDeviceItem& dev | オープンにするデバイスを指定します。 |
char* dev | オープンにするデバイス名を指定します。 |
devstring | オープンにするデバイス名を指定します。 |
serial | オープンにするデバイスのシリアル番号を指定します。 |
戻り値
デバイスが正常にオープンになった場合はtrue、そうでない場合はfalse。
備考
新しいデバイスをオープンにする際にはすでにオープンになっているデバイスを閉じます。
openDevは通常Grabberにおいて最初に行う処理のひとつです。
利用可能なビデオフォーマットのクエリ ( Grabber::getAvailableVideoFormatsクラスライブラリリファレンス>クラス>Grabber>Grabber::getAvailableVideoFormats Method )などは、デバイスがオープンになっていなければできません。
Grabber::getAvailableVideoCaptureDevicesクラスライブラリリファレンス>クラス>Grabber>Grabber::getAvailableVideoCaptureDevices Methodが作成するリストを反復することでVideoCaptureDeviceItemクラスライブラリリファレンス>クラス>VideoCaptureDeviceItemを取得することができます。
デバイスのオープン後は、Grabber::setVideoFormatクラスライブラリリファレンス>クラス>Grabber>Grabber::setVideoFormat Methodを使って有効なビデオフォーマットを設定する必要があります。
Grabber::openDevクラスライブラリリファレンス>クラス>Grabber>Grabber::openDev Methodによってオープンにしたデバイスでも、急に無効な状態になってしまう可能性があります(例:ケーブルが外れたときなど)。その後ケーブルを再接続したとしても、一度無効になったデバイスは自動的にオープンな状態に戻ることはありません。デバイスがまだ有効かどうかGrabber::isDevValidクラスライブラリリファレンス>クラス>Grabber>Grabber::isDevValid Methodを使ってチェックし、その結果に応じて対応してください。