WebM es el nuevo formato de archivo de vídeo abierto que Google ha creado para el vídeo HTML5. Es una combinación del códec de vídeo VP8 y del códec de audio Ogg Vorbis, envueltos en un contenedor Matroska. Es gratuito y de código abierto, lo que permite a cualquiera codificar vídeos sin restricciones y reproducirlos en los navegadores compatibles (Mozilla Firefox, Google Chrome y Opera).
El reciente anuncio de Google de que deja de soportar el vídeo H.264 en Chrome significa que el principal formato de vídeo HTML5 en YouTube será finalmente WebM. Ahora es una excelente oportunidad para aprender a codificar vídeos en el nuevo formato. Además, H.264 está patentado y no es abierto, por lo que los usuarios de Linux deberían hacer un esfuerzo para evitarlo, siempre que sea posible.
Actualmente, Apple y Microsoft siguen usando sólo H.264 y se niegan a incluir WebM u Ogg Theora (ambos soportados por Mozilla, Google y Opera). Dado que WebM y Ogg Theora son formatos abiertos, Google ha dejado claro que los preferirá a H.264.
Cubriremos dos técnicas diferentes: (1) la codificación por línea de comandos FFMPEG y (2) la codificación gráfica con Arista Transcoder
.FFMPEG
Para codificar vídeos en formato WebM, necesitarás la versión 0.6 o posterior de ffmpeg. Si tu distribución tiene una versión anterior, tendrás que descargar los binarios de un repositorio alternativo o compilarlo desde el código fuente. La versión en el repositorio de Ubuntu 10.10 Maverick Meerkat tiene soporte incorporado para WebM.
Una vez que lo tengas instalado y estés seguro de que tienes soporte para la librería libvpx
, puedes empezar a codificar. Estas instrucciones asumen que quieres codificar en 720p, pero puedes alterar la configuración a tu gusto.Primero, comprueba si tienes un preset libvpx-720p en /usr/share/ffmpeg. Suponiendo que no lo tengas, crea un archivo en ese directorio llamado “libvpx-720p.ffpreset
” y añade el siguiente contenido (edítalo como root):vcodec=libvpxg=120rc_lookahead=16level=216profile=0qmax=42qmin=10vb=2M#ignored unless using -pass 2maxrate=24Mminrate=100k
Guarde el archivo, y luego introduzca los siguientes comandos, uno tras otro:
ffmpeg-i input.mp4 -s 1280×720 -vpre libvpx-720p -b 3900k -pass1-an-f webm -y output.webm
ffmpeg-i input.mp4 -s 1280×720 -vpre libvpx-720p -b 3900k -pass2-acodec libvorbis -ab 100k -f webm -y output.webm
Sustituye “input.mp4” por el nombre real de tu vídeo y “output.webm
” por el nombre de tu vídeo WebM recién creado. Cuando ambas pasadas terminen, deberías tener un vídeo reproducible, que puedes probar en Mplayer.Arista
Arista Transcoder ofrece una interfaz sencilla para codificar rápidamente archivos de vídeo, incluyendo WebM. Para utilizarlo, sigue estas instrucciones:
1. Seleccione la fuente
2. Elija el tipo de dispositivo
3. Seleccione “WebM” como preselección
4. Haga clic en “Añadir a la cola”
Arista te mostrará una vista previa en directo del vídeo mientras se codifica, y te permitirá añadir múltiples trabajos a la cola si necesitas codificar varios archivos o el mismo archivo en diferentes formatos.
Ambos métodos deberían proporcionarle archivos de vídeo listos para YouTube o los vídeos HTML5 de sus propios sitios web. En mis pruebas, la codificación ffmpeg fue mucho más lenta pero produjo mejor calidad que Arista Transcoder. Ajustar uno u otro puede producir mejores resultados para cada uno.