Output kamera 10-bit

Untuk perangkat yang menjalankan Android 13 dan yang lebih tinggi, Android mendukung output kamera 10-bit melalui profil rentang dinamis yang dapat dikonfigurasi oleh klien kamera sebagai bagian dari konfigurasi streaming. Produsen perangkat dapat menambahkan dukungan untuk profil rentang dinamis 10-bit seperti HLG10, HDR 10, HDR 10+, dan Dolby Vision.

Dukungan output kamera 10-bit memungkinkan klien kamera menemukan profil rentang dinamis 10-bit yang didukung di perangkat dengan memanggil getSupportedProfiles. Kemudian, framework menampilkan instance DynamicRangeProfiles, yang mencakup informasi tentang profil rentang dinamis yang didukung dan, jika tersedia, batasan permintaan pengambilan. Profil HLG10 harus didukung. Profil rentang dinamis yang direkomendasikan tercantum di kolom REQUEST_RECOMMENDED_TEN_BIT_DYNAMIC_RANGE_PROFILE.

Klien kamera dapat mengonfigurasi kombinasi streaming dengan memanggil setDynamicRangeProfile. Untuk mengetahui informasi selengkapnya tentang kombinasi aliran output wajib, lihat tabel Konfigurasi tambahan yang dijamin untuk output 10-bit di Perekaman reguler.

Persyaratan

Untuk mendukung output kamera 10-bit, perangkat harus memiliki sensor kamera yang mampu menghasilkan 10-bit atau lebih tinggi dengan dukungan ISP masing-masing. Untuk mengetahui detail tentang persyaratan kompatibilitas terkait untuk dukungan 10-bit, lihat bagian 7.5. Kamera di CDD.

Implementasi

Untuk memberikan dukungan pada output kamera 10-bit, produsen perangkat harus melakukan integrasi HAL AIDL Kamera berikut:

  • Sertakan ANDROID_REQUEST_AVAILABLE_CAPABILITIES_DYNAMIC_RANGE_TEN_BIT dalam kemampuan kamera.
  • Isi ANDROID_REQUEST_AVAILABLE_DYNAMIC_RANGE_PROFILES_MAP dengan semua profil rentang dinamis yang didukung dan bitmap batasan profil tersebut. Profil HLG10 harus didukung. Anda juga harus menyertakan profil rentang dinamis yang direkomendasikan untuk memberi tahu klien kamera tentang format yang didukung secara optimal.
  • Pastikan dukungan untuk nilai profil rentang dinamis selama konfigurasi streaming untuk streaming yang menggunakan format P010 atau dukungan untuk format yang ditentukan implementasi (ImageFormat.PRIVATE).
  • Bergantung pada profil rentang dinamis, tetapkan buffer metadata statis atau dinamis dari buffer Gralloc 4 yang diproses sebelum memberi tahu layanan kamera.

Untuk mengetahui detail lebih lanjut tentang output kamera 10-bit di Camera HAL, lihat berikut ini di metadata_definitions.xml:

Untuk implementasi Camera HAL referensi yang mendukung output kamera 10-bit, lihat /hardware/google/camera/devices/EmulatedCamera/hwl.

Validasi

Untuk memvalidasi penerapan output kamera 10-bit dan memastikan bahwa aplikasi pihak ketiga dapat mengaktifkan fitur tersebut, sebaiknya lakukan tiga tahap validasi berikut.

Untuk validasi visual output kamera 10-bit, diasumsikan bahwa perangkat mendukung tampilan HDR (tampilan 1000+ nit), dan aplikasi penampil video (misalnya, Google Foto) mendukung pemutaran video HDR.

Menguji kebenaran fungsional API

Untuk menguji kebenaran fungsional API output kamera 10-bit, jalankan pengujian CTS, ITS kamera, dan VTS berikut:

Membandingkan kamera bawaan dan aplikasi pihak ketiga

Sebaiknya pastikan hasil pengambilan video 10-bit dengan aplikasi pihak ketiga serupa, jika tidak identik, dengan aplikasi kamera bawaan. Artinya, pilihan penyesuaian, seperti eksposur, rentang dinamis, dan warna, harus diteruskan dari aplikasi bawaan ke aplikasi pihak ketiga. Untuk memverifikasi perilaku perekaman video aplikasi pihak ketiga yang mendukung output kamera 10-bit di perangkat Anda, gunakan aplikasi contoh Camera2Video di GitHub. Panduan berikut berfungsi untuk mengilustrasikan aspek HDR yang terlihat tanpa angka objektif, karena variabilitas sensor, panel, kondisi tampilan, dan preferensi vendor.

Adegan yang disarankan untuk perbandingan

Untuk membandingkan aplikasi kamera bawaan dan aplikasi pihak ketiga, rekam video menggunakan beberapa adegan yang berbeda dengan aplikasi kamera bawaan dan aplikasi contoh Camera2Video. Berikut adalah saran adegan yang dapat digunakan untuk perbandingan:

  • Adegan dengan cahaya sedang hingga redup dengan objek terang, seperti lilin atau cahaya terang kecil yang menciptakan rentang kecerahan yang signifikan. Hal ini mengonfirmasi perilaku eksposur otomatis dan rentang dinamis.
  • Adegan luar ruangan yang cerah dengan warna-warna cerah dan objek reflektif seperti bumper krom pada mobil, yang menciptakan sorotan cerah. Hal ini mengonfirmasi rendering untuk adegan cerah dengan sorotan yang lebih cerah.
  • Adegan rentang dinamis rendah hingga sedang, seperti adegan alami di dalam ruangan di rumah atau kantor. Hal ini mengonfirmasi bahwa kondisi pencahayaan yang tidak terlalu ekstrem berperilaku seperti yang diharapkan.

Untuk semua adegan, sebaiknya ada orang dan wajah untuk memverifikasi eksposur, warna, dan penanganan warna kulit. Mengurangi variasi pengambilan gambar ke pengambilan gambar mempermudah perbandingan berurutan.

Membandingkan rentang dinamis standar dan rentang dinamis tinggi

Untuk memastikan bahwa ada manfaat yang dirasakan dari penggunaan profil rentang dinamis 10-bit dibandingkan dengan profil rentang dinamis standar, bandingkan rekaman video menggunakan SDR (tanpa profil HDR) dengan video HDR untuk mengonfirmasi bahwa aspek utama HDR muncul dalam rekaman. Untuk membandingkan SDR dan HDR, gunakan aplikasi contoh Camera2Video dan adegan yang disarankan untuk membandingkan aplikasi kamera bawaan dan aplikasi pihak ketiga.

Berikut adalah aspek utama yang perlu diverifikasi dalam adegan yang disarankan. Panel layar yang kompatibel dengan HDR memiliki tingkat kecerahan yang berbeda-beda (diukur dalam nit atau lumen), sehingga angka berikut diberikan sebagai contoh:

  • Dalam adegan cahaya sedang hingga cahaya redup, sorotan terang lilin atau cahaya kecil dirender pada kecerahan maksimum untuk layar (mungkin hingga 1.000 nit) dalam klip HDR, dan dirender pada kecerahan maksimum untuk SDR (sekitar 100 nit) dalam klip SDR. Dalam klip HDR, sorotan terang harus bersinar dari layar, menangkap persepsi pengguna tentang rentang dinamis sebenarnya dari adegan tersebut. Dibandingkan dengan klip HDR, klip SDR akan tampak lebih datar dan kurang cerah.
  • Dalam adegan output yang cerah, bergantung pada penyetelan perangkat, klip HDR menunjukkan perbedaan yang jelas dalam kecerahan layar dibandingkan dengan klip SDR. Untuk klip HDR, kecerahan layar untuk keseluruhan adegan (bergantung pada ruang atas) harus lebih tinggi, misalnya, hingga 800 nit, dan bahkan lebih tinggi lagi untuk sorotan terang seperti bumper krom, di sekitar kecerahan maksimum.
  • Pada pengambilan dalam ruangan dengan rentang dinamis rendah di kelas menengah, klip HDR dan SDR memiliki warna dan nada yang serupa, dengan pengambilan HDR yang berpotensi lebih terang daripada SDR. HDR tidak boleh lebih gelap daripada SDR. Jika pilihan penyetelan membuat hal ini tidak mungkin, pastikan perilaku aplikasi pihak ketiga cocok dengan perilaku aplikasi kamera bawaan.