Unir videos usando [ffmpeg]

A la hora de unir un video desde la consola, lo mejor es usar el comando cat para concatenar los videos. El problema es que hay muy pocos formatos de video que puedes unir con este comando (MPEG-1, MPEG-2 PS, DV). Por lo tanto debes primero convertir los videos a mpeg, unirlos, y luego regresarlos al formato en el que estés trabajando.
Por ejemplo, si queremos unir video.avi y video2.avi, el proceso sería el siguiente:
1. Convertir los videos a mpeg
ffmpeg -i video1.avi -sameq video1.mpeg
ffmpeg -i video2.avi -sameq video2.mpeg
ffmpeg -i video2.avi -sameq video2.mpeg
2. Unir los videos usando cat
cat video1.mpeg video2.mpeg > video_temporal.mpeg
3. Regresar el video resultante al formato deseado
ffmpeg -i video_temporal.mpeg -sameq video_final.avi
Es todo! Lo único nuevo es el uso de -sameq, cuya función es forzar a ffmpeg para que genere videos con la misma calidad que los videos de entrada, esto es, la misma resolución, mismo bitrate, etc.
5 Comentarios | deja el tuyo




Justo lo que estaba buscando
muchas gracias, igualmente creo que mediante algun otro comando se podra usar sin necesidad de transformarlo a mpeg.
Bueno Saludos
Buenas. No es precisamente usando ffmpeg, pero ahorra tiempo y no cambia la calidad del video. Para unir 2 avis primero instalas el programa transcode, luego utilizas el comando avimerge:
avimerge -i video1.avi video2.avi videon.avi -o video_nuevo.avi
con ese comando además puedes añadir o cambiar las pistas de audio.
Ver el manual de avimerge.
Saludos.
Gracias por el aporte, estoy seguro que ayudará a más de uno.
Un saludo!