libvpx es una biblioteca de códecs de video de software gratuito de Google y Alliance for Open Media (AOMedia). Sirve como implementación de software de referencia para los formatos de codificación de video VP8 y VP9 , y para AV1 una bifurcación especial llamada libaom que fue despojada de compatibilidad con versiones anteriores.
Captura de pantalla | |
Autor (es) original (es) | On2 Technologies / Google |
---|---|
Desarrollador (es) | Alliance for Open Media |
Versión inicial | 19 de mayo de 2010 [1] [2] |
Lanzamiento estable | 1.10.0 [3] / 24 de marzo de 2021 |
Repositorio | |
Escrito en | C , montaje |
Sistema operativo | Tipo Unix (incluidos Linux , FreeBSD y Mac OS X ), Windows |
Tipo | Codificador y decodificador de video |
Licencia | Nueva licencia BSD |
Sitio web | www |
Como software libre, también se publica en código fuente según los términos de la licencia BSD revisada . Se envía con las herramientas de línea de comandos vpxenc
/ aomenc
y vpxdec
/ aomdec
que se basan en su funcionalidad.
Historia
libvpx se origina en la empresa de códecs de video On2 Technologies que vendió su primer códec de software a mediados de los 90.
libvpx fue lanzado como software gratuito por Google el 19 de mayo de 2010 después de la adquisición de On2 Technologies por una estimación de más de 120 millones de dólares estadounidenses. [2] [4]
En junio de 2010, Google modificó la licencia de software del códec VP8 a la licencia BSD de 3 cláusulas [5] [6] [7] después de algunas disputas sobre si la licencia original era realmente de código abierto . [8] [9] [10]
Google fue criticado por descargar código desordenado con mala documentación para el lanzamiento inicial de libvpx y desarrollarlo a puerta cerrada sin involucrar a la comunidad en el proceso. [11] El proceso de desarrollo se abrió después del lanzamiento de VP9.
El 17 de junio de 2013 se agregó soporte preliminar para VP9 a libvpx. Se presentó oficialmente con el lanzamiento de la versión 1.3 el 2 de diciembre, que también admite la compresión sin pérdidas . [12]
En abril de 2015, Google lanzó una actualización significativa a su biblioteca libvpx, con la versión 1.4.0 agregando soporte para codificar VP9 con profundidad de bits de 10 y 12 bits , submuestreo de croma 4: 2: 2 y 4: 4: 4 (VP9 perfiles 1, 2 y 3) y decodificación / codificación multiproceso VP9. [13]
Las versiones 1.5 (noviembre de 2015, 1.6 (julio de 2016), 1.7 [14] (enero de 2018) y 1.8 [15] (febrero de 2019) proporcionaron aceleraciones significativas, tanto para la codificación como para la decodificación.
Características
libvpx implementa modos de codificación de una sola pasada y dos pasadas , con configuraciones de destino de calidad o tasa de bits.
libvpx ofrece un códec asimétrico (la codificación tarda mucho más que la decodificación) y opciones para configurar los gastos de codificación independientemente de la complejidad de la decodificación. Se puede configurar una búsqueda anticipada de hasta 25 fotogramas, lo que mejora la eficiencia de la compresión, pero introduce latencia y, por lo tanto, perjudica el rendimiento en tiempo real.
libvpx incluye un modo en el que se utilizarán los máximos recursos de CPU posibles mientras se mantiene la velocidad de codificación casi exactamente equivalente a la velocidad de reproducción (en tiempo real), manteniendo la calidad lo más alta posible sin retrasos.
libvpx admite Rec. 601 , Rec. 709 , Rec. 2020 , SMPTE-170 , SMPTE-240 y espacios de color sRGB .
Actuación
A altas resoluciones (p. Ej., UHD ), VP9 codificado por libvpx para aplicaciones VOD proporciona una mejora significativa sobre H.264 codificado por x264 . [16] HEVC codificado por x265 puede lograr una calidad aún mejor, [16] pero la naturaleza libre de regalías de VP9 lo convierte en una opción atractiva para entregar video de alta resolución en plataformas compatibles.
El rendimiento de la decodificación es relativamente lento, en parte para mantener la base del código más fácil de mantener. [17] En comparación con la versión inicial de libvpx, ffvp8 del proyecto FFmpeg mejoró el rendimiento en un 22 a más del 66%. [11] En 2016, los decodificadores VP9 alternativos aún lograban una decodificación entre un 25% y un 50% más rápida. [18] [19]
Tecnología
libvpx está escrito en C y lenguaje ensamblador . No tiene cobertura SIMD completa a partir de 2015. [17]
Uso
libvpx es utilizado por los principales servicios de video OTT, incluidos YouTube , Netflix , Amazon , JW Player , Brightcove y Telestream , entre los cuales se encuentran las mayores fuentes de tráfico de Internet, y Netflix solo representa casi un tercio de todo el tráfico de Internet en los Estados Unidos a partir de 2017. [20] [21]
Existen alternativas para decodificar VP8 y VP9, tanto de código comercial como cerrado como abierto. Para la codificación, solo existen alternativas comerciales y algún software experimental sin terminar para VP8, incluido xvp8 a partir de 2016.
Referencias
- ^ "CHANGELOG - webm / libvpx - Git en Google" . chromium.googlesource.com . Google. Archivado desde el original el 26 de octubre de 2016 . Consultado el 14 de marzo de 2019 .
- ^ a b "Presentamos WebM, un proyecto de medios web abiertos" . blog.webmproject.org . 19 de mayo de 2010. Archivado desde el original el 21 de marzo de 2019 . Consultado el 14 de marzo de 2019 .
- ^ "Etiqueta v1.10.0" .
- ^ "Google cierra la adquisición de On2 Technologies" . investor.google.com . Archivado desde el original el 5 de junio de 2010 . Consultado el 24 de julio de 2017 .
- ^ "Cambios en la licencia de código abierto de WebM" . Archivado desde el original el 4 de octubre de 2010 . Consultado el 4 de junio de 2010 .
- ^ "Licencia de software" . Archivado desde el original el 11 de junio de 2010 . Consultado el 4 de junio de 2010 .
- ^ Koleszar, John (4 de junio de 2010). "LICENCIA: actualizar con el texto más reciente" . Repositorio de WebM VCS . Archivado desde el original el 29 de junio de 2012 . Consultado el 1 de octubre de 2020 .
- ^ Kerner, Sean Michael (25 de mayo de 2010), ¿VP8 es de código abierto? , InternetNews, archivado desde el original el 28 de mayo de 2010 , consultado el 11 de agosto de 2016
- ^ Metz, Cade (24 de mayo de 2010), códec abierto de Google 'no abierto', dice el hombre de OSI , The Register, archivado desde el original el 7 de julio de 2017 , obtenido el 10 de agosto de 2017
- ^ Phipps, Simon (24 de mayo de 2010), WebM: ¿Falta el código abierto de Assurances? , ComputerworldUK[ enlace muerto permanente ]
- ^ a b Fiona Glaser, 23 de julio de 2010 : Anuncio del decodificador VP8 más rápido del mundo: ffvp8
- ↑ Michael Larabel (Phoronix), 28 de noviembre de 2013: Libvpx 1.3.0 "Forest" admite VP9. Nuevas mejoras
- ^ Michael Larabel (3 de abril de 2015). "libvpx 1.4.0 ofrece una codificación / decodificación VP9 más rápida" . Phoronix . Archivado desde el original el 7 de abril de 2015 . Consultado el 3 de abril de 2015 .
- ^ "Copia archivada" . Archivado desde el original el 29 de junio de 2020 . Consultado el 29 de junio de 2020 .CS1 maint: copia archivada como título ( enlace )
- ^ "Copia archivada" . Archivado desde el original el 30 de junio de 2020 . Consultado el 29 de junio de 2020 .CS1 maint: copia archivada como título ( enlace )
- ^ a b Cock, Jan De; Mavlankar, Aditya; Moorthy, Anush; Aaron, Anne (27 de septiembre de 2016). "Una comparación de códecs de video a gran escala de x264, x265 y libvpx para aplicaciones prácticas de VOD" . 9971 . Sociedad Internacional de Óptica y Fotónica: 997116. doi : 10.1117 / 12.2238495 . Archivado desde el original el 22 de diciembre de 2017 . Consultado el 20 de diciembre de 2017 . Cite journal requiere
|journal=
( ayuda ) - ^ a b Ronald Bultje (FFmpeg): Rendimiento de codificación / decodificación de VP9 frente a H.264 / HEVC Archivado el 7 de junio de 2016 en Wayback Machine , presentación de los VideoLAN Dev Days 2015 en París, Francia
- ^ Jan Ozer, junio de 2016: VP9 finalmente alcanza la mayoría de edad, pero ¿es adecuado para todos? Archivado el 11 de agosto de 2016 en Wayback Machine.
- ^ "El decodificador VP9 más rápido del mundo: ffvp9 - Ronald S. Bultje" . blogs.gnome.org . Archivado desde el original el 26 de octubre de 2016 . Consultado el 11 de agosto de 2016 .
- ^ Jan Ozer (24 de mayo de 2016): Netflix analiza los esfuerzos de desarrollo relacionados con VP9 Archivado el 1 de octubre de 2020 en Wayback Machine
- ^ Spangler, Todd (22 de junio de 2016). "Netflix consume menos ancho de banda, a medida que aumenta la transmisión de video de Amazon" . Variedad . Archivado desde el original el 22 de diciembre de 2017 . Consultado el 20 de diciembre de 2017 .
enlaces externos
- Página web oficial