camera_device_ops構造体リファレンス

camera_device_ops構造体リファレンス

#include < camera.h >

データフィールド

int(* set_preview_window )(struct camera_device *、struct Preview_stream_ops * window)
空所(* set_callbacks )(struct camera_device *、 camera_notify_callback notify_cb、 camera_data_callback data_cb、 camera_data_timestamp_callback data_cb_timestamp、 camera_request_memory get_memory、void * user)
空所(* enable_msg_type )(struct camera_device *、int32_t msg_type)
空所(* disable_msg_type )(struct camera_device *、int32_t msg_type)
int(* msg_type_enabled )(struct camera_device *、int32_t msg_type)
int(* start_preview )(struct camera_device *)
空所(* stop_preview )(struct camera_device *)
int(* Preview_enabled )(struct camera_device *)
int(* store_meta_data_in_buffers )(struct camera_device *、int enable)
int(* start_recording )(struct camera_device *)
空所(* stop_recording )(struct camera_device *)
int(* recording_enabled )(struct camera_device *)
空所(* release_recording_frame )(struct camera_device *、const void * opaque)
int(* auto_focus )(struct camera_device *)
int(* cancel_auto_focus )(struct camera_device *)
int(* take_picture )(struct camera_device *)
int(* cancel_picture )(struct camera_device *)
int(* set_parameters )(struct camera_device *、const char * parms)
char *(* get_parameters )(struct camera_device *)
空所(* put_parameters )(struct camera_device *、char *)
int(* send_command )(struct camera_device *、int32_t cmd、int32_t arg1、int32_t arg2)
空所(*リリース)(struct camera_device *)
int(*ダンプ)(struct camera_device *、int fd)

詳細な説明

ファイルcamera.h99行目の定義。

フィールドドキュメント

int(* auto_focus)(struct camera_device *)

オートフォーカスを開始します。フォーカスが完了すると、通知コールバックルーチンがCAMERA_MSG_FOCUSで1回呼び出されます。別のオートフォーカスが必要な場合は、autoFocus()が再度呼び出されます。

ファイルcamera.h227行で定義されています。

int(* cancel_auto_focus)(struct camera_device *)

オートフォーカス機能を解除します。オートフォーカスがまだ進行中の場合、この機能はそれをキャンセルします。オートフォーカスが進行中かどうかに関係なく、この機能はフォーカス位置をデフォルトに戻します。カメラがオートフォーカスをサポートしていない場合、これはノーオペレーションです。

ファイルcamera.h235行で定義されています。

int(* cancel_picture)(struct camera_device *)

takePictureで開始された画像をキャンセルします。写真が撮られていないときにこのメソッドを呼び出すことはできません。

ファイルcamera.h246行で定義されています。

void(* disable_msg_type)(struct camera_device *、int32_t msg_type)

メッセージまたは一連のメッセージを無効にします。

disableMsgType(CAMERA_MSG_VIDEO_FRAME)の呼び出しを受信すると、カメラHALは、disableMsgType(CAMERA_MSG_VIDEO_FRAME)呼び出しの前後に、カメラHALによって送信されたビデオ録画フレームを解放するためにreleaseRecordingFrame()を呼び出すクライアントに依存しないでください。 Camera HALクライアントは、disableMsgType(CAMERA_MSG_VIDEO_FRAME)を呼び出した後、ビデオ録画フレームを変更/アクセスしてはなりません。

ファイルcamera.h132行目で定義されています。

int(*ダンプ)( structcamera_device *、int fd)

カメラハードウェアのダンプ状態

ファイルcamera.h282行で定義されています。

void(* enable_msg_type)(struct camera_device *、int32_t msg_type)

次の3つの関数はすべて、include / ui/Camera.hで定義されたメッセージのビットマスクであるmsg_typeを取ります。メッセージまたはメッセージのセットを有効にします。

ファイルcamera.h120行で定義されています。

char *(* get_parameters)(struct camera_device *)

カメラパラメータを取得します。 put_parametersがNULLでない場合、カメラHALによって返されるバッファーはput_parametersを使用して返される必要があります。

ファイルcamera.h258行で定義されています。

int(* msg_type_enabled)(struct camera_device *、int32_t msg_type)

メッセージまたは一連のメッセージが有効になっているかどうかを照会します。これはANDとして動作することに注意してください。照会されたメッセージのいずれかがオフの場合、これはfalseを返します。

ファイルcamera.h139行で定義されています。

int(* Preview_enabled)(struct camera_device *)

プレビューが有効になっている場合はtrueを返します。

ファイルcamera.h154行で定義されています。

void(* put_parameters)(struct camera_device *、char *)

カメラHALは、get_parametersを呼び出すときに、独自のメモリを使用してパラメータを渡します。 put_parametersがNULLでない場合は、この関数を使用してメモリをカメラHALに戻します。 put_parametersがNULLの場合、メモリを解放するにはfree()を使用する必要があります。

ファイルcamera.h265行で定義されています。

int(* recording_enabled)(struct camera_device *)

記録が有効になっている場合はtrueを返します。

ファイルcamera.h208行で定義されています。

void(* release)(struct camera_device *)

このオブジェクトが所有するハードウェアリソースを解放します。これはデストラクタでは実行されないことに注意してください。

ファイルcamera.h277行で定義されています。

void(* release_recording_frame)(struct camera_device *、const void * opaque)

以前にCAMERA_MSG_VIDEO_FRAMEによって返されたレコードフレームを解放します。

カメラHALがdisableMsgType(CAMERA_MSG_VIDEO_FRAME)の呼び出しを受信する前に、カメラHALによって送信されたビデオ録画フレームを解放するのはカメラHALクライアントの責任です。 disableMsgType(CAMERA_MSG_VIDEO_FRAME)の呼び出しを受信した後、ビデオ録画フレームのライフサイクルを管理するのはカメラHALの責任です。

ファイルcamera.h219行で定義されています。

int(* send_command)(struct camera_device *、int32_t cmd、int32_t arg1、int32_t arg2)

カメラドライバーにコマンドを送信します。

ファイルcamera.h270行で定義されています。

void(* set_callbacks)(struct camera_device *、 camera_notify_callback notify_cb、 camera_data_callback data_cb、 camera_data_timestamp_callback data_cb_timestamp、 camera_request_memory get_memory、void * user)

通知とデータのコールバックを設定します

ファイルcamera.h105行で定義されています。

int(* set_parameters)(struct camera_device *、const char * parms)

カメラパラメータを設定します。これは、いずれかのパラメーターが無効であるかサポートされていない場合にBAD_VALUEを返します。

ファイルcamera.h252行で定義されています。

int(* set_preview_window)(struct camera_device *、struct Preview_stream_ops * window)

プレビューフレームの送信先のANativeWindowを設定します

ファイルcamera.h101行で定義されています。

int(* start_preview)(struct camera_device *)

プレビューモードを開始します。

ファイルcamera.h144行で定義されています。

int(* start_recording)(struct camera_device *)

記録モードを開始します。記録画像が利用可能になると、CAMERA_MSG_VIDEO_FRAMEメッセージが対応するフレームとともに送信されます。クライアントがdisableMsgType(CAMERA_MSG_VIDEO_FRAME)を呼び出す前に、すべてのレコードフレームがreleaseRecordingFrame()を介してカメラHALクライアントによって解放される必要があります。クライアントがdisableMsgType(CAMERA_MSG_VIDEO_FRAME)を呼び出した後、ビデオ録画フレームのライフサイクルを管理するのはカメラHALの責任であり、クライアントはビデオ録画フレームを変更/アクセスしてはなりません。

ファイルcamera.h198行で定義されています。

void(* stop_preview)(struct camera_device *)

以前に開始したプレビューを停止します。

ファイルcamera.h149行で定義されています。

void(* stop_recording)(struct camera_device *)

以前に開始した記録を停止します。

ファイルcamera.h203行で定義されています。

int(* store_meta_data_in_buffers)(struct camera_device *、int enable)

記録セッションのためにCAMERA_MSG_VIDEO_FRAMEを介して送信されたビデオバッファにメタデータまたは実際のYUVデータを保存するようにカメラHALに要求します。呼び出されない場合、デフォルトのカメラHALの動作は、実際のYUVデータをビデオバッファーに保存することです。

このメソッドを有効にするには、startRecording()の前に呼び出す必要があります。

メタデータがビデオバッファに保存されている場合、コンテンツを解釈し、バッファ内のメタデータを使用して実際のフレームデータを見つけるのは、ビデオバッファの受信者次第です。これがどのように行われるかは、このメソッドの範囲外です。

一部のカメラHALは、ビデオバッファーへのメタデータの保存をサポートしていない場合がありますが、すべてのカメラHALは、ビデオバッファーへの実際のYUVデータの保存をサポートする必要があります。カメラHALが、要求されたときにビデオバッファーへのメタデータの保存をサポートしていない場合は、INVALID_OPERATIONを返す必要があります。ビデオサイズが大きい場合、非圧縮フレームデータの量が非常に多くなる可能性があるため、カメラHALが実際のフレームデータではなくメタデータをビデオエンコーダに直接渡すことは非常に便利です。

パラメーター
有効trueの場合、メタデータをビデオバッファに保存するようにカメラHALに指示します。 falseは、実際のYUVデータをビデオバッファに保存するようにカメラHALに指示します。
戻り値
成功すればOK。

ファイルcamera.h186行で定義されています。

int(* take_picture)(struct camera_device *)

写真を撮る。

ファイルcamera.h240行で定義されています。


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