Grabber

開かれたビデオキャプチャデバイスを表し、デバイスの設定とストリームのセットアップを可能にします。 詳細...

データ構造

struct   IC4_STREAM_STATS

ストリームの挙動を分析し、ボトルネックの可能性を特定するために使用できる統計カウンタを格納します。 詳細...

struct   IC4_GRABBER

開かれたビデオキャプチャデバイスを表し、デバイスの設定とストリームのセットアップを可能にします。 詳細...

型定義

typedef void(*  ic4_grabber_device_lost_handler) (struct IC4_GRABBER *pGrabber, void *user_ptr)

デバイス切断ハンドラ用の関数ポインタです。

typedef void(* ic4_grabber_device_lost_deleter) (void *user_ptr)

デバイス切断時のユーザーデータをクリーンアップするための関数ポインタです。

typedef void *(* ic4_device_state_allocator) (size_t size)

次の関数の呼び出し中にメモリを確保するために呼び出されるコールバック関数です。対象: ic4_grabber_device_save_state.

関数

bool  ic4_grabber_create (struct IC4_GRABBER **ppGrabber)

新しいGrabberを作成します。

struct IC4_GRABBER * ic4_grabber_ref (struct IC4_GRABBER *pGrabber)

Grabberの内部参照カウントを1つ増やします。

void ic4_grabber_unref (struct IC4_GRABBER *pGrabber)

Grabberの内部参照カウントを1つ減らします。

bool ic4_grabber_device_open (struct IC4_GRABBER *pGrabber, struct IC4_DEVICE_INFO *dev)

渡されたIC4_DEVICE_INFOで指定されたビデオキャプチャデバイスを開きます。

bool ic4_grabber_device_open_by_identifier (struct IC4_GRABBER *pGrabber, const char *identifier)

指定された識別子に一致するビデオキャプチャデバイスを開きます。

bool ic4_grabber_get_device (struct IC4_GRABBER *pGrabber, struct IC4_DEVICE_INFO **ppDev)

現在開いているビデオキャプチャデバイスに関する情報を返します。

bool ic4_grabber_is_device_open (struct IC4_GRABBER *pGrabber)

Grabberが現在ビデオキャプチャデバイスを開いているかどうかを確認します。

bool ic4_grabber_is_device_valid (struct IC4_GRABBER *pGrabber)

Grabberが現在開いているビデオキャプチャデバイスが使用可能な状態かどうかを確認します。

bool ic4_grabber_device_close (struct IC4_GRABBER *pGrabber)

このGrabberインスタンスが現在開いているビデオキャプチャデバイスを閉じます。

bool ic4_grabber_device_get_property_map (struct IC4_GRABBER *pGrabber, struct IC4_PROPERTY_MAP **ppPropertyMap)

現在開いているビデオキャプチャデバイスのPropertyMapを返します。

bool ic4_grabber_driver_get_property_map (struct IC4_GRABBER *pGrabber, struct IC4_PROPERTY_MAP **ppPropertyMap)

現在開いているビデオキャプチャデバイスのドライバのPropertyMapを返します。

bool ic4_grabber_stream_setup (struct IC4_GRABBER *pGrabber, struct IC4_SINK *sink, struct IC4_DISPLAY *display, bool start_acquisition)

デバイスからのデータストリームを確立します。

bool ic4_grabber_stream_stop (struct IC4_GRABBER *pGrabber)

以前にic4_grabber_stream_setup()の呼び出しでセットアップされたデータストリームを停止します。

bool ic4_grabber_is_streaming (struct IC4_GRABBER *pGrabber)

このGrabberのビデオキャプチャデバイスからデータストリームが確立されているかどうかを確認します。

bool ic4_grabber_acquisition_start (struct IC4_GRABBER *pGrabber)

ビデオキャプチャデバイスからの画像取得を開始します。

bool ic4_grabber_acquisition_stop (struct IC4_GRABBER *pGrabber)

ビデオキャプチャデバイスからの画像取得を停止します。

bool ic4_grabber_is_acquisition_active (struct IC4_GRABBER *pGrabber)

このGrabberのビデオキャプチャデバイスで現在画像取得が有効になっているかどうかを確認します。

bool ic4_grabber_get_sink (struct IC4_GRABBER *pGrabber, struct IC4_SINK **ppSink)

次の関数に渡されたSinksオブジェクトへの参照を返します。対象: ic4_grabber_stream_setup() 現在確立されているデータストリームをセットアップする際に渡されたものです。

bool ic4_grabber_get_display (struct IC4_GRABBER *pGrabber, struct IC4_DISPLAY **ppDisplay)

次の関数に渡されたDisplayオブジェクトへの参照を返します。対象: ic4_grabber_stream_setup() 現在確立されているデータストリームをセットアップする際に渡されたものです。

bool ic4_grabber_event_add_device_lost (struct IC4_GRABBER *pGrabber, ic4_grabber_device_lost_handler handler, void *user_ptr, ic4_grabber_device_lost_deleter deleter)

現在開いているビデオキャプチャデバイスが切断されたときに呼び出される関数を登録します。

bool ic4_grabber_event_remove_device_lost (struct IC4_GRABBER *pGrabber, ic4_grabber_device_lost_handler handler, void *user_ptr)

以前に登録されたデバイス切断ハンドラの登録を解除します。登録には次の関数を使用します: ic4_grabber_event_add_device_lost().

bool ic4_grabber_get_stream_stats (struct IC4_GRABBER *pGrabber, struct IC4_STREAM_STATS *stats)

現在実行中、または以前停止したデータストリームから統計カウンタを取得します。

bool ic4_grabber_device_save_state (struct IC4_GRABBER *pGrabber, ic4_device_state_allocator alloc, void **ppData, size_t *data_size)

現在開いているビデオキャプチャデバイスとそのすべての設定をメモリバッファに保存します。

 
bool ic4_grabber_device_save_state_to_file (struct IC4_GRABBER *pGrabber, const char *file_path)

現在開いているビデオキャプチャデバイスとそのすべての設定をファイルに保存します。

bool ic4_grabber_device_open_from_state (struct IC4_GRABBER *pGrabber, const void *data, size_t data_size)

以前にic4_grabber_device_save_stateによって書き込まれたデータを含むメモリバッファから、開かれたデバイスとその設定を復元します。

bool ic4_grabber_device_open_from_state_file (struct IC4_GRABBER *pGrabber, const char *file_path)

以前にic4_grabber_device_save_state_to_file()によって書き込まれたファイルから、開かれたデバイスとその設定を復元します。

詳細説明

開かれたビデオキャプチャデバイスを表し、デバイスの設定とストリームのセットアップを可能にします。

Grabberオブジェクトは、ビデオキャプチャデバイスを扱う際に使用される中核となるコンポーネントです。

Grabberオブジェクトを作成するには、次を呼び出します: ic4_grabber_create().

作成後、Grabberに対する最も一般的な操作はデバイスを開くことです。次を呼び出します: ic4_grabber_device_open()またはその同系関数を呼び出します。デバイスは次を呼び出すことで選択・設定することもできます: ic4_grabber_device_open_from_state() or ic4_grabber_device_open_from_state_file().

開いたビデオキャプチャデバイスからデータストリームを確立するには、次を呼び出します: ic4_grabber_stream_setup(), SinkやDisplayを指定します。

プログラムが画像データへのアクセス、処理、または保存を必要とする場合、いずれかのSinksが必要です。アプリケーションに応じて選択できる複数のSinkタイプがあり、例えばQueue SinkやSnap Sinkなどがあります。

Displayを使用すると、ビデオキャプチャデバイスから受信したすべての画像を自動的に表示できます。

データストリームのセットアップ後、画像の転送を開始するには次を呼び出します: ic4_grabber_acquisition_start()。

Grabberオブジェクトが不要になったら、次を呼び出します: ic4_grabber_unref().。なお、他のオブジェクト参照(例: IC4_IMAGE_BUFFER)は、デバイスドライバのメモリを指しているため、それらが存在する限りデバイスを開いた状態に保つことがあります。

型定義ドキュメント

◆ ic4_device_state_allocator

typedef void *(* ic4_device_state_allocator) (size_t size)

次の関数の呼び出し中にメモリを確保するために呼び出されるコールバック関数です。対象: ic4_grabber_device_save_state.

パラメータ
[in]size確保するメモリバッファのサイズ。
戻り値
確保されたメモリバッファへのポインタ。確保できなかった場合はNULL。
注意
この関数がNULLを返した場合、ic4_grabber_device_save_state は失敗します。
関連項目
ic4_grabber_device_save_state

◆ ic4_grabber_device_lost_deleter

typedef void(* ic4_grabber_device_lost_deleter) (void *user_ptr)

デバイス切断時のユーザーデータをクリーンアップするための関数ポインタです。

パラメータ
[in]user_ptr次の関数の呼び出し時に指定されたユーザーデータ ic4_grabber_event_add_device_lost()

◆ ic4_grabber_device_lost_handler

typedef void(* ic4_grabber_device_lost_handler) (struct IC4_GRABBER *pGrabber, void *user_ptr)

デバイス切断ハンドラ用の関数ポインタです。

パラメータ
[in]pGrabberデバイスが失われたGrabberへのポインタ
[in]user_ptr次の関数の呼び出し時に指定されたユーザーデータ ic4_grabber_event_add_device_lost()

関数ドキュメント

◆ ic4_grabber_acquisition_start()

bool ic4_grabber_acquisition_start ( struct IC4_GRABBER *  pGrabber)

ビデオキャプチャデバイスからの画像取得を開始します。

パラメータ
[in]pGrabberデータストリームが確立されたGrabber
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。
事前条件
データストリームは事前に次の関数を使用して確立されています: ic4_grabber_stream_setup().
注意
この操作は、ビデオキャプチャデバイスのPropertyMapでAcquisitionStartコマンドを実行することと同等です。
関連項目
ic4_grabber_acquisition_stop
ic4_grabber_stream_setup

◆ ic4_grabber_acquisition_stop()

bool ic4_grabber_acquisition_stop ( struct IC4_GRABBER *  pGrabber)

ビデオキャプチャデバイスからの画像取得を停止します。

パラメータ
[in]pGrabber取得が実行中のGrabber
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。
注意
この操作は、ビデオキャプチャデバイスのPropertyMapでAcquisitionStopコマンドを実行することと同等です。
関連項目
ic4_grabber_acquisition_start

◆ ic4_grabber_create()

bool ic4_grabber_create ( struct IC4_GRABBER **  ppGrabber)

新しいGrabberを作成します。

パラメータ
[out]ppGrabber新しいGrabberオブジェクトのハンドルを受け取るポインタ。
Grabberが不要になったら、次の関数を使用してオブジェクト参照を解放してください: ic4_grabber_unref().
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。
関連項目
ic4_grabber_unref

◆ ic4_grabber_device_close()

bool ic4_grabber_device_close ( struct IC4_GRABBER *  pGrabber)

このGrabberインスタンスが現在開いているビデオキャプチャデバイスを閉じます。

パラメータ
[in]pGrabberビデオキャプチャデバイスを開いているGrabber
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。
備考
デバイスを閉じると、そのすべてのリソースが解放されます:
  • 画像取得が実行中の場合は停止されます。
  • データストリームがセットアップされていた場合は停止されます。
  • データストリーム関連オブジェクトへの参照が解放され、SinkやDisplayが破棄される場合があります。
  • Propertiesオブジェクトは無効になります。

◆ ic4_grabber_device_get_property_map()

bool ic4_grabber_device_get_property_map ( struct IC4_GRABBER *  pGrabber,
struct IC4_PROPERTY_MAP **  ppPropertyMap 
)

現在開いているビデオキャプチャデバイスのPropertyMapを返します。

この関数から返されるPropertyMapは、すべてのデバイス機能操作の起点となります。

パラメータ
[in]pGrabberビデオキャプチャデバイスを開いているGrabber
[out]ppPropertyMapPropertyMapを受け取るハンドルへのポインタ。
PropertyMapが不要になったら、次の関数を呼び出してください: ic4_propmap_unref().
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。
備考
PropertyMapのハンドルおよびそこから取得した従属オブジェクトは、デバイスを開いた状態に保ちません。デバイスが閉じられると、PropertyMapに対する以降のすべての操作はエラーになります。
関連項目
ic4_propmap_unref

◆ ic4_grabber_device_open()

bool ic4_grabber_device_open ( struct IC4_GRABBER *  pGrabber,
struct IC4_DEVICE_INFO *  dev 
)

渡されたIC4_DEVICE_INFOで指定されたビデオキャプチャデバイスを開きます。

パラメータ
[in]pGrabberビデオキャプチャデバイスを開いていないGrabberインスタンス
[in]dev開くビデオキャプチャデバイスを表すIC4_DEVICE_INFO
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。
備考
Grabberが既にデバイスを開いている場合、関数は失敗し、エラー値は次に設定されます: IC4_ERROR_INVALID_OPERATION.
関連項目
ic4_grabber_open_dev_by_name
ic4_grabber_device_close
ic4_grabber_is_device_open
ic4_grabber_is_device_valid

◆ ic4_grabber_device_open_by_identifier()

bool ic4_grabber_device_open_by_identifier ( struct IC4_GRABBER *  pGrabber,
const char *  identifier 
)

指定された識別子に一致するビデオキャプチャデバイスを開きます。

パラメータ
[in]pGrabberビデオキャプチャデバイスを開いていないGrabberインスタンス
[in]identifier接続されているビデオキャプチャデバイスのモデル名、ユニーク名、シリアル、ユーザーID、IPv4アドレス、またはMACアドレス
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。
備考
Grabberが既にデバイスを開いている場合、関数は失敗し、エラー値は次に設定されます: IC4_ERROR_INVALID_OPERATION.
指定された識別子に一致するデバイスが複数ある場合、関数は失敗し、エラー値は次に設定されます: IC4_ERROR_AMBIGUOUS.
指定された識別子のデバイスが存在しない場合、関数は失敗し、エラー値は次に設定されます: IC4_ERROR_DEVICE_NOT_FOUND.
関連項目
ic4_grabber_device_open
ic4_grabber_device_close
ic4_grabber_is_device_open
ic4_grabber_is_device_valid

◆ ic4_grabber_device_open_from_state()

bool ic4_grabber_device_open_from_state ( struct IC4_GRABBER *  pGrabber,
const void *  data,
size_t  data_size 
)

以前にic4_grabber_device_save_stateによって書き込まれたデータを含むメモリバッファから、開かれたデバイスとその設定を復元します。

パラメータ
[in]pGrabberデバイスを開いていないGrabberオブジェクト
[in]data次の関数によって書き込まれたデータを含むメモリバッファへのポインタ: ic4_grabber_device_save_state
[in]data_sizepDataが指すメモリバッファのサイズ
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。
注意
書き込めなかったプロパティの設定がメモリバッファに含まれている場合、関数は失敗し、エラー値は次に設定されます: IC4_ERROR_INCOMPLETE.
関連項目
ic4_grabber_device_save_state

◆ ic4_grabber_device_open_from_state_file()

bool ic4_grabber_device_open_from_state_file ( struct IC4_GRABBER *  pGrabber,
const char *  file_path 
)

以前にic4_grabber_device_save_state_to_file()によって書き込まれたファイルから、開かれたデバイスとその設定を復元します。

パラメータ
[in]pGrabberデバイスを開いていないGrabberオブジェクト
[in]file_pathデバイス状態情報を含むファイルへのパス
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。
注意
書き込めなかったプロパティの設定がファイルに含まれている場合、関数は失敗し、エラー値は次に設定されます: IC4_ERROR_INCOMPLETE.
関連項目
ic4_grabber_device_save_state_to_file
ic4_grabber_device_open_from_state

◆ ic4_grabber_device_save_state()

bool ic4_grabber_device_save_state ( struct IC4_GRABBER *  pGrabber,
ic4_device_state_allocator  alloc,
void **  ppData,
size_t *  data_size 
)

現在開いているビデオキャプチャデバイスとそのすべての設定をメモリバッファに保存します。

パラメータ
[in]pGrabberデバイスを開いているGrabberオブジェクト
[in]allocメモリバッファを確保する関数へのポインタ。
例えばmallocを渡すことができます。
[out]ppDataデバイス状態を含む新しく確保されたメモリバッファを受け取るポインタへのポインタ。
呼び出し側は、allocが返したメモリを解放できる関数を使用してメモリを解放する責任があります。
[out]data_size呼び出しによって確保されたメモリバッファのサイズを受け取るsize_tへのポインタ
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。
注意
後でデバイス状態を復元するには、次を使用します: ic4_grabber_device_open_from_state.
デバイスのプロパティをシリアライズする(次の関数と同様: ic4_propmap_serialize_to_memory() と同様)に加えて、この関数は現在開いているビデオキャプチャデバイスも保存するため、後ですべての設定を復元した状態で再度開くことができます。
関連項目
ic4_grabber_load_device_state
ic4_grabber_save_device_state_to_file

◆ ic4_grabber_device_save_state_to_file()

bool ic4_grabber_device_save_state_to_file ( struct IC4_GRABBER *  pGrabber,
const char *  file_path 
)

現在開いているビデオキャプチャデバイスとそのすべての設定をファイルに保存します。

パラメータ
[in]pGrabberデバイスを開いているGrabberオブジェクト
[in]file_pathデバイス状態が書き込まれるファイルへのパス。
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。
注意
後でデバイス状態を復元するには、次を使用します: ic4_grabber_device_open_from_state_file().
デバイスのプロパティをシリアライズする(次の関数と同様: ic4_propmap_serialize_to_file() と同様)に加えて、この関数は現在開いているビデオキャプチャデバイスも保存するため、後ですべての設定を復元した状態で再度開くことができます。
関連項目
ic4_grabber_device_open_from_state_file
ic4_grabber_device_save_state

◆ ic4_grabber_driver_get_property_map()

bool ic4_grabber_driver_get_property_map ( struct IC4_GRABBER *  pGrabber,
struct IC4_PROPERTY_MAP **  ppPropertyMap 
)

現在開いているビデオキャプチャデバイスのドライバのPropertyMapを返します。

この関数から返されるPropertyMapは、ドライバ関連の機能操作の起点となります。

パラメータ
[in]pGrabberビデオキャプチャデバイスを開いているGrabber
[out]ppPropertyMapPropertyMapを受け取るハンドルへのポインタ。
PropertyMapが不要になったら、次の関数を呼び出してください: ic4_propmap_unref().
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。
備考
PropertyMapのハンドルおよびそこから取得した従属オブジェクトは、デバイスを開いた状態に保ちません。デバイスが閉じられると、PropertyMapに対する以降のすべての操作はエラーになります。
関連項目
ic4_propmap_unref

◆ ic4_grabber_event_add_device_lost()

bool ic4_grabber_event_add_device_lost ( struct IC4_GRABBER *  pGrabber,
ic4_grabber_device_lost_handler  handler,
void *  user_ptr,
ic4_grabber_device_lost_deleter  deleter 
)

現在開いているビデオキャプチャデバイスが切断されたときに呼び出される関数を登録します。

パラメータ
[in]pGrabberコールバックが登録されるGrabber
[in]handlerデバイスが失われたときに呼び出される関数
[in]user_ptrhandlerの呼び出し時に渡されるユーザーデータ。
[in]deleterハンドラの登録が解除され、user_ptrが不要になったときに呼び出される関数。
deleter関数は、user_ptrに関連付けられたデータを解放するために使用できます。
deleter関数は、デバイス切断ハンドラの登録が解除されたとき、またはGrabberオブジェクト自体が破棄されたときに呼び出されます。
注意
デバイス切断ハンドラの登録を解除するには、次を呼び出してください: ic4_grabber_event_remove_device_lost().
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。

◆ ic4_grabber_event_remove_device_lost()

bool ic4_grabber_event_remove_device_lost ( struct IC4_GRABBER *  pGrabber,
ic4_grabber_device_lost_handler  handler,
void *  user_ptr 
)

以前に登録されたデバイス切断ハンドラの登録を解除します。登録には次の関数を使用します: ic4_grabber_event_add_device_lost().

パラメータ
[in]pGrabber現在コールバックが登録されているGrabber
[in]handler登録解除する関数へのポインタ
[in]user_ptr関数が以前に登録された際のユーザーデータ
注意
handlerとuser_ptrのペアは、次の関数の呼び出しで使用したパラメータと完全に一致する必要があります: ic4_grabber_event_add_device_lost().
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。

◆ ic4_grabber_get_device()

bool ic4_grabber_get_device ( struct IC4_GRABBER *  pGrabber,
struct IC4_DEVICE_INFO **  ppDev 
)

現在開いているビデオキャプチャデバイスに関する情報を返します。

パラメータ
[in]pGrabberビデオキャプチャデバイスを開いているGrabberインスタンス
[out]ppDevデバイス情報を受け取るハンドルへのポインタ。
デバイス情報が不要になったら、次の関数を使用してオブジェクト参照を解放してください: ic4_devinfo_unref().
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。
備考
Grabberがビデオキャプチャデバイスを開いていない場合、関数は失敗し、エラー値は次に設定されます: IC4_ERROR_INVALID_OPERATION.
関連項目
ic4_grabber_is_device_open

◆ ic4_grabber_get_display()

bool ic4_grabber_get_display ( struct IC4_GRABBER *  pGrabber,
struct IC4_DISPLAY **  ppDisplay 
)

次の関数に渡されたDisplayオブジェクトへの参照を返します。対象: ic4_grabber_stream_setup() 現在確立されているデータストリームをセットアップする際に渡されたものです。

パラメータ
[in]pGrabberデータストリームが確立されたGrabber
[out]ppDisplay現在接続されているDisplayを受け取るSinkハンドルへのポインタ。
これは新しい参照です。使用しなくなった場合は、次の関数を使用して解放する必要があります: ic4_display_unref().
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。
関連項目
ic4_grabber_stream_setup

◆ ic4_grabber_get_sink()

bool ic4_grabber_get_sink ( struct IC4_GRABBER *  pGrabber,
struct IC4_SINK **  ppSink 
)

次の関数に渡されたSinksオブジェクトへの参照を返します。対象: ic4_grabber_stream_setup() 現在確立されているデータストリームをセットアップする際に渡されたものです。

パラメータ
[in]pGrabberデータストリームが確立されたGrabber
[out]ppSink現在接続されているSinkを受け取るSinkハンドルへのポインタ。
これは新しい参照です。使用しなくなった場合は、次の関数を使用して解放する必要があります: ic4_sink_unref().
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。
関連項目
ic4_grabber_stream_setup

◆ ic4_grabber_get_stream_stats()

bool ic4_grabber_get_stream_stats ( struct IC4_GRABBER *  pGrabber,
struct IC4_STREAM_STATS *  stats 
)

現在実行中、または以前停止したデータストリームから統計カウンタを取得します。

パラメータ
[in]pGrabberGrabberオブジェクト
[out]statsストリーム統計を受け取る構造体へのポインタ
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。
事前条件
この操作は、データストリームが一度確立された後にのみ有効です。

◆ ic4_grabber_is_acquisition_active()

bool ic4_grabber_is_acquisition_active ( struct IC4_GRABBER *  pGrabber)

このGrabberのビデオキャプチャデバイスで現在画像取得が有効になっているかどうかを確認します。

パラメータ
[in]pGrabberGrabberオブジェクト
戻り値
画像取得が現在実行中の場合はtrue、それ以外の場合はfalse。
備考
この関数は、次の関数が返すエラー状態をクリアも設定もしません: ic4_get_last_error.
関連項目
ic4_grabber_acquisition_start
ic4_grabber_acquisition_stop

◆ ic4_grabber_is_device_open()

bool ic4_grabber_is_device_open ( struct IC4_GRABBER *  pGrabber)

Grabberが現在ビデオキャプチャデバイスを開いているかどうかを確認します。

パラメータ
[in]pGrabberGrabberオブジェクト
戻り値
Grabberがビデオキャプチャデバイスを開いている場合はtrue、それ以外の場合はfalse。
備考
この関数は、次の関数が返すエラー状態をクリアも設定もしません: ic4_get_last_error().
関連項目
ic4_grabber_device_open

◆ ic4_grabber_is_device_valid()

bool ic4_grabber_is_device_valid ( struct IC4_GRABBER *  pGrabber)

Grabberが現在開いているビデオキャプチャデバイスが使用可能な状態かどうかを確認します。

パラメータ
[in]pGrabberGrabberオブジェクト
戻り値
Grabberが使用可能なビデオキャプチャデバイスを開いている場合はtrue、それ以外の場合はfalse。
備考
この関数は、次の関数が返すエラー状態をクリアも設定もしません: ic4_get_last_error().
この関数がfalse:を返す理由は複数あります:
  • デバイスが開かれていない
  • デバイスが切断された
  • ハードウェア接続が緩んでいる
  • ビデオキャプチャデバイス内部でエラーが発生した
  • ドライバエラーが発生した

◆ ic4_grabber_is_streaming()

bool ic4_grabber_is_streaming ( struct IC4_GRABBER *  pGrabber)

このGrabberのビデオキャプチャデバイスからデータストリームが確立されているかどうかを確認します。

パラメータ
[in]pGrabberGrabberオブジェクト
戻り値
データストリームが以前に次の関数の呼び出しで確立された場合はtrue。対象: ic4_grabber_stream_setup().
それ以外の場合、またはデータストリームが再度停止された場合はfalse。
備考
この関数は、次の関数が返すエラー状態をクリアも設定もしません: ic4_get_last_error().
関連項目
ic4_grabber_stream_setup
ic4_grabber_stream_stop

◆ ic4_grabber_ref()

struct IC4_GRABBER * ic4_grabber_ref ( struct IC4_GRABBER *  pGrabber)

Grabberの内部参照カウントを1つ増やします。

パラメータ
[in]pGrabberGrabberへのポインタ
戻り値
pGrabber経由で渡されたポインタ
備考
pGrabberがNULLの場合、関数はNULLを返します。エラー値は設定されません。
関連項目
ic4_grabber_unref

◆ ic4_grabber_stream_setup()

bool ic4_grabber_stream_setup ( struct IC4_GRABBER *  pGrabber,
struct IC4_SINK *  sink,
struct IC4_DISPLAY *  display,
bool  start_acquisition 
)

デバイスからのデータストリームを確立します。

ビデオキャプチャデバイスからの画像取得にはデータストリームが必要であり、Sink(Sinks)、Display、またはその両方を含める必要があります。

パラメータ
[in]pGrabberビデオキャプチャデバイスを開いているGrabberオブジェクト
[in]sink画像を受け取るSink(Sinks)
[in]display画像を表示するDisplay
[in]start_acquisitiontrueの場合、データストリームのセットアップ後にすぐに画像取得を開始します。
それ以外の場合、後で画像取得を開始するには次の関数の呼び出しが必要です: ic4_grabber_acquisition_start()
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。
事前条件
デバイスは事前に次の関数を使用して開かれています: ic4_grabber_device_open() またはその同系関数のいずれか。
注意
Grabberは渡されたSinkとDisplayへの参照を取得し、データストリームが停止されるまでそれらの寿命をGrabberに結び付けます。
関連項目
ic4_grabber_stream_stop
ic4_grabber_acquisition_start

◆ ic4_grabber_stream_stop()

bool ic4_grabber_stream_stop ( struct IC4_GRABBER *  pGrabber)

以前にic4_grabber_stream_setup()の呼び出しでセットアップされたデータストリームを停止します。

パラメータ
[in]pGrabberデータストリームが確立されたGrabber
戻り値
成功した場合はtrue、それ以外の場合はfalseを返します。
エラー情報を取得するにはic4_get_last_error()を使用してください。
注意
この関数は、次の関数に渡されたSinkとDisplayの参照を解放します: ic4_grabber_stream_setup().
SinkまたはDisplayへの外部参照が存在しない場合、そのSinkまたはDisplayは破棄されます。
関連項目
ic4_grabber_stream_setup

◆ ic4_grabber_unref()

void ic4_grabber_unref ( struct IC4_GRABBER *  pGrabber)

Grabberの内部参照カウントを1つ減らします。

参照カウントがゼロに達すると、オブジェクトは破棄されます。

パラメータ
[in]pGrabberGrabberへのポインタ
備考
pGrabberがNULLの場合、関数は何も行いません。エラー値は設定されません。
Grabberオブジェクトが破棄されると、そのすべてのリソースが解放されます:
  • 画像取得が実行中の場合は停止されます。
  • データストリームがセットアップされていた場合は停止されます。
  • データストリーム関連オブジェクトへの参照が解放され、SinkやDisplayが破棄される場合があります。
  • デバイスが閉じられます。Propertiesオブジェクトは無効になります。
関連項目
ic4_grabber_ref