Metadata dan Kontrol

Dukungan metadata

Untuk mendukung penyimpanan file gambar mentah oleh kerangka kerja Android, diperlukan metadata yang substansial tentang karakteristik sensor. Ini termasuk informasi seperti ruang warna dan fungsi bayangan lensa.

Sebagian besar informasi ini adalah properti statis dari subsistem kamera dan oleh karena itu dapat ditanyakan sebelum mengonfigurasi saluran keluaran apa pun atau mengirimkan permintaan apa pun. API kamera baru sangat memperluas informasi yang disediakan oleh metode getCameraInfo() untuk memberikan informasi ini ke aplikasi.

Selain itu, kontrol manual dari subsistem kamera memerlukan umpan balik dari berbagai perangkat tentang status mereka saat ini, dan parameter aktual yang digunakan dalam menangkap bingkai tertentu. Nilai aktual dari kontrol (waktu pemaparan, durasi frame, dan sensitivitas) seperti yang sebenarnya digunakan oleh perangkat keras harus disertakan dalam metadata keluaran. Ini penting agar aplikasi mengetahui kapan penjepitan atau pembulatan terjadi, dan agar aplikasi dapat mengimbangi pengaturan nyata yang digunakan untuk pengambilan gambar.

Misalnya, jika aplikasi menetapkan durasi bingkai ke 0 dalam permintaan, HAL harus menjepit durasi bingkai ke durasi bingkai minimum yang sebenarnya untuk permintaan itu, dan melaporkan durasi minimum yang dijepit dalam metadata hasil keluaran.

Jadi, jika aplikasi perlu menerapkan rutinitas 3A khusus (misalnya, untuk mengukur ledakan HDR dengan benar), aplikasi perlu mengetahui pengaturan yang digunakan untuk menangkap rangkaian hasil terbaru yang diterimanya guna memperbarui pengaturan untuk permintaan berikutnya. Oleh karena itu, API kamera baru menambahkan sejumlah besar metadata dinamis ke setiap bingkai yang diambil. Ini termasuk parameter yang diminta dan aktual yang digunakan untuk pengambilan, serta metadata per-frame tambahan seperti cap waktu dan output generator statistik.

Kontrol per pengaturan

Untuk sebagian besar pengaturan, harapannya adalah bahwa mereka dapat diubah setiap frame, tanpa menimbulkan stutter atau delay yang signifikan pada aliran frame output. Idealnya, laju bingkai keluaran hanya harus dikontrol oleh bidang durasi bingkai permintaan pengambilan, dan tidak bergantung pada perubahan apa pun pada konfigurasi blok pemrosesan. Pada kenyataannya, beberapa kontrol khusus diketahui lambat berubah; ini termasuk resolusi keluaran dan format keluaran saluran kamera, serta kontrol yang memengaruhi perangkat fisik, seperti jarak fokus lensa. Persyaratan yang tepat untuk setiap set kontrol dirinci nanti.

Dukungan data sensor mentah

Selain format piksel yang didukung oleh API lama, API baru menambahkan persyaratan untuk dukungan data sensor mentah (Bayer RAW), baik untuk aplikasi kamera tingkat lanjut maupun untuk mendukung file gambar mentah.