Hace unos días, mientras preparaba la guía sobre Handbrake, me topé con una noticia que despertó mi curiosidad. Resulta que Netflix, en su aplicación móvil para Android, va a empezar a ofrecer su contenido utilizando un nuevo códec, AV1, porque, según dicen, permite ahorrar una enorme cantidad de datos en conexiones móviles manteniendo el mismo tamaño de archivo.
Así que, como yo soy un aventurero de estas cosas, decidí lanzarme y poner esto a prueba. ¿Realmente será el códec del futuro? ¿Ha acertado Netflix? ¿Se puede comprimir ya en este códec y compensa realmente pasarse a él?
Así funciona Netflix
Netflix, por si no lo sabías, no tiene sus propios servidores, sino que aloja todo el contenido audiovisual en servidores que alquila a Amazon. Sí, no sólo puedes comprar pienso ecológico para tu gato en Amazon sino que puedes montar con ellos un servicio de vídeo bajo demanda valorado en miles de millones de dólares.
Esto lo hace a través de Amazon Web Services y su modelo de negocio es muy sencillo: pagas por lo que usas. Usas más almacenamiento, pagas más, que necesitas más ancho de banda, pagas más, usas más capacidad de cómputo de sus procesadores, pagas más. Y así con todo.
Ya hubo algunos casos sonados, como el de Dropbox, que decidió abandonar Amazon Web Services y montar sus propios servidores porque la factura mensual era demasiado cara, pero hay otros, como Netflix o Apple, que apuestan por este servicio por su gran escalabilidad. Y debido a esto, Netflix desde siempre se las ha ingeniado para dar cabida y optimizar un material que no para de crecer cada día.
Imagino que la gran piedra filosofal de Netflix es “necesitamos aumentar al máximo la calidad de imagen y sonido ahorrando al máximo en almacenamiento y ancho de banda para maximizar beneficios”. Y aquí es donde ha entrado AV1.
El poder de av1
AV1 es un códec de reciente creación, adaptado a los nuevos tiempos, libre, gratuito y apoyado por los grandes de internet: Google, Netflix, Apple, Mozilla, etcétera. Esto son palabras mayores y según dicen es el futuro del vídeo y la alternativa que va a desbancar al todopoderoso h264 y, más recientemente, h265.
Pero vamos a probar si realmente funciona este códec o no es más que un bluf. Para ello, he realizado pruebas de compresión para analizar tiempos y calidades comparándolo con h264 y h265.
La gran pregunta es ¿cómo diablos podemos codificar en AV1? Bien, aquí tenemos un hándicap, y es que AV1 es tan nuevo que aún muchos programas transcodificadores no le dan soporte. ¿Todos? No. FFmpeg ya lo permite y para ello incluye un encoder que se llama libaom-av1, que comprime en torno a un 30% más que h265 con la misma calidad. El problema es que es tan diabólicamente lento que es inviable usarlo para esta tarea.
Libaom-av1 no es el único encoder. Hay otros, como rav1e, creado por Mozilla, o SVT-AV1, el encoder desarrollado por Netflix. Pero estos dos encoders mencionados no tienen versiones compiladas o si las tienes no están demasiado optimizadas. Al final, buscando una implementación de este códec encontré un script que hace varias codificaciones para acelerar lo máximo posible el proceso de conversión.
Este script se llama Rav1e GUI y lo que hace es pasar el vídeo a un formato sin compresión alguna para luego comprimir en AV1. Este es el sistema que mejor me ha funcionado.
Probé a comprimir un vídeo de 6 minutos a 1000 kilobits por segundo, usando Handbrake para h264 y h265 con la GPU para obtener mejor velocidad. Por su parte, AV1 aún no permite usar la GPU, al menos con los encoders que hay ahora disponibles.
Tras comprimir el vídeo llegué a una conclusión clarísima: AV1 está aún muy, pero que muy lejos de ser aún un códec para un uso común. Y es que el tiempo que tarda ahora mismo AV1 en sus encoders es una absoluta barbaridad. Exceptuando el encoder de FFmpeg, que me arrojaba la friolera de un fotograma codificado cada 5 minutos, con Rav1e GUI conseguí un máximo de 0,4 fotogramas por segundo. Una auténtica salvajada si lo comparamos con el minuto y medio que tardó con h.264 y h.265 el vídeo de 6 minutos. Con AV1 el proceso tardó ¡21 horas!
Sí, tenemos una mejor calidad que en h264 y quizá ahora mismo, teniendo en cuenta que realicé una codificación en crudo usando esta aplicación tan peregrina, anda más o menos a la par que h265. Pero aún le queda mucho por mejorar.
1 comentarios en "AV1, ¿el códec que va a revolucionar el vídeo?"