Video y audio
FFmpeg: el convertidor de video que lo hace todo
FFmpeg es el motor que procesa video dentro de YouTube, Netflix y prácticamente todo convertidor en línea que hayas usado. Es gratuito, de código abierto, y con un comando hace lo que los servicios de paga hacen con anuncios y límites de tamaño. Estos son los comandos que resuelven el 95% de los casos.
Instalación
# macOS (Homebrew)
brew install ffmpeg
# Ubuntu / Debian
sudo apt install ffmpeg
# Windows (winget)
winget install Gyan.FFmpeg
Verifica con ffmpeg -version. Si imprime la versión, ya está listo.
Convertir entre formatos
FFmpeg detecta el formato de salida por la extensión del archivo. Esto convierte un MOV de iPhone a MP4 universal:
ffmpeg -i video.mov video.mp4
Funciona igual para cualquier par: .mkv a .mp4, .avi a .mp4, .mp4 a .webm. Un archivo que VLC abre, FFmpeg lo convierte.
Comprimir un video pesado
El control de calidad es el número -crf: más alto comprime más. 23 es el punto medio; 28 comprime fuerte con calidad todavía buena para compartir:
ffmpeg -i entrada.mp4 -c:v libx264 -crf 23 -preset slow -c:a aac -b:a 128k salida.mp4
Para archivos aún más ligeros con la misma calidad visual, H.265 comprime ~40% más que H.264 (la etiqueta hvc1 lo hace compatible con iPhone y QuickTime):
ffmpeg -i entrada.mp4 -c:v libx265 -crf 26 -tag:v hvc1 -c:a aac -b:a 128k salida.mp4
Recortar sin perder calidad
Con -c copy el video no se recodifica: el corte es instantáneo y la calidad queda intacta. Esto extrae del segundo 10 al 30:
ffmpeg -ss 00:00:10 -to 00:00:30 -i entrada.mp4 -c copy recorte.mp4
-c copy se ajustan al keyframe más cercano. Si necesitas precisión de cuadro, quita -c copy y FFmpeg recodifica el segmento.Extraer el audio
A MP3 con calidad alta:
ffmpeg -i video.mp4 -vn -c:a libmp3lame -q:a 2 audio.mp3
Si el video ya trae audio AAC (casi todos los MP4), puedes extraerlo sin recodificar — sin pérdida y en un segundo:
ffmpeg -i video.mp4 -vn -c:a copy audio.m4a
Escalar resolución
De 4K a 1080p (el -2 calcula el ancho automáticamente manteniendo la proporción):
ffmpeg -i entrada.mp4 -vf "scale=-2:1080" -c:a copy salida.mp4
Crear un GIF que no pese una barbaridad
El método de dos pasos con paleta produce GIFs nítidos y mucho más ligeros que la conversión directa:
ffmpeg -ss 5 -t 3 -i video.mp4 -vf "fps=12,scale=480:-1:flags=lanczos,palettegen" paleta.png
ffmpeg -ss 5 -t 3 -i video.mp4 -i paleta.png -filter_complex "fps=12,scale=480:-1:flags=lanczos[x];[x][1:v]paletteuse" salida.gif
Ajusta -ss (inicio en segundos) y -t (duración) al fragmento que quieras.
Quitar el audio
ffmpeg -i entrada.mp4 -an -c:v copy sin_audio.mp4
Unir varios videos
Crea un archivo de lista y concatena sin recodificar (los videos deben tener el mismo códec y resolución):
printf "file 'parte1.mp4'\nfile 'parte2.mp4'\nfile 'parte3.mp4'\n" > lista.txt
ffmpeg -f concat -safe 0 -i lista.txt -c copy completo.mp4
Rotar un video
90° en el sentido del reloj — el clásico video grabado de lado:
ffmpeg -i entrada.mp4 -vf "transpose=1" -c:a copy rotado.mp4
transpose=2 gira al contrario; para voltear de cabeza usa -vf "hflip,vflip".
Acelerar o ralentizar
Al doble de velocidad, con el audio sincronizado:
ffmpeg -i entrada.mp4 -vf "setpts=PTS/2" -af "atempo=2" rapido.mp4
Para cámara lenta a la mitad: setpts=PTS*2 y atempo=0.5.
Sacar una imagen de un cuadro exacto
ffmpeg -ss 00:00:05 -i video.mp4 -frames:v 1 captura.jpg
Convertir un video en secuencia de imágenes
Un cuadro por segundo — sube fps para extraer más:
ffmpeg -i video.mp4 -vf fps=1 cuadro_%04d.jpg
Convertir fotos en video (timelapse)
Las fotos deben estar numeradas en secuencia (foto_0001.jpg, foto_0002.jpg…):
ffmpeg -framerate 24 -i foto_%04d.jpg -c:v libx264 -pix_fmt yuv420p timelapse.mp4
Recortar a vertical 9:16 para reels
Toma el centro de un video horizontal y lo deja en proporción de historia o reel:
ffmpeg -i horizontal.mp4 -vf "crop=ih*9/16:ih" -c:a copy vertical.mp4
Quemar subtítulos en el video
Incrusta un archivo SRT de forma permanente — genera el SRT con Whisper:
ffmpeg -i video.mp4 -vf "subtitles=subs.srt" con_subs.mp4
Poner un logo sobre el video
En la esquina inferior derecha, con 20 píxeles de margen:
ffmpeg -i video.mp4 -i logo.png -filter_complex "overlay=W-w-20:H-h-20" -c:a copy con_logo.mp4
Subir o nivelar el volumen
Al doble:
ffmpeg -i entrada.mp4 -af "volume=2.0" -c:v copy mas_fuerte.mp4
O nivelado automático al estándar de streaming (el mismo que usan Spotify y YouTube):
ffmpeg -i entrada.mp4 -af loudnorm -c:v copy nivelado.mp4
Reemplazar el audio de un video
Quita la pista original y pone tu música, cortando donde termine lo más corto:
ffmpeg -i video.mp4 -i musica.mp3 -map 0:v -map 1:a -c:v copy -shortest con_musica.mp4
Convertir a WebM para web
ffmpeg -i entrada.mp4 -c:v libvpx-vp9 -crf 32 -b:v 0 -c:a libopus video.webm
Cambiar los cuadros por segundo
ffmpeg -i entrada.mp4 -vf fps=30 -c:a copy a30fps.mp4
Repetir un video en bucle
Cuatro repeticiones seguidas, sin recodificar:
ffmpeg -stream_loop 3 -i clip.mp4 -c copy bucle.mp4
Lo probamos aquí mismo
Este GIF salió de nuestro video demo — que también está hecho con FFmpeg — usando el método de paleta de dos pasos de esta misma página:
Dato honesto de los tamaños reales: este GIF pesa 2.0 MB; el mismo clip como MP4 pesa 776 KB completo. El GIF conviene donde solo se aceptan GIFs — para todo lo demás, video.