10-bitowy sygnał z aparatu

W przypadku urządzeń z Androidem 13 lub nowszym Android obsługuje 10-bitowe dane wyjściowe z aparatu za pomocą profili zakresu dynamicznego, które klient aparatu może skonfigurować w ramach konfiguracji strumienia. Producenci urządzeń mogą dodać obsługę 10-bitowych profili zakresu dynamicznego, takich jak HLG10, HDR10, HDR10+ i Dolby Vision.

Obsługa 10-bitowego wyjścia z aparatu umożliwia klientom aparatu wykrywanie obsługiwanych 10-bitowych profili zakresu dynamicznego urządzenia przez wywołanie funkcji getSupportedProfiles. Platforma zwraca instancję DynamicRangeProfiles, która zawiera informacje o obsługiwanych profilach zakresu dynamicznego oraz, jeśli są dostępne, ograniczenia żądania przechwytywania. Profil musi być obsługiwany.HLG10 Zalecany profil zakresu dynamicznego jest podany w polu REQUEST_RECOMMENDED_TEN_BIT_DYNAMIC_RANGE_PROFILE.

Klienci aparatu mogą konfigurować kombinacje strumieni, wywołując setDynamicRangeProfile. Więcej informacji o obowiązkowych kombinacjach strumieni wyjściowych znajdziesz w tabeli Dodatkowe gwarantowane konfiguracje wyjścia 10-bitowego w sekcji Zwykłe przechwytywanie.

Wymagania

Aby obsługiwać 10-bitowe dane wyjściowe z aparatu, urządzenie musi mieć czujnik aparatu o 10-bitowej lub wyższej rozdzielczości z odpowiednią obsługą ISP. Szczegółowe informacje o wymaganiach dotyczących zgodności związanych z obsługą 10-bitowego koloru znajdziesz w sekcji 7.5. Kamery w dokumencie CDD.

Implementacja

Aby zapewnić obsługę 10-bitowego wyjścia z aparatu, producenci urządzeń muszą przeprowadzić następujące integracje interfejsu HAL AIDL aparatu:

  • Uwzględnij ANDROID_REQUEST_AVAILABLE_CAPABILITIES_DYNAMIC_RANGE_TEN_BIT w możliwościach aparatu.
  • Wypełnij pole ANDROID_REQUEST_AVAILABLE_DYNAMIC_RANGE_PROFILES_MAP wszystkimi obsługiwanymi profilami zakresu dynamicznego i mapą bitową ich ograniczeń. Profil musi być obsługiwany.HLG10 Musisz też podać zalecany profil zakresu dynamicznego, aby poinformować klientów aparatu o optymalnym obsługiwanym formacie.
  • Zapewnij obsługę wartości profilu zakresu dynamicznego podczas konfiguracji strumienia w przypadku strumieni korzystających z formatu P010 lub obsługę formatu zdefiniowanego przez implementację (ImageFormat.PRIVATE).
  • W zależności od profilu zakresu dynamicznego ustaw statyczny lub dynamiczny bufor metadanych przetworzonych buforów Gralloc 4 przed powiadomieniem usługi aparatu.

Więcej informacji o 10-bitowym wyjściu z aparatu w HAL aparatu znajdziesz w metadata_definitions.xml:

Przykładową implementację komponentu HAL aparatu obsługującą 10-bitowe dane wyjściowe znajdziesz w tym artykule: /hardware/google/camera/devices/EmulatedCamera/hwl.

Weryfikacja

Aby sprawdzić implementację 10-bitowego wyjścia z aparatu i upewnić się, że aplikacje innych firm mogą włączyć tę funkcję, zalecamy przeprowadzenie tych 3 etapów weryfikacji.

W celu wizualnej weryfikacji 10-bitowego wyjścia z kamery zakłada się, że urządzenie obsługuje wyświetlanie HDR (wyświetlacz o jasności ponad 1000 nitów), a aplikacja do oglądania filmów (np. Zdjęcia Google) obsługuje odtwarzanie filmów HDR.

Testowanie poprawności działania interfejsu API

Aby sprawdzić poprawność działania interfejsu API 10-bitowego wyjścia z kamery, uruchom te testy CTS, ITS i VTS:

Porównanie natywnej aplikacji aparatu i aplikacji innej firmy

Zdecydowanie zalecamy, aby wyniki nagrywania 10-bitowych filmów za pomocą aplikacji innej firmy były podobne, jeśli nie identyczne, jak w przypadku natywnej aplikacji aparatu. Oznacza to, że ustawienia, takie jak ekspozycja, zakres dynamiczny i kolor, powinny być przenoszone z aplikacji natywnej do aplikacji innych firm. Aby sprawdzić, jak aplikacja innej firmy obsługująca 10-bitowe dane wyjściowe z aparatu nagrywa filmy na urządzeniu, użyj przykładowej aplikacji Camera2Video w GitHubie. Poniższe wskazówki mają na celu zilustrowanie widocznych aspektów HDR bez podawania obiektywnych liczb ze względu na zmienność czujników, paneli, warunków oglądania i preferencji dostawców.

Sugerowane sceny do porównania

Aby porównać natywną aplikację aparatu z aplikacją innej firmy, nagraj filmy w kilku różnych scenach za pomocą natywnej aplikacji aparatu i przykładowej aplikacji Camera2Video. Do porównania zalecamy użycie tych scen:

  • Scena z jasnym obiektem, np. świecą lub małym jasnym światłem, które tworzy znaczny zakres jasności, przy średnim lub słabym oświetleniu. Potwierdza to działanie automatycznej ekspozycji i zakres dynamiczny.
  • Jasna scena plenerowa z żywymi kolorami i odblaskowymi obiektami, takimi jak chromowane zderzaki samochodu, które tworzą jasne odblaski. Potwierdza to renderowanie jasnych scen z jeszcze jaśniejszymi światłami.
  • Scena o średnim zakresie dynamiki, np. naturalna scena w pomieszczeniu w domu lub biurze. Potwierdza to, że mniej ekstremalne warunki oświetleniowe działają zgodnie z oczekiwaniami.

W przypadku wszystkich scen zalecamy, aby na zdjęciu były osoby i twarze, co pozwoli sprawdzić ekspozycję, kolor i odcień skóry. Zmniejszenie różnic między kolejnymi zdjęciami ułatwia porównywanie ich ze sobą.

Porównanie standardowego i wysokiego zakresu dynamicznego

Aby mieć pewność, że używanie profilu 10-bitowego zakresu dynamiki przynosi korzyści w porównaniu z profilem standardowego zakresu dynamiki, porównaj nagrania wideo w SDR (bez profilu HDR) z filmami HDR, aby sprawdzić, czy w nagraniach pojawiają się kluczowe aspekty HDR. Aby porównać SDR i HDR, użyj przykładowej aplikacji Camera2Videosugerowanych scen do porównania natywnej aplikacji aparatu i aplikacji innych firm.

Oto najważniejsze aspekty, które należy sprawdzić w sugerowanych scenach. Wyświetlacze obsługujące HDR różnią się poziomem jasności (mierzonym w nitach lub lumenach), więc podane poniżej wartości mają charakter przykładowy:

  • W scenie przy średnim lub słabym oświetleniu jasne elementy świecy lub małego światła są renderowane z maksymalną jasnością wyświetlacza (prawdopodobnie do 1000 nitów) w klipie HDR i z maksymalną jasnością SDR (około 100 nitów) w klipie SDR. W klipie HDR jasne obszary powinny być wyraźnie widoczne na wyświetlaczu, odzwierciedlając postrzeganie przez użytkownika rzeczywistego zakresu dynamicznego sceny. W porównaniu z klipem HDR klip SDR powinien być bardziej płaski i mniej jasny.
  • W scenie z jasnym obrazem klip HDR może wykazywać widoczną różnicę w jasności ekranu w porównaniu z klipem SDR, w zależności od ustawień urządzenia. W przypadku klipu HDR jasność ekranu dla całej sceny (w zależności od zakresu dynamiki) powinna być wyższa, np. do 800 nitów, a w przypadku jasnych podświetleń, takich jak chromowane zderzaki, jeszcze wyższa, czyli zbliżona do maksymalnej jasności.
  • W przypadku nagrań w pomieszczeniach o średnim i niskim zakresie dynamicznym klipy HDR i SDR mają podobne kolory i odcienie, przy czym nagranie HDR może być jaśniejsze niż SDR. HDR nie powinien być ciemniejszy niż SDR. Jeśli wybór ustawień to uniemożliwia, upewnij się, że działanie aplikacji innej firmy jest zgodne z działaniem natywnej aplikacji aparatu.