10-Bit Kamera Çıkışı

Android 13 ve sonraki sürümleri çalıştıran cihazlar için Android, akış yapılandırmasının bir parçası olarak kamera istemcisi tarafından yapılandırılabilen dinamik aralık profilleri aracılığıyla 10 bit kamera çıkışını destekler. Cihaz üreticileri HLG10, HDR 10, HDR 10+ ve Dolby Vision gibi 10 bit dinamik aralık profilleri için destek ekleyebilir.

10 bit kamera çıkış desteği, kamera istemcilerinin getSupportedProfiles öğesini çağırarak bir aygıtın desteklenen 10 bit dinamik aralık profillerini keşfetmesine olanak tanır. Çerçeve daha sonra desteklenen dinamik aralık profilleri ve varsa yakalama isteği kısıtlamaları hakkında bilgi içeren DynamicRangeProfiles örneğini döndürür. HLG10 profilinin desteklenmesi gerekir. Önerilen dinamik aralık profili REQUEST_RECOMMENDED_TEN_BIT_DYNAMIC_RANGE_PROFILE alanında listelenir.

Kamera istemcileri, setDynamicRangeProfile öğesini çağırarak akış kombinasyonlarını yapılandırabilir. Zorunlu çıkış akışı birleşimleri hakkında daha fazla bilgi için Normal yakalama bölümündeki 10 bitlik çıkış ek garantili yapılandırmalar tablosuna bakın.

Gereksinimler

10 bit kamera çıkışını desteklemek için cihazın, ilgili ISP desteğine sahip 10 bit veya daha yüksek kapasiteli bir kamera sensörüne sahip olması gerekir. 10 bit desteğine ilişkin uyumluluk gereksinimleriyle ilgili ayrıntılar için bölüm 7.5'e bakın. CDD'deki kameralar .

Uygulama

10 bit kamera çıkışı desteği sağlamak için cihaz üreticilerinin aşağıdaki Kamera AIDL HAL entegrasyonlarını gerçekleştirmesi gerekir:

  • ANDROID_REQUEST_AVAILABLE_CAPABILITIES_DYNAMIC_RANGE_TEN_BIT kamera özelliklerine dahil edin.
  • ANDROID_REQUEST_AVAILABLE_DYNAMIC_RANGE_PROFILES_MAP desteklenen tüm dinamik aralık profilleriyle ve bunların kısıtlamalarının bir bit haritasıyla doldurun. HLG10 profilinin desteklenmesi gerekir. Ayrıca, kamera istemcilerini desteklenen en uygun format hakkında bilgilendirmek için önerilen bir dinamik aralık profilini de eklemelisiniz.
  • P010 formatını kullanan akışlar için akış yapılandırması sırasında dinamik aralık profili değeri için destek sağlayın veya uygulama tanımlı bir format ( ImageFormat.PRIVATE ) desteği sağlayın.
  • Dinamik aralık profiline bağlı olarak, kamera servisine bildirimde bulunmadan önce işlenmiş Gralloc 4 arabelleklerinin statik veya dinamik meta veri arabelleğini ayarlayın.

Kamera HAL'deki 10 bit kamera çıkışı hakkında daha fazla ayrıntı için metadata_definitions.xml dosyasında aşağıdakilere bakın:

10 bit kamera çıkışını destekleyen referans Kamera HAL uygulaması için bkz. /hardware/google/camera/devices/EmulatedCamera/hwl .

Doğrulama

10 bit kamera çıkışı uygulamanızı doğrulamak ve üçüncü taraf uygulamaların bu özelliği etkinleştirebildiğinden emin olmak için aşağıdaki üç doğrulama aşamasını gerçekleştirmenizi öneririz.

10 bit kamera çıkışının görsel olarak doğrulanması için cihazın HDR (1000+ nit ekran) görüntülemeyi desteklediği ve video görüntüleme uygulamasının (örneğin Google Fotoğraflar) HDR video oynatmayı desteklediği varsayılır.

API işlevsel doğruluğunu test edin

10 bit kamera çıkışının API işlevsel doğruluğunu test etmek için aşağıdaki CTS, kamera ITS ve VTS testlerini çalıştırın:

Yerel kamera ile üçüncü taraf uygulamasını karşılaştırın

Üçüncü taraf bir uygulamayla 10 bit video yakalamanın sonuçlarının, yerel kamera uygulamasıyla aynı olmasa da benzer olmasını sağlamanızı önemle tavsiye ederiz. Bu, pozlama, dinamik aralık ve renk gibi ayarlama seçeneklerinin yerel uygulamadan üçüncü taraf uygulamalara aktarılması gerektiği anlamına gelir. Cihazınızda 10 bit kamera çıkışını destekleyen üçüncü taraf bir uygulamanın video kayıt davranışını doğrulamak için GitHub'daki Camera2Video örnek uygulamasını kullanın. Aşağıdaki kılavuz, sensörlerin, panellerin, izleme koşullarının ve satıcı tercihlerinin değişkenliği nedeniyle HDR'nin görünür yönlerini nesnel sayılar olmaksızın göstermeye hizmet etmektedir.

Karşılaştırma için önerilen sahneler

Yerel kamera uygulaması ile üçüncü taraf uygulaması arasında bir karşılaştırma yapmak için hem yerel kamera uygulaması hem de Camera2Video örnek uygulamasıyla birkaç farklı sahneyi kullanarak videolar çekin. Karşılaştırma için kullanılması önerilen sahneler şunlardır:

  • Önemli bir parlaklık aralığı oluşturan mum veya küçük parlak ışık gibi parlak bir nesnenin bulunduğu orta ışıktan düşük ışığa kadar bir sahne. Bu, otomatik pozlama davranışını ve dinamik aralığı doğrular.
  • Canlı renkler ve arabanın krom tamponları gibi yansıtıcı nesnelerle parlak vurgular oluşturan parlak bir dış mekan sahnesi. Bu, daha da parlak vurgulara sahip parlak sahnelerin işlenmesini doğrular.
  • Bir ev veya ofisteki iç mekan doğal sahnesi gibi orta aralıklı, düşük dinamik aralıklı bir sahne. Bu, daha az aşırı aydınlatma koşullarının beklendiği gibi davrandığını doğrulamaktadır.

Tüm sahneler için pozlamayı, rengi ve cilt tonu kullanımını doğrulamak için kişilerin ve yüzlerin bulunmasını öneririz. Her atışta varyasyonun azaltılması, arka arkaya karşılaştırmaları kolaylaştırır.

Standart dinamik aralık ile yüksek dinamik aralığı karşılaştırın

Standart bir dinamik aralık profiline göre 10 bit dinamik aralık profili kullanmanın algılanan bir faydası olduğundan emin olmak için, HDR'nin önemli yönlerinin çekimlerde göründüğünü doğrulamak amacıyla SDR (HDR profili olmayan) kullanılarak yapılan video çekimlerini HDR videolarla karşılaştırın. SDR ve HDR'yi karşılaştırmak için Camera2Video örnek uygulamasını ve yerel kamera uygulaması ile üçüncü taraf uygulamaları karşılaştırmak için önerilen sahneleri kullanın.

Önerilen sahnelerde doğrulanması gereken temel hususlar aşağıdadır. HDR özellikli ekran panellerinin parlaklık seviyeleri (nit veya lümen cinsinden ölçülür) farklılık gösterir; bu nedenle verilen aşağıdaki sayılar örnek olarak verilmiştir:

  • Orta ışıktan düşük ışık sahnesine kadar, mumun veya küçük ışığın parlak vurguları, HDR klipte ekran için maksimum parlaklıkta (muhtemelen 1000 nit'e kadar) oluşturulur ve SDR için maksimum parlaklıkta (yaklaşık 100 nit) oluşturulur. nit) SDR klibinde. HDR klibinde, parlak vurgular ekrandan parlamalı ve kullanıcının sahnenin gerçek dinamik aralığına ilişkin algısını yakalamalıdır. HDR klibi ile karşılaştırıldığında SDR klibi daha düz ve daha az parlak görünmelidir.
  • Parlak çıkış sahnesinde, cihazın ayarına bağlı olarak HDR klibi, SDR klibi ile karşılaştırıldığında ekran parlaklığında belirgin bir fark gösteriyor. HDR klip için genel sahnenin ekran parlaklığı (boşluk payına bağlı olarak) daha yüksek olmalıdır (örneğin 800 nit'e kadar) ve krom tamponlar gibi parlak vurgular için maksimum parlaklık civarında bu değer daha da yüksek olmalıdır.
  • Orta aralık, düşük dinamik aralıklı iç mekan çekiminde, HDR ve SDR klipleri renk ve ton açısından benzerdir; HDR çekimi potansiyel olarak SDR'den daha parlaktır. HDR, SDR'den daha koyu olmamalıdır. Ayarlama seçenekleri bunu imkansız hale getiriyorsa üçüncü taraf uygulama davranışının yerel kamera uygulaması davranışıyla eşleştiğinden emin olun.
,

Android 13 ve sonraki sürümleri çalıştıran cihazlar için Android, akış yapılandırmasının bir parçası olarak kamera istemcisi tarafından yapılandırılabilen dinamik aralık profilleri aracılığıyla 10 bit kamera çıkışını destekler. Cihaz üreticileri HLG10, HDR 10, HDR 10+ ve Dolby Vision gibi 10 bit dinamik aralık profilleri için destek ekleyebilir.

10 bit kamera çıkış desteği, kamera istemcilerinin getSupportedProfiles öğesini çağırarak bir aygıtın desteklenen 10 bit dinamik aralık profillerini keşfetmesine olanak tanır. Çerçeve daha sonra desteklenen dinamik aralık profilleri ve varsa yakalama isteği kısıtlamaları hakkında bilgi içeren DynamicRangeProfiles örneğini döndürür. HLG10 profilinin desteklenmesi gerekir. Önerilen dinamik aralık profili REQUEST_RECOMMENDED_TEN_BIT_DYNAMIC_RANGE_PROFILE alanında listelenir.

Kamera istemcileri, setDynamicRangeProfile öğesini çağırarak akış kombinasyonlarını yapılandırabilir. Zorunlu çıkış akışı birleşimleri hakkında daha fazla bilgi için Normal yakalama bölümündeki 10 bitlik çıkış ek garantili yapılandırmalar tablosuna bakın.

Gereksinimler

10 bit kamera çıkışını desteklemek için cihazın, ilgili ISP desteğine sahip 10 bit veya daha yüksek kapasiteli bir kamera sensörüne sahip olması gerekir. 10 bit desteğine ilişkin uyumluluk gereksinimleriyle ilgili ayrıntılar için bölüm 7.5'e bakın. CDD'deki kameralar .

Uygulama

10 bit kamera çıkışı desteği sağlamak için cihaz üreticilerinin aşağıdaki Kamera AIDL HAL entegrasyonlarını gerçekleştirmesi gerekir:

  • ANDROID_REQUEST_AVAILABLE_CAPABILITIES_DYNAMIC_RANGE_TEN_BIT kamera özelliklerine dahil edin.
  • ANDROID_REQUEST_AVAILABLE_DYNAMIC_RANGE_PROFILES_MAP desteklenen tüm dinamik aralık profilleriyle ve bunların kısıtlamalarının bir bit haritasıyla doldurun. HLG10 profilinin desteklenmesi gerekir. Ayrıca, kamera istemcilerini desteklenen en uygun format hakkında bilgilendirmek için önerilen bir dinamik aralık profilini de eklemelisiniz.
  • P010 formatını kullanan akışlar için akış yapılandırması sırasında dinamik aralık profili değeri için destek sağlayın veya uygulama tanımlı bir format ( ImageFormat.PRIVATE ) desteği sağlayın.
  • Dinamik aralık profiline bağlı olarak, kamera servisine bildirimde bulunmadan önce işlenmiş Gralloc 4 arabelleklerinin statik veya dinamik meta veri arabelleğini ayarlayın.

Kamera HAL'deki 10 bit kamera çıkışı hakkında daha fazla ayrıntı için metadata_definitions.xml dosyasında aşağıdakilere bakın:

10 bit kamera çıkışını destekleyen referans Kamera HAL uygulaması için bkz. /hardware/google/camera/devices/EmulatedCamera/hwl .

Doğrulama

10 bit kamera çıkışı uygulamanızı doğrulamak ve üçüncü taraf uygulamaların bu özelliği etkinleştirebildiğinden emin olmak için aşağıdaki üç doğrulama aşamasını gerçekleştirmenizi öneririz.

10 bit kamera çıkışının görsel olarak doğrulanması için cihazın HDR (1000+ nit ekran) görüntülemeyi desteklediği ve video görüntüleme uygulamasının (örneğin Google Fotoğraflar) HDR video oynatmayı desteklediği varsayılır.

API işlevsel doğruluğunu test edin

10 bit kamera çıkışının API işlevsel doğruluğunu test etmek için aşağıdaki CTS, kamera ITS ve VTS testlerini çalıştırın:

Yerel kamera ile üçüncü taraf uygulamasını karşılaştırın

Üçüncü taraf bir uygulamayla 10 bit video yakalamanın sonuçlarının, yerel kamera uygulamasıyla aynı olmasa da benzer olmasını sağlamanızı önemle tavsiye ederiz. Bu, pozlama, dinamik aralık ve renk gibi ayarlama seçeneklerinin yerel uygulamadan üçüncü taraf uygulamalara aktarılması gerektiği anlamına gelir. Cihazınızda 10 bit kamera çıkışını destekleyen üçüncü taraf bir uygulamanın video kayıt davranışını doğrulamak için GitHub'daki Camera2Video örnek uygulamasını kullanın. Aşağıdaki kılavuz, sensörlerin, panellerin, izleme koşullarının ve satıcı tercihlerinin değişkenliği nedeniyle HDR'nin görünür yönlerini nesnel sayılar olmaksızın göstermeye hizmet etmektedir.

Karşılaştırma için önerilen sahneler

Yerel kamera uygulaması ile üçüncü taraf uygulaması arasında bir karşılaştırma yapmak için hem yerel kamera uygulaması hem de Camera2Video örnek uygulamasıyla birkaç farklı sahneyi kullanarak videolar çekin. Karşılaştırma için kullanılması önerilen sahneler şunlardır:

  • Önemli bir parlaklık aralığı oluşturan mum veya küçük parlak ışık gibi parlak bir nesnenin bulunduğu orta ışıktan düşük ışığa kadar bir sahne. Bu, otomatik pozlama davranışını ve dinamik aralığı doğrular.
  • Canlı renkler ve arabanın krom tamponları gibi yansıtıcı nesnelerle parlak vurgular oluşturan parlak bir dış mekan sahnesi. Bu, daha da parlak vurgulara sahip parlak sahnelerin işlenmesini doğrular.
  • Bir ev veya ofisteki iç mekan doğal sahnesi gibi orta aralıklı, düşük dinamik aralıklı bir sahne. Bu, daha az aşırı aydınlatma koşullarının beklendiği gibi davrandığını doğrulamaktadır.

Tüm sahneler için pozlamayı, rengi ve cilt tonu kullanımını doğrulamak için kişilerin ve yüzlerin bulunmasını öneririz. Her atışta varyasyonun azaltılması, arka arkaya karşılaştırmaları kolaylaştırır.

Standart dinamik aralık ile yüksek dinamik aralığı karşılaştırın

Standart bir dinamik aralık profiline göre 10 bit dinamik aralık profili kullanmanın algılanan bir faydası olduğundan emin olmak için, HDR'nin önemli yönlerinin çekimlerde göründüğünü doğrulamak amacıyla SDR (HDR profili olmayan) kullanılarak yapılan video çekimlerini HDR videolarla karşılaştırın. SDR ve HDR'yi karşılaştırmak için Camera2Video örnek uygulamasını ve yerel kamera uygulaması ile üçüncü taraf uygulamaları karşılaştırmak için önerilen sahneleri kullanın.

Önerilen sahnelerde doğrulanması gereken temel hususlar aşağıdadır. HDR özellikli ekran panellerinin parlaklık seviyeleri (nit veya lümen cinsinden ölçülür) farklılık gösterir; bu nedenle verilen aşağıdaki sayılar örnek olarak verilmiştir:

  • Orta ışıktan düşük ışık sahnesine kadar, mumun veya küçük ışığın parlak vurguları, HDR klipte ekran için maksimum parlaklıkta (muhtemelen 1000 nit'e kadar) oluşturulur ve SDR için maksimum parlaklıkta (yaklaşık 100 nit) oluşturulur. nit) SDR klibinde. HDR klibinde, parlak vurgular ekrandan parlamalı ve kullanıcının sahnenin gerçek dinamik aralığına ilişkin algısını yakalamalıdır. HDR klibi ile karşılaştırıldığında SDR klibi daha düz ve daha az parlak görünmelidir.
  • Parlak çıkış sahnesinde, cihazın ayarına bağlı olarak HDR klibi, SDR klibi ile karşılaştırıldığında ekran parlaklığında belirgin bir fark gösteriyor. HDR klip için genel sahnenin ekran parlaklığı (boşluk payına bağlı olarak) daha yüksek olmalıdır (örneğin 800 nit'e kadar) ve krom tamponlar gibi parlak vurgular için maksimum parlaklık civarında bu değer daha da yüksek olmalıdır.
  • Orta aralık, düşük dinamik aralıklı iç mekan çekiminde, HDR ve SDR klipleri renk ve ton açısından benzerdir; HDR çekimi potansiyel olarak SDR'den daha parlaktır. HDR, SDR'den daha koyu olmamalıdır. Ayarlama seçenekleri bunu imkansız hale getiriyorsa üçüncü taraf uygulama davranışının yerel kamera uygulaması davranışıyla eşleştiğinden emin olun.