Unir / Combinar videos MP4 (u otro formato como MOV, AVI, MPG, MKV, mp3) con ffmpeg en Linux sin recodificarlos (desde la terminal) - Cómo
Quiero unir en Linux unos videos con ffmpeg sin recodificarlos (y a veces también otros multimedias), estos son los pasos (también se puede en Windows).
REQUISITOS
- Deben haber sido creados por el mismo dispositivo (ejemplo Filmadora, Camara, WebCam) o software (FFmpeg, Kdenlive, Shotcut, etc)
- Como esto es desde la terminal usted tener cuidado con las extensiones, el nombre exacto, si es mayúscula o minúscula
- Tener FFmpeg instalado
Crear una lista de sus videos a unir
Los siguientes son unos videos que deseo convertir:
/home/wachin/Vídeos/unir videos/HDV_0099.MP4
/home/wachin/Vídeos/unir videos/HDV_0100.MP4
/home/wachin/Vídeos/unir videos/HDV_0101.MP4
Note usted que en este caso la extensión es MP4 está con mayúscula pues así los grabó la filmadora SAMSUNG HMX-F90
desde una terminal hay que abrir el lugar donde están los videos a convertir:
y allí poner el siguiente comando modificado para la extensión con nombre mayúscula:
for f in *.MP4; do echo "file '$f'" >> milista.txt; done
Para nombre con minúscula como normalmente se encuentra en los videos mp4 sería:
for f in *.mp4; do echo "file '$f'" >> milista.txt; done
y poner en la terminal así como se muestra en la siguiente imagen:
allí hemos obtenido el archivo:
milista.txt
que contiene lo siguiente:
file 'HDV_0099.MP4'
file 'HDV_0100.MP4'
file 'HDV_0101.MP4'
ahora sólo hay que poner allí mismo en la terminal:
ffmpeg -f concat -safe 0 -i milista.txt -c copy output.mp4
así:
y trabajo realizado:
RESUMEN
Combinar MP4
Crear lista de archivos multimedia:
for f in *.MP4; do echo "file '$f'" >> milista.txt; done
Unir lista de archivos multimedia:
ffmpeg -f concat -safe 0 -i milista.txt -c copy output.mp4
Nota: En la salida ya está en minúscula la extensión.
Combinar mp4
Como les explicaba arriba algunos dispositivos le ponen mayúscula a la extensión MP4
Crear lista de archivos multimedia:
for f in *.mp4; do echo "file '$f'" >> milista.txt; done
Unir lista de archivos multimedia:
ffmpeg -f concat -safe 0 -i milista.txt -c copy output.mp4
Combinar MOV
Crear lista de archivos multimedia:
for f in *.mov; do echo "file '$f'" >> milista.txt; done
Unir lista de archivos multimedia:
ffmpeg -f concat -safe 0 -i milista.txt -c copy output.mov
Nota: En la salida no se puede cambiar el formato (si usted quisiera cambiar el formato eso es diferente sería una conversión). Y si el nombre de la extensión estuviera en mayúscula deberá de cambiarle eso en los comandos.
Combinar AVI
Crear lista de archivos multimedia:
for f in *.avi; do echo "file '$f'" >> milista.txt; done
Unir lista de archivos multimedia:
ffmpeg -f concat -safe 0 -i milista.txt -c copy output.avi
Nota: Si el nombre de la extensión estuviera en mayúscula deberá de cambiarle eso en los comandos.
Combinar MPEG-2
Crear lista de archivos multimedia:
for f in *.mpg; do echo "file '$f'" >> milista.txt; done
Unir lista de archivos multimedia:
ffmpeg -f concat -safe 0 -i milista.txt -c copy output.mpg
Nota: Si el nombre de la extensión estuviera en mayúscula deberá de cambiarle eso en los comandos.
Combinar MKV
Crear lista de archivos multimedia:
for f in *.mkv; do echo "file '$f'" >> milista.txt; done
Unir lista de archivos multimedia:
ffmpeg -f concat -safe 0 -i milista.txt -c copy output.mkvNota: Si el nombre de la extensión estuviera en mayúscula deberá de cambiarle eso en los comandos.
Combinar mp3
Crear lista de archivos multimedia:
for f in *.mp3; do echo "file '$f'" >> milista.txt; done
Unir lista de archivos multimedia:
ffmpeg -f concat -safe 0 -i milista.txt -c copy output.mp3
CONSEJO
Puede usar un bloque de notas como xfce4-notes para tener allí a la mano los dos comandos, ejemplo:
Este programa permite poder tener varias como pestañas (llamadas grupos) dentro disponibles:
así uno puede tener varios textos o comandos a la mano.
Dios les bendiga
BASADO EN:
Concatenating media files
https://trac.ffmpeg.org/wiki/Concatenate
Comentarios
Publicar un comentario