Ultra HDR

Android 14 obsługuje kompresję zdjęć w ultra HDR za pomocą formatu obrazu JPEG_R. Ten format jest zgodny z wsteczną zgodnością z obrazami JPEG SDR i obsługuje renderowanie treści HDR. Szczegółowe informacje o specyfikacji formatu ultra HDR znajdziesz w artykule Specyfikacja formatu obrazu ultra HDR w wersji 1.0.

Implementacja

W tej sekcji opisano, jak wdrożyć funkcję Ultra HDR.

Implementacja referencyjna

Ramka i usługa aparatu AOSP obejmują referencyjną implementację Ultra HDR.

Oprócz funkcji referencyjnych w ramach platformy aparatu możesz zaimplementować Ultra HDR w komponencie HAL aparatu i reklamować obsługę wyjścia JPEG_R w taki sam sposób jak inne strumienie wyjścia komponentu HAL aparatu. W tym scenariuszu interfejs HAL aparatu musi wygenerować niezbędną mapę odzyskiwania i ostateczny obraz JPEG_R zgodnie ze specyfikacją Ultra HDR. Możesz zoptymalizować i dostosować końcowy wynik w zależności od możliwości sprzętu i oprogramowania urządzenia.

Opcje implementacji

Producenci urządzeń mogą zdecydować o tych poziomach obsługi Ultra HDR na swoich urządzeniach:

  • Minimalna: w tej konfiguracji funkcja wyjścia Ultra HDR za pomocą usługi strumieniowego obrazu złożonego z kamery jest domyślnie wyłączona. Aby włączyć implementację referencyjną JpegRCompositeStream, ustaw właściwość systemową ro.camera.enableCompositeAPI0JpegR na true. Wszystkie procesy i kodowanie są wykonywane w oprogramowaniu, więc ta opcja może spowodować wydłużenie czasu oczekiwania i zmniejszenie wydajności.
  • Średni: w tym przypadku implementacja JpegRCompositeStream używa pliku JPEG SDR dostarczonego przez HAL jako obrazu bazowego i ramki P010 do obliczenia mapy odzyskiwania. Ta opcja obejmuje przetwarzanie oprogramowania na ścieżce danych, ale jest stosunkowo nieznaczne w porównaniu z opcją minimalną.
  • Rozszerzona: komponent HAL aparatu reklamuje i obsługuje bezpośrednio strumień wyjściowy JPEG_R. Ta opcja umożliwia producentom urządzeń wdrażanie optymalizacji dla poszczególnych urządzeń i może znacznie poprawić jakość obrazu.

Aby wyłączyć implementację JpegRCompositeStream, ustaw właściwość kompilacji ro.camera.disableJpegR na true. Jeśli ta właściwość kompilacji nie jest ustawiona lub jest ustawiona na false, Ultra HDR jest domyślnie włączone za pomocą JpegRCompositeStream na urządzeniach obsługujących 10-bitowe wyjście i jednoczesne 10- i 8-bitowe przechwytywanie.

Weryfikacja

Aby sprawdzić funkcję Ultra HDR na urządzeniu, uruchom te testy.

Testy CTS

Testy ITS

Testy ręczne

Do testów ręcznych użyj implementacji przykładowej funkcji do przechwytywania zdjęć w formacie Ultra HDR, która obsługuje konfigurowanie i przechwytywanie zdjęć w formacie JPEG_R.