AV1 - AV1
Rodzaj mediów internetowych | wideo/AV1 |
---|---|
Opracowany przez | Sojusz na rzecz Otwartych Mediów |
Pierwsze wydanie | 28 marca 2018 |
Najnowsze wydanie | 1.0.0 Errata 1 (8 stycznia 2019 ) |
Rodzaj formatu | Format kodowania wideo |
Zawarte przez | |
Rozszerzony z | |
Rozszerzony do | AVIF |
Standard | AOM AV1 |
Otwarty format ? | tak |
Strona internetowa |
aomedia |
AOMedia Video 1 ( AV1 ) to otwarty , bezpłatny format kodowania wideo, początkowo zaprojektowany do transmisji wideo przez Internet. Został opracowany jako następca VP9 przez Alliance for Open Media (AOMedia), konsorcjum założone w 2015 roku, które obejmuje firmy produkujące półprzewodniki, dostawców usług wideo na żądanie , producentów treści wideo, firmy tworzące oprogramowanie i producentów przeglądarek internetowych. Specyfikacja strumienia bitów AV1 obejmuje referencyjny kodek wideo . W 2018 roku Facebook przeprowadził testy, które zbliżyły się do rzeczywistych warunków, a referencyjny koder AV1 osiągnął o 34%, 46,2% i 50,3% wyższą kompresję danych niż odpowiednio libvpx-vp9, x264 high profile i x264 main profile.
Podobnie jak VP9, ale w przeciwieństwie do H.264/AVC i HEVC , AV1 ma model licencjonowania nieodpłatnego, który nie utrudnia adopcji w projektach typu open source .
Format pliku obrazu AV1 ( AVIF ) to format pliku obrazu wykorzystujący algorytmy kompresji AV1.
Historia
Motywacja Sojuszu do stworzenia AV1 obejmowała wysokie koszty i niepewność związaną z licencjonowaniem patentowym HEVC , kodeka zaprojektowanego przez MPEG , który ma zastąpić AVC . Ponadto siedmiu członków założycieli Sojuszu – Amazon, Cisco, Google, Intel, Microsoft, Mozilla i Netflix – ogłosiło, że początkowym celem formatu wideo będzie dostarczanie wysokiej jakości wideo internetowego. Oficjalne ogłoszenie AV1 pojawiło się wraz z komunikatem prasowym o utworzeniu Alliance for Open Media w dniu 1 września 2015 r. Zaledwie 42 dni wcześniej, 21 lipca 2015 r., początkowa oferta licencyjna HEVC Advance została ogłoszona jako podwyższenie opłat licencyjnych jego poprzednik, AVC. Oprócz zwiększonych kosztów, wraz z HEVC wzrosła złożoność procesu licencjonowania. W przeciwieństwie do poprzednich standardów MPEG, w których technologia w standardzie mogła być licencjonowana od jednego podmiotu, MPEG-LA , kiedy standard HEVC został ukończony, utworzono dwie pule patentów, a trzecia była już na horyzoncie. Ponadto różni posiadacze patentów odmawiali licencjonowania patentów za pośrednictwem obu puli, zwiększając niepewność co do licencjonowania HEVC. Według Iana LeGrow z Microsoftu, wolna od opłat technologia typu open source była postrzegana jako najłatwiejszy sposób na wyeliminowanie niepewności związanej z licencjonowaniem.
Negatywny wpływ licencjonowania patentów na wolne i otwarte oprogramowanie również był wymieniany jako powód stworzenia AV1. Na przykład wbudowanie implementacji H.264 w Firefoksie uniemożliwiłoby jej dystrybucję bezpłatnie, ponieważ opłaty licencyjne musiałyby być płacone do MPEG-LA. Free Software Foundation Europe argumentuje, że praktyki licencjonowania patentów FRAND uniemożliwiają implementację standardów wolnego oprogramowania z powodu różnych niezgodności z licencjami wolnego oprogramowania .
Wiele elementów projektu AV1 pochodziło z wcześniejszych prac badawczych prowadzonych przez członków Sojuszu. Poszczególni współtwórcy rozpoczęli eksperymentalne platformy technologiczne lata wcześniej: Xiph's/Mozilla's Daala opublikowała już kod w 2010 r., eksperymentalny projekt ewolucji VP9 Google'a ogłoszono 12 września 2014 r., a Cisco Thor został opublikowany 11 sierpnia 2015 r. Opierając się na kodzie VP9, AV1 zawiera dodatkowe techniki, z których kilka zostało opracowanych w tych eksperymentalnych formatach. Pierwsza wersja 0.1.0 kodeka referencyjnego AV1 została opublikowana 7 kwietnia 2016 r.
Chociaż pod koniec października 2017 weszło w życie miękkie zamrożenie funkcji , kontynuowano rozwój kilku ważnych funkcji. Jedna z tych wciąż trwających funkcji, format strumienia bitów , miała zostać zamrożona w styczniu 2018 r., ale została opóźniona z powodu nierozwiązanych błędów krytycznych, a także dalszych zmian w przekształceniach, składni, przewidywaniu wektorów ruchu i zakończeniu analizy prawnej . Sojusz ogłosił wydanie specyfikacji strumienia bitów AV1 w dniu 28 marca 2018 r., wraz z referencyjnym, opartym na oprogramowaniu koderem i dekoderem. 25 czerwca 2018 została wydana zwalidowana wersja 1.0.0 specyfikacji. 8 stycznia 2019 została wydana zwalidowana wersja 1.0.0 z Erratą 1 specyfikacji.
Martin Smole z członka AOM Bitmovin powiedział, że wydajność obliczeniowa kodera referencyjnego była największym wyzwaniem, jakie pozostało po zakończeniu zamrożenia formatu strumienia bitów. Podczas pracy nad formatem koder nie był przeznaczony do użytku produkcyjnego, a optymalizacje prędkości nie miały priorytetu. W konsekwencji wczesna wersja AV1 była o rząd wielkości wolniejsza niż istniejące kodery HEVC. Wiele prac rozwojowych zostało w konsekwencji przesunięte w kierunku dojrzewania kodera referencyjnego. W marcu 2019 r. zgłoszono, że prędkość enkodera referencyjnego znacznie się poprawiła i mieściła się w tym samym rzędzie wielkości, co enkodery dla innych popularnych formatów.
21 stycznia 2021 r. typ MIME AV1 został zdefiniowany jako wideo/AV1. Użycie AV1 przy użyciu tego typu MIME jest ograniczone wyłącznie do celów protokołu transportu w czasie rzeczywistym .
Cel, powód
AV1 ma być formatem wideo dla Internetu, który jest zarówno najnowocześniejszy, jak i wolny od opłat licencyjnych . Według Matta Frosta, szefa strategii i partnerstw w zespole Google Chrome Media, „misja Alliance for Open Media pozostaje taka sama jak projektu WebM ”.
Powracającą obawą przy opracowywaniu standardów, nie tylko wolnych od tantiem, formatów multimedialnych, jest niebezpieczeństwo przypadkowego naruszenia patentów, o których ich twórcy i użytkownicy nie wiedzieli. Obawy zostały zgłoszone w odniesieniu do AV1, a wcześniej VP8 , VP9, Theora i IVC . Problem nie dotyczy wyłącznie formatów wolnych od opłat licencyjnych, ale w wyjątkowy sposób zagraża ich statusowi wolnego od opłat licencyjnych.
Licencjonowanie patentów | AV1, VP9 , Teora | HEVC , AVC | GIF , MP3 , MPEG-1 , MPEG-2 , MPEG-4 część 2 |
---|---|---|---|
Przez znanych posiadaczy patentów | Darmowe | Łożysko królewskie | Patenty wygasły |
Przez nieznanych posiadaczy patentów | Nie można stwierdzić, dopóki format nie będzie wystarczająco stary , aby jakiekolwiek patenty wygasły (co najmniej 20 lat w krajach WTO ) |
Aby osiągnąć cel, jakim jest bycie wolnym od opłat licencyjnych, proces rozwoju wymaga, aby żadna funkcja nie mogła zostać przyjęta, zanim nie zostanie potwierdzona niezależnie przez dwie odrębne strony, aby nie naruszać patentów konkurencyjnych firm. W przypadkach, gdy alternatywa dla techniki chronionej patentem nie jest dostępna, właściciele odpowiednich patentów zostali zaproszeni do przyłączenia się do Sojuszu (nawet jeśli byli już członkami innej puli patentów). Na przykład członkowie Alliance Apple, Cisco, Google i Microsoft są również licencjodawcami w puli patentów MPEG-LA dla H.264. Jako dodatkową ochronę statusu AV1 bez opłat licencyjnych, Sojusz posiada fundusz obrony prawnej, aby pomóc mniejszym członkom Sojuszu lub licencjobiorcom AV1 na wypadek, gdyby zostali pozwani za domniemane naruszenie patentu.
Zgodnie z zasadami patentowymi przyjętymi przez konsorcjum World Wide Web Consortium (W3C), twórcy technologii udzielają licencji na swoje patenty związane z AV1 każdemu, w dowolnym miejscu i czasie na zasadzie wzajemności (tj. tak długo, jak użytkownik nie angażuje się w spory patentowe). W ramach warunku obronnego każdy, kto angażuje się w spory patentowe, traci prawo do patentów wszystkich posiadaczy patentów.
Takie traktowanie praw własności intelektualnej ( IPR ) i ich absolutny priorytet podczas opracowywania jest sprzeczne z istniejącymi formatami MPEG, takimi jak AVC i HEVC. Zostały one opracowane zgodnie z polityką niezaangażowania praw własności intelektualnej przez ich organizacje normalizacyjne, zgodnie z definicją otwartego standardu ITU-T . Jednak przewodniczący MPEG przekonuje, że ta praktyka musi się zmienić, a tak jest: EVC ma również mieć podzbiór bezpłatnych tantiem i będzie miał przełączalne funkcje w swoim strumieniu bitów w celu ochrony przed przyszłymi zagrożeniami dotyczącymi praw własności intelektualnej.
Stworzenie wolnych od opłat standardów internetowych było od dawna dążeniem dla branży. W 2007 roku propozycja wideo HTML5 określiła Theorę jako obowiązkową do wdrożenia. Powodem było to, że treści publiczne powinny być kodowane w dowolnych formatach, które można implementować, choćby jako „format bazowy”, a późniejsza zmiana takiego formatu bazowego byłaby trudna ze względu na efekty sieciowe. Alliance for Open Media to kontynuacja wysiłków Google’a w projekcie WebM, który wznowił konkurencję w zakresie opłat licencyjnych po tym, jak Theora została wyprzedzona przez AVC. W przypadku firm takich jak Mozilla, które dystrybuują wolne oprogramowanie, AVC może być trudne do utrzymania, ponieważ łatwo jest utrzymać tantiemy od kopii, biorąc pod uwagę brak strumienia przychodów na obsługę tych płatności w wolnym oprogramowaniu (patrz FRAND § Wykluczenie bezpłatnej dystrybucji ). Podobnie, HEVC nie przekonał wszystkich licencjodawców, aby zezwolili na wyjątek dla swobodnie rozpowszechnianego oprogramowania (patrz HEVC § Przepis dotyczący oprogramowania bezkosztowego ).
Cele wydajności obejmują „przejście z VP9 i HEVC” w zakresie wydajności w celu niewielkiego wzrostu złożoności . Celem NETVC jest poprawa wydajności o 25% w stosunku do HEVC. Głównym problemem złożoności jest dekodowanie oprogramowania, ponieważ wsparcie sprzętowe zajmie trochę czasu, aby dotrzeć do użytkowników. Jednak w przypadku WebRTC istotna jest również wydajność kodowania na żywo, co jest celem Cisco : Cisco jest producentem sprzętu wideokonferencyjnego , a ich wkład Thora ma na celu „uzasadnioną kompresję przy umiarkowanej złożoności”.
Pod względem funkcji AV1 jest specjalnie zaprojektowany do zastosowań w czasie rzeczywistym (zwłaszcza WebRTC) i wyższych rozdzielczościach (szersze gamy kolorów , wyższa liczba klatek na sekundę , UHD ) niż typowe scenariusze użytkowania obecnej generacji (H.264) formatów wideo, w których oczekuje się, że osiągnie największy wzrost wydajności. Dlatego planuje się obsługę przestrzeni kolorów z zalecenia ITU-R BT.2020 i do 12 bitów precyzji na składnik koloru. AV1 jest przeznaczony głównie do kodowania stratnego , chociaż obsługiwana jest również kompresja bezstratna .
Technologia
AV1 to tradycyjny format transformacji częstotliwości oparty na blokach, wykorzystujący nowe techniki. Oparty na VP9 Google, AV1 zawiera dodatkowe techniki, które głównie dają koderom więcej opcji kodowania, aby umożliwić lepszą adaptację do różnych typów danych wejściowych.
Deweloper(zy) | Sojusz na rzecz Otwartych Mediów |
---|---|
Wersja stabilna | 3.1.3 / 5 października 2021
|
Napisane w | C , montaż |
Licencja | BSD 2-klauzula Licencja ( darmowe oprogramowanie ) |
Strona internetowa | aomedia.googlesource.com/aom |
Alliance opublikowało implementację referencyjną napisaną w języku C i języku asemblera ( aomenc
, aomdec
) jako wolne oprogramowanie na warunkach licencji BSD 2-Clause License . Rozwój odbywa się publicznie i jest otwarty na wkłady, niezależnie od członkostwa w AOM.
Proces rozwoju był taki, że narzędzia kodujące zostały dodane do bazy kodu referencyjnego jako eksperymenty , kontrolowane przez flagi, które włączają lub wyłączają je w czasie kompilacji, do przeglądu przez innych członków grupy, a także wyspecjalizowane zespoły, które pomogły i zapewniły przyjazność sprzętu i zgodność z prawami własności intelektualnej (TAPAS). Gdy funkcja zyskała pewne poparcie w społeczności, eksperyment był domyślnie włączony i ostatecznie został usunięty z flagi, gdy wszystkie recenzje zostały przekazane. Nazwy eksperymentów były pisane małymi literami w skrypcie konfiguracyjnym i wielkimi literami we flagach kompilacji warunkowej .
Aby lepiej i bardziej niezawodnie obsługiwać HDR i przestrzenie kolorów, odpowiednie metadane można teraz zintegrować ze strumieniem bitów wideo zamiast sygnalizować je w kontenerze.
Partycjonowanie
Zawartość ramki jest dzielona na sąsiednie bloki o tej samej wielkości, zwane superblokami. Podobnie do koncepcji makrobloku , superbloki mają kształt kwadratu i mogą mieć rozmiar 128×128 lub 64×64 piksele. Superbloki można podzielić na mniejsze bloki zgodnie z różnymi wzorcami partycjonowania. Wzorzec podziału czterokierunkowego jest jedynym wzorcem, którego partycje mogą być dzielone rekurencyjnie. Pozwala to na dzielenie superbloków na partycje o wielkości zaledwie 4×4 piksele.
Wprowadzono wzory podziału w kształcie litery T, funkcję opracowaną dla VP10, a także poziomy lub pionowy podział na cztery paski o proporcjach 4:1 i 1:4. Dostępne wzorce partycjonowania różnią się w zależności od rozmiaru bloku, zarówno bloki 128×128, jak i 8×8 nie mogą używać podziałów 4:1 i 1:4. Co więcej, klocki 8×8 nie mogą używać podziałów w kształcie litery „T”.
Dwie oddzielne predykcje mogą być teraz używane dla przestrzennie różnych części bloku przy użyciu gładkiej, ukośnej linii przejściowej ( predykcja z podziałem klinowym ). Pozwala to na dokładniejsze oddzielenie obiektów bez tradycyjnych linii schodowych wzdłuż granic kwadratowych bloków.
Większa równoległość enkodera jest możliwa dzięki konfigurowalnej zależności predykcji między rzędami płytek ( ext_tile
).
Prognoza
AV1 wykonuje wewnętrzne przetwarzanie z większą precyzją (10 lub 12 bitów na próbkę), co prowadzi do poprawy kompresji ze względu na mniejsze błędy zaokrągleń w obrazach referencyjnych.
Prognozy można łączyć w bardziej zaawansowane sposoby (niż jednolita średnia) w bloku ( przewidywanie złożone ), w tym płynne i ostre gradienty przejść w różnych kierunkach ( przewidywanie z partycjami klinowymi ), a także niejawne maski oparte na różnicy między dwa predyktory. Pozwala to na użycie kombinacji dwóch predykcji inter lub predykcji inter i intra w tym samym bloku.
Ramka może odwoływać się do 6 zamiast 3 z 8 dostępnych buforów ramek dla przewidywania czasowego (wewnętrznego), zapewniając jednocześnie większą elastyczność przewidywania dwustanowego ( ext_refs
).
Narzędzia Warped Motion ( warped_motion
) i Global Motion ( global_motion
) w AV1 mają na celu redukcję nadmiarowych informacji w wektorach ruchu poprzez rozpoznawanie wzorców wynikających z ruchu kamery. Wdrażają pomysły, które próbowano wykorzystać w poprzednich formatach, takich jak np. MPEG-4 ASP, aczkolwiek z nowatorskim podejściem, które działa w trzech wymiarach. Może istnieć zestaw parametrów odkształcania dla całej ramki oferowanej w strumieniu bitów lub bloki mogą wykorzystywać zestaw niejawnych parametrów lokalnych, które są obliczane na podstawie bloków otaczających.
Klatki przełączające ( klatki S) to nowy typ międzyklatkowy, który można przewidzieć przy użyciu już zdekodowanych klatek referencyjnych z wersji tego samego wideo o wyższej rozdzielczości, aby umożliwić przełączenie na niższą rozdzielczość bez konieczności umieszczania na początku pełnej klatki kluczowej segmentu wideo w przypadku użycia przesyłania strumieniowego z adaptacyjną szybkością transmisji bitów .
Przewidywanie wewnętrzne
Predykcja intra polega na przewidywaniu pikseli danych bloków tylko przy użyciu informacji dostępnych w bieżącej klatce. Najczęściej predykcje intra są budowane z sąsiednich pikseli powyżej i po lewej stronie przewidywanego bloku. Predyktor DC buduje predykcję, uśredniając piksele powyżej i na lewo od bloku.
Predyktory kierunkowe ekstrapolują te sąsiednie piksele zgodnie z określonym kątem. W AV1 można wybrać 8 głównych trybów kierunkowych. Te tryby zaczynają się pod kątem 45 stopni i zwiększają się o wielkość kroku 22,5 stopnia aż do 203 stopni. Co więcej, dla każdego trybu kierunkowego dla większych bloków może być sygnalizowanych sześć przesunięć o 3 stopnie, trzy powyżej kąta głównego i trzy poniżej niego, co daje w sumie 56 kątów ( ext_intra
).
Predyktor „TrueMotion” został zastąpiony predyktorem Paeth, który analizuje różnicę od znanego piksela w lewym górnym rogu do piksela znajdującego się bezpośrednio nad i bezpośrednio na lewo od nowego, a następnie wybiera ten, który leży w kierunku mniejszego gradient jako predyktor. Predyktor palety jest dostępny dla bloków z bardzo małą liczbą (do 8 dominujących) kolorów, jak w przypadku niektórych treści na ekranie komputera. Korelacje między jasnością a informacją o kolorze można teraz wykorzystać za pomocą predyktora dla bloków chrominancji, który jest oparty na próbkach z płaszczyzny luminancji ( cfl
). Aby zredukować widoczne granice wzdłuż granic wzajemnie przewidzianych bloków, można zastosować technikę zwaną kompensacją ruchu nałożonych bloków (OBMC). Wiąże się to z rozszerzeniem rozmiaru bloku tak, aby nakładał się na sąsiednie bloki o 2 do 32 pikseli i zmieszaniem nakładających się części ze sobą.
Transformacja danych
Aby przekształcić błąd pozostały po przewidywaniu do domeny częstotliwości, kodery AV1 mogą używać prostokątnych DCT 2:1/1:2 i 4:1/1:4 ( rect_tx
), a także asymetrycznego czasu letniego dla bloków, w których i/lub lewa krawędź powinna mieć mniejszy błąd dzięki przewidywaniu z pobliskich pikseli lub zdecydować się na brak transformacji (transformacja tożsamości).
Może łączyć dwie transformacje jednowymiarowe w celu użycia różnych transformacji dla wymiaru poziomego i pionowego ( ext_tx
).
Kwantyzacja
AV1 ma nowe zoptymalizowane macierze kwantyzacji ( aom_qm
). Osiem zestawów parametrów kwantyzacji, które można wybrać i zasygnalizować dla każdej klatki, ma teraz indywidualne parametry dla dwóch płaszczyzn chrominancji i może wykorzystywać przewidywanie przestrzenne. W każdym nowym superbloku parametry kwantyzacji można regulować sygnalizując przesunięcie.
Filtry
W przypadku etapu filtrowania w pętli integracja ograniczonego filtra dolnoprzepustowego Thora z kierunkowym filtrem deringowym Daala okazała się owocna: Połączony ograniczony filtr kierunkowy ( cdef
) przewyższa wyniki stosowania oryginalnych filtrów osobno lub razem.
Jest to warunkowy filtr zastępczy skierowany na krawędź, który wygładza bloki z konfigurowalną (sygnalizowaną) siłą mniej więcej wzdłuż kierunku dominującej krawędzi, aby wyeliminować artefakty dzwonienia .
Dostępny jest również filtr przywracania pętli ( loop_restoration
) oparty na filtrze Wienera i samonaprowadzające się filtry przywracania, które usuwają artefakty rozmycia spowodowane przetwarzaniem blokowym.
Synteza ziarna filmu ( film_grain
) poprawia kodowanie zaszumionych sygnałów przy użyciu podejścia parametrycznego kodowania wideo. Ze względu na losowość właściwą szumowi ziarna filmu, ten składnik sygnału jest tradycyjnie albo bardzo kosztowny w kodowaniu, albo podatny na uszkodzenie lub utratę, co może powodować powstawanie poważnych artefaktów kodowania jako pozostałości. Narzędzie to omija te problemy za pomocą analizy i syntezy, zastępując części sygnału wizualnie podobną syntetyczną teksturą opartą wyłącznie na subiektywnym wrażeniu wizualnym, a nie na obiektywnym podobieństwie. Usuwa składnik ziarna z sygnału, analizuje jego nielosowe charakterystyki, a zamiast tego przesyła do dekodera tylko parametry opisowe, który dodaje z powrotem syntetyczny, pseudolosowy sygnał szumu, który jest kształtowany na podstawie oryginalnego składnika. Jest to wizualny odpowiednik techniki percepcyjnego zastępowania szumu używanej w kodekach audio AC3, AAC, Vorbis i Opus.
Kodowanie entropijne
Koder entropijny Daala ( daala_ec
), niebinarny koder arytmetyczny , został wybrany do zastąpienia binarnego kodera entropijnego VP9. Zastosowanie niebinarnego kodowania arytmetycznego pomaga uniknąć patentów, ale także dodaje równoległość na poziomie bitów do procesu szeregowego, zmniejszając wymagania dotyczące częstotliwości taktowania w implementacjach sprzętowych. Oznacza to, że do skuteczności współczesnego binarnego kodowania arytmetycznego, takiego jak CABAC , podchodzi się przy użyciu większego alfabetu niż binarnego, a zatem większej szybkości, jak w kodzie Huffmana (ale nie tak prostego i szybkiego jak kod Huffmana). AV1 zyskał również możliwość dostosowania prawdopodobieństw symboli w koderze arytmetycznym na zakodowany symbol zamiast na ramkę ( ec_adapt
).
Skalowalne kodowanie wideo
W przypadku wideokonferencji, skalowalne kodowanie wideo jest ogólną techniką ograniczania i konstruowania zależności klatek wideo w taki sposób, aby jeden lub więcej strumieni wideo o niższej szybkości transmisji bitów można było wyodrębnić ze strumienia o wyższej szybkości transmisji bitów w lepszej jakości. Różni się to od przesyłania strumieniowego z adaptacyjną szybkością transmisji bitów tym, że część wydajności kompresji w każdej adaptacji o wyższej szybkości transmisji jest rezygnowana na korzyść całego strumienia. Proces kodowania jest również mniej nadmiarowy i wymagający.
AV1 ma przepisy dotyczące skalowalności czasowej i przestrzennej. Oznacza to, że zarówno liczba klatek na sekundę, jak i rozdzielczość są użytecznymi sposobami definiowania podstrumienia o niższej przepływności.
Jakość i wydajność
Pierwsze porównanie z początku czerwca 2016 r. wykazało, że AV1 jest mniej więcej na równi z HEVC, podobnie jak w przypadku kodu z końca stycznia 2017 r.
W kwietniu 2017 r., korzystając z 8 włączonych wówczas funkcji eksperymentalnych (w sumie 77), Bitmovin był w stanie zademonstrować korzystne obiektywne metryki , a także wyniki wizualne w porównaniu z HEVC w krótkich filmach Sintel i Tears of Steel . Kolejne porównanie przeprowadzone przez Jana Ozera z Streaming Media Magazine potwierdziło to i stwierdziło, że „AV1 jest teraz co najmniej tak dobry jak HEVC”. Ozer zauważył, że wyniki jego i Bitmovina są sprzeczne z porównaniem przeprowadzonym przez Instytut Telekomunikacji Fraunhofera z końca 2016 r., w którym stwierdzono, że AV1 jest o 65,7% mniej wydajny niż HEVC, a nawet gorzej niż H.264/AVC, który, jak stwierdzili, jest o 10,5% bardziej wydajny. Ozer uzasadnił tę rozbieżność, używając parametrów kodowania zatwierdzonych przez każdego producenta kodera, a także mając więcej funkcji w nowszym koderze AV1. Zgodnie z wewnętrznymi pomiarami z 2017 r. wydajność dekodowania była o połowę mniejsza niż w przypadku VP9.
Testy Netflix z 2017 roku, oparte na pomiarach z PSNR i VMAF w 720p, wykazały, że AV1 był o około 25% bardziej wydajny niż VP9 (libvpx). Testy Facebooka przeprowadzone w 2018 roku na podstawie PSNR wykazały, że referencyjny koder AV1 był w stanie osiągnąć o 34%, 46,2% i 50,3% wyższą kompresję danych niż odpowiednio libvpx-vp9, x264 high profile i x264 main profile.
Testy przeprowadzone na Moskiewskim Uniwersytecie Państwowym w 2017 r. wykazały, że VP9 wymaga o 31%, a HEVC o 22% więcej bitrate niż AV1, aby osiągnąć podobny poziom jakości. Enkoder AV1 działał z prędkością „2500–3500 razy mniejszą niż konkurencja” z powodu braku optymalizacji (która nie była wówczas dostępna).
Testy przeprowadzone przez University of Waterloo w 2020 r. wykazały, że przy użyciu średniego wyniku opinii (MOS) dla wideo 2160p (4K) AV1 miał oszczędność bitrate 9,5% w porównaniu do HEVC i 16,4% w porównaniu do VP9. Doszli również do wniosku, że w czasie badania w 2160p kodowanie wideo AV1 trwało średnio 590 razy dłużej w porównaniu z kodowaniem za pomocą AVC; podczas gdy HEVC trwał średnio 4,2 razy dłużej, a VP9 średnio 5,2 razy dłużej niż AVC.
Najnowsze porównanie koderów przeprowadzone przez magazyn Streaming Media Magazine z września 2020 r., które wykorzystywało umiarkowane prędkości kodowania, VMAF i zróżnicowany zestaw krótkich klipów, wykazało, że kodowanie koderów open source libaom i SVT-AV1 zajęło około dwa razy więcej czasu niż x265 w ustawieniach "veryslow" przy użyciu 15-20% mniejszego bitrate lub około 45% mniejszego bitrate niż x264 veryslow . Najlepszy w teście koder AV1, Aurora1 firmy Visionular, w swoim ustawieniu „slower” działał tak szybko, jak x265 bardzo wolno , oszczędzając 50% bitrate w porównaniu z x264 bardzo wolno .
Profile i poziomy
Profile
AV1 definiuje trzy profile dla dekoderów: Główny , Wysoki i Profesjonalny . Profil główny pozwala na głębię bitową 8 lub 10 bitów na próbkę z próbkowaniem chrominancji 4:0:0 (skala szarości) i 4:2:0 (ćwierć) . Wysoki profil dodatkowo dodaje obsługę próbkowania kolorów 4: 4: 4 (bez podpróbkowania). Profil Professional rozszerza możliwości do pełnej obsługi podpróbkowania kolorów 4:0:0, 4:2:0, 4:2:2 (połowa) i 4:4:4 z 8, 10 i 12-bitową głębią kolorów.
Główna (0) | Wysoki (1) | Profesjonalny (2) | ||
---|---|---|---|---|
Głębokość bitowa | 8 lub 10-bitowy | 8 lub 10-bitowy | 8, 10 i 12 bitów | |
Podpróbkowanie chromatyczne | 4:0:0 | tak | tak | tak |
4:2:0 | tak | tak | tak | |
4:2:2 | Nie | Nie | tak | |
4:4:4 | Nie | tak | tak |
Poziomy
AV1 definiuje poziomy dekoderów z maksymalnymi zmiennymi dla poziomów od 2,0 do 6,3. Poziomy, które można zaimplementować, zależą od możliwości sprzętu.
Przykładowe rozdzielczości to 426×240@30 fps dla poziomu 2.0, 854×480@30 fps dla poziomu 3.0, 1920×1080@30 fps dla poziomu 4.0, 3840×2160@60 fps dla poziomu 5.1, 3840×2160@120 fps dla poziomu 5.2 i 7680×4320@120 fps dla poziomu 6.2. Poziom 7 nie został jeszcze zdefiniowany.
seq_level_idx | Poziom | MaxPicSize (próbki) |
MaxHrozmiar (próbki) |
MaxVSize (próbki) |
Maksymalna częstotliwość wyświetlania (Hz) |
Maksymalna szybkość dekodowania (Hz) |
Maksymalna częstotliwość nagłówka (Hz) |
Główny Mb/s (Mb/s) |
Wysoka Mb/s (Mb/s) |
Minimalna podstawa komp. | Maksymalna liczba płytek | Maks. kolumny płytek | Przykład |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 2,0 | 147456 | 2048 | 1152 | 4 423 680 | 5 529 600 | 150 | 1,5 | - | 2 | 8 | 4 | 426×240@30fps |
1 | 2,1 | 278784 | 2816 | 1584 | 8 363 520 | 10 454 400 | 150 | 3,0 | - | 2 | 8 | 4 | 640×360@30fps |
4 | 3,0 | 665856 | 4352 | 2448 | 19 975 680 | 24 969 600 | 150 | 6,0 | - | 2 | 16 | 6 | 854×480@30fps |
5 | 3.1 | 1065024 | 5504 | 3096 | 31 950 720 | 39 938 400 | 150 | 10,0 | - | 2 | 16 | 6 | 1280×720@30fps |
8 | 4.0 | 2359296 | 6144 | 3456 | 70 778 880 | 77,856,768 | 300 | 12,0 | 30,0 | 4 | 32 | 8 | 1920×1080@30fps |
9 | 4.1 | 2359296 | 6144 | 3456 | 141 557 760 | 155 713 536 | 300 | 20,0 | 50,0 | 4 | 32 | 8 | 1920×1080@60fps |
12 | 5.0 | 8912896 | 8192 | 4352 | 267 386 880 | 273 715 200 | 300 | 30,0 | 100,0 | 6 | 64 | 8 | 3840×2160@30fps |
13 | 5.1 | 8912896 | 8192 | 4352 | 534.773.760 | 547,430,400 | 300 | 40,0 | 160,0 | 8 | 64 | 8 | 3840×2160@60fps |
14 | 5.2 | 8912896 | 8192 | 4352 | 1 069 547 520 | 1 094 860 800 | 300 | 60,0 | 240,0 | 8 | 64 | 8 | 3840×2160@120fps |
15 | 5,3 | 8912896 | 8192 | 4352 | 1 069 547 520 | 1 176 502 272 | 300 | 60,0 | 240,0 | 8 | 64 | 8 | 3840×2160@120fps |
16 | 6,0 | 35651584 | 16384 | 8704 | 1 069 547 520 | 1 176 502 272 | 300 | 60,0 | 240,0 | 8 | 128 | 16 | 7680×4320@30fps |
17 | 6,1 | 35651584 | 16384 | 8704 | 2 139 095 040 | 2 189 721 600 | 300 | 100,0 | 480,0 | 8 | 128 | 16 | 7680×4320@60fps |
18 | 6,2 | 35651584 | 16384 | 8704 | 4 278 190 080 | 4 379 443 200 | 300 | 160,0 | 800,0 | 8 | 128 | 16 | 7680×4320@120fps |
19 | 6,3 | 35651584 | 16384 | 8704 | 4 278 190 080 | 4 706 009 088 | 300 | 160,0 | 800,0 | 8 | 128 | 16 | 7680×4320@120fps |
Obsługiwane formaty kontenerów
Standaryzowane
- ISO Base Media File Format : specyfikacja konteneryzacji ISOBMFF firmy AOMedia była pierwszą, która została sfinalizowana i jako pierwsza została przyjęta. To jest format używany przez YouTube.
- Matroska : wersja 1 specyfikacji konteneryzacji Matroska została opublikowana pod koniec 2018 roku.
Niedokończone standardy
- Strumień transportowy MPEG (MPEG TS)
- Protokół transportu w czasie rzeczywistym : wstępna specyfikacja pakietowania RTP opracowana przez firmę AOMedia definiuje transmisję jednostek OBU AV1 bezpośrednio jako ładunek RTP. Definiuje rozszerzenie nagłówka RTP, które przenosi informacje o klatkach wideo i ich zależnościach, co jest ogólnie przydatne w § skalowalnym kodowaniu wideo . Przenoszenie nieprzetworzonych danych wideo różni się również od na przykład MPEG TS przez RTP tym, że inne strumienie, takie jak audio, muszą być przenoszone zewnętrznie.
Nieznormalizowany
- WebM: w ramach formalności AV1 nie został sankcjonowany do podzbioru Matroska znanego jako WebM pod koniec 2019 roku.
- On2 IVF : ten format został odziedziczony z pierwszego publicznego wydania VP8, gdzie służył jako prosty kontener programistyczny. rav1e również obsługuje ten format.
- Pre-standard WebM: Libaom zawierał wczesne wsparcie dla WebM przed określeniem konteneryzacji Matroski; od tego czasu zostało to zmienione w celu dostosowania do specyfikacji Matroska.
Przyjęcie
Dostawców treści
W październiku 2016 r. Netflix ogłosił, że spodziewa się wczesnego użytkownika AV1. 5 lutego 2020 r. Netflix zaczął używać AV1 do strumieniowego przesyłania wybranych tytułów na Androida, zapewniając o 20% lepszą wydajność kompresji w porównaniu ze strumieniami VP9.
W 2018 roku YouTube zaczął wprowadzać AV1, zaczynając od AV1 Beta Launch Playlist . Zgodnie z opisem, filmy są (na początek) kodowane z dużą szybkością transmisji bitów, aby przetestować wydajność dekodowania, a YouTube ma „ambitne cele”, aby wdrożyć AV1. YouTube dla Android TV obsługuje odtwarzanie filmów zakodowanych w AV1 na odpowiednich platformach od wersji 2.10.13, wydanej na początku 2020 roku.
W lutym 2019 r. Facebook, po swoich pozytywnych wynikach testów, powiedział, że będzie stopniowo wprowadzać AV1, gdy tylko pojawi się obsługa przeglądarek, zaczynając od ich najpopularniejszych filmów.
W czerwcu 2019 roku filmy Vimeo w kanale „Wybór personelu” były dostępne w AV1. Vimeo używa i przyczynia się do rozwoju kodera Rav1e Mozilli i oczekuje, że wraz z dalszymi ulepszeniami kodera ostatecznie zapewni obsługę AV1 dla wszystkich filmów przesłanych do Vimeo, a także oferty „Live” firmy.
30 kwietnia 2020 r. iQIYI ogłosiło wsparcie dla AV1 dla użytkowników korzystających z przeglądarek internetowych na PC i urządzeń z systemem Android, zgodnie z zapowiedzią, jako pierwszą chińską witrynę do strumieniowego przesyłania wideo, która przyjęła format AV1.
Twitch planuje wprowadzić AV1 dla swojej najpopularniejszej zawartości w 2022 lub 2023 roku, a uniwersalne wsparcie ma pojawić się w 2024 lub 2025 roku.
Wdrożenia oprogramowania
- Libaom jest implementacją referencyjną . Zawiera koder (aomenc) i dekoder (aomdec). Podobnie jak poprzedni kodek badawczy, ma tę zaletę, że pozwala w uzasadniony sposób zademonstrować efektywne wykorzystanie każdej funkcji, ale ogólnie kosztem szybkości kodowania. Po zamrożeniu funkcji koder stał się problematycznie wolny, ale optymalizacje prędkości o znikomym wpływie na wydajność kontynuowano również po tym.
- rav1e to koder napisany w Rust i assemblerze. rav1e przyjmuje odwrotne podejście rozwojowe do Aomenc: zacznij jako najprostszy (a tym samym najszybszy) zgodny koder, a następnie z czasem zwiększaj wydajność, pozostając szybkim.
- SVT-AV1 zawiera koder i dekoder typu open source, wydany po raz pierwszy przez firmę Intel w lutym 2019 r., który został zaprojektowany specjalnie do użytku na serwerach centrów danych opartych na procesorach Intel Xeon . Netflix współpracuje z Intelem nad SVT-AV1.
- dav1d to dekoder napisany w C99 i asembler skupiony na szybkości i przenośności. Pierwsza oficjalna wersja (0.1) została wydana w grudniu 2018 r. Wersja 0.2 została wydana w marcu 2019 r., a użytkownicy mogą „bezpiecznie korzystać z dekodera na wszystkich platformach, z doskonałą wydajnością”, według twórców. Wersja 0.3 została ogłoszona w maju 2019 r. z dalszymi optymalizacjami wykazującymi wydajność od 2 do 5 razy szybszą niż aomdec.; wersja 0.5 została wydana w październiku 2019 r. Firefox 67 przeszedł z Libaom na dav1d jako domyślny dekoder w maju 2019 r. W 2019 r. dav1d v0.5 został oceniony jako najlepszy dekoder w porównaniu do libgav1 i libaom. dav1d 0.9.0 został wydany 17 maja 2021 r. dav1d 0.9.2 został wydany 3 września 2021 r.
- Cisco AV1 to zastrzeżony koder na żywo, który firma Cisco opracowała dla swoich produktów do telekonferencji Webex . Koder jest zoptymalizowany pod kątem opóźnień i ograniczenia „użytecznego wykorzystania procesora”, tak jak w przypadku „towarowego laptopa”. Cisco podkreśliło, że w ich punkcie działania – duża prędkość, małe opóźnienia – duży zestaw narzędzi AV1 nie wyklucza niskiej złożoności kodowania. Zamiast tego dostępność narzędzi do zawartości ekranu i skalowalność we wszystkich profilach umożliwiła im znalezienie dobrych kompromisów między kompresją a szybkością, lepszych nawet niż w przypadku HEVC. W porównaniu z wcześniej wdrożonym koderem H.264, szczególnym obszarem poprawy było udostępnianie ekranu w wysokiej rozdzielczości.
- libgav1 to dekoder napisany w C++11 wydany przez Google.
Kilka innych firm ogłosiło, że pracuje nad koderami, w tym EVE dla AV1 (w testach beta), NGCodec, Socionext, Aurora i MilliCast.
Wsparcie oprogramowania
Przeglądarki internetowe
- Firefox (od wersji 67.0, maj 2019; domyślnie włączony na wszystkich platformach stacjonarnych - Windows, macOS i Linux dla systemów 32-bitowych i 64-bitowych)
- Google Chrome (dekoder od wersji 70, październik 2018; koder od 90, 14 kwietnia 2021)
- Opera (od wersji 57, 28 listopada 2018)
- Microsoft Edge (od aktualizacji Windows 10 października 2018 (1809) z dodatkiem AV1 Video Extension )
- Vivaldi (od października 2018)
- Odważny
Odtwarzacze wideo
- Odtwarzacz multimedialny VLC (od wersji 3.0)
- mpv (od wersji 0.29.0)
- Xine-lib (od 1.2.10)
- PotPlayer (od wersji 1.7.14804, 16 października 2018)
- Pakiet kodeków K-Lite (od wersji 14.4.5, 13 września 2018)
Kodery
- FFmpeg (od wersji 4.0, 20 kwietnia 2018)
- HandBrake (od wersji 1.3.0, 9 listopada 2019; obsługa dekodowania)
- Kodowanie Bitmovin (od wersji 1.50.0, 4 lipca 2018)
Edytory wideo
- DaVinci Resolve (od wersji 17.2, maj 2021; obsługa dekodowania)
Inni
- GStreamer (od wersji 1.14)
- MKVToolNix (przyjęcie ostatecznej specyfikacji av1 -in-mkv od wersji 28)
- MediaInfo (od wersji 18.03)
- Elecard StreamEye Studio (narzędzia do analizy jakości wideo)
- Google Duo (od kwietnia 2020 r.)
- Adobe Audition (wsparcie dekodowania, podgląd wideo)
- Avidemux (od wersji 2.76, 7 lipca 2020; obsługa dekodowania)
Obsługa systemu operacyjnego
Microsoft Windows | System operacyjny Mac | BSD / Linux | System operacyjny Chrome | Android | iOS | |
---|---|---|---|---|---|---|
Obsługa kodeków | Domyślnie wyłączone, wymaga dodatku | Nie | tak | tak | tak | Nie |
Obsługa kontenerów |
Bazowy format plików multimedialnych ISO (.mp4) WebM (.webm) Matroska (.mkv) |
Nie |
Bazowy format plików multimedialnych ISO (.mp4) WebM (.webm) Matroska (.mkv) |
Bazowy format plików multimedialnych ISO (.mp4) WebM (.webm) Matroska (.mkv) |
Nie | |
Uwagi | - Wsparcie wprowadzone w systemie Windows 10 października 2018 Aktualizacja (1809) z AV1 video Rozszerzenie Add-on - Wsparcie dla akceleracji sprzętowej dodane w aktualizacji Windows 10 listopada 2019 (1909) - Obsługiwane w aplikacjach Universal Windows Platform, takich jak Microsoft Edge i Filmy i TV |
Nieobsługiwane od macOS Catalina | Obsługuje dekodowanie, począwszy od Chrome OS 70 | Obsługiwane od Androida 10 | Nieobsługiwane od iOS 14 |
Sprzęt komputerowy
Produkt | Funkcja (D = dekodowanie, E = kodowanie) |
Profil | Wydajność (jednordzeniowy) |
Przepustowość (maks.) |
Ref | |
---|---|---|---|---|---|---|
Allegro | AL-E195 | mi | Główny (0) i Profesjonalny (1) |
|||
AL-E210 | mi | Główna (0) | 4K 30fps 10-bit | ? | ||
AMD | RDNA 2 | D | Główna (0) | 8K | ||
Amlogic | S905X4 | D | 4K 120fps | |||
S908X | D | 8K 60fps | ||||
S805X2 | D | 1080p | ||||
Amfiona | CS8142 | D | 4K 60fps | |||
Broadcom | BCM7218X | D | 4K | |||
Żetony i media | WAVE510A WAVE627 |
D E |
Główna (0) | 4K 60fps | 4K 120fps | |
Dwango | mi | 720p 30fps | ||||
Intel |
Jezioro Tygrysów Jezioro Rakietowe Jezioro Olchowe |
D | Główna (0) | 8K 10-bitowy | ||
MediaTek | wymiar 900 wymiar 1000 wymiar 1100 wymiar 1200 |
D | 4K 60fps | 4K 60fps | ||
MT9638 | D | 4K 60fps 10-bit | 4K 60fps 10-bit | |||
Nvidia | GeForce 30 | D | Główna (0) | 8K 60fps 10-bit | ||
Realtek | RTD1311 | D | 4K | |||
RTD2893 | D | 8K | ||||
Rockchip | RK3588 | D | 4K 60fps 10-bit | |||
Samsung | Exynos 2100 | D |
Kilku członków Alliance zademonstrowało produkty obsługujące AV1 na targach IBC 2018, w tym akcelerowany sprzętowo koder Socionext . Według Socionext akcelerator kodowania jest oparty na FPGA i może działać na instancji chmury Amazon EC2 F1 , gdzie działa 10 razy szybciej niż istniejące kodery programowe.
Według Mukunda Srinivasana, dyrektora ds. biznesowych członka AOM Ittiam , wczesna obsługa sprzętu będzie zdominowana przez oprogramowanie działające na sprzęcie bez procesora (takim jak GPGPU , DSP lub programy cieniujące , jak to ma miejsce w przypadku niektórych implementacji sprzętowych VP9 ). Sprzęt z funkcjami zajmie od 12 do 18 miesięcy po zamrożeniu strumienia bitów, zanim chipy staną się dostępne, plus 6 miesięcy, aby produkty oparte na tych chipach trafiły na rynek. Bitstream został ostatecznie zamrożony 28 marca 2018 r., co oznacza, że chipy mogą być dostępne między marcem a sierpniem 2019 r. Zgodnie z powyższą prognozą produkty oparte na chipach mogą wtedy pojawić się na rynku pod koniec 2019 r. lub na początku 2020 r.
- 7 stycznia 2019 r. NGCodec ogłosił wsparcie AV1 dla NGCodec przyspieszone przez układy Xilinx FPGA .
- 18 kwietnia 2019 r. Allegro DVT ogłosiło swój wieloformatowy sprzętowy koder wideo AL-E210 IP, pierwszy publicznie ogłoszony sprzętowy koder AV1.
- 23 kwietnia 2019 r. Rockchip ogłosił swój SoC RK3588, który obsługuje sprzętowe dekodowanie AV1 do 4K 60 fps przy 10-bitowej głębi kolorów.
- 9 maja 2019 r. firma Amphion ogłosiła dekoder wideo z obsługą AV1 do 4K przy 60 klatkach na sekundę 28 maja 2019 r. firma Realtek ogłosiła RTD2893, swój pierwszy układ scalony z dekodowaniem AV1 do 8K.
- 17 czerwca 2019 r. firma Realtek ogłosiła układ SoC RTD1311 do dekoderów ze zintegrowanym dekoderem AV1.
- 20 października 2019 r. mapa drogowa Amlogic pokazała 3 SoC dekoderów, które są w stanie dekodować zawartość AV1, S805X2, S905X4 i S908X. S905X4 był używany w SDMC DV8919 do grudnia.
- 21 października 2019 r. firma Chips&Media ogłosiła, że VPU WAVE510A obsługuje dekodowanie AV1 z prędkością do 4Kp120.
- 26 listopada 2019 roku MediaTek ogłosił pierwszy na świecie smartfon SoC ze zintegrowanym dekoderem AV1. Dimensity 1000 jest w stanie dekodować zawartość AV1 do 4K 60fps.
- 3 stycznia 2020 r. firma LG Electronics ogłosiła, że jej telewizory 8K z 2020 r., oparte na procesorze α9 Gen 3, obsługują AV1.
- Na targach CES 2020 Samsung ogłosił, że jego telewizory QLED 8K z 2020 roku, wyposażone w „Quantum Processor 8K SoC”, są w stanie dekodować AV1.
- 13 sierpnia 2020 r. Intel ogłosił, że ich procesor graficzny Intel Xe-LP w Tiger Lake będzie ich pierwszym produktem zawierającym dekodowanie sprzętowe AV1 o stałej funkcji.
- 1 września 2020 r. Nvidia ogłosiła, że jej procesory graficzne z serii Nvidia GeForce RTX 30 będą obsługiwać dekodowanie sprzętowe o stałej funkcji AV1.
- 2 września 2020 r. Intel oficjalnie wprowadził na rynek procesory Tiger Lake 11. generacji z dekodowaniem sprzętowym o stałej funkcji AV1.
- 15 września 2020 r. AMD połączyło poprawki do sterowników amdgpu dla systemu Linux, które dodają obsługę dekodowania AV1 na procesorach graficznych RDNA2.
- 28 września 2020 r. Roku odświeżyło Roku Ultra, w tym obsługę AV1.
- 30 września 2020 r. Intel wydał wersję 20.3.0 dla sterownika Intel Media Driver, który dodał obsługę dekodowania AV1 w systemie Linux.
- 10 października 2020 r. firma Microsoft potwierdziła wsparcie dla sprzętowego dekodowania AV1 na Xe-LP (Gen12), Ampere i RDNA2 w poście na blogu.
- 16 marca 2021 r. Intel oficjalnie wprowadził na rynek procesory Rocket Lake 11. generacji z dekodowaniem sprzętowym o stałej funkcji AV1.
Roszczenia patentowe
Sisvel, firma z siedzibą w Luksemburgu, utworzyła pulę patentów i sprzedaje licencję patentową na AV1. Pula została ogłoszona na początku 2019 r., ale lista zgłoszonych patentów została po raz pierwszy opublikowana 10 marca 2020 r. Ta lista zawiera ponad 1050 patentów. Treść zastrzeżeń patentowych pozostaje do zakwestionowania.
Ceny Sisvel wynoszą 0,32 euro za urządzenia wyświetlające i 0,11 euro za urządzenia bez wyświetlania korzystające z AV1. Sisvel oświadczył, że nie będą ubiegać się o tantiemy za treść, ale ich licencja nie zwalnia z oprogramowania.
Do marca 2020 r. Alliance for Open Media nie odpowiedziała na listę zastrzeżeń patentowych. Ich oświadczenie po pierwszym ogłoszeniu przez Sisvel potwierdziło zobowiązanie do bezpłatnej licencji patentowej i wspomniało o „programie obrony patentowej AOMedia, aby pomóc chronić uczestników ekosystemu AV1 w przypadku roszczeń patentowych”, ale nie wymieniło roszczenia Sisvel z nazwy.
Google zna pulę patentów, ale nie planuje zmieniać swoich obecnych ani przyszłych planów użytkowania AV1.
Format pliku obrazu AV1 (AVIF)
AV1 Image File Format ( AVIF ) ( / ə v í f / ) to format pliku obrazu specyfikacja do przechowywania zdjęć lub sekwencji obrazów skompresowanych z AV1 w HEIF formacie. Konkuruje z HEIC, który wykorzystuje ten sam format kontenera, zbudowany na ISOBMFF , ale HEVC do kompresji. Wersja 1.0.0 specyfikacji AVIF została sfinalizowana w lutym 2019 roku.
AVIF obsługuje funkcje takie jak:
- Wiele przestrzeni kolorów , w tym:
- HDR (z funkcjami transferu PQ lub HLG , podstawowymi kolorami BT.2020 i przestrzenią kolorów BT.2100 )
- SDR (z sRGB / BT.709 lub z szeroką gamą kolorów )
- Sygnalizacja przestrzeni kolorów przez CICP (ITU-T H.273 i ISO/IEC 23091-2) lub profile ICC
- Kompresja bezstratna i kompresja stratna
- 8, 10, 12 bitowa głębia kolorów
- Monochromatyczny (alfa/głębokość) lub wieloskładnikowy
- 4:2:0, 4:2:2, 4:4:4 podpróbkowanie chrominancji
- Ziarno filmu
Deweloper(zy) | Sojusz na rzecz Otwartych Mediów |
---|---|
Wersja stabilna | 0.9.2 / 23 czerwca 2021 r
|
Napisane w | C , montaż |
Licencja | BSD 2-klauzula Licencja ( darmowe oprogramowanie ) |
Strona internetowa | github.com/AOMediaCodec/libavif |
Wsparcie AVIF
14 grudnia 2018 r. Netflix opublikował pierwsze przykładowe obrazy w formacie .avif. W listopadzie 2020 opublikowano przykładowe obrazy HDR z funkcją transferu PQ i kolorami podstawowymi BT.2020.
Oprogramowanie
-
Przeglądarki internetowe
- Trwają prace nad obsługą AVIF w przeglądarkach internetowych . Szczególnie:
- W sierpniu 2020 została wydana Google Chrome w wersji 85 z pełną obsługą AVIF. Google Chrome 89 na Androida dodaje obsługę AVIF.
- W październiku 2021 została wydana Mozilla Firefox 93 z domyślną obsługą AVIF. Planował domyślnie włączyć obsługę AVIF w Firefoksie 86, ale wycofał zmianę dzień przed wydaniem.
- Webkit dodał obsługę AVIF 5 marca 2021 r.
-
Przeglądarki obrazów
- Obsługa odczytu AVIF jest dostępna w przeglądarce obrazów qView począwszy od wersji 4.0.
- XnView
- gKciuk
- ImageMagick
- ObrazSzkło
- Obsługa odczytu AVIF jest dostępna w IrfanView
-
Odtwarzacz multimedialny
- VLC odczytuje pliki AVIF począwszy od wersji 4, która wciąż jest w fazie rozwoju
-
Edytory obrazów
- Paint.net dodał obsługę otwierania plików AVIF we wrześniu 2019 r. oraz możliwość zapisywania obrazów w formacie AVIF w aktualizacji z sierpnia 2020 r.
- Konwersja formatu Colorist i dane obrazu Darktable RAW mają wydaną obsługę i zapewniają referencyjne implementacje libavif.
- Opracowano implementację wtyczki GIMP obsługującą interfejsy API wtyczek 3.x i 2.10.x. Natywny import i eksport AVIF został dodany do GIMP w październiku 2020 r.
- Biblioteki obrazów
OS
- Firma Microsoft ogłosiła wsparcie w wersji zapoznawczej systemu Windows 10 „ 19H1 ”, w tym obsługę Eksploratora plików, Painta i wielu interfejsów API, wraz z przykładowymi obrazami.
- Android 12 wydany 4 października 2021 r. dodał natywną obsługę AVIF, chociaż nie będzie to domyślny format obrazu dla aplikacji aparatu.
Strony internetowe
- 14 lutego 2020 r. Netflix opublikował artykuł na blogu z obiektywnymi pomiarami jakości obrazu AVIF i wydajności kompresji w porównaniu z JPEG .
- Cloudflare ogłosił wsparcie AVIF w poście na blogu 3 października 2020 r.
- Vimeo ogłosiło wsparcie AVIF w poście na blogu 3 czerwca 2021 r.
Języki programowania
- PHP w wersji 8.1 będzie zawierać obsługę AVIF w rozszerzeniu GD.
Inni
- Exiftool obsługuje format AVIF do odczytu i zapisu EXIF od wersji 11.79.