23

I have two *.avi files:

sequence1.avi
sequence2.avi

How do I merge these two files using a command-line or GUI?

0
31

There's a dedicated tool to do this, avimerge:

avimerge -o cd.avi -i cd1.avi cd2.avi

If not installed, install transcode: Avimerge is part of transcode package: https://manpages.debian.org/jessie/transcode/avimerge.1.en.html http://manpages.ubuntu.com/manpages/bionic/man1/avimerge.1.html

1
  • Worth mentioning that transcode is no longer available for Ubuntu 20. – Nedko Jan 7 at 17:25
10

Easy with mencoder (shipped with mplayer in Arch Linux):

$ mencoder -oac copy -ovc copy video1.avi video2.avi -o final.avi
1

Avidemux can paste two videos together, at least if they have the same resolution and a few other constraints. Use “Append” from the “File” menu.

1

You can merge avi files with avimerge from Transcode package:

avimerge -i file1.avi file2.avi -o output.avi

I know that it isn't GUI tool, but to have GUI you could use that script:

#!/bin/bash
file1=`kdialog --getopenfilename ~/ \*.avi`
file2=`kdialog --getopenfilename ~/ \*.avi`
output=`kdialog --getsavefilename ~/ \*.avi`
avimerge -i $file1 $file2 -o $output

It uses kdialog so it's for KDE users, GNOME users should modify it to use Zenity...

2
  • Your thirst for going ahead and give the Answer regardless should have been quenched by going here: unix.stackexchange.com/questions/2273/…. Also, see my Comment on the Accepted Answer. – tshepang Jan 2 '11 at 7:43
  • Oh, sorry - somehow I missed that question... – pbm Jan 2 '11 at 9:30
1

What about using ffmpeg concat like that:

ffmpeg -f concat -i \
<(for f in $PWD/*.avi;do echo "file '$f'";done) \
-c copy output.avi

If you get an error Unsafe file name add -safe 0 between concat and -i.

1

If you're not wedded to the AVI container format as output, you can get easy lossless joining of AVI files from MKVtoolnix GUI. https://forums.plex.tv/t/howto-joining-multi-part-movies-files-with-mkvtoolnix-gui/113211 (The instructions in this link boil down to: add the first AVI file, right click > append > choose second file, then click "start muxing").

This also works for subtitles, mp4 files, etc. It also has the advantage of an output file that is more reliable to play and stream on modern players.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.