Mengintegrasikan video Eclipsa

Penayangan video Rentang Dinamis Tinggi (HDR) di perangkat seluler sering kali mengalami kelemahan utama: inkonsistensi visual di berbagai panel. Saat menjelajahi feed konten campuran yang berisi elemen Rentang Dinamis Standar (SDR) dan HDR, pipeline rendering kesulitan menyeimbangkannya. Hal ini menyebabkan transisi yang tidak menentu dan mengganggu, serta lonjakan kecerahan yang tidak dapat diprediksi.

Bagi kreator konten, kurangnya keseragaman ini mengganggu maksud artistik. Video HDR yang di-grading dengan cermat di monitor profesional dapat dirender dengan highlight terpotong, tone pudar, atau bayangan gelap saat dilihat di perangkat konsumen.

Video Eclipsa adalah standar video HDR modern yang dirancang untuk mengatasi tantangan ekosistem lintas perangkat ini. Dibuat berdasarkan spesifikasi SMPTE ST 2094-50, video Eclipsa memungkinkan layar menyesuaikan pemetaan konten secara dinamis berdasarkan kemampuan hardware fisik dan kondisi pencahayaan ruangan real-time. Didukung oleh integrasi bawaan tanpa konfigurasi di Jetpack Media3 ExoPlayer dan pipeline pengambilan Camera2 standar, video Eclipsa menawarkan jalur tanpa biaya dan tanpa hambatan bagi tim engineering seluler untuk menerapkan streaming video adaptif hardware generasi berikutnya yang mempertahankan maksud artistik di setiap layar.

Arsitektur teknis SMPTE ST 2094-50

Layar perangkat seluler sangat bervariasi dalam headroom luminansnya, yaitu jumlah kecerahan yang tersedia di atas titik putih referensi layar. Jika batasan hardware layar tidak sesuai dengan persyaratan mastering video HDR, sorotan akan terpotong atau terlihat kusam. Headroom aktual dan titik putih referensi layar berubah secara dinamis saat sensor cahaya sekitar menyesuaikan panel dengan lingkungan sekitar.

SMPTE ST 2094-50 mengatasi masalah ini dengan memperkenalkan metadata berlapis ganda yang memastikan konsistensi visual melalui dua pilar utama:

Anchor putih referensi

Hal ini menetapkan dasar pengukuran ketat yang memetakan kecerahan maksimum elemen SDR langsung ke titik putih referensi layar. Setiap nilai luminans yang melebihi anchor ini dikhususkan untuk sorotan HDR. Mekanisme penambatan yang dapat diprediksi ini memastikan bahwa saat lapisan SDR dan HDR digabungkan di layar, keduanya mempertahankan hubungan visual yang diinginkan tanpa saling mengaburkan.

Kurva penguatan adaptif headroom

Alih-alih memaksakan kurva pemetaan nuansa statis, kreator menyematkan metadata parametrik yang menginstruksikan pipeline tampilan secara tepat cara menskalakan saat headroom yang tersedia terbatas. Standar ini memberi kreator fleksibilitas terperinci untuk memilih apakah panel yang ditargetkan harus melakukan soft-clip highlight, hard-clip, atau mengompresi midtone dan bayangan untuk secara aktif mempertahankan detail terbaik di area terang.

Dukungan platform

Dukungan tingkat platform untuk pemutaran dan perekaman video Eclipsa diperkenalkan di Android 17 (level API 37).

Menerapkan pemutaran

Untuk pengembangan aplikasi standar, Media3 ExoPlayer menyediakan dukungan siap pakai untuk video Eclipsa. Saat mengurai file yang disematkan dengan metadata SMPTE 2094-50, ExoPlayer mengekstrak dan menerapkan metadata dengan lancar, tanpa memerlukan konfigurasi pemutar kustom.

Sebaiknya pindahkan pipeline pemutaran ke Jetpack Media3. ExoPlayer secara native menangani ekstraksi container tingkat rendah, yang sepenuhnya mengabaikan artefak dekode tingkat platform yang diketahui yang ada di lapisan rendering lama di Android 16 (level API 36) dan yang lebih rendah.

Mengimplementasikan perekaman video

Untuk merekam video Eclipsa dari perangkat, pipeline kamera Anda harus dikonfigurasi untuk menghasilkan metadata SMPTE 2094-50 dengan menetapkan profil rentang dinamis yang kompatibel.

Setelah dukungan perangkat divalidasi menggunakan CameraCharacteristics, rutekan streaming ke platform encoder Anda menggunakan profil DynamicRangeProfiles.HLG10_SMPTE_2094_50. Untuk petunjuk tentang cara membuat kueri dan mengonfigurasi profil rentang dinamis dalam sesi kamera, lihat Perekaman video HDR.

Tidak diperlukan konfigurasi codec eksplisit untuk metadata SMPTE 2094-50. Framework media Android otomatis melampirkan dan meneruskan metadata jika ada di profil dinamis aktif.

Pertimbangan kompatibilitas dan performa

Untuk memantau performa, ambil objek Display yang aktif dan periksa LutProperties pada OverlayProperties yang ditampilkan oleh getOverlaySupport() untuk mengidentifikasi ketersediaan jalur yang diakselerasi hardware.

Untuk perangkat yang tidak memiliki kemampuan akselerasi hardware, dukungan untuk memilih tidak menggunakan rendering video Eclipsa di Exoplayer sedang dalam pengembangan.

Referensi lainnya