コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
Camera_device_ops 構造体のリファレンス
#include < camera.h >
|
int(* | set_preview_window )(struct Camera_device *, structreview_stream_ops *window) |
|
空所(* | set_callbacks )(structカメラ_デバイス*,カメラ_通知_コールバック通知_cb,カメラ_データ_コールバック データ_cb,カメラ_データ_タイムスタンプ_コールバック データ_cb_タイムスタンプ, カメラ_リクエスト_メモリ 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(* | プレビュー有効)(structカメラデバイス*) |
|
int(* | store_meta_data_in_buffers )(struct Camera_device *, int Enable) |
|
int(* | start_recording )(struct Camera_device *) |
|
空所(* | stop_recording )(struct Camera_device *) |
|
int(* | 録画有効)(structカメラデバイス*) |
|
空所(* | 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) |
|
文字 *(* | 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カメラ_デバイス*, int fd) |
|
オートフォーカスを開始し、フォーカスが完了すると通知コールバックルーチンが CAMERA_MSG_FOCUS で 1 回呼び出されます。別のオートフォーカスが必要な場合は、autoFocus() が再度呼び出されます。
ファイルCamera.hの227行目の定義。
オートフォーカス機能を解除します。オートフォーカスが進行中の場合、この機能はオートフォーカスをキャンセルします。オートフォーカスの実行中かどうかにかかわらず、フォーカス位置をデフォルトに戻す機能です。カメラがオートフォーカスをサポートしていない場合、これは何も行いません。
ファイルCamera.hの235行目の定義。
takePicture で開始した写真をキャンセルします。写真が撮影されていないときにこのメソッドを呼び出しても何も行われません。
ファイルCamera.hの246行目の定義。
void(* disable_msg_type)(struct Camera_device *, int32_t msg_type) |
1 つのメッセージまたは一連のメッセージを無効にします。
disableMsgType(CAMERA_MSG_VIDEO_FRAME) への呼び出しを受信した後、カメラ HAL は、disableMsgType(CAMERA_MSG_VIDEO_FRAME) 呼び出しの前後にカメラ HAL によって送信されたビデオ録画フレームを解放するために releaseRecordingFrame() を呼び出すクライアントに依存すべきではありません。カメラ HAL クライアントは、disableMsgType(CAMERA_MSG_VIDEO_FRAME) を呼び出した後、ビデオ録画フレームを変更したりアクセスしたりしてはなりません。
ファイルCamera.hの132行目の定義。
次の 3 つの関数はすべて、include/ui/Camera.h で定義されたメッセージのビットマスクである msg_type を受け取ります。 メッセージまたはメッセージのセットを有効にします。
ファイルCamera.hの120行目の定義。
カメラパラメータを取得します。カメラ HAL によって返されたバッファは、put_parameters が NULL でない場合、put_parameters を使用してカメラ HAL に返される必要があります。
ファイルCamera.hの258行目の定義。
int(* msg_type_enabled)(struct Camera_device *, int32_t msg_type) |
メッセージまたはメッセージのセットが有効かどうかをクエリします。これは AND として動作し、クエリされたメッセージのいずれかがオフの場合は false を返すことに注意してください。
ファイルCamera.hの139行目の定義。
カメラ HAL は、get_parameters を呼び出すときに独自のメモリを使用してパラメータを渡します。 put_parameters が NULL でない場合、この関数を使用してメモリをカメラ HAL に戻します。 put_parameters が NULL の場合は、free() を使用してメモリを解放する必要があります。
ファイルCamera.hの265行目の定義。
このオブジェクトが所有するハードウェア リソースを解放します。これはデストラクターでは行われないことに注意してください。
ファイルCamera.hの277行目の定義。
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.hの219行目の定義。
int(* send_command)(struct Camera_device *, int32_t cmd, int32_t arg1, int32_t arg2) |
カメラのパラメータを設定します。パラメータが無効であるかサポートされていない場合、BAD_VALUE が返されます。
ファイルCamera.hの252行目の定義。
プレビュー フレームの送信先となる ANativeWindow を設定します
ファイルCamera.hの101行目の定義。
録音モードを開始します。記録画像が利用可能な場合、CAMERA_MSG_VIDEO_FRAME メッセージが対応するフレームとともに送信されます。すべてのレコード フレームは、クライアントが disableMsgType(CAMERA_MSG_VIDEO_FRAME) を呼び出す前に、releaseRecordingFrame() を介してカメラ HAL クライアントによって解放される必要があります。クライアントが disableMsgType(CAMERA_MSG_VIDEO_FRAME) を呼び出した後、ビデオ録画フレームのライフサイクルを管理するのはカメラ HAL の責任であり、クライアントはビデオ録画フレームを変更したりアクセスしたりしてはなりません。
ファイルCamera.hの198行目の定義。
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 は、カメラ HAL に実際の YUV データをビデオ バッファーに保存するように指示します。 |
- 戻り値
- 成功すればOK。
ファイルCamera.hの186行目の定義。
この構造体のドキュメントは次のファイルから生成されました。
- hardware/libhardware/include/hardware/ camera.h
このページのコンテンツやコードサンプルは、コンテンツ ライセンスに記載のライセンスに従います。Java および OpenJDK は Oracle および関連会社の商標または登録商標です。
最終更新日 2023-12-01 UTC。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["必要な情報がない","missingTheInformationINeed","thumb-down"],["複雑すぎる / 手順が多すぎる","tooComplicatedTooManySteps","thumb-down"],["最新ではない","outOfDate","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["サンプル / コードに問題がある","samplesCodeIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2023-12-01 UTC。"],[],[]]