Referensi Struct camera_device_ops

Referensi Struct camera_device_ops

#include < camera.h >

Kolom Data

int(*  set_preview_window )(struct camera_device *, struct preview_stream_ops *window)
 
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)
 
void(*  enable_msg_type )(struct camera_device *, int32_t msg_type)
 
void(*  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 *)
 
void(*  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 *)
 
void(*  stop_recording )(struct camera_device *)
 
int(*  recording_enabled )(struct camera_device *)
 
void(*  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 *)
 
void(*  put_parameters )(struct camera_device *, char *)
 
int(*  send_command )(struct camera_device *, int32_t cmd, int32_t arg1, int32_t arg2)
 
void(*  release )(struct camera_device *)
 
int(*  dump )(struct camera_device *, int fd)
 

Deskripsi Mendetail

Definisi di baris 99 file camera.h .

Dokumentasi Bidang

int(* auto_focus)(struct camera_device *)

Mulai fokus otomatis, rutinitas callback notifikasi dipanggil dengan CAMERA_MSG_FOCUS satu kali saat pemfokusan selesai. autoFocus() akan dipanggil lagi jika fokus otomatis lain diperlukan.

Definisi di baris 227 dari file camera.h .

int(* cancel_auto_focus)(struct camera_device *)

Membatalkan fungsi fokus otomatis. Jika fokus otomatis masih berlangsung, fungsi ini akan membatalkannya. Baik fokus otomatis sedang berlangsung maupun tidak, fungsi ini akan mengembalikan posisi fokus ke default. Jika kamera tidak mendukung fokus otomatis, tindakan ini tidak akan dilakukan.

Definisi di baris 235 dari file camera.h .

int(* cancel_picture)(struct camera_device *)

Membatalkan gambar yang dimulai dengan takePicture. Memanggil metode ini saat tidak ada gambar yang diambil tidak akan berpengaruh.

Definisi di baris 246 dari file camera.h .

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

Menonaktifkan pesan, atau sekumpulan pesan.

Setelah menerima panggilan ke disableMsgType(CAMERA_MSG_VIDEO_FRAME), HAL kamera tidak boleh mengandalkan kliennya untuk memanggil releaseRecordingFrame() guna merilis frame perekaman video yang dikirim oleh HAL kamera sebelum dan sesudah panggilan disableMsgType(CAMERA_MSG_VIDEO_FRAME). Klien HAL kamera tidak boleh mengubah/mengakses frame perekaman video setelah memanggil disableMsgType(CAMERA_MSG_VIDEO_FRAME).

Definisi di baris 132 dari file camera.h .

int(* dump)(struct camera_device *, int fd)

Status dump hardware kamera

Definisi di baris 282 dari file camera.h .

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

Ketiga fungsi berikut semuanya menggunakan msg_type, yang merupakan bitmask pesan yang ditentukan di include/ui/Camera.h Aktifkan pesan, atau kumpulan pesan.

Definisi di baris 120 dari file camera.h .

char*(* get_parameters)(struct camera_device *)

Ambil parameter kamera. Buffer yang ditampilkan oleh HAL kamera harus ditampilkan kembali dengan put_parameters, jika put_parameters bukan NULL.

Definisi di baris 258 dari file camera.h .

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

Buat kueri apakah pesan, atau sekumpulan pesan, diaktifkan. Perhatikan bahwa ini beroperasi sebagai AND, jika salah satu pesan yang dikueri nonaktif, ini akan menampilkan nilai salah.

Definisi pada baris 139 dari file camera.h .

int(* preview_enabled)(struct camera_device *)

Menampilkan true (benar) jika pratinjau diaktifkan.

Definisi di baris 154 dari file camera.h .

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

HAL kamera menggunakan memorinya sendiri untuk meneruskan parameter kepada kita saat kita memanggil get_parameters. Gunakan fungsi ini untuk mengembalikan memori kembali ke HAL kamera, jika put_parameters bukan NULL. Jika put_parameters adalah NULL, Anda harus menggunakan free() untuk melepaskan memori.

Definisi di baris 265 dari file camera.h .

int(* recording_enabled)(struct camera_device *)

Menampilkan true (benar) jika perekaman diaktifkan.

Definisi di baris 208 dari file camera.h .

void(* release)(struct camera_device *)

Merilis resource hardware yang dimiliki oleh objek ini. Perhatikan bahwa hal ini tidak dilakukan di destruktor.

Definisi di baris 277 dari file camera.h .

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

Merilis frame rekaman yang sebelumnya ditampilkan oleh CAMERA_MSG_VIDEO_FRAME.

Klien HAL kamera bertanggung jawab untuk merilis frame perekaman video yang dikirim oleh HAL kamera sebelum HAL kamera menerima panggilan untuk menonaktifkanMsgType(CAMERA_MSG_VIDEO_FRAME). Setelah menerima panggilan untuk disableMsgType(CAMERA_MSG_VIDEO_FRAME), HAL kamera bertanggung jawab untuk mengelola siklus proses frame perekaman video.

Definisi di baris 219 dari file camera.h .

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

Mengirim perintah ke driver kamera.

Definisi di baris 270 dari file camera.h .

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)

Menetapkan callback notifikasi dan data

Definisi di baris 105 dari file camera.h .

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

Tetapkan parameter kamera. Tindakan ini akan menampilkan BAD_VALUE jika parameter apa pun tidak valid atau tidak didukung.

Definisi di baris 252 dari file camera.h .

int(* set_preview_window)(struct camera_device *, struct preview_stream_ops *window)

Menetapkan ANativeWindow tempat frame pratinjau dikirim

Definisi pada baris 101 dari file camera.h .

int(* start_preview)(struct camera_device *)

Mulai mode pratinjau.

Definisi di baris 144 dari file camera.h .

int(* start_recording)(struct camera_device *)

Mulai mode perekaman. Jika gambar rekaman tersedia, pesan CAMERA_MSG_VIDEO_FRAME akan dikirim dengan frame yang sesuai. Setiap frame rekaman harus dirilis oleh klien HAL kamera melalui releaseRecordingFrame() sebelum klien memanggil disableMsgType(CAMERA_MSG_VIDEO_FRAME). Setelah klien memanggil disableMsgType(CAMERA_MSG_VIDEO_FRAME), HAL kamera bertanggung jawab untuk mengelola siklus proses frame perekaman video, dan klien tidak boleh mengubah/mengakses frame perekaman video apa pun.

Definisi di baris 198 dari file camera.h .

void(* stop_preview)(struct camera_device *)

Menghentikan pratinjau yang sebelumnya dimulai.

Definisi pada baris 149 dari file camera.h .

void(* stop_recording)(struct camera_device *)

Menghentikan perekaman yang sebelumnya dimulai.

Definisi pada baris 203 dari file camera.h .

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

Minta HAL kamera untuk menyimpan metadata atau data YUV sebenarnya dalam buffering video yang dikirim melalui CAMERA_MSG_VIDEO_FRAME untuk sesi perekaman. Jika tidak dipanggil, perilaku HAL kamera default adalah menyimpan data YUV sebenarnya dalam buffer video.

Metode ini harus dipanggil sebelum startRecording() agar efektif.

Jika metadata disimpan dalam buffer video, penerima buffer video dapat menafsirkan konten dan menemukan data frame yang sebenarnya dengan bantuan metadata dalam buffer. Cara melakukannya berada di luar cakupan metode ini.

Beberapa HAL kamera mungkin tidak mendukung penyimpanan metadata dalam buffering video, tetapi semua HAL kamera harus mendukung penyimpanan data YUV yang sebenarnya dalam buffering video. Jika HAL kamera tidak mendukung penyimpanan metadata dalam buffering video saat diminta untuk melakukannya, INVALID_OPERATION harus ditampilkan. Hal ini sangat berguna bagi HAL kamera untuk meneruskan metadata, bukan data frame yang sebenarnya, langsung ke encoder video, karena jumlah data frame yang tidak dikompresi dapat sangat besar jika ukuran video besar.

Parameter
aktifkan jika benar, untuk memerintahkan HAL kamera menyimpan metadata di buffering video; salah untuk memerintahkan HAL kamera menyimpan data YUV sebenarnya di buffering video.
Hasil
OK jika berhasil.

Definisi di baris 186 dari file camera.h .

int(* take_picture)(struct camera_device *)

Ambil foto.

Definisi di baris 240 dari file camera.h .


Dokumentasi untuk struct ini dibuat dari file berikut: