Camera2_stream_ops 構造体のリファレンス

Camera2_stream_ops 構造体のリファレンス

#include < camera2.h >

データフィールド

int(* dequeue_buffer )(const struct Camera2_stream_ops *w,buffer_handle_t **buffer)
int(* enqueue_buffer )(const struct Camera2_stream_ops *w、int64_t タイムスタンプ、buffer_handle_t *buffer)
int(* cancel_buffer )(const struct Camera2_stream_ops *w,buffer_handle_t *buffer)
int(* set_crop )(const struct Camera2_stream_ops *w, int left, int top, int right, intbottom)

詳細な説明

出力画像ストリームキューインターフェイス。これらのメソッドのセットは、allocate_stream() で HAL デバイスに提供され、そのストリームの gralloc バッファ キューと対話するために使用されます。これらは、allocate_stream が返されるまで呼び出されない場合があります。

ファイルCamera2.h73行目の定義。

フィールドドキュメント

int(* cancel_buffer)(const struct Camera2_stream_ops *w,buffer_handle_t *buffer)

バッファを満杯としてマークせずにキューに返します。

ファイルCamera2.h102行目の定義。

int(* dequeue_buffer)(const struct Camera2_stream_ops *w,buffer_handle_t **buffer)

キューから埋めるバッファを取得します。バッファのサイズと形式は特定のストリーム (allocate_stream で定義) に対して固定されており、ストライドはプラットフォームの gralloc モジュールから照会する必要があります。 gralloc バッファは、allocate_stream によって提供される使用フラグに基づいて割り当てられ、使用のためにロックされます。

ファイルCamera2.h81行目の定義。

int(* enqueue_buffer)(const struct Camera2_stream_ops *w、int64_t タイムスタンプ、buffer_handle_t *buffer)

コンシューマが使用できるように、いっぱいになったバッファをストリームにプッシュします。

タイムスタンプは、画像の最初の行の露光開始時刻を表します。それは単調時計からのものでなければならず、ナノ秒単位で測定されます。タイムスタンプは、異なるカメラ間、または同じカメラの連続したインスタンス間で比較できる必要はありません。ただし、同じカメラからのストリーム間で比較できる必要があります。 1 つのキャプチャで複数のストリームのバッファが生成される場合、各ストリームはそのバッファに対して同じタイムスタンプを持つ必要があり、そのタイムスタンプは出力フレーム メタデータのタイムスタンプと一致する必要があります。

ファイルCamera2.h96行目の定義。

int(* set_crop)(const struct Camera2_stream_ops *w, int left, int top, int right, intbottom)

後からエンキューされるバッファーのクロップ ウィンドウを設定します。パラメータは、バッファの幅と高さに応じてピクセル単位で測定されます。

ファイルCamera2.h108行目の定義。


この構造体のドキュメントは次のファイルから生成されました。
  • ハードウェア/libhardware/include/hardware/camera2.h