Is it possible to merge two (or more) video files from the command line? In Windows, one could do this:
copy /b VTS_01_1.vob + VTS_01_2.vob + VTS_01_3.vob + VTS_01_4.vob Output.vob
I find this to be much easier and faster than using a dedicated program. Is there an equivalent in Ubuntu?
cat VTS_01_*.vob > output.vob
Improved version (this will show a progress bar):
cat VTS_O1_*.VOB | pv | dd of=output.vob
Similar to the 2nd:
pv VTS_01_*.vob > output.vob
Oh and you could also
the output.vob to
and have it play in VLC or another videoplayer.
ffmpeg -i "concat:VTS_01_1.VOB|VTS_01_2.VOB|VTS_01_3.VOB|VTS_01_4.VOB" -f mpeg -c copy output.mpeg
The methods using
do NOT interpret the files and just add them together. 1 typical thing you will notice is a slight hickup when the player goes from 1 to the next VOB. Avidemux (GUI), for instance, will also demux(is that the correct word?) the files so it is a smoother experience.
you can us the
cat (concatenate) command for this.
In your case:
cat VTS_01_1.vob VTS_01_2.vob VTS_01_3.vob VTS_01_4.vob > Output.vob
If you are interested in using FFmpeg (which opens up the possibility of concatenating other media types less tractable than .vob) you can use the following for your example:
ffmpeg -i "concat:VTS_01_1.vob|VTS_01_2.vob|VTS_01_3.vob|VTS_01_4.vob" -c copy output.vob
I confess that FFmpeg is a 'dedicated' program which you would prefer not to use but note that other media types may require transcoding before concatenation and in these cases FFmpeg's services will be required...