| VP8 | ||
|---|---|---|
|
| ||
| Desarrollador | ||
| Información general | ||
| Tipo de MIME | video/VP8 | |
| Lanzamiento inicial | 13 de septiembre de 2008 | |
| Tipo de formato | Codec de video | |
| Contenido por | WebM, Matroska | |
| Extendido de | VP7 | |
| Extendido a | VP9, AV1 | |
| Estándar(es) | RFC6386 | |
| Formato abierto |
| |
VP8 es un códec de video de formato abierto diseñado por On2 Technologies como sucesor de VP7. Fue anunciado el 13 de septiembre de 2008.
Tras su adquisición por parte de Google en 2010, VP8 se liberó como software libre y pasó a ser el códec de video del contenedor WebM. Su formato de datos y su proceso de decodificación se documentaron en 2011 en el RFC 6386 del IETF, y desde 2016 su implementación es obligatoria en los navegadores compatibles con WebRTC. Aunque ha sido sucedido por VP9 (2013) y por AV1 (2018), VP8 sigue siendo de uso habitual en videoconferencia por su bajo coste computacional y su amplia compatibilidad.
El 19 de mayo de 2010, Google, la cual adquirió On2 Technologies en 2009, liberó el códec VP8 como código abierto (bajo una licencia permisiva similar a la licencia BSD), en el marco de la conferencia Google I/O en mayo del 2010. Esto causó que VP8 fuese el segundo producto de On2 cuyo código fuente esté disponible a la comunidad del software libre, siendo el primero el códec VP3, liberado bajo la licencia GNU Lesser General Public License en 2002 a la Fundación Xiph.Org, del cual posteriormente derivó el códec de video Theora. La Free Software Foundation fue la que más instó a Google para que llevara a cabo esta liberación. Semanas antes, el 12 de marzo de 2010, esta fundación envió una carta abierta a Google solicitándole el reemplazo gradual del reproductor Adobe Flash Player y del códec H.264 en YouTube, con una mezcla de HTML5 y un VP8 de código abierto.
Junto con el lanzamiento del código fuente de VP8 también se presentó el denominado proyecto WebM, que incorporó contribuciones y apoyo oficial de empresas como «Mozilla, Opera, Google, además de otros 40 editores y fabricantes de software y hardware» en un esfuerzo combinado para utilizar VP8 como el formato multimedia estándar en el lenguaje web HTML5. El navegador Internet Explorer 9 y 10 es capaz de soportar el códec VP8 si está instalado en el equipo.
En noviembre de 2011 el IETF publicó el RFC 6386, VP8 Data Format and Decoding Guide, un documento informativo que describe el formato de datos y el proceso de decodificación de VP8 tomando como referencia el código fuente del descodificador. En marzo de 2016 se publicaron además el RFC 7741, que define el formato de carga útil de VP8 para RTP, y el RFC 7742, que obliga a los navegadores compatibles con WebRTC a implementar tanto VP8 como H.264 en su perfil Constrained Baseline.
Google publicó VP8 bajo una licencia de tipo BSD acompañada de una concesión de patentes irrevocable, aunque el códec fue objeto de disputas sobre patentes durante sus primeros años. El 7 de marzo de 2013 Google y MPEG LA anunciaron un acuerdo por el que Google obtuvo licencias sobre las patentes que MPEG LA y once titulares consideraban esenciales para VP8, junto con el derecho a sublicenciarlas; con ello MPEG LA renunció a crear un consorcio de patentes en torno al códec. Por su parte, Nokia alegó en 2013 que VP8 infringía patentes de su propiedad, pero en agosto de ese año un tribunal alemán desestimó la demanda al concluir que el códec no infringía la patente invocada.
VP8 es un códec de codificación por transformada con compensación de movimiento basado en bloques. La imagen se divide en macrobloques de 16×16 píxeles que a su vez se subdividen en bloques de 4×4, sobre los que se aplica una transformada de coseno discreta de 4×4 y una transformada de Walsh-Hadamard para los coeficientes de continua. Los coeficientes se comprimen con un codificador aritmético binario y el resultado se suaviza mediante un filtro de desbloqueo integrado en el bucle de codificación.
A diferencia de otros códecs de su generación, VP8 no utiliza fotogramas B, sino que mantiene tres fotogramas de referencia: el último fotograma codificado, un golden frame de referencia a largo plazo y un fotograma de referencia alternativo (altref), que puede no mostrarse y que permite obtener beneficios similares a los de la predicción bidireccional. El formato trabaja con muestreo de croma 4:2:0 y 8 bits de profundidad por componente.
La implementación de referencia es la biblioteca libre libvpx, desarrollada por el proyecto WebM, que incluye codificador y decodificador y está disponible para Windows, macOS, Linux, Android e iOS.
VP8 se emplea principalmente dentro del contenedor WebM para video en la web y, sobre todo, en comunicaciones en tiempo real: al ser uno de los dos códecs de implementación obligatoria en WebRTC, está disponible en la práctica en todos los navegadores modernos y es ampliamente utilizado por los servicios de videoconferencia y videollamada basados en esa tecnología.
Para la distribución de video bajo demanda ha sido desplazado por sus sucesores: VP9, presentado por Google en 2013, y AV1, publicado en 2018 por la Alliance for Open Media, que ofrecen una eficiencia de compresión sensiblemente mayor. Aun así, VP8 conserva presencia gracias a su menor exigencia de cómputo y a su compatibilidad con equipos y navegadores antiguos.