Mulai 27 Maret 2025, sebaiknya gunakan android-latest-release
, bukan aosp-main
, untuk mem-build dan berkontribusi pada AOSP. Untuk mengetahui informasi selengkapnya, lihat Perubahan pada AOSP.
Ultra HDR
Tetap teratur dengan koleksi
Simpan dan kategorikan konten berdasarkan preferensi Anda.
Android 14 menyediakan dukungan untuk mengambil gambar Ultra HDR
yang dikompresi menggunakan
format gambar
JPEG_R
. Format ini kompatibel dengan gambar JPEG SDR dan mendukung rendering konten HDR.
Untuk mengetahui detail tentang spesifikasi format Ultra HDR, lihat
Format Gambar Ultra HDR v1.0.
Implementasi
Bagian ini menjelaskan cara menerapkan fitur Ultra HDR.
Penerapan referensi
Framework kamera dan layanan kamera AOSP menyertakan implementasi Ultra HDR
referensi.
Selain fungsi referensi dalam framework kamera, Anda dapat
menerapkan Ultra HDR dalam HAL kamera dan mengiklankan dukungan untuk output
JPEG_R
dengan cara yang sama seperti streaming output HAL kamera lainnya. Dalam skenario ini,
HAL kamera harus membuat peta pemulihan yang diperlukan dan gambar JPEG_R
akhir seperti yang ditentukan oleh
spesifikasi Ultra HDR.
Anda dapat mengoptimalkan dan menyesuaikan output akhir bergantung pada kemampuan hardware
dan software perangkat.
Opsi penerapan
Produsen perangkat dapat menentukan tingkat dukungan Ultra HDR berikut untuk
perangkat mereka:
- Minimal: Dalam konfigurasi ini, output Ultra HDR melalui fungsi streaming
komposit layanan kamera dinonaktifkan secara default. Untuk mengaktifkan
implementasi referensi
JpegRCompositeStream
, tetapkan
properti sistem ro.camera.enableCompositeAPI0JpegR
ke true
. Karena semua
proses dan encoding dilakukan dalam software, opsi ini dapat menyebabkan
peningkatan latensi dan penurunan performa.
- Sedang: Dengan opsi ini, penerapan
JpegRCompositeStream
menggunakan file JPEG SDR yang disediakan HAL sebagai
gambar dasar dan frame P010 untuk menghitung peta pemulihan. Opsi ini
melibatkan pemrosesan software dalam jalur data, tetapi relatif kecil
dibandingkan dengan opsi minimal.
- Ekstensif: HAL kamera mengiklankan dan mendukung
streaming output
JPEG_R
secara langsung. Opsi ini memungkinkan produsen perangkat
menerapkan pengoptimalan khusus perangkat dan dapat memberikan peningkatan kualitas
gambar yang signifikan.
Untuk menonaktifkan penerapan JpegRCompositeStream
, tetapkan
properti build ro.camera.disableJpegR
ke true
. Jika properti build ini tidak
ditetapkan atau ditetapkan ke false
, Ultra HDR akan diaktifkan secara default melalui
JpegRCompositeStream
di perangkat yang mendukung
kemampuan output 10-bit
dan
perekaman 10 dan 8-bit serentak.
Validasi
Untuk memvalidasi fitur Ultra HDR di perangkat Anda, jalankan pengujian berikut.
Pengujian CTS
Pengujian ITS
Pengujian manual
Untuk melakukan pengujian manual, gunakan
contoh implementasi untuk pengambilan gambar Ultra HDR,
yang mencakup dukungan untuk konfigurasi dan pengambilan Ultra HDR menggunakan
format gambar JPEG_R
.
Konten dan contoh kode di halaman ini tunduk kepada lisensi yang dijelaskan dalam Lisensi Konten. Java dan OpenJDK adalah merek dagang atau merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2025-07-26 UTC.
[[["Mudah dipahami","easyToUnderstand","thumb-up"],["Memecahkan masalah saya","solvedMyProblem","thumb-up"],["Lainnya","otherUp","thumb-up"]],[["Informasi yang saya butuhkan tidak ada","missingTheInformationINeed","thumb-down"],["Terlalu rumit/langkahnya terlalu banyak","tooComplicatedTooManySteps","thumb-down"],["Sudah usang","outOfDate","thumb-down"],["Masalah terjemahan","translationIssue","thumb-down"],["Masalah kode / contoh","samplesCodeIssue","thumb-down"],["Lainnya","otherDown","thumb-down"]],["Terakhir diperbarui pada 2025-07-26 UTC."],[],[],null,["# Ultra HDR\n\nAndroid 14 provides support for capturing Ultra HDR\ncompressed images using the\n[`JPEG_R`](https://developer.android.com/reference/kotlin/android/graphics/ImageFormat#jpeg_r)\nimage format. This format is backward compatible with SDR JPEG images and\nsupports HDR rendering of content.\nFor details about the Ultra HDR format specification, see\n[Ultra HDR Image Format v1.0](https://developer.android.com/guide/topics/media/hdr-image-format).\n\nImplementation\n--------------\n\nThis section describes how to implement the Ultra HDR feature.\n\n### Reference implementation\n\nThe AOSP camera framework and camera service includes a reference Ultra HDR\nimplementation.\n\nIn addition to the reference functionality in the camera framework, you can\nimplement Ultra HDR within the camera HAL and advertise support for `JPEG_R`\noutput in the same way as other camera HAL output streams. In this scenario,\nthe camera HAL must generate the necessary recovery map and the final `JPEG_R`\nimage as defined by the\n[Ultra HDR specification](https://developer.android.com/guide/topics/media/hdr-image-format#introduction).\nYou can optimize and tune the final output depending on the device hardware\nand software capabilities.\n\n### Implementation options\n\nDevice manufacturers can decide on the following levels of Ultra HDR support for\ntheir devices:\n\n- **Minimal:** In this configuration, Ultra HDR output through the camera service composite stream functionality is disabled by default. To enable the `JpegRCompositeStream` reference implementation, set the `ro.camera.enableCompositeAPI0JpegR` system property to `true`. Because all processes and encoding is performed in software, this option can result in increased latency and decreased performance.\n- **Moderate:** With this option, the `JpegRCompositeStream` implementation uses a HAL-provided SDR JPEG file as a base image and a P010 frame to calculate a recovery map. This option involves software processing within the data path but is relatively minor compared to the minimal option.\n- **Extensive:** The camera HAL advertises and supports the `JPEG_R` output stream directly. This option lets device manufacturers implement device-specific optimizations and can provide significant image quality improvements.\n\nTo disable the `JpegRCompositeStream` implementation, set the\n`ro.camera.disableJpegR` build property to `true`. If this build property isn't\nset or is set to `false`, Ultra HDR is enabled by default through\n`JpegRCompositeStream` on devices supporting\n[10-bit output capability](https://developer.android.com/reference/android/hardware/camera2/CameraMetadata#REQUEST_AVAILABLE_CAPABILITIES_DYNAMIC_RANGE_TEN_BIT)\nand\n[concurrent 10 and 8-bit capture](https://developer.android.com/reference/android/hardware/camera2/params/DynamicRangeProfiles#getProfileCaptureRequestConstraints(long)).\n\nValidation\n----------\n\nTo validate the Ultra HDR feature on your device, run the following tests.\n\n### CTS tests\n\n- [`ImageReaderTest.java#testImageReaderBuilderWithBLOBAndJpegR`](https://android.googlesource.com/platform/cts/+/refs/heads/android16-release/tests/camera/src/android/hardware/camera2/cts/ImageReaderTest.java#815)\n- [`ImageReaderTest.java#testJpegR`](https://android.googlesource.com/platform/cts/+/refs/heads/android16-release/tests/camera/src/android/hardware/camera2/cts/ImageReaderTest.java#503)\n- [`ImageReaderTest.java#testJpegRDisplayP3`](https://android.googlesource.com/platform/cts/+/refs/heads/android16-release/tests/camera/src/android/hardware/camera2/cts/ImageReaderTest.java#526)\n- [`PerformanceTest.java#testSingleCapture`](https://android.googlesource.com/platform/cts/+/refs/heads/android16-release/tests/camera/src/android/hardware/camera2/cts/PerformanceTest.java#313)\n- [`StillCaptureTest.java# testJpegRCapture`](https://android.googlesource.com/platform/cts/+/refs/heads/android16-release/tests/camera/src/android/hardware/camera2/cts/StillCaptureTest.java#192)\n\n### ITS tests\n\n- [`scene4#test_aspect_ratio_and_crop`](https://android.googlesource.com/platform/cts/+/refs/heads/android16-release/apps/CameraITS/tests/scene4/test_aspect_ratio_and_crop.py)\n\n### Manual tests\n\nTo perform manual tests, use the\n[sample implementation for Ultra HDR image capture](https://github.com/android/platform-samples/pull/56),\nwhich includes support for the configuration and capture of Ultra HDR using the\n`JPEG_R` image format."]]