AV1
# AV1

AOMedia Video 1 (AV1) es un formato de compresión de video abierto y libre de derechos de autor diseñado para las transmisiones de video a través de Internet.

Fue desarrollado como sucesor de VP9 por la Alliance for Open Media (AOMedia), un consorcio fundado en 2015 que incluye empresas de semiconductores, proveedores de video bajo demanda, productores de contenido de video, empresas de desarrollo de software y proveedores de navegadores web. La especificación de flujo de bits de AV1 incluye un códec de video de referencia. En las pruebas de Facebook que se aproximan a las condiciones del mundo real, AV1 logró una compresión de datos un 34 %, 46.2 % y 50.3 % más alta que la de libvpx-vp9, x264 de perfil alto y x264 de perfil principal, respectivamente.

AV1 se anunció con la creación de la Alliance for Open Media el 1 de septiembre de 2015. El objetivo de AOMedia es combinar la tecnología y la experiencia de sus miembros para desarrollar un formato de video libre de derechos de autor, con una mayor eficiencia de compresión y más adecuado para su uso en navegadores y en la web. Varios de los miembros fundadores de AOMedia, entre ellos Google (VP10), Mozilla (Daala) y Cisco (Thor), tenían proyectos de investigación en curso sobre video libre de derechos de autor e incorporaron aspectos de cada uno de ellos en AV1.

Los especialistas de la industria consideraron que una de las características más convincentes del AV1 es su modelo de licencia libre de derechos de autor, a diferencia de las tecnologías existentes, como HEVC, que requieren pagos de derechos de autor e impiden la adopción generalizada en los proyectos de código abierto.

El desarrollo de Thor por parte de Cisco se inició en respuesta a la percepción de que HEVC no era viable para su uso en productos de código abierto y de libre distribución, pero el trabajo de Google y Mozilla (anteriormente a cargo de Xiph) en materia de video libre de derechos de autor es previo a este hecho y no es atribuible a los problemas de licencia de HEVC, aunque definitivamente también es visto como un problema por Mozilla.

## Historia

Las motivaciones de AOMedia para crear el AV1 consistían en el alto coste y la incertidumbre que implicaba la licencia de patentes del HEVC, el códec diseñado por MPEG que se esperaba que sustituyera a AVC. Además, los siete miembros fundadores de AOMedia (Amazon, Cisco, Google, Intel, Microsoft, Mozilla y Netflix) anunciaron que el enfoque inicial del formato sería la entrega de video web de alta calidad. El anuncio oficial del AV1 vino con el comunicado de prensa sobre la formación de la Alliance for Open Media el 1 de septiembre de 2015. Solo 42 días antes, el 21 de julio de 2015, se anunció que el precio inicial de la licencia de HEVC Advance iba a ser más alto que el de su predecesor, AVC. Además del creciente costo, la complejidad del proceso de licenciamiento aumentó con HEVC. A diferencia de las anteriores normas MPEG, en las que la tecnología de la norma podía ser licenciada por una sola entidad, MPEG LA, cuando el estándar HEVC fue terminado, dos patent pool habían sido formadas con una tercera en camino. Además, varios titulares de las patentes se negaban a conceder licencias a través de cualquiera de los dos consorcios, lo que aumentaba la incertidumbre sobre la concesión de licencias por parte del HEVC. Según Ian LeGrow de Microsoft, una tecnología de código abierto y libre de derechos de autor fue considerada como la forma más fácil de eliminar esta incertidumbre en torno a la concesión de licencias.

El efecto negativo de las licencias de patentes sobre el software libre y de código abierto también ha sido citado como una razón para la creación del AV1. Por ejemplo, la incorporación de una implementación de H.264 en Firefox evitaría que se distribuyera gratuitamente, ya que habría que pagar derechos de licencia a MPEG-LA. La Free Software Foundation Europa ha argumentado que las prácticas de licenciamiento de patentes de FRAND hacen que la implementación de estándares de software libre sea imposible debido a varias incompatibilidades con las licencias de software libre.

Muchos de los componentes del proyecto del AV1 se obtuvieron a partir de esfuerzos de investigación previos de los miembros de AOMedia. Los miembros colaboradores empezaron a experimentar de forma independiente con plataformas tecnológicas años antes: Daala de Xiph/Mozilla fue publicado en 2010, el proyecto experimental VP10 de Google fue anunciado el 12 de septiembre de 2014, y Thor de Cisco fue publicado el 11 de agosto de 2015. Partiendo de la base de código de VP9, AV1 incorpora técnicas adicionales, varias de las cuales fueron desarrolladas en estos formatos experimentales. La primera versión 0.1.0 del códec de referencia AV1 se publicó el 7 de abril de 2016.

Aunque a finales de octubre de 2017 se produjo un congelamiento de código, se decidió que varias características importantes se seguirían desarrollando por encima de esto. Se proyectó que una de estas características en curso, el formato de flujo de bits, se congelaría en enero de 2018, pero se retrasó debido a errores críticos no resueltos, así como a nuevos cambios en las transformaciones, la sintaxis, la predicción de los vectores de movimiento y la finalización del análisis legal. AOMedia anunció el lanzamiento de la especificación del flujo de bits de AV1 el 28 de marzo de 2018, junto con un codificador y decodificador de referencia basado en software. El 25 de junio de 2018, se publicó una versión validada 1.0.0 de la especificación. El 8 de enero de 2019 se publicó una versión validada 1.0.0 con Fe de erratas 1 de la especificación.

Martin Smole de Bitmovin, miembro de AOMedia, dijo que la eficiencia computacional del codificador de referencia era el mayor desafío que quedaba después de la congelación del formato de flujo de bits. Mientras se trabajaba en el formato, el codificador no estaba destinado al uso en producción y no se priorizaron las optimizaciones de velocidad. Por consiguiente, la primera versión del AV1 era un poco más lenta que los codificadores HEVC existentes. Debido a ello, gran parte de los esfuerzos de desarrollo se centraron en la maduración del codificador de referencia. En marzo de 2019, se informó de que la velocidad del codificador de referencia había mejorado enormemente y dentro del mismo orden de magnitud que los codificadores de otros formatos comunes.

## Objetivo

AV1 pretende ser un formato de video para la web que sea a la vez de última generación y libre de derechos de autor. La misión de la Alliance for Open Media es la misma que la del proyecto WebM. Para cumplir con el objetivo de ser libre de derechos de autor, el proceso de desarrollo requiere que ninguna característica pueda ser adoptada antes de que haya sido confirmada independientemente por dos entidades distintas para no infringir las patentes de las empresas competidoras. En los casos en que no se dispone de una alternativa a una técnica protegida por patente, se ha invitado a los titulares de las patentes pertinentes a unirse a la AOMedia (incluso si ya eran miembros de otro patent pool). Por ejemplo, los miembros de la AOMedia Apple, Cisco, Google y Microsoft también son licenciadores en el grupo de patentes de MPEG-LA para H.264. Como protección adicional para el estatus de libre de derechos de autor de la AV1, AOMedia cuenta con un fondo de defensa legal para ayudar a los miembros más pequeños o a los licenciatarios del AV1 en caso de que se les demande por una supuesta infracción de patente.

Este proceso de desarrollo contrasta con el de su principal competidor, HEVC, en el que la revisión de los derechos de propiedad intelectual no formaba parte del proceso de normalización. La práctica de revisión utilizada por el AV1 está estipulada en la definición de estándar abierto ITU-T.

Una preocupación recurrente en el campo de los formatos multimedia libres de derechos de autor es la posibilidad de que AV1 pueda infringir patentes desconocidas para AOMedia. La preocupación se ha planteado en relación con AV1, y anteriormente con la VP9, Theora e IVC. El problema de las patentes imprevistas no es exclusivo de los formatos libres de derechos de autor, sino que amenaza de manera especial su "condición" de libres de derechos de autor. Por el contrario, la evasión de los derechos de propiedad intelectual no ha sido tradicionalmente una prioridad en el modelo comercial de MPEG para los formatos con derechos de autor (aunque el presidente de MPEG argumenta que tiene que cambiar).

Bajo las reglas de patentes adoptadas por el Consorcio de la World Wide Web (W3C), los contribuyentes de tecnología licencian sus patentes conectadas a AV1 a cualquiera, en cualquier lugar y en cualquier momento, basándose en la reciprocidad (es decir, siempre que el usuario no se involucre en un litigio de patentes). Como condición de defensa, cualquier participante en un litigio de patentes pierde el derecho a las patentes de todos los titulares de las mismas.

La creación de estándares web libres de derechos de autor ha sido una búsqueda de larga data para la industria. En 2007, la propuesta de HTML5 video especificó a Theora como de implementación obligatoria. La razón era que el contenido público debía codificarse en formatos de libre implementación, aunque solo fuera como "formato de base", y que cambiar dicho formato de base más adelante sería difícil debido a los efectos de la red. La Alliance for Open Media es una continuación de los esfuerzos de Google con el proyecto WebM, que renovó la competencia libre de derechos de autor después de que Theora fuera superada por AVC. Para las empresas como Mozilla que distribuyen software libre, AVC puede ser difícil de apoyar ya que las derechos de autor por cada copia fácilmente es insostenible dada la falta de flujo de ingresos para financiar estos pagos en el software libre. De manera similar, HEVC no ha logrado convencer a todos los otorgantes de licencias para que permitan una excepción para el software distribuido libremente.

Los objetivos de rendimiento incluyen "un paso adelante de VP9 y HEVC" en eficiencia para un pequeño aumento de la complejidad. El objetivo de eficiencia de NETVC es una mejora del 25 % con respecto a HEVC. La principal preocupación de complejidad es la decodificación del software, ya que el soporte de hardware tardará un tiempo en llegar a los usuarios. Sin embargo, para la WebRTC, el rendimiento de la codificación en tiempo real también es relevante, lo cual es la agenda de Cisco: Cisco es un fabricante de equipos de videoconferencia, y sus contribuciones a Thor tienen como objetivo "una compresión razonable con una complejidad moderada".

En lo que respecta a las características, AV1 está específicamente diseñado para aplicaciones en tiempo real (especialmente WebRTC) y resoluciones más altas (gama de colores más amplia, mayor velocidad de fotogramas, UHD) que los escenarios típicos de uso de la generación actual (H.264) de formatos de vídeo en los que se espera que se consiga el mayor aumento de la eficiencia. Por lo tanto, se prevé soportar el espacio de color de la Recomendación UIT-R BT.2020 y una precisión de hasta 12 bits por componente de color. AV1 está pensado principalmente para la codificación con pérdidas, aunque también se admite la compresión sin pérdidas.

Los contenedores basados en AV1 también han sido propuestos como un reemplazo de JPEG, similar a Better Portable Graphics y High Efficiency Image File Format que utilizan HEVC.

## Tecnología

AV1 es un formato tradicional de transformación de frecuencia basado en bloques que presenta nuevas técnicas. Basado en VP9 de Google, AV1 incorpora técnicas adicionales que principalmente dan a los codificadores más opciones de codificación para permitir una mejor adaptación a los diferentes tipos de entrada.

AOMedia publicó una implementación de referencia escrita en C y en lenguaje ensamblador (aomenc, aomdec) como software libre bajo los términos de la licencia FreeBSD de 2 cláusulas. El desarrollo se realiza públicamente y está abierto a contribuciones, independientemente de la membresía de la OMA.

El proceso de desarrollo fue tal que se añadieron herramientas de codificación a la base de códigos de referencia como experimentos, controlados por indicadores que los activan o desactivan en el momento de la construcción, para ser revisados por otros miembros del grupo, así como por equipos especializados que ayudaron y garantizaron la facilidad de uso del hardware y el cumplimiento de los derechos de propiedad intelectual (TAPAS). Cuando la característica obtuvo algún apoyo en la comunidad, el experimento se habilitó por defecto, y finalmente se eliminó su flag cuando se aprobaron todas las revisiones. Los nombres de los experimentos estaban en minúsculas en el script de configuración y en mayúsculas en los flags de compilación condicional.

Para soportar mejor y de forma más fiable los espacios HDR y de color, los metadatos correspondientes pueden integrarse ahora en el flujo de bits de video en lugar de ser señalizados en el contenedor.

## Calidad y eficiencia

Una primera comparación de principios de junio de 2016 encontró que AV1 estaba más o menos a la par con HEVC, al igual que una que usaba código de finales de enero de 2017.

En abril de 2017, utilizando las 8 características experimentales habilitadas en ese momento (de un total de 77), Bitmovin fue capaz de demostrar métricas objetivas favorables, así como resultados visuales, en comparación con HEVC en las películas animadas Sintel y Tears of Steel. Una comparación posterior realizada por Jan Ozer de la revista Streaming Media Magazine lo confirmó y concluyó que "AV1 es al menos tan bueno como HEVC ahora".

Ozer señaló que sus resultados y los de Bitmovin contradecían una comparación realizada por el Instituto Fraunhofer de Telecomunicaciones a finales de 2016 que había encontrado que AV1 era un 38.4 % menos eficiente que HEVC, con un rendimiento inferior incluso a H.264/AVC, y justificaba esta discrepancia por haber utilizado parámetros de codificación avalados por cada proveedor de codificadores, así como por tener más características en el codificador AV1 más reciente.

Las pruebas de Netflix mostraron que, basándose en las mediciones con PSNR y VMAF a 720p, AV1 era aproximadamente un 25 % más eficiente que VP9 (libvpx). Se sacaron conclusiones similares con respecto a la calidad a partir de una prueba llevada a cabo por investigadores de la Universidad Estatal de Moscú, en la que se encontró que VP9 requiere un 31 % y HEVC un 22 % más de velocidad binaria que AV1 para el mismo nivel de calidad. Los investigadores encontraron que el codificador AV1 usado estaba operando a una velocidad "2500-3500 veces menor que la de los competidores", aunque admitieron que aún no ha sido optimizado.

El rendimiento de la decodificación fue de aproximadamente la mitad de la velocidad de VP9 de acuerdo con las mediciones internas a partir de 2017.

## Perfiles y niveles

### Perfiles

AV1 define tres perfiles para los decodificadores que son: Main, High y Professional.. El perfil Main permite una profundidad de 8 o 10 bits por muestra con un muestreo de croma de 4:0:0 (escala de grises) y 4:2:0. El perfil High añade soporte para el muestreo de croma 4:4:4. El perfil Professional amplía las capacidades a la compatibilidad total con el submuestreo de croma 4:0:0, 4:2:0, 4:2:2 y 4:4:4 con profundidades de color de 8, 10 y 12 bits.

### Niveles

AV1 define niveles para los decodificadores con variables máximas para niveles que van de 2.0 a 6.3. Las resoluciones de ejemplo serían 426×240@30 fps para el nivel 2.0, 854×480@30 fps para el nivel 3.0, 1920×1080@30 fps para el nivel 4.0, 3840×2160@60 fps para el nivel 5.1, 3840×2160@120 fps para el nivel 5.2 y 5.3, y 7680×4320@120 fps para el nivel 6.2. El nivel 7 no ha sido definido todavía.

## Formatos de contenedor soportados

### Estandarizado

ISO Base Media File Format: La especificación de contenedor ISOBMFF de AOMedia fue la primera en ser finalizada y la primera en ser adoptada. Este es el formato utilizado por YouTube.

### Normas con promesa de finalización indefinida

Matroska: La versión 1 de la especificación de contenedores de Matroska se publicó en septiembre de 2018. Sin embargo, se puede decir que los cambios de ruptura continuaron en octubre, y una nueva versión, o finalización, aún no ha sido anunciada desde diciembre.

### Normas no terminadas

MPEG Transport Stream:

### No estandarizado

WebM: Como cuestión de formalidad, AV1 no ha sido aprobada en el subconjunto de Matroska conocido como WebM a finales de 2019.

On2 IVF: Este formato fue heredado de la primera versión pública de VP8, donde servía como un simple contenedor de desarrollo. rav1e también soporta este formato.

WebM pre-estándar: Libaom ofreció soporte inicial para WebM, antes de que se especificara la contenedorización de Matroska, pero se ha cambiado para ajustarse a ella.

## Adopción

### Proveedores de contenido

YouTube ha comenzado a desplegar AV1, comenzando con su AV1 Beta Launch Playlist. Según la descripción, los videos están (para empezar) codificados a una alta tasa de bits para comprobar el rendimiento de la decodificación, y YouTube tiene "objetivos ambiciosos" para el despliegue de AV1.

Los videos de Vimeo en el canal "Staff picks" están disponibles en AV1. Vimeo está usando y contribuyendo al codificador Rav1e de Mozilla, y espera, con las mejoras del codificador, proporcionar eventualmente soporte AV1 para todos los vídeos subidos a Vimeo, así como la oferta "Live" de la compañía.

Netflix "espera ser uno de los primeros en adoptar la AV1".

Tras los resultados muy positivos de sus propias pruebas, Facebook dijo que se desplegará gradualmente AV1 tan pronto como surja el soporte para navegadores, comenzando con sus videos más populares.

Twitch planea desplegar AV1 para sus contenidos más populares en 2022 o 2023, con soporte universal proyectado para 2024 o 2025.

## Implementación de software

* Libaom es la implementación de referencia. Incluye un codificador (aomenc) y un decodificador (aomdec). Al igual que el códec de investigación anterior, tiene la ventaja de que se hace para demostrar justificadamente el uso eficiente de cada característica, pero a costa de la velocidad de codificación en general. En el momento de la congelación de código, el codificador se había vuelto problemáticamente lento, pero las optimizaciones de velocidad con escaso impacto en la eficiencia han continuado realizándose también después de eso.
* rav1e es un encoder escrito en Rust y ensamblador. rav1e toma el enfoque de desarrollo opuesto al de aomenc: comienza como el encoder de conformidad más simple (por lo tanto más rápido), y luego mejora la eficiencia con el tiempo mientras mantiene la rapidez.
* SVT-AV1 Scalable Video Technology para AV1 incluye un codificador y decodificador de código abierto lanzado por primera vez por Intel en febrero de 2019 que está diseñado especialmente para su uso en servidores de centros de datos basados en procesadores Intel Xeon. Netflix colabora con Intel en el SVT-AV1.
* dav1d es un decodificador escrito en C99 y ensamblador enfocado en la velocidad y la portabilidad. La primera versión oficial (0.1) se publicó en diciembre de 2018. La versión 0.2 fue lanzada en marzo de 2019, con la posibilidad de que los usuarios "utilicen el decodificador de forma segura en todas las plataformas, con un excelente rendimiento", según los desarrolladores. La versión 0.3 fue anunciada en mayo de 2019 con más optimizaciones que demuestran un rendimiento de 2 a 5 veces más rápido que aomdec. La versión 0.5 fue lanzada en octubre de 2019. Firefox 67 cambió de Libaom a dav1d como decodificador por defecto en mayo de 2019.
* Cisco AV1 es un codificador en tiempo real desarrollado por Cisco para sus productos de teleconferencia Webex. El codificador está optimizado para la latencia y la condición de tener una "huella de CPU utilizable", como en el caso de un "commodity laptop". Cisco subrayó que en su punto de funcionamiento (alta velocidad, baja latencia) el gran conjunto de herramientas de AV1 no excluye una baja complejidad de codificación. Más bien, la disponibilidad de herramientas para el contenido de video y la escalabilidad en todos los perfiles les permitió encontrar buenas compensaciones entre compresión y velocidad, mejor incluso que con HEVC. En comparación con su codificador H.264 previamente desplegado, un área particular de mejora fue en la compartición de pantallas de alta resolución.
* libgav1 es un decodificador escrito en C++11 publicado por Google.

### Soporte de software

* Firefox (desde la versión 67.0, mayo de 2019; habilitado de forma predeterminada en todas las plataformas de escritorio - Windows, OSX y Linux para sistemas de 32 y 64 bits)
* Google Chrome (desde la versión 70, octubre de 2018)
* Opera (desde la versión 57, 28 de noviembre de 2018)
* Microsoft Edge (desde Windows 10 de octubre de 2018 Update (1809) con el complemento beta de AV1 Video Extension)
* VLC media player (desde la versión 3.0)
* GStreamer (desde la versión 1.14)
* FFmpeg (desde la versión 4.0)
* mpv (desde la versión 0.29.0)
* Xine-lib (desde el 1.2.10)
* MKVToolNix (adopción de las especificaciones finales de av1-in-mkv desde la versión 28)
* MediaInfo (desde la versión 18.03)
* Bitmovin Encoding (desde la versión 1.50.0, julio de 2018)
* Elecard StreamEye Studio (herramientas para el análisis de la calidad del vídeo)

## AV1 Image File Format (AVIF)

AV1 Image File Format (AVIF) es una especificación para almacenar imágenes o secuencias de imágenes comprimidas con AV1 en el formato de archivo HEIF. La versión 1.0.0 de la especificación se finalizó en febrero de 2019.

AVIF soporta características como:

* High dynamic range (HDR).
* Profundidad de color de 8, 10 y 12 bits.
* Compresión sin pérdidas y compresión con pérdidas.
* Monocromo (alfa/profundidad) o multicomponentes.
* Cualquier espacio de color: gama de color amplia, ISO/IEC CICP y perfiles ICC.
* Submuestreo de crominancia 4:2:0, 4:2:2, 4:4:4.
* Grano de película.

### Soporte de AVIF

El 14 de diciembre de 2018 Netflix publicó las primeras imágenes de muestra .avif, y se añadió soporte en VLC. Microsoft también anunció su compatibilidad con el lanzamiento de la vista previa de Windows 10 "19h1", incluyendo Explorador de archivos, Paint y múltiples APIs, junto con imágenes de muestra. Mozilla y Google también están trabajando en el soporte para el nuevo formato de imagen en Firefox y Chrome. El 18 de septiembre de 2019, paint.net añadió soporte para la apertura de archivos AVIF, sin embargo, todavía no se soporta el guardado.

