Wideo High Dynamic Range (HDR) to kolejny krok naprzód w zakresie dekodowania wysokiej jakości filmów, który zapewnia niezrównaną jakość reprodukcji scen. Osiąga to poprzez znaczne zwiększenie zakresu dynamicznego komponentu luminancji (z obecnych 100 cd/m2 do 1000 cd/m2) oraz zastosowanie znacznie szerszej przestrzeni barw (BT 2020). Obecnie jest to główny element ewolucji jakości 4K UHD w telewizji.
Android 10 obsługuje te filmy HDR.
- HDR10
- VP9
- HDR10+
Począwszy od Androida 9 lub nowszego MediaCodec przekazuje metadane HDR niezależnie od trybu tunelowania.
W trybie bez tunelowania możesz otrzymywać dekodowane dane wraz ze statyczną lub dynamiczną metadanymi. W przypadku HDR10 i VP9Profile2, które używają statycznych metadanych, są one raportowane w formacie wyjściowym z kluczem KEY_HDR_STATIC_INFO
. W przypadku HDR10+, który używa dynamicznych metadanych, klucz KEY_HDR10_PLUS_INFO
w formacie wyjściowym może się zmieniać w przypadku każdego wyjściowego kadru.
Więcej informacji znajdziesz w artykule Tunelowanie multimedialne.
Od Androida 7.0 początkowe wsparcie HDR obejmuje tworzenie odpowiednich stałych wartości na potrzeby wykrywania i konfigurowania ścieżek przesyłania danych wideo HDR. Oznacza to zdefiniowanie typów kodeków i trybów wyświetlania oraz określenie, jak dane HDR mają być przekazywane do MediaCodec i dostarczane dekodrom HDR.
Celem tego dokumentu jest pomoc deweloperom aplikacji w obsługiwaniu odtwarzania strumieni HDR oraz pomoc OEM-om i SOC w włączaniu funkcji HDR.
Obsługiwane technologie HDR
W Androidzie 7.0 i nowszych obsługiwane są wymienione poniżej technologie HDR.
Technologia | Dolby Vision | HDR10 | VP9-HLG | VP9-PQ |
---|---|---|---|---|
Kodek | AVC/HEVC | HEVC | VP9 | VP9 |
Funkcja transferu | ST-2084, | ST-2084 | protokół HLG | ST-2084, |
Typ metadanych HDR | Dynamiczne | Statyczny | Brak | Statyczny |
W Androidzie 7.0 definiowane jest tylko odtwarzanie HDR w trybie tunelu, ale urządzenia mogą dodawać obsługę odtwarzania HDR w SurfaceView przy użyciu nieprzezroczystych buforów wideo. Krótko mówiąc:
- Nie ma standardowego interfejsu API Androida, który pozwalałby za pomocą dekoderów nietunelowych sprawdzić, czy odtwarzanie HDR jest obsługiwane.
- Dekodery wideo w tunelu, które reklamują obsługę odtwarzania HDR, muszą obsługiwać odtwarzanie HDR po podłączeniu do wyświetlaczy obsługujących HDR.
- Kompozycja GL treści HDR nie jest obsługiwana w wersji AOSP na urządzeniach z Androidem 7.0.
Discovery
Odtwarzanie w jakości HDR wymaga dekodera i połączenia z wyświetlaczem obsługującym ten format. Opcjonalnie niektóre technologie wymagają użycia określonego ekstraktora.
Wyświetlacz
Aplikacje muszą używać nowego interfejsu API Display.getHdrCapabilities
do wysyłania zapytań o technologie HDR obsługiwane przez określony wyświetlacz. Są to w podstawie informacje w bloku danych metadanych EDID, zdefiniowane w CTA-861.3:
public Display.HdrCapabilities getHdrCapabilities()
Zwraca możliwości HDR wyświetlacza.Display.HdrCapabilities
Określa funkcje HDR na danym wyświetlaczu. Na przykład obsługiwane typy HDR i szczegółowe dane dotyczące luminancji.
Stałe:
int HDR_TYPE_DOLBY_VISION
Obsługa usługi Dolby Vision.int HDR_TYPE_HDR10
Obsługa HDR10/PQ.int HDR_TYPE_HDR10_PLUS
Obsługa HDR10+.int HDR_TYPE_HLG
Obsługa hybrydowej krzywej Log-Gamma.float INVALID_LUMINANCE
Nieprawidłowa wartość luminancji.
Metody publiczne:
float getDesiredMaxAverageLuminance()
Zwraca dane dotyczące maksymalnej średniej luminacji klatki treści w cd/cd/m2 dla tego wyświetlacza.float getDesiredMaxLuminance()
Zwraca odpowiednie dane o maksymalnej luminancji treści w formacie cd/cd/m2 dla tego wyświetlacza.float getDesiredMinLuminance()
Zwraca odpowiednie dane dotyczące minimalnej luminancji treści w formacie cd/cd/m2 dla tego wyświetlacza.int[] getSupportedHdrTypes()
Pobiera obsługiwane typy HDR wyświetlacza (patrz stałe). Zwraca pustą tablicę, jeśli wyświetlacz nie obsługuje HDR.
Dekoder
Aplikacje będą używać obecnego interfejsu API
CodecCapabilities.profileLevels
do weryfikowania obsługi nowych profili z obsługą HDR:
Dolby Vision
MediaFormat
stała mime:
String MIMETYPE_VIDEO_DOLBY_VISION
MediaCodecInfo.CodecProfileLevel
stałe profilu:
int DolbyVisionProfileDvavPen int DolbyVisionProfileDvavPer int DolbyVisionProfileDvheDen int DolbyVisionProfileDvheDer int DolbyVisionProfileDvheDtb int DolbyVisionProfileDvheDth int DolbyVisionProfileDvheDtr int DolbyVisionProfileDvheStn
Warstwy wideo i metadane Dolby Vision muszą być umieszczone w jednym buforze na klatki przez aplikacje wideo. Jest to wykonywane automatycznie przez program MediaExtractor obsługujący Dolby Vision.
HEVC HDR 10
MediaCodecInfo.CodecProfileLevel
stałe profilu:
int HEVCProfileMain10HDR10 int HEVCProfileMain10HDR10Plus
VP9 HLG i PQ
MediaCodecInfo.CodecProfileLevel
profilu:
int VP9Profile2HDR int VP9Profile2HDR10Plus int VP9Profile3HDR int VP9Profile3HDR10Plus
Jeśli platforma obsługuje dekoder HDR, powinien on również obsługiwać wyodrębnianie z obsługą HDR.
Gwarantujemy, że tylko dekodery tunelowe będą odtwarzać treści HDR. Odtwarzanie przez dekodery bez tunelowania może spowodować utratę informacji HDR i spłaszczenie treści do rozmiaru SDR.
Ekstraktor
W Androidzie 7.0 obsługiwane są te kontenery w przypadku różnych technologii HDR:
Technologia | Dolby Vision | HDR10 | VP9-HLG | VP9-PQ |
---|---|---|---|---|
Kontener | MP4 | MP4 | WebM | WebM |
Platforma nie obsługuje wykrywania, czy ścieżka (plik) wymaga obsługi HDR. Aplikacje mogą analizować dane powiązane z kodkiem, by określić, czy ścieżka wymaga konkretnego profilu HDR.
Podsumowanie
Wymagania dotyczące komponentów dla każdej technologii HDR podano w tej tabeli:
Technologia | Dolby Vision | HDR10 | VP9-HLG | VP9-PQ |
---|---|---|---|---|
Obsługiwany typ HDR (wyświetlanie) | HDR_TYPE_DOLBY_VISION | HDR_TYPE_HDR10 | HDR_TYPE_HLG | HDR_TYPE_HDR10 |
Kontener (ekstraktor) | MP4 | MP4 | WebM | WebM |
Dekoder | MIMETYPE_VIDEO_DOLBY_VISION | MIMETYPE_VIDEO_HEVC | MIMETYPE_VIDEO_VP9 | MIMETYPE_VIDEO_VP9 |
Profil (dekoder) | Jeden z profili Dolby | HEVCProfileMain10HDR10 | VP9Profile2HDR lub VP9Profile3HDR | VP9Profile2HDR lub VP9Profile3HDR |
Uwagi:
- Strumieni bitowe Dolby-Vision są spakowane do kontenera MP4 zgodnie z definicją firmy Dolby. W aplikacjach mogą być wdrażane własne moduły wyodrębniania obsługujące Dolby, o ile jednostki dostępu z odpowiednich warstw sparują w jedną jednostkę dostępu dla dekodera zgodnie z definicją Dolby.
- Platforma może obsługiwać wyodrębnianie zgodne z HDR, ale nie odpowiedni dekoder obsługujący HDR.
Odtwarzanie
Po sprawdzeniu, czy aplikacja obsługuje odtwarzanie w technologii HDR, może ona odtwarzać treści HDR niemal tak samo jak w innych formatach, ale z następującymi zastrzeżeniami:
- W przypadku technologii Dolby Vision nie można od razu sprawdzić, czy konkretny plik lub ścieżka multimedialna wymagają dekodera obsługującego HDR. Aplikacja musi udostępnić te informacje z wyprzedzeniem lub mieć możliwość ich uzyskania przez przeanalizowanie sekcji danych konkretnego kodeka w MediaFormat.
CodecCapabilities.isFormatSupported
nie rozpatruje, czy do obsługi takiego profilu wymagana jest funkcja dekodera tunelowego.
Włącz obsługę platformy HDR
Dostawcy SoC i OEM muszą wykonać dodatkowe czynności, aby włączyć obsługę platformy HDR na urządzeniach.
Zmiany dotyczące platform w Androidzie 7.0 na potrzeby HDR
Oto najważniejsze zmiany w platformie (aplikacji/warstwie natywnej), o których powinni wiedzieć OEM-owie i SOC-owie.
Wyświetlacz
Kompozycja sprzętowa
Platformy obsługujące technologię HDR muszą obsługiwać łączenie treści HDR z materiałami w formacie innym niż HDR. Dokładne cechy i operacje mieszania nie są zdefiniowane przez Androida w wersji 7.0, ale proces przebiega zwykle w taki sposób:
- Określ liniową przestrzeń/objętość kolorów zawierającą wszystkie warstwy do skomponowania na podstawie koloru warstw, masteringu i potencjalnych metadanych dynamicznych.
Jeśli kompozytowanie odbywa się bezpośrednio na wyświetlaczu, może to być przestrzeń liniowa, która pasuje do objętości kolorów wyświetlacza. - Konwertuj wszystkie warstwy do wspólnej przestrzeni barw.
- Przeprowadź mieszanie.
- Jeśli wyświetlasz obraz przez HDMI:
- Ustal kolor, mastering i potencjalne dynamiczne metadane wmieszanej sceny.
- Przekształć wynikową zmiksowaną scenę w wyprowadzoną przestrzeń kolorów lub objętość.
- W przypadku wyświetlania obrazu bezpośrednio na wyświetlaczu przekonwertuj powstałą mieszaną scenę na wymagane sygnały displayowe, aby ją utworzyć.
Wyświetlanie reklam displayowych
Wykrywanie wyświetlacza HDR jest obsługiwane tylko przez HWC2. Aby ta funkcja działała, twórcy implementujący urządzenia muszą wybiórczo włączać adapter HWC2, który jest dostępny z Androidem 7.0. Dlatego platformy muszą dodać obsługę HWC2 lub rozszerzyć framework AOSP, aby umożliwić podanie tych informacji. HWC2 udostępnia nowy interfejs API do propagowania danych statycznych HDR do frameworku i aplikacji.
HDMI
- Podłączony wyświetlacz HDMI reklamuje swoją obsługę HDR za pomocą HDMI EDID zgodnie z definicją w sekcji 4.2 normy CTA-861.3.
- Należy użyć tego mapowania EOTF:
- ET_0 Gamma tradycyjna – zakres jasności SDR: nie zmapowany do żadnego typu HDR
- ET_1 Tradycyjna gamma – zakres luminancji HDR: niezmapowany na żaden typ HDR
- ET_2 SMPTE ST 2084 – mapowane na typ HDR HDR10
- Sygnalizacja obsługi Dolby Vision lub HLG przez HDMI jest przeprowadzana w sposób określony przez odpowiednie organy.
- Pamiętaj, że interfejs HWC2 API używa wartości luminancji docelowej w postaci liczb zmiennoprzecinkowych, więc wartości 8-bitowych wartości EDID muszą zostać przekształcone w odpowiednim formacie.
Dekodery
Platformy muszą dodać dekodery tunelowe obsługujące HDR i reklamować obsługę HDR. Dekodery obsługujące HDR muszą spełniać następujące wymagania:
- Obsługa dekodowania tunelowanego (
FEATURE_TunneledPlayback
). - Obsługuj statyczne metadane HDR
(
OMX.google.android.index.describeHDRColorInfo
) i ich propagację do kompozycji wyświetlacza/sprzętu. W przypadku HLG do wyświetlacza trzeba przesłać odpowiednie metadane. - Obsługuj opis kolorów (
OMX.google.android.index.describeColorAspects
) i jego propagację do kompozycji wyświetlacza/sprzętu. - Obsługuj osadzone metadane HDR zgodnie z definicją danego standardu.
Obsługa dekodera Dolby Vision
Aby obsługiwać Dolby Vision, platformy muszą dodać dekoder HDR OMX obsługujący Dolby Vision. Biorąc pod uwagę specyfikę Dolby Vision, jest to zwykle dekoder typu wrapper z co najmniej jednym dekoderem AVC lub HEVC i kompozytorem. Takie dekodery muszą:
- Obsługuj typ MIME „video/dolby-vision”.
- Reklamuj obsługiwane profile/poziomy Dolby Vision.
- Akceptowanie jednostek dostępu zawierających podjednostki dostępu wszystkich warstw zdefiniowane przez Dolby.
- akceptować dane specyficzne dla kodeka zdefiniowane przez Dolby. Na przykład dane zawierające profil lub poziom Dolby Vision oraz ewentualnie dane dotyczące kodeków dla wewnętrznych dekoderów.
- Obsługa adaptacyjnego przełączania między profilami/poziomami Dolby Vision zgodnie z wymaganiami Dolby.
Podczas konfigurowania dekodera nie przekazuje się do kodeka rzeczywistego profilu Dolby. Dzieje się to tylko za pomocą danych specyficznych dla kodeka po uruchomieniu dekodera. Platforma może obsługiwać kilka dekoderów Dolby Vision: jeden na potrzeby profili AVC i drugi dla profili HEVC, które umożliwiają inicjowanie bazowych kodeków podczas konfiguracji. Jeśli pojedynczy dekoder Dolby Vision obsługuje oba typy profili, musi też obsługiwać dynamiczne przełączanie się między nimi w sposób adaptacyjny.
Jeśli platforma zapewnia dekoder obsługujący Dolby Vision oprócz ogólnej obsługi dekodera HDR, musi:
- Podaj narzędzie do wyodrębniania danych obsługujące Dolby Vision, nawet jeśli nie obsługuje odtwarzania HDR.
- Udostępnij dekoder obsługujący profil Vision zdefiniowany przez Dolby.
Obsługa dekodera HDR10
Aby obsługiwać HDR10, platformy muszą dodać dekoder OMX obsługujący HDR10. Zwykle jest to tunelowany dekoder HEVC, który obsługuje również analizowanie i obsługę metadanych związanych z HDMI. Taki dekoder (oprócz ogólnego obsługiwania dekodera HDR) musi:
- Obsługuj typ MIME „video/hevc”.
- Reklamuj obsługiwany format HEVCMain10HDR10. Obsługa profilu HEVCMain10HRD10 wymaga również obsługi profilu HEVCMain10, który wymaga obsługi profilu HEVCMain na tych samych poziomach.
- Obsługa analizowania bloków SEI metadanych masteringu oraz innych informacji związanych z HDR zawartych w SPS.
Obsługa dekodera VP9
Aby obsługiwać HDR VP9, platformy muszą dodać dekoder HDR OMX obsługujący VP9 Profile 2. Zwykle jest to tunelowany dekoder VP9, który obsługuje również obsługę metadanych związanych z HDMI. Takie dekodery (oprócz ogólnego obsługiwania dekodera HDR) muszą:
- Obsługuj typ MIME „video/x-vnd.on2.vp9”.
- Zaproponuj obsługiwany format VP9Profile2HDR. Obsługa profilu VP9Profile2HDR wymaga też obsługi profilu VP9Profile2 na tym samym poziomie.
Wyciągarki
Obsługa wyodrębniania Dolby Vision
Platformy, które obsługują dekodery Dolby Vision, muszą dodać ekstraktor Dolby (nazywany Dolby Extractor) na potrzeby treści Dolby Video.
- Zwykły ekstraktor MP4 może tylko wyodrębnić warstwę podstawową z pliku, ale nie warstwy ulepszeń ani warstw metadanych. Aby wyodrębnić dane z pliku, potrzebny jest specjalny ekstraktor Dolby.
- Ekstraktor Dolby musi udostępniać od 1 do 2 ścieżek dla każdej ścieżki wideo Dolby
(grupa):
- Ścieżka Dolby Vision HDR typu „video/dolby-vision” dla połączonego strumienia Dolby z 2/3 warstwami. Format jednostki dostępu dla ścieżki HDR, który określa sposób pakowania jednostek dostępu z warstw podstawowych, ulepszeń i metadanych w pojedynczy bufor do zdekodowania w pojedynczą klatkę HDR, zostanie zdefiniowana przez Dolby.
- Jeśli ścieżka wideo Dolby Vision zawiera oddzielną warstwę podstawową (BL) zgodną wstecz, ekstraktor musi również udostępnić ją jako oddzielną ścieżkę „video/avc” lub „video/hevc”. Ekstraktor musi zapewnić dla tej ścieżki zwykłe jednostki dostępu AVC/HEVC.
- Ścieżka BL musi mieć ten sam identyfikator track-Unique-ID („track-ID”) co ścieżka HDR, tak by aplikacja rozumieła, że są to dwa różne kodowanie tego samego filmu.
- Aplikacja może decydować o wyborze ścieżki na podstawie możliwości platformy.
- Profil/poziom Dolby Vision musi być widoczny w formacie ścieżki HDR.
- Jeśli platforma udostępnia dekoder obsługujący Dolby Vision, musi też udostępnić ekstraktor obsługujący Dolby Vision, nawet jeśli nie obsługuje odtwarzania HDR.
Obsługa ekstraktora HDR10 i VP9 HDR
Nie ma żadnych dodatkowych wymagań dotyczących wyodrębniania danych w przypadku technologii HDR10 lub VP9 HLG. Platformy muszą rozszerzyć ekstraktor MP4, aby obsługiwać VP9 PQ w formacie MP4. Metadane statyczne HDR muszą być propagowane w strumieniu bitów VP9 PQ, tak aby były przekazywane dekoderowi VP9 PQ i wyświetlaczowi za pomocą zwykłego kanału MediaExtractor => MediaCodec.
Rozszerzenia Stagefright do obsługi Dolby Vision
Platformy muszą dodać obsługę formatu Dolby Vision do Stagefright:
- Obsługa zapytania dotyczącego definicji portu w przypadku skompresowanego portu.
- Wyliczenie profilu/poziomu dekodera DV.
- Obsługa wyświetlania profilu DV lub poziomu dla ścieżek DV HDR.
Szczegóły implementacji związane z konkretną technologią
Potok dekodera HDR10
Strumienie bitowe HDR10 są spakowane w kontenerach MP4. Aplikacje korzystają ze zwykłego programu wyodrębniania MP4 do wyodrębniania danych klatek i wysyłania ich do dekodera.
- Extractor MPEG4
Strumienie bitowe HDR10 są rozpoznawane przez MPEG4Extractor jako zwykłe strumienie HEVC, a ścieżka HDR o typie „video/HEVC” zostanie wyekstrahowana. Platforma wybiera dekoder wideo HEVC, który obsługuje profil Main10HDR10 do zdekodowania ścieżki. - Dekoder HEVC
Informacje HDR są zapisane w SEI lub SPS. Dekoder HEVC najpierw odbiera klatki z informacjami HDR. Dekoder wyodrębnia informacje HDR i powiadamia aplikację, że dekoduje film HDR. Informacje HDR są umieszczane w formacie wyjściowym dekodera, który jest później propagowany na powierzchnię.
Działania dostawcy
- Reklamuj obsługiwane profile dekoderów HDR i poziom typu OMX. Przykład:
OMX_VIDEO_HEVCProfileMain10HDR10
(iMain10
) - Wdrożyć obsługę indeksu:
'
OMX.google.android.index.describeHDRColorInfo
' - Wdróż obsługę indeksu: „
OMX.google.android.index.describeColorAspects
” - Zaimplementować obsługę analizy SEI metadanych masteringu.
Dekoder Dolby Vision
Strumienie bitowe Dolby są pakowane w kontenerach MP4 zgodnie z definicją Dolby. W aplikacjach można teoretycznie używać zwykłego ekstraktora MP4 do niezależnego wyodrębniania warstwy podstawowej, warstwy ulepszeń i warstwy metadanych, ale nie pasuje to do obecnego modelu Android MediaExtractor/MediaCodec.
- DolbyExtractor:
- Strumienie bitowe Dolby są rozpoznawane przez DolbyExtractor, który udostępnia różne warstwy jako 1–2 ścieżki dla każdej ścieżki wideo Dolby (grupy):
- Ścieżka HDR o typie „video/dolby-vision” dla połączonego strumienia Dolby o 2/3 warstw. Dolby określa format jednostki dostępu ścieżki HDR, który definiuje sposób pakowania jednostek dostępu z warstw podstawowych, warstw rozszerzeń i warstw metadanych do pojedynczego bufora, który ma zostać zdekodowany do pojedynczego kadru HDR.
- (Opcjonalnie, tylko jeśli ścieżka BL jest zgodna wstecz) Ścieżka BL zawiera tylko warstwę podstawową, która musi być dekodowalna przez zwykły dekoder MediaCodec, na przykład dekoder AVC/HEVC. Ekstraktor powinien zapewniać dla tej ścieżki zwykłe jednostki dostępu AVC/HEVC. Ścieżka BL musi mieć ten sam identyfikator track-Unique-ID („track-ID”) co ścieżka Dolby, tak by aplikacja rozumieła, że są to dwa sposoby kodowania tego samego filmu.
- Aplikacja może wybrać ścieżkę na podstawie możliwości platformy.
- Ponieważ ścieżka HDR ma określony typ HDR, framework wybierze dekoder wideo Dolby do jej dekodowania. Ścieżka BL będzie dekodowana przez zwykły dekoder wideo AVC/HEVC.
- Strumienie bitowe Dolby są rozpoznawane przez DolbyExtractor, który udostępnia różne warstwy jako 1–2 ścieżki dla każdej ścieżki wideo Dolby (grupy):
- DolbyDecoder:
- DolbyDecoder otrzymuje jednostki dostępu zawierające wymagane jednostki dostępu dla wszystkich warstw (EL+BL+MD lub BL+MD)
- Informacje CSD (dane specyficzne dla kodeka, takie jak SPS+PPS+VPS) dla poszczególnych warstw mogą zostać spakowane w 1 ramkę CSD, która zostanie zdefiniowana przez Doolby. Musisz mieć jedną ramkę CSD.
Akcje Dolby
- Zdefiniuj pakiet jednostek dostępu dla różnych schematów kontenerów Dolby (np. BL+EL+MD) dla abstrakcyjnego dekodera Dolby (czyli formatu bufora zgodnego z dekoderem HDR).
- Określ pakowanie CSD dla abstrakcyjnego dekodera Dolby.
Działania dostawcy
- Wdrożyć ekstraktor Dolby. Może to zrobić też Dolby.
- Zintegruj DolbyExtractor z ramówką. Punkt wejścia to
frameworks/av/media/libstagefright/MediaExtractor.cpp
. - Zadeklaruj profil dekodera HDR i typ OMX poziomu. Przykład:
OMX_VIDEO_DOLBYPROFILETYPE
iOMX_VIDEO_DOLBYLEVELTYP
. - Włącz obsługę indeksu:
'OMX.google.android.index.describeColorAspects
' - Rozpowszechnij dynamiczne metadane HDR w aplikacji i wyświetlaj je w każdej klatce. Zazwyczaj te informacje muszą być spakowane w zdekodowaną ramkę zgodnie z definicją Dolby, ponieważ standard HDMI nie umożliwia przekazania ich na wyświetlacz.
Potok dekodera VP9
Strumienie bitowe VP9 są spakowane w kontenerach WebM w sposób zdefiniowany przez zespół WebM. Przed wysłaniem ramek do dekodera aplikacje muszą korzystać z ekstraktora WebM do wyodrębniania metadanych HDR ze strumienia bitowego.
- WebM Extractor:
- Dekoder VP9:
- Dekoder odbiera strumienie bitowe Profile2 i dekoduje je jak zwykłe strumienie VP9.
- Dekoder otrzymuje od frameworku wszystkie metadane HDR.
- Dekoder odbiera metadane statyczne przez jednostki dostępu do strumieni bitowych dla strumieni VP9.
- Dekoder VP9 musi mieć możliwość propagowania statycznych/dynamicznych metadanych HDR na wyświetlacz.
Działania dostawcy
- Wdróż obsługę indeksu:
OMX.google.android.index.describeHDRColorInfo
- Wdrożyć obsługę indeksu:
OMX.google.android.index.describeColorAspects
- Propaguj statyczne metadane HDR