FFmpeg es un proyecto de software gratuito y de código abierto que consiste en un gran conjunto de bibliotecas y programas para manejar videos, audio y otros archivos y transmisiones multimedia. Es un conjunto de herramientas multiplataforma que funciona en Mac (OSX), Linux y Windows. Este artículo cubre la instalación de FFmpeg y los ejemplos de comandos más utilizados para obtener información de video, cortar y dividir archivos de video, convertir videos a varios formatos, incluidas imágenes, administrar audio, subtítulos y mucho más.
Instalación del marco multimedia FFmpeg
La instalación de FFmpeg es un proceso fácil y simple para la mayoría de los sistemas operativos comunes.
Ubuntu
Para instalar FFmpeg en la última versión de Ubuntu Linux, use los siguientes comandos:
sudo apt-get update
sudo apt install ffmpeg -y
OSX
Si desea instalar FFmpeg en su Mac, use el administrador de paquetes Homebrew:
brew update && brew upgrade ffmpeg
Windows
Para instalar FFmpeg en Windows, use Chocolatey:
choco install ffmpeg
Los comandos FFmpeg más útiles
Ahora, tan pronto como haya instalado FFmpeg, podemos pasar a los ejemplos de comandos más utilizados.
A los efectos de este artículo, utilizaremos archivos de vídeo de muestra gratuitos.
Obtener información del archivo de video
Para obtener información detallada sobre el archivo de video, ejecute el siguiente comando:
ffmpeg -i sample-mp4-file.mp4 -hide_banner
El -hide_banner
argumento oculta información de derechos de autor.
Cortar video en pequeños clips
FFmpeg tiene una capacidad que le permite recortar videos en fragmentos cortos.
Vamos a utilizar los siguientes argumentos:
-ss
parámetro especifica los s tiempo de inicio s pulsar enHH:MM:SS.ms
formato-t
El argumento especifica la duración del clip final (t im) en segundos-codec copy
– el parámetro copiaría todas las secuencias sin volver a codificar
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
-ss 00:01:00.0 \
-codec copy \
-t 20 \
OutputVideo.mp4
Dividir archivo de video en varias partes
Use el comando que se muestra a continuación para dividir un video en dos o más partes.
En nuestro ejemplo, estamos dividiendo el archivo en dos partes:
- La primera parte dura 30 segundos desde el principio del archivo (
-t
argumento) - La segunda parte contendrá los datos de video desde el segundo 50 hasta el final del archivo (
-ss
argumento)
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
-t 00:00:30 \
-c copy OutputVideo-1.mp4 \
-ss 00:00:50 \
-codec copy \
OutputVideo-2.mp4
Silenciar audio
Use el siguiente comando para deshabilitar el audio del archivo de video de salida:
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
-an OutputVideo.mp4
Extraer audio de video
Puede extraer el audio del Video ejecutando el comando:
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
-vn \
-ac 2 \
-ab 187 \
-f mp3 \
Audio.mp3
Aquí estamos usando las siguientes opciones:
-vn
deshabilita la grabación de video en el archivo de salida-ac
establece el número de a audio c canales-ab
establece un audio b itrate a 187kb/s- -f establece un formato de salida a mp3
Fusionar audio y video
Use el siguiente comando para agregar una pista de audio a un archivo de video:
ffmpeg -i Audio.mp3 -i sample-mp4-file.mp4 \
-hide_banner \
OutputVideo.mp4
Convertir video a imágenes
Use el comando indicado a continuación para convertir videos en imágenes:
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
image%d.jpg
Convertir imágenes a video
Todas las imágenes se pueden convertir en video:
ffmpeg -f image2 -i image%d.jpg \
-hide_banner \
OutputVideo.mp4
Intenta agregar audio al clip final tú mismo.
Conversión de MP4 a FLV
Ejecute el comando que se muestra a continuación para convertir un archivo de video en formato MP4 a formato FLV:
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
-vn \
-ac 2 \
-ab 187 \
-f flv \
OutputVideo.flv
Convertir FLV a MPG
Ejecute el comando que se muestra a continuación para convertir un archivo de video en formato FLV a formato MPG:
ffmpeg -i OutputVideo.flv -hide_banner \
OutputVideo.mpg
Convertir MPG en FLV
Copie el comando que se muestra a continuación para convertir un archivo de video en formato MPG a FLV:
ffmpeg -i OutputVideo.mpg -hide_banner \
-ab 26k \
-f flv \
OutputVideo.flv
Convertir video en un GIF animado
Para convertir un archivo de video en un archivo gif animado, use el comando:
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
Output.gif
Convertir a formato CD/DVD
Usar -target
escriba para crear un archivo de salida con formato de CD de video o DVD.
El tipo de destino admite vcd
, svcd
, dvd
, dv
y dv50
formatos que pueden tener el prefijo pal-
, ntsc-
o film-
para usar el estándar correspondiente:
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
-target film-vcd \
vcd_video.mpg
Insertar subtítulos
Vamos a crear un archivo de subtítulos de demostración (más información sobre los subtítulos):
cat << EOF > subtitles.srt
1
00:00:00,000 --> 00:00:20,000
This is demo subtitle 1
2
00:00:20,000 --> 00:00:40,000
This is demo subtitle 2
EOF
Puede agregar un archivo de subtítulos a un archivo de video agregando un archivo de subtítulos separado al comando:
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
-i subtitles.srt \
-c copy \
-c:s mov_text \
OutputVideo.mp4
Si desea mostrar subtítulos en el video:
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
-vf subtitles=subtitles.srt \
OutputVideo.mp4
Extraer subtítulos
Para extraer subtítulos del archivo de video, verifique qué transmisión debe usar primero:
ffmpeg -i OutputVideo.mp4
El resultado indica que los subtítulos están disponibles en el archivo en la transmisión #0:2
.
Ahora, podemos extraerlos usando el siguiente comando:
ffmpeg -i OutputVideo.mp4 -hide_banner \
-map 0:2 subtitles.srt
Donde -map 0:2
especifica el flujo requerido.
Rotar video
Y finalmente, aquí hay un comando para rotar el clip de video al desengrasado de 90 en el sentido de las agujas del reloj (use transpose=2
para girar en sentido contrario a las agujas del reloj):
ffmpeg -i sample-mp4-file.mp4 -hide_banner \
-filter:v 'transpose=1' \
OutputVideo.mp4
Resumen
FFmpeg es un marco multimedia versátil que nos permite realizar varias operaciones diferentes con archivos de video.
Puede usar FFmpeg para convertir archivos de video y audio a otros formatos, extraer imágenes y audio, rotar videos, agregar subtítulos, dividir videoclips en varias partes y mucho más. En esta guía, ilustramos cómo aplicar los comandos más utilizados para obtener los resultados que pueda necesitar.