Bokeh kamera adalah efek kedalaman bidang yang dangkal yang dibuat dengan memburamkan bagian-bagian dari suatu adegan sehingga tidak fokus. Pada kamera di perangkat seluler, bokeh dicapai menggunakan informasi kedalaman yang diperoleh dari citra stereo dari dua kamera atau dari fotodioda (PD) ganda dari satu kamera.
Mulai dari Android 11, platform Android mendukung penerapan bokeh dan menyediakan API untuk membuat fitur ini tersedia bagi aplikasi pihak ketiga.
Implementasi
Agar fitur bokeh kamera tersedia di perangkat Anda, lakukan hal berikut:
- Beriklan - ANDROID_CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_MAX_SIZES:- Tag ini dalam format array tuple tiga bilangan bulat, dengan setiap tuple dalam format - {mode, maxWidth, maxHeight}. Selain- {ANDROID_CONTROL_EXTENDED_SCENE_MODE_DISABLED, 0, 0}, HAL kamera juga harus mencantumkan salah satu atau kedua mode- ANDROID_CONTROL_EXTENDED_SCENE_MODE_BOKEH_STILL_CAPTUREdan- ANDROID_CONTROL_EXTENDED_SCENE_MODE_BOKEH_CONTINUOUSdengan ukuran streaming maksimum yang sesuai.
- Beriklan - ANDROID_CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_ZOOM_RATIO_RANGES:- Tag ini dalam format array - {minZoomRatio, maxZoomRatio}, yang berisi semua rentang rasio zoom untuk mode adegan yang diperluas yang diaktifkan, dalam urutan yang sama seperti di- ANDROID_CONTROL_AVAILABLE_EXTENDED_SCENE_MODE_MAX_SIZES. Rentang zoom- [1.0, 1.0]berarti zoom tidak didukung.
- Isi - ANDROID_CONTROL_USE_EXTENDED_SCENE_MODEdi- ANDROID_CONTROL_AVAILABLE_MODES.
Agar aplikasi dapat memicu fitur bokeh, aplikasi harus menyetel ANDROID_CONTROL_MODE
ke ANDROID_CONTROL_USE_EXTENDED_SCENE_MODE dan
ANDROID_CONTROL_EXTENDED_SCENE_MODE ke salah satu mode pemandangan yang diperluas yang didukung.
Perhatikan bahwa penerapan bokeh dapat menyebabkan konsumsi memori tambahan karena
komputasi stereo.
Jika mode adegan yang diperluas yang didukung tidak dapat diterapkan per frame dan menyebabkan penundaan yang tidak terduga saat diaktifkan/dinonaktifkan, sertakan ANDROID_CONTROL_EXTENDED_SCENE_MODE dalam ANDROID_REQUEST_AVAILABLE_SESSION_KEYS. Pada saat yang sama, terapkan metode
ICameraDeviceSession::isReconfigurationRequired() untuk menghindari
rekonfigurasi untuk mode adegan yang diperluas yang tidak memerlukan rekonfigurasi.
Validasi
Untuk memvalidasi fitur bokeh di perangkat Anda, jalankan pengujian CTS, VTS, dan CTS Verifier berikut:
- CtsCameraTestCases
- VtsHalCameraProviderV2_4TargetTest
- CameraBokehTestdi CTS Verifier