¿Qué es FFmpeg?
FFmpeg es un proyecto gratuito que ofrece una colección de programas para manejar datos como audio, vídeo e imágenes. Es una herramienta que sirve para convertir, grabar, transmitir y reproducir archivos.
FFmpeg es compatible con una amplia gama de formatos y códecs y se utiliza para tareas como transcodificar, cambiar el tamaño de los filtros, añadir marcas de agua o subtítulos, obtener audio del vídeo y fusionar varios vídeos o archivos de audio. También es posible crear un GIF con FFmpeg y combinar archivos MP4 con FFMPEG en Windows.
FFmpeg se utiliza ampliamente en la industria multimedia y está disponible en la mayoría de los sistemas operativos, incluidos Windows, macOS, Linux y Unix.
¿Cómo utilizar FFmpeg?
Estos son algunos ejemplos comunes de cómo utilizar FFmpeg:
- Convierte un archivo de vídeo de un formato a otro:
Código: ffmpeg -i entrada_video.mp4salida_video.avi
Este comando convertirá input_video.mp4
a output_video.avi
. FFmpeg seleccionará automáticamente los códecs adecuados para el formato de salida.
- Cambia el tamaño de un vídeo:
Código: ffmpeg -i input_video.mp4-vf scale=640:480 output_video.mp4
Este comando redimensionará input_video.mp4
a una resolución de 640×480 píxeles y guardará el resultado en output_video.mp4
.
- Extrae audio de un vídeo:
Código: ffmpeg -i input_video.mp4-vn output_audio.mp3
Este comando extraerá la pista de audio de input_video.mp4
y la guardará en output_audio.mp3
.
- Concatenar dos vídeos:
Código: ffmpeg -i input_video1.mp4-i input_video2.mp4-filter_complex concat output_video.mp4
Este comando concatenará input_video1.mp4
y input_video2.mp4
y guardará el resultado en output_video.mp4
.
- Añade una marca de agua a un vídeo:
Código: ffmpeg -i input_video.mp4-i watermark.png -filter_complex «overlay=10:10» output_video.mp4
Este comando añadirá la imagen watermark.png
a la esquina superior izquierda de input_video.mp4
con un desplazamiento de 10 píxeles y guardará el resultado en output_video.mp4
.
Estos son sólo algunos ejemplos de lo que se puede hacer con FFmpeg. También es posible utilizar FFmpeg en Android. Para más información, consulta tutoriales en línea, retransmisiones en vídeo o chatbots de IA como ChatGPT.

¿Qué comandos de edición de vídeo son útiles en FFmpeg?
- Recorta un vídeo:
Código: ffmpeg -i input_video.mp4-ss 00:00:05 -t 00:00:10 -c copy output_video.mp4
Este comando recortará input_video.mp4
para que comience en la marca de 5 segundos y termine después de 10 segundos, y guardará el resultado en output_video.mp4
.
- Añadir una imagen o un vídeo superpuesto a mi vídeo:
Código: ffmpeg -i input_video.mp4-i overlay_image.png -filter_complex «overlay=10:10» output_video.mp4
Este comando añadirá el archivo overlay_image.png
como una superposición a input_video.mp4
en las coordenadas (10, 10), y guardará el resultado en output_video.mp4
.
- Cambia la resolución de vídeo:
Código: ffmpeg -i input_video.mp4-vf scale=1280:720 -c:a copy output_video.mp4
Este comando cambiará la resolución de input_video.mp4
a 1280×720 píxeles y guardará el resultado en output_video.mp4
.
- Añade las opciones
textfile
yreload
para dibujar texto:
Código: ffmpeg -i input.mp4-vf «drawtext=fontfile=/path/to/font.ttf:textfile=text.txt:reload=1:fontcolor=white:fontsize=24:box=1:boxcolor=black@0.5:boxborderw=5:x=(w-text_w)/2:y=(h-text_h)/2» -codec:a copy output.mp4
¿Cómo añadir texto a un vídeo con FFmpeg?
Para añadir texto a un vídeo con FFmpeg, utilice el filtro drawtext
. El filtro drawtext
permite especificar la fuente, el tamaño, el color y la posición del texto, entre otros parámetros.
He aquí un comando básico para añadir texto a un vídeo utilizando el filtro drawtext
:
Código: ffmpeg -i input_video.mp4-vf «drawtext=text=’Hello World’:fontfile=/path/to/font.ttf:fontsize=50:fontcolor=white:x=100:y=100» -codec:a copy output_video.mp4
En este comando:
-i input_video.mp4
especifica el archivo de vídeo de entrada.-vf "drawtext=..."
especifica el filtro de vídeo a aplicar, que en este caso es el filtrodrawtext
.text='Hello World'
especifica el texto que se añadirá al vídeo.fontfile=/path/to/font.ttf
especifica el archivo de fuentes a utilizar.fontsize=50
especifica el tamaño de la fuente en puntos.fontcolor=white
especifica el color de la fuente.x=100:y=100
especifica la posición del texto en el vídeo, con la esquina superior izquierda en (100, 100) píxeles.-codec:a copy
especifica que se copie el flujo de audio del vídeo de entrada al vídeo de salida sin recodificarlo.output_video.mp4
especifica el archivo de vídeo de salida.
¿Qué es Fontfile?
La opción fontfile
de FFmpeg se utiliza para especificar la ruta a un archivo de fuentes que se utilizará para representar texto en un vídeo o imagen.
Cuando utilices el filtro drawtext
en FFmpeg para añadir texto a un vídeo, especifica la opción fontfile
para elegir una fuente específica para el texto.
¿Cómo incluir fuentes en el comando FFmpeg sin utilizar la opción Fontfile?
Para utilizar una fuente en un comando FFMPEG sin especificar la opción fontfile, utilice una fuente instalada en el sistema.
A continuación se muestra un comando de ejemplo que utiliza una fuente instalada en el sistema:
Código: ffmpeg -i input_video.mp4-vf «drawtext=text=’Hola Mundo’:fontcolor=white:x=100:y=100:font=Arial» -codec:a copy output_video.mp4
¿Qué es GitHub?
GitHub es una plataforma web que permite a los desarrolladores alojar y gestionar sus proyectos de software, colaborar con otros y seguir y gestionar los cambios en su código. Proporciona herramientas de control de versiones, seguimiento de incidencias, revisión de código y colaboración en equipo.
¿Cómo añadir texto «StackOverflow» con FFmpeg?
Código: ffmpeg -i input_video.mp4-vf «drawtext=text=’StackOverflow’:fontfile=/path/to/font.ttf:fontsize=30:fontcolor=white:x=100:y=100» -codec:a copy output_video.mp4
Esto es lo que hacen las distintas opciones de este comando:
-i input_video.mp4
especifica el archivo de vídeo de entrada.-vf "drawtext=text='StackOverflow':fontfile=/path/to/font.ttf:fontsize=30:fontcolor=white:x=100:y=100"
configura el filtro de vídeo para dibujar el texto. Este comando dibuja el texto «StackOverflow» en el vídeo en las coordenadas (100, 100), utilizando un archivo de fuente ubicado en/path/to/font.ttf
, con un tamaño de fuente de 30 y un color de fuente blanco.-codec:a copy
copia el flujo de audio del vídeo de entrada al vídeo de salida sin recodificarlo.output_video.mp4
especifica el nombre del archivo de vídeo de salida.
¿Cómo mostrar códigos de tiempo o marcas de tiempo con el filtro Drawtext de FFmpeg?
Código: ffmpeg -i input_video.mp4-filter_complex «drawtext=fontfile=/path/to/font.ttf:text=’%{pts\:hms}’:fontsize=24:fontcolor=white:x=10:y=10» -codec:a copy output_video.mp4
Esto es lo que hacen las distintas opciones de este comando:
-i input_video.mp4
especifica el archivo de vídeo de entrada.-filter_complex
le permite utilizar varios filtros en el mismo comando.drawtext
es el nombre del filtro.fontfile=/path/to/font.ttf
especifica la ruta del archivo de fuentes que queremos utilizar.text='%{pts\:hms}'
establece el texto que se mostrará.%{pts\:hms}
es un marcador de posición que será sustituido por el código de tiempo actual en formato horas:minutos:segundos.fontsize=24
establece el tamaño de la fuente en 24.fontcolor=white
establece el color de la fuente en blanco.x=10
yy=10
fijan la posición del texto en el vídeo.-codec:a copy
copia el flujo de audio del vídeo de entrada al vídeo de salida sin recodificarlo.output_video.mp4
especifica el nombre del archivo de salida.