Referensi Struktur camera_device_ops

Referensi Struktur camera_device_ops

#include < camera.h >

Bidang Data

ke dalam(* set_preview_window )(struct camera_device *, struct preview_stream_ops *jendela)
ruang kosong(* 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 *pengguna)
ruang kosong(* aktifkan_msg_type )(struct camera_device *, int32_t msg_type)
ruang kosong(* nonaktifkan_msg_type )(struct camera_device *, int32_t msg_type)
ke dalam(* msg_type_enabled )(struct camera_device *, int32_t msg_type)
ke dalam(* start_preview )(struktur kamera_device *)
ruang kosong(* stop_preview )(struct camera_device *)
ke dalam(* preview_enabled )(struct camera_device *)
ke dalam(* store_meta_data_in_buffers )(struct camera_device *, int aktifkan)
ke dalam(* start_recording )(struct camera_device *)
ruang kosong(* stop_recording )(struct camera_device *)
ke dalam(* rekaman_diaktifkan )(struct camera_device *)
ruang kosong(* rilis_recording_frame )(struct camera_device *, const void *buram)
ke dalam(* fokus_otomatis )(struktur kamera_perangkat *)
ke dalam(* batal_auto_fokus )(struktur kamera_perangkat *)
ke dalam(* ambil_gambar )(struct camera_device *)
ke dalam(* batalkan_gambar )(struktur kamera_perangkat *)
ke dalam(* set_parameters )(struct camera_device *, const char *parms)
karakter *(* get_parameters )(struct camera_device *)
ruang kosong(* put_parameters )(struct camera_device *, char *)
ke dalam(* send_command )(struct camera_device *, int32_t cmd, int32_t arg1, int32_t arg2)
ruang kosong(* rilis )(struct camera_device *)
ke dalam(* membuang )(struct camera_device *, int fd)

Detil Deskripsi

Definisi pada baris 99 file camera.h .

Dokumentasi Lapangan

int(*fokus_otomatis)(struktur perangkat_kamera *)

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

Definisi pada baris 227 file camera.h .

int(* batal_auto_fokus)(struct kamera_perangkat *)

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

Definisi pada baris 235 file camera.h .

int(* batalkan_gambar)(struktur perangkat_kamera *)

Membatalkan gambar yang dimulai dengan takePicture. Memanggil metode ini ketika tidak ada gambar yang diambil adalah tindakan yang dilarang.

Definisi pada baris 246 file camera.h .

batal(* nonaktifkan_msg_type)(struct camera_device *, int32_t msg_type)

Nonaktifkan pesan, atau serangkaian pesan.

Setelah menerima panggilan untuk menonaktifkanMsgType(CAMERA_MSG_VIDEO_FRAME), kamera HAL tidak boleh bergantung pada kliennya untuk memanggil rilisRecordingFrame() untuk melepaskan bingkai rekaman video yang dikirim oleh kamera HAL sebelum dan sesudah panggilan menonaktifkanMsgType(CAMERA_MSG_VIDEO_FRAME). Klien Kamera HAL tidak boleh mengubah/mengakses bingkai rekaman video apa pun setelah memanggil menonaktifkanMsgType(CAMERA_MSG_VIDEO_FRAME).

Definisi pada baris 132 file camera.h .

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

Buang status perangkat keras kamera

Definisi pada baris 282 file camera.h .

batal(* aktifkan_msg_type)(struct camera_device *, int32_t msg_type)

Tiga fungsi berikut semuanya menggunakan msg_type, yang merupakan bitmask dari pesan yang ditentukan dalam include/ui/Camera.h Aktifkan sebuah pesan, atau kumpulan pesan.

Definisi pada baris 120 file camera.h .

char*(* get_parameters)(struct camera_device *)

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

Definisi pada baris 258 file camera.h .

int(* pesan_tipe_diaktifkan)(struktur perangkat_kamera *, int32_t pesan_tipe)

Kueri apakah sebuah pesan, atau serangkaian pesan, diaktifkan. Perhatikan bahwa ini beroperasi sebagai AND, jika salah satu pesan yang ditanyakan tidak aktif, ini akan menghasilkan false.

Definisi pada baris 139 file camera.h .

int(* preview_enabled)(struct kamera_perangkat *)

Mengembalikan nilai benar jika pratinjau diaktifkan.

Definisi pada baris 154 file camera.h .

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

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

Definisi pada baris 265 file camera.h .

int(* rekaman_diaktifkan)(struct kamera_perangkat *)

Mengembalikan nilai benar jika perekaman diaktifkan.

Definisi pada baris 208 file camera.h .

void(* rilis)(struct camera_device *)

Lepaskan sumber daya perangkat keras yang dimiliki oleh objek ini. Perhatikan bahwa ini tidak dilakukan di destruktor.

Definisi pada baris 277 file camera.h .

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

Lepaskan bingkai rekaman yang sebelumnya dikembalikan oleh CAMERA_MSG_VIDEO_FRAME.

Klien kamera HAL bertanggung jawab untuk melepaskan bingkai rekaman video yang dikirim oleh kamera HAL sebelum kamera HAL menerima panggilan untuk menonaktifkan MsgType (CAMERA_MSG_VIDEO_FRAME). Setelah menerima panggilan untuk menonaktifkanMsgType(CAMERA_MSG_VIDEO_FRAME), HAL kamera bertanggung jawab untuk mengelola siklus hidup bingkai perekaman video.

Definisi pada baris 219 file camera.h .

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

Kirim perintah ke driver kamera.

Definisi pada baris 270 file camera.h .

batal(* set_callbacks)(struct kamera_device *, kamera_notify_callback notify_cb, kamera_data_callback data_cb, kamera_data_timestamp_callback data_cb_timestamp, kamera_request_memory get_memory, batal *pengguna)

Atur notifikasi dan panggilan balik data

Definisi pada baris 105 file camera.h .

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

Atur parameter kamera. Ini mengembalikan BAD_VALUE jika ada parameter yang tidak valid atau tidak didukung.

Definisi pada baris 252 file camera.h .

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

Atur ANativeWindow ke mana bingkai pratinjau dikirim

Definisi pada baris 101 file camera.h .

int(* start_preview)(struct camera_device *)

Mulai mode pratinjau.

Definisi pada baris 144 file camera.h .

int(* start_recording)(struct camera_device *)

Mulai mode rekam. Ketika gambar rekaman tersedia, pesan CAMERA_MSG_VIDEO_FRAME dikirim dengan bingkai yang sesuai. Setiap bingkai rekaman harus dilepaskan oleh klien HAL kamera melalui rilisRecordingFrame() sebelum klien memanggil menonaktifkanMsgType(CAMERA_MSG_VIDEO_FRAME). Setelah klien memanggil menonaktifkanMsgType(CAMERA_MSG_VIDEO_FRAME), HAL kamera bertanggung jawab untuk mengelola siklus hidup bingkai rekaman video, dan klien tidak boleh mengubah/mengakses bingkai rekaman video apa pun.

Definisi pada baris 198 file camera.h .

batal(* stop_preview)(struct camera_device *)

Hentikan pratinjau yang dimulai sebelumnya.

Definisi pada baris 149 file camera.h .

void(* stop_recording)(struct camera_device *)

Hentikan rekaman yang dimulai sebelumnya.

Definisi pada baris 203 file camera.h .

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

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

Metode ini harus dipanggil sebelum startRecording() agar efektif.

Jika meta data disimpan dalam buffer video, penerima buffer video berhak menafsirkan konten dan menemukan data bingkai sebenarnya dengan bantuan meta data dalam buffer. Cara hal ini dilakukan berada di luar cakupan metode ini.

Beberapa HAL kamera mungkin tidak mendukung penyimpanan meta data dalam buffer video, namun semua HAL kamera harus mendukung penyimpanan data YUV nyata dalam buffer video. Jika HAL kamera tidak mendukung penyimpanan meta data dalam buffer video saat diminta, INVALID_OPERATION harus dikembalikan. Sangat berguna bagi kamera HAL untuk meneruskan data meta daripada data bingkai sebenarnya langsung ke pembuat enkode video, karena jumlah data bingkai yang tidak terkompresi bisa sangat besar jika ukuran videonya besar.

Parameter
memungkinkan jika benar untuk menginstruksikan kamera HAL untuk menyimpan meta data di buffer video; false untuk menginstruksikan kamera HAL untuk menyimpan data YUV asli di buffer video.
Kembali
Oke, sukses.

Definisi pada baris 186 file camera.h .

int(* ambil_gambar)(struct kamera_perangkat *)

Mengambil gambar.

Definisi pada baris 240 file camera.h .


Dokumentasi untuk struct ini dihasilkan dari file berikut:
  • perangkat keras/libhardware/include/hardware/ camera.h