FFmpeg es una librería multiplataforma de código abierto para grabar, convertir y transmitir archivos de video y audio. Creada en 2000, es una poderosa herramienta de línea de comandos que se ejecuta en sistemas operativos Linux, Windows y Mac. Actualmente, muchos sitios web y programas utilizan FFmpeg, incluidos YouTube y VLC Media Player, y se publica bajo licencia GNU Lesser 2.1+
El programa y su código fuente se pueden descargar aquí. Consulta la documentación oficial si necesitas ayuda para instalar FFmpeg.
Los comandos contenidos en este tutorial describen cómo realizar diversas tareas, como la conversión de archivos de video, la extracción de sonido en archivos de vídeo, la codificación de archivos para iPod o PSP, la conversión de un video a un archivo gif, y mucho más.
Obtener información de un archivo de video
Puedes obtener facilmente un montón de información de un vídeo con el siguiente comando:
ffmpeg -i video.avi
Convertir imágenes a una secuencia en vídeo
Este comando transformará todas las imágenes a un archivo de vídeo llamado video.mpg
ffmpeg -f image2 -i image%d.jpg video.mpg
Convertir vídeo a X imágenes
Este comando generará imágenes de un vídeo dado. Están disponibles estos formatos de imágenes: PGM, PPM, PAM, PGMYUV, JPEG, GIF, PNG, TIFF y SGI.
ffmpeg -i video.mpg image%d.jpg
Recortar un archivo de vídeo
Recortar es una de las operaciones más comunes a la hora de editar un vídeo. Ffmpeg te proporciona el filtro crop para dicho propósito.
ffmpeg -i input.mp4 -filter:v "crop=out_w:out_h:x:y" output.mp4
Las opciones son las siguientes:
out_w es el ancho del rectángulo de salida
out_h es el alto del rectángulo de salida
x e y definen la esquina superior izquierda del rectángulo de salida
output.mp4 es el fichero de salida
Extraer una porción de un vídeo
Otra operación muy común a la hora de editar vídeo es la de extraer una porción del vídeo. Esto se puede hacer de forma muy sencilla:
ffmpeg -ss 00:00:30 -i orginalfile.mpg -t 00:00:05 -vcodec copy -acodec copy newfile.mpg
En el ejemplo de arriba, cortamos una parte a partir de las 00:00:30 en el archivo original con una duración de 5 segundos. -ss indica la hora de inicio y -t indica la duración.
Codificar un vídeo para iPod/iPhone
Puedes convertir un vídeo para iPhones o los antiguos iPods mediante este comando:
ffmpeg -i source_video.avi input -acodec aac -ab 128kb -vcodec mpeg4 -b 1200kb -mbd 2 -flags +4mv+trell -aic 2 -cmp 2 -subcmp 2 -s 320x180 -title X final_video.mp4
Codificar un vídeo para Sony PSP
Lo mismo puedes hacer para la portátil de Sony...
ffmpeg -i source_video.avi -b 300 -s 320x240 -vcodec xvid -ab 32 -ar 24000 -acodec aac final_video.mp4
Extraer el sonido de un vídeo y guardarlo en formato MP3
Crear un archivo de audio basándonos en un vídeo es muy sencillo:
ffmpeg -i source_video.avi -vn -ar 44100 -ac 2 -ab 192k -f mp3 sound.mp3
Convertir archivo wav a mp3
Ffmpeg no es solo para vídeos. También puedes hacer un montón de cosas con ficheros de audio. En este ejemplo convertimos un fichero .wav a formato mp3.
ffmpeg -i input_sound.avi -vn -ar 44100 -ac 2 -ab 192k -f mp3 output_sound.mp3
Convertir un vídeo .avi a .mpg
Convertir vídeos de un formato a otro es extremadamente simple. Aquí convertimos un vídeo .avi a .mpg:
ffmpeg -i original_video.avi final_video.mpg
Convertir de .mpg a .avi
Y viceversa...
ffmpeg -i original_video.mpg final_video.avi
Convertir de .avi a .flv
.flv es un formato muy popular de vídeo. En este ejemplo convertimos un fichero .avi a .flv.
ffmpeg -i original_video.avi -ab 56 -ar 44100 -b 200 -r 15 -s 320x240 -f flv final_video.flv
Convertir de .avi a .dv
Otra conversión de formato. Este comando convierte de .avi a .dv:
ffmpeg -i original_video.avi -s pal -r pal -aspect 4:3 -ar 48000 -ac 2 final_video.dv
También puede hacerse así:
ffmpeg -i original_video.avi -target pal-dv final_video.dv
Convertir de .avi a mpeg para los reproductores de DVD
Si tienes un vídeo que quieres ver en un reproductor de DVD, aquí tienes cómo codificarlo:
ffmpeg -i source_video.avi -target pal-dvd -ps 2000000000 -aspect 16:9 final_video.mpeg
Comprimir un vídeo .avi
Puedes comprimir vídeos para ahorrar espacio en tu disco duro.
ffmpeg -i original_video.avi -s 320x240 -vcodec msmpeg4v2 final_video.avi
Convertir .avi a gif animado
Puedes crear de forma sencilla un gif animado de un vídeo.
ffmpeg -i original_video.avi animated_gif.gif
Mezclar un vídeo con un fichero de sonido
Si tienes un fichero de audio y un fichero de vídeo, puedes mezclarlos...
ffmpeg -i sound.wav -i original_video.avi final_video.mpg