Códec AV1: todo lo que debes saber sobre el códec de vídeo del futuro

Rubén Castro, 23 julio 2020

El códec AV1 o AOmedia Video 1 está popularizándose cada vez más. A principios de año, Netflix comenzó a utilizarlo en su plataforma de streaming en algunos dispositivos Android. Y más recientemente, Google ha llevado el códec AV1 a su aplicación de chat Duo y a YouTube. ¿Pero qué es el códec AV1? ¿Por qué es importante? Y sobre todo ¿por qué tantas compañías se han decidido a usar el códec AV1 en vez del H.265 HEVC?

El AV1 es un 30% más eficiente que el H.265

La tecnología AV1 tiene la ventaja de ofrecer una compresión 30% mejor que el H.265. Eso significa que, a la misma calidad de imagen, el códec AV1 utiliza un 30% menos de datos que el códec H.265.

En un fichero de vídeo podemos diferenciar dos métricas importantes: el bitrate (relacionado con el tamaño) y la calidad.

El “bitrate” es el número de 1 y 0 que son utilizados, por segundo, por el códec de vídeo. Como punto de partida, una regla empírica, cuanto más alta sea la tasa de bits, mejor será la calidad.

También cuanto más alta es la tasa de bits o bitrate, más grandes son los archivos codificados.

Cómo funcionan los códecs de vídeo con pérdida

Los códecs de vídeo como el AV1 o los H.264 y H.265 usan compresión con pérdida. Eso significa que la versión codificada no es la misma (píxel por píxel) que la original. El truco es codificar el vídeo de tal manera que las pérdidas sean imperceptibles para el ojo humano. Hay muchas técnicas para hacer esto y es un tema complejo. Tres de las técnicas principales son usar cambios de cuadro incrementales, cuantificación y vectores de movimiento.

  • Cambios de cuadro incrementales: en lugar de enviar un fotograma completo de vídeo 30 veces por segundo (para un vídeo de 30fps), por qué no enviar los cambios de un fotograma al siguiente. Si la escena es de dos personas lanzando una pelota, entonces los cambios serán la pelota y la gente. El resto de la escena permanecerá relativamente estática. El códec guardará en el fichero solo la diferencia entre una imagen y la otra, lo que representa un conjunto de datos mucho más pequeño que el total. Cada vez que la escena cambia, o a intervalos regulares forzados, se debe incluir un fotograma completo (un fotograma clave) y luego se rastrean las diferencias con respecto a ese último fotograma completo.
  • Cuantificación: cuando haces una foto en tu smartphone, lo más probable es que se guarde en formato JPEG (un archivo .jpg). JPEG es un formato de compresión de imágenes con pérdida. Funciona mediante una técnica llamada cuantificación. La idea básica es esta, un trozo de una foto (por ejemplo, 8×8 píxeles) puede ser representado por una secuencia fija de patrones sombreados (uno para cada canal de color) superpuestos. Estos patrones se generan usando una Transformación Coseno Discreta (TDC). Usando 64 de estos patrones se puede representar un bloque de 8×8 de manera precisa, sin embargo, resulta que la mayoría de las veces solo el 20% de los patrones son necesarios para obtener una imitación muy parecida del bloque original. Esto significa que en lugar de almacenar 64 números (uno por píxel), la imagen con compresión con pérdida puede que solo necesite 12 números. Lo que es un gran ahorro. Las transformaciones necesarias para generarlos, la ponderación dada a cada patrón, la cantidad de redondeo que se hace, son variables y alteran la calidad y el tamaño de la imagen. JPEG tiene un conjunto de reglas, H.264 otro conjunto, AV1 otro conjunto, y así sucesivamente. Pero la idea básica es la misma. El resultado es que cada fotograma del vídeo es, de hecho, una representación con pérdidas del fotograma original. Comprimido y más pequeño que el original.
  • Seguimiento del movimiento: imagina que tenemos una escena en la que vemos un cruce de una calle que es atravesada por coches y camiones. Si no hay muchos cambios en la iluminación, muchos de esos vehículos se verán prácticamente igual mientras atraviesan el cruce, así que, en vez de guardar todos los datos de nuevo, se puede reaprovechar y decirle que los mismos píxeles ahora se encuentran un poco desplazados. Los vectores de movimiento pueden ser complejos y encontrar esos vectores y trazar las pistas puede llevar mucho tiempo durante la codificación, pero tiene la ventaja de que la decodificación es muy sencilla.

Qué buscan los mejores códecs: la batalla de los bits

Un buen códec de vídeo pretende conseguir tener una imagen de alta calidad con una tasa de bits lo más baja posible, algo bastante complicado. Además, cada vez utilizamos pantallas con más resolución que necesitan más datos para mostrar cada imagen.

La tasa de bits que “necesitas” para una buena calidad depende del códec. Pero si usas una tasa de bits baja, la calidad de la imagen puede “desintegrarse” rápidamente.

Si un DVD tiene aproximadamente 4,7 GB y se quiere almacenar una película de 2 horas (120 minutos o 7200 segundos), entonces la máxima tasa de bits posible sería de 5200 kilobits por segundo o 5,2Mbps.

En comparación, un video de 4K grabado con el móvil en H.264 va a 42Mbps. Como podemos ver, el vídeo a 4K necesita 8 veces más información, sin embargo, representa 25 veces más píxeles por lo que podemos estimar que el H.264 ofrece una compresión 3 veces mejor que el MPEG-2 Video. El mismo archivo codificado en H.265 o AV1 usaría alrededor de 20Mbps, lo que significa que tanto el códec H.265 como el AV1 ofrecen el doble de compresión que el H.264.

Estas son estimaciones aproximadas, porque he asumido que utilizan un bitrate constante, cosa que no es así. El bitrate es variable y cambia en función del vídeo. Por ejemplo, en escenas con mucho movimiento hay más píxeles “nuevos” y el bitrate debe ser más alto para no perder calidad.

AV1 es de código abierto y su uso es gratuito

Además de tener un excelente rendimiento, el códec AV1 es de código abierto y está libre de regalías, a diferencia de muchas de las tecnologías más populares del mundo del vídeo como el MPEG-2 (utilizado en DVD, televisión por satélite y TDT), el H.264/AVC (utilizado en discos Blu-Ray y muchos servicios de streaming) o el H.265/HEVC.

Todos esos estándares están plagados de derechos de autor y patentes que a veces requieren un pago y otras veces no. Por ejemplo, Panasonic tiene más de 1.000 patentes relacionadas con el H.264, y Samsung tiene más de 4.000 patentes relacionadas con el H.265…

Por si todo eso fuese poco, el AV1 está respaldado por las Google, Microsoft, Netflix, Amazon, Mozilla, Cisco, Intel, Facebook, Adobe, Apple, VideoLAN y más, por lo que si alguien quiere demandarles se tendrán que enfrentar con un músculo financiero impresionante. Sin embargo, eso no ha detenido a algunos trolls de patentes, como Sisvel, que ya ha hecho un par de amagos. Hasta la fecha, nada ha llegado a los tribunales, pero los trolls de patentes no se rinden fácilmente.

Como ves, el códec AV1 se viene perfilando como el códec de vídeo del futuro.

Sin embargo, la transición ha sido lenta porque el códec no está del todo listo para producción. Aunque navegadores como Chrome y Firefox ya lo soportan, e incluso es posible instalar el códec en Windows 10 desde la tienda de Microsoft, está muy lejos de ser el estándar.

Problemas del AV1

Como ya hemos visto, el AV1 es un códec libre, gratuito y muy eficiente, sin embargo, tiene un problema: la codificación de los archivos AV1 es lenta.

Casi 50 minutos para codificar un vídeo de 15 segundos…

Voy a hacer un ejemplo editando un vídeo de 15 segundos de duración:

  • Usando el códec H.264, mi procesador necesita 60 segundos para codificar el vídeo. Si utilizo la aceleración por hardware de la tarjeta, tarda solo 20 segundos.
  • Usando el códec H.265, mi procesador tarda 5 minutos, mientras que la gráfica tarda 20 segundos.
  • Usando el códec AV1, mi procesador tarda entre 10 minutos hasta 1 hora en codificarlo dependiendo de los ajustes de calidad… 10 minutos con los ajustes en calidad mínima y 50 minutos con en encoder SVT-AV1 que usa Netflix. Además, mi tarjeta no tiene hardware para acelerar la codificación de AV1, pero sí es compatible con H.264 y H.265.
Imagina que quiero editar un vídeo de una hora… En H.265 tardaría unos 80 minutos con aceleración por hardware, pero en AV1 tardaría 40 horas…

Por eso, el uso del AV1 puede ser muy rentable para las grandes compañías de streaming como Netflix y YouTube que pueden ahorrar grandes cantidades dinero en ancho de banda, sin embargo, para los usuarios domésticos no merece la pena, al menos a día de hoy.

Dispositivos compatibles

No todos los Android TV son compatibles con el AV1. Según han comentado en XDA Developers, los primeros equipos capaces de trabajar con AV1 serán aquellos modelos con chips Broadcom BCM72190/72180 y Realtek RTD1311/RTD1319.

Posteriormente se irán incorporando más modelos y es de esperar que en breve todos los televisores y Android TV de nueva generación sean capaces de trabajar con este nuevo códec apoyado por Apple, Facebook, Netflix, Microsoft, Netflix, LG o Samsung, estas dos últimas con teles que soportarán directamente AV1 este 2020.

Un poco de historia y evolución del códec AV1

El 1 de septiembre de 2015 se fundó una nueva organización con un objetivo muy claro: colaborar para evitar más batallas de patentes y licencias, donde al mismo tiempo se fijó un segundo punto a alcanzar, que no sería otro que conseguir métodos de compresión de datos de vídeo mejores para la industria.

Dicha organización tomó por nombre Alliance for Open Media (Alianza para Medios de comunicación Abiertos), comúnmente conocida como AOMedia y donde sus fundadores fueron; Amazon, Cisco, Google, Intel, Microsoft, Netflix y Mozilla, tras los cuales les siguieron AMD, ARM y NVIDIA.

De esa unión se creó el códec AV1. Según parece, AV1 fue creado con la base de la especificación de VP9 de Google, pero la ayuda y herramientas de todos los socios impulsaron su rendimiento hasta cotas no vistas hasta ahora, donde se estima que es un 34% más eficiente en la compresión de datos que VP9 y hasta un 46% que X264.

AV1 tiene la definición de estándar abierto ITU-T como software libre bajo los términos de licencia FreeBSD, por lo que puede ser usado sin ningún problema por cualquiera, mientras no demande por patentes a alguna de las empresas involucradas.

Chrome y Firefox ya integran soporte desde hace meses y con ello están ganando una cuota de tráfico mucho más alta que en códec anteriores, YouTube lo lleva implementando desde hace algún tiempo con mismos resultados y ahora Netflix ha dado el pistoletazo de salida a su implementación.

Además, Intel y Netflix avanzan hacia una versión del códec más específica e igualmente compatible llamada SVT-AV1, la cual promete codificar hasta 4K a 60 Hz en tiempo real y en 10 bits, pero solo en algunas CPU e iGPU de Intel (quizás Gen 11 y está garantizado el Gen 12 en 2021).

Parámetros de configuración del AV1

Para soportar HDR y un mejor color, los metadatos pueden integrarse en el flujo de bits de vídeo en vez de ser señalizados en el contenedor, lo que resultó más adelante en tres perfiles distintos para distinguir la calidad del códec y su rendimiento: Main, High y Professional.

El perfil Main permite una profundidad de color 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.

En cuanto a sus niveles, AOMedia estipula desde 2.0 hasta 6.3, siendo el mayor de ellos por el momento el 6.2 con una resolución de 7680×4320 a 120 FPS, por lo que está muy por delante de sus rivales en este apartado.

El futuro de este códec pinta de una manera brillante, poco a poco se está extendiendo y mejorando, donde actualmente es el que mejor rinde en cuanto a calidad por KB generado, así que no es de extrañar que un gigante como Netflix o la misma YouTube estén utilizándolo actualmente.

Ver más
WikiVersus puede usar cookies para recopilar estadísticas, optimizar la funcionalidad del sitio y ofrecerte publicidad basada en tus intereses. Si sigues navegando estarás aceptando su uso. Más información de nuestras políticas.