Mieszana kompozycja SDR i HDR

Na tej stronie opisano wymagania, konfigurację i weryfikację pliku SDR funkcja przyciemniania treści, która łączy kompozycje w jakości SDR i HDR.

Android 13 poprawia obsługę jednocześnie prezentowanie na ekranie kompozycji SDR i HDR przez wprowadzenie funkcje:

  • Odwzorowanie luminancji HDR na zakres zgodny z SDR.

    libtonemap umożliwia mapowanie tonów spójne między narzędziami Hardware Composer (HWC), SurfaceFlinger i aplikacjami. OEM może implementują własne krzywe mapowania tonów, które są udostępniane między dostawcą platformy.

  • Przyciemnianie treści SDR wyświetlanych na ekranie jednocześnie z funkcją HDR treści.

    Gdy na ekranie widoczne są treści HDR, jasność ekranu jest zwiększona do uwzględnić zwiększony zakres luminancji treści HDR. Wszystkie treści SDR która jest płynnie przyciemniona, w miarę jak zwiększa się jasność ekranu. dzięki czemu nie zmieni się postrzegana jasność treści SDR. OEM może skonfigurować wbudowane wyświetlacze, aby przyciemniały wyświetlaną treść SDR w porównaniu z treściami HDR.

Wymagania OEM

Aby wykorzystać ulepszoną kompozycję w przypadku treści HDR i SDR w przypadku treści SDR wykonaj następujące czynności:

  • Wdrożenie wersji AIDL HWC, która obejmuje obsługę sprzętowe przyciemnianie w potoku kolorów urządzenia. Więcej informacji: AIDL dla HWC na potrzeby wdrożenia wymaganego funkcji.

  • Precyzyjne przyciemnianie nakładek sprzętowych w HWC wymaga konkretnego sprzętu aby skalować liniowe światło nakładek. Implementacje bez wystarczających jest wymagany sprzęt, aby odroczyć kompozycję do GPU przez SurfaceFlinger, przez co rozładowywanie się baterii i możliwe przyciemnienie ekranu o niskiej jakości.

  • Urządzenie musi obsługiwać co najmniej jedną technologię HDR zgłoszonej przez Display.getHdrCapabilities

.

Konfiguracja

Funkcję mieszanej kompozycji treści SDR i HDR można skonfigurować zgodnie z z wbudowanymi cechami ekranu, aby znaleźć czas pracy na baterii, wypalenie ekranu i jakość treści.

Ulepszoną kompozycję można włączyć i dostroić na wyświetlaczu konfiguracja, której schemat znajduje się w regionie display-device-config.xsd. Podczas konfigurowania wyświetlania ważne są następujące nowe kluczowe elementy Konfiguracja:

  • Element sdrHdrRatioMap włącza SDR przyciemnienie i zdefiniowanie tabeli wyszukiwania (LUT) do mapowania jasności ekranu Tryb HDR będzie wyświetlany w punkcie bieli SDR, gdy na ekranie widoczne są treści HDR.

    Jeśli zdefiniowano sdrHdrRatioMap, to w ramach sterowania ekranem. jasności, DisplayManagerService komunikuje żądany punkt bieli SDR SurfaceFlinger umożliwia przesyłanie odpowiednich współczynników przyciemnienia do HWC.

    Jeśli wartość sdrHdrRatioMap nie jest zdefiniowana, przyciemnianie SDR nie będzie włączone, nawet jeśli jeśli implementacja HWC obsługuje przyciemnianie SDR.

  • minimumHdrPercentOfScreen element o wartości od 0 do 100 określa wysokość tryb jasności jest dozwolone. Na Androida 13, ten próg można dostosować, aby włączyć wysokie w wielu sytuacjach, na przykład w trybie obraz w obrazie. Poprzednie wersje AOSP ustabilizowały tę wartość na poziomie 50%.

Kluczowe elementy konfiguracji wyświetlania znajdziesz w tym bloku kodu:

<displayConfiguration>
    ...
    <highBrightnessMode>
        ...
        <!--Percentage of the screen that must be covered by HDR layers until high brightness mode is enabled.
        <minimumHdrPercentOfScreen>...</minimumHdrPercentOfScreen>
        <!--sdrHdrRatioMap, backed by spline, must have at least two entries -->
        <sdrHdrRatioMap>
            <point>
                <sdrNits>...</sdrNits>
                <hdrRatio>...</hdrRatio>
            </point>
            <point>
                <sdrNits>...</sdrNits>
                <hdrRatio>...</hdrRatio>
            </point>
            <!--More interpolation points may be added –->
            ...
        </sdrHdrRatioMap>
        ...
    </highBrightnessMode>
    ...
</displayConfiguration>

Uwagi

Włączenie mapowania tonalnego i przyciemnienia treści SDR może spowodować w następujących sytuacjach:

  • Jakość treści HDR odtwarzanych na urządzeniu może się zwiększać, im elementy treści są przyciemnione.

  • Czas pracy na baterii może się zmniejszyć w tych sytuacjach:

    • Implementacje HWC, które opóźniają operacje przyciemniania do GPU, może powodować zwiększone wykorzystanie GPU.

    • Wyświetl konfiguracje, które umożliwiają niższy próg włączania tryb wysokiej jasności może zwiększyć pobór energii podczas pracy z ekranem jasność.

  • Dłuższy czas spędzany w wysokiej rozdzielczości może mieć wpływ na kondycję ekranu trybu jasności, które mogą powodować długotrwałe problemy, np. wypalenie ekranu stan zdrowia.

Weryfikacja

OEM może za pomocą testów VTS, które wchodzą w skład zestawu testów HWC, sprawdź poprawności przyciemniania i weryfikacji współczynnika przyciemniania danych wejściowych.

Weryfikacja tej funkcji zależy od urządzenia, więc nie ma CTS ani GTS aby to potwierdzić.

OEM musi przeprowadzić testy ręczne, aby potwierdzić, że jakość obrazu w przyciemnionym SDR jest wymagana. jest akceptowalna. OEM może odtwarzać treści zgodne ze standardami HDR, obsługuje ponad SurfaceView, aby sprawdzić, czy wszystkie elementy SDR są odtwarzane obok aby materiały HDR nie stawały się zbyt jasne.

Problemy

Przyciemnienie obrazów w formacie SDR może spowodować efekt czarnego słabości, a także utratę informacji w ciemniejszym kolorze. części oryginalnego zdjęcia. Wynika to z tego, że ciemniejsze wartości kolorów zwijają się mniejszy zestaw ciemnych kodów.

Implementacja przyciemniania, która powoduje wdrożymy algorytmy rozproszenia, które wstrzykują szum do ostatecznego obrazu, efekt pasm jest zredukowany.

implementacje HWC, które nie są w stanie oddzielić obrazu w odpowiednim lokalizacja w potoku kolorów musi żądać zastosowania obiektu SurfaceFlinger przyciemnianie i rozpraszanie uwagi w GPU.

Implementacje mogą też zmieniać wartość sdrHdrRatioMap, aby ograniczyć lub funkcję przyciemnienia elementów SDR. Przyciemniam do bardzo niskiego poziomu jasności wymaga użycia GPU, który poprawia jakość obrazu, ale może zmniejszyć żywotności baterii.