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.mkv
Nota: 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