Na urządzeniach z Androidem 13 lub nowszym obsługuje 10-bitowe nagrania wyjściowe kamery przy użyciu profili zakresu dynamicznego, które można skonfigurowane przez klienta kamery w ramach konfiguracji strumienia. Urządzenie producenci mogą dodać obsługę 10-bitowych profili zakresu dynamicznego, takich jak HLG10, HDR 10, HDR 10+ i Dolby Vision.
Obsługa 10-bitowego wyjścia kamery umożliwia klientom aparatów wykrywanie obsługiwanych 10-bitowych bitów
profilu zakresu dynamicznego urządzenia, wywołując
getSupportedProfiles
Platforma zwraca wtedy instancję
DynamicRangeProfiles
który zawiera informacje o obsługiwanych profilach zakresów dynamicznych oraz, jeśli
dostępne są ograniczenia żądań przechwytywania.
HLG10
profil musi być obsługiwany. Zalecany profil zakresu dynamicznego znajduje się w:
REQUEST_RECOMMENDED_TEN_BIT_DYNAMIC_RANGE_PROFILE
.
Klienty aparatu mogą konfigurować kombinacje strumieni, wywołując
setDynamicRangeProfile
Więcej informacji o wymaganych kombinacjach strumieni wyjściowych znajdziesz w
Tabela 10-bitowych danych wyjściowych dodatkowych gwarantowanych konfiguracji w
Zapis regularne.
Wymagania
Aby obsługiwać 10-bitowe wyjście kamery, urządzenie musi mieć 10-bitową lub większą ma czujnik aparatu z obsługą odpowiedniego dostawcy usług internetowych. Szczegółowe informacje na temat powiązanych wymagania dotyczące zgodności dla obsługi systemów 10-bitowych – patrz sekcja 7.5. aparaty na dysku CDD.
Implementacja
Aby zapewnić obsługę 10-bitowego wyjścia kamery, producenci urządzeń w tych integracjach HAL Camera AIDL:
- Uwzględnij
ANDROID_REQUEST_AVAILABLE_CAPABILITIES_DYNAMIC_RANGE_TEN_BIT
w funkcji aparatu. - Wypełnij pole
ANDROID_REQUEST_AVAILABLE_DYNAMIC_RANGE_PROFILES_MAP
wszystkimi wartościami obsługiwane profile zakresów dynamicznych oraz bitmapę ich ograniczeń.HLG10
profil musi być obsługiwany. Musisz też dodać zalecaną dynamiczną grupę reklam profilu zakresu, aby wskazać klientom aparatu optymalny obsługiwany format. - Zapewnij obsługę wartości profilu zakresu dynamicznego podczas transmisji
dla strumieni korzystających z
P010
lub obsługa formatu zdefiniowanego przez implementację
(
ImageFormat.PRIVATE
). - W zależności od profilu zakresu dynamicznego ustaw metadane statyczne lub dynamiczne bufor przetworzonych buforów Gralloc 4 przed powiadomieniem usługi kamery.
Więcej informacji na temat 10-bitowego wyjścia kamery w panelu HAL kamery znajdziesz w artykule
następujące w metadata_definitions.xml
:
DYNAMIC_RANGE_TEN_BIT
- Szczegóły HAL dla
availableDynamicRangeProfilesMap
recommendedTenBitDynamicRangeProfile
10BIT_OUTPUT
Więcej informacji o implementacji HAL aparatu obsługujących 10-bitowe wyjście kamery:
/hardware/google/camera/devices/EmulatedCamera/hwl
Weryfikacja
Aby sprawdzić poprawność implementacji 10-bitowych danych wyjściowych z kamery i upewnić się, mogą ją włączyć aplikacje innych firm, zalecamy wykonanie tych czynności: weryfikacji na trzech etapach.
- Testowanie poprawności funkcjonalnej interfejsu API
- Porównanie aparatu natywnego i aplikacji innej firmy
- Porównaj standardowy i wysoki zakres dynamiczny
W celu wizualnej weryfikacji 10-bitowych danych wyjściowych z aparatu zakłada się, że urządzenie obsługuje wyświetlanie filmów w jakości HDR (ekran o ponad 1000 nitów) oraz aplikację do oglądania filmów (np. Zdjęcia Google) obsługują odtwarzanie filmów HDR.
Testuj poprawność działania interfejsu API
Aby przetestować poprawność działania interfejsu API 10-bitowych danych wyjściowych kamery, uruchom następujące testy CTS, testy ITS kamery i VTS:
hardware/interfaces/camera/provider/aidl/vts/
: Testy podstawowego wykrywania, konfiguracji i strumieniowania oraz sprawdzanie obecności metadanych HDR, jeśli są wymagane.tests/camera/src/android/hardware/camera2/cts/
: Zapewnia, że kamera działa zgodnie ze specyfikacją interfejsu AOSP API.cts/apps/CameraITS
: Potwierdza, że ogólne zachowanie filmu jest takie samo, gdy używane są profile HDR. Konkretny test totests/scene4/test_video_aspect_ratio_and_crop.py
Porównanie aparatu natywnego z aplikacją innej firmy
Zdecydowanie zalecamy, aby wyniki nagrywania 10-bitowych filmów wideo aplikacja innej firmy jest podobna do natywnej aplikacji aparatu (jeśli nie jest identyczna). Ten oznacza, że opcje dostrajania, takie jak ekspozycja, zakres dynamiczny i kolor, z aplikacji natywnej do aplikacji innych firm. Aby zweryfikować film nagrywania przez aplikację innej firmy obsługującej 10-bitowe wyjście aparatu na na urządzeniu, użyj Przykładowa aplikacja Camera2Video w GitHubie. Poniższe wskazówki mają na celu zilustrowanie widocznych aspektów HDR bez wartości obiektywnych ze względu na zmienność czujników, paneli warunki wyświetlania i preferencje dostawców.
Sugerowane sceny do porównania
Aby porównać natywną aplikację aparatu z aplikacją innej firmy: Nagrywaj filmy z użyciem kilku różnych scen, korzystając z natywnej aplikacji aparatu oraz przykładową aplikację Camera2Video. Oto sugerowane sceny, których możesz użyć w przypadku porównanie:
- Scena od połowy do słabego oświetlenia z jasnym obiektem, takim jak świeca lub małego jasnego światła, które tworzy znaczny zakres jasności. Ten potwierdza działanie automatycznej ekspozycji i zakres dynamiczny.
- Jasna scena na zewnątrz z żywymi kolorami i odbijającymi się obiektami, jak chromowane nakładki na samochód, które tworzy jasne podświetlenia. Jest to potwierdzenie z renderowaniem jasnych scen z jeszcze jaśniejszymi podświetleniami.
- Scena ze średniej półki o niskim zakresie dynamiki, np. wewnętrzna scena naturalna w dom lub biuro. Potwierdza to, że w mniej ekstremalnych warunkach oświetleniowych zgodnie z oczekiwaniami.
W przypadku wszystkich scen zalecamy sprawdzenie, czy są to osoby i twarze, aby sprawdzić ekspozycję, kolory i różnorodnością odcieni skóry. Zmniejszenie liczby zmienności ujęć ułatwia powrót do tylu zdjęć i porównaniami.
Porównaj standardowy i szeroki zakres dynamiczny
Aby przedstawić możliwą korzyść z zastosowania 10-bitowego zakresu dynamiki, profilu w standardowym profilu zakresu dynamicznego, porównać zapisy wideo w formacie SDR (bez profilu HDR) do filmów HDR, aby sprawdzić, zdjęcia. Aby porównać SDR i HDR, użyj Przykładowa aplikacja Camera2Video i sugerowane sceny porównujące aparat natywny aplikacje i aplikacje innych firm.
Oto kluczowe aspekty, które warto sprawdzić w sugerowanych scenach. Wyświetlanie paneli HDR, różnią się poziomem jasności (mierzonym w nitach lub lumenach), więc podane liczby to przykłady:
- W scenie od środka do słabo oświetlonego blasku świecy lub małe światło jest renderowane z maksymalną jasnością wyświetlacza (prawdopodobnie w górę do 1000 nitów) w klipcie HDR i wyrenderowane z maksymalną jasnością dla SDR (około 100 nitów) w klipie SDR. W klipcie HDR najciekawsze momenty powinny być wyraźnie widoczne na ekranie i przyciągać uwagę użytkownika prawdziwego zakresu dynamiki sceny. W porównaniu z klipem HDR Klip SDR powinien być bardziej płaski i mniej jasny.
- W scenie jasnej obrazu wyjściowego, w zależności od dostrojenia urządzenia, funkcja HDR widać pozorną różnicę w jasności ekranu w porównaniu z Klip SDR. W przypadku klipu HDR jasność ekranu całej sceny (w zależności od zapasów) powinna być większa, np. do 800 nitów, jeszcze bardziej w przypadku jasnych blasków, takich jak chromowane etui, maksymalną jasność.
- Aparaty HDR i SDR ze średniej półki dynamiki klipy mają podobne kolory i odcienie, a nagrywanie HDR może jaśniejszy niż SDR. Efekt HDR nie powinien być ciemniejszy niż SDR. Jeśli że możliwości dostrajania uniemożliwiają weryfikację, upewnij się, działanie jest zgodne z zachowaniem aplikacji aparatu natywnego.