camera3_stream_buffer 構造体リファレンス

camera3_stream_buffer 構造体リファレンス

#include < camera3.h >

データ フィールド

camera3_stream_t * stream
 
buffer_handle_t * バッファ
 
int status
 
int acquire_fence
 
int release_fence
 

詳細な説明

camera3_stream_buffer_t:

camera3 ストリームからの単一のバッファ。親ストリームへのハンドル、gralloc バッファ自体へのハンドル、同期フェンスが含まれます。

バッファには、入力用か出力用かを指定しません。これは、親ストリームのタイプと、バッファが HAL デバイスに渡される方法によって決まります。

ファイル camera3.h 1755 行 の定義。

フィールドのドキュメント

int acquire_fence

このバッファの取得同期フェンス。HAL は、このバッファからの読み取りまたは書き込みを試行する前に、このフェンス fd を待機する必要があります。

このバッファに待機が不要であることを示すために、フレームワークを -1 に設定できます。

HAL が process_capture_result() で出力バッファをフレームワークに返す場合、acquire_fence は -1 に設定する必要があります。バッファの入力エラーが原因で HAL が acquire_fence を待機しない場合、HAL は process_capture_result() を呼び出すときに、バッファの release_fence をフレームワークから渡された acquire_fence に設定する必要があります。これにより、フレームワークはバッファを再利用する前にフェンスを待機できます。

入力バッファの場合、HAL は process_capture_request() 呼び出し中に acquire_fence フィールドを変更してはなりません。

>= CAMERA_DEVICE_API_VERSION_3_2:

HAL が process_capture_result() で入力バッファをフレームワークに返す場合、acquire_fence は -1 に設定する必要があります。エラーが原因で HAL が入力バッファの取得フェンスを待機しない場合、同期フェンスは出力バッファの場合と同様に処理する必要があります。

ファイル camera3.h 1800 行の定義。

buffer_handle_t* buffer

バッファへのネイティブ ハンドル

ファイル camera3.h 1764 行の定義。

int release_fence

このバッファのリリース同期フェンス。HAL は、フレームワークにバッファを返すときにこのフェンスを設定するか、-1 を書き込んで、このバッファの待機が不要であることを示します。

出力バッファの場合は、process_capture_result() に渡される output_buffers 配列でフェンスを設定する必要があります。

<= CAMERA_DEVICE_API_VERSION_3_1:

入力バッファの場合、リリース フェンスは process_capture_request() 呼び出しによって設定する必要があります。

>= CAMERA_DEVICE_API_VERSION_3_2:

入力バッファの場合、フェンスは process_capture_result() に渡される input_buffer で設定する必要があります。

このバッファの release_fence を通知した後、HAL は、所有権がフレームワークに完全に移行されているため、このバッファにアクセスしようとしないでください。

フェンスが -1 に指定されている場合、このバッファの所有権は process_capture_result の呼び出し時に直ちに転送されます。

ファイル camera3.h 1827 行目の定義。

int status

バッファの現在の状態(camera3_buffer_status_t の値のいずれか)。フレームワークは、エラー状態の HAL にバッファを渡しません。HAL でバッファを埋めることができなかった場合は、process_capture_result() でフレームワークに返すときに、ステータスを CAMERA3_BUFFER_STATUS_ERROR に設定する必要があります。

ファイル camera3.h 1773 行の定義。

camera3_stream_t * ストリーム

このバッファが関連付けられているストリームのハンドル

ファイル camera3.h 1759 行の定義。


この構造体のドキュメントは、次のファイルから生成されました。