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
Dokumentasi Lapangan
int(*fokus_otomatis)(struktur perangkat_kamera *) |
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.
int(* batalkan_gambar)(struktur perangkat_kamera *) |
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).
int(* dump)(struct camera_device *, int fd) |
batal(* aktifkan_msg_type)(struct camera_device *, int32_t msg_type) |
char*(* get_parameters)(struct camera_device *) |
int(* pesan_tipe_diaktifkan)(struktur perangkat_kamera *, int32_t pesan_tipe) |
int(* preview_enabled)(struct kamera_perangkat *) |
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.
int(* rekaman_diaktifkan)(struct kamera_perangkat *) |
void(* rilis)(struct camera_device *) |
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.
int(* kirim_perintah)(struct camera_device *, int32_t cmd, int32_t arg1, int32_t arg2) |
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) |
int(* set_parameter)(struct camera_device *, const char *parms) |
int(* set_preview_window)(struct camera_device *, struct preview_stream_ops *jendela) |
int(* start_preview)(struct camera_device *) |
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.
batal(* stop_preview)(struct camera_device *) |
void(* stop_recording)(struct camera_device *) |
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.
int(* ambil_gambar)(struct kamera_perangkat *) |
Dokumentasi untuk struct ini dihasilkan dari file berikut:
- perangkat keras/libhardware/include/hardware/ camera.h