Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I want to connect two videos into one. Let's take two videos from Youtube as an example. I want my final video to have the height = height of first video + height of second video and width = max(width of first video, width of second video). In the upper part the first video is played whereas in the lower part the second video is played.

Do you know how to do it under Linux, the best possibility while using mencoder, ffmpeg or any other command line command?

share|improve this question

This can be done with ffmpeg. If the videos are the same size:

ffmpeg -i input1.mp4 -i input2.mp4 -filter_complex \
'[0:v]pad=iw:ih*2:0:0[intv];[intv][1:v]overlay=0:H/2[vid]' \
-map [vid] -c:v libx264 -crf 22 -preset veryfast output.mp4

If they're different sizes (where input1.mp4 has the higher resolution):

ffmpeg -i input1.mp4 -i input2.mp4 -filter_complex \
'[0:v]pad=iw:ih*2:0:0[intv];[intv][1:v]overlay=(W-w)/2:H/2[vid]'
-map [vid] -c:v libx264 -crf 22 -preset veryfast output.mp4

If you know the resolutions of the videos, you can get a nicer output. Assuming input1.mp4 is larger (or at least the same resolution), and input2.mp4 has a height of 360:

ffmpeg -i input1.mp4 -i input2.mp4 -filter_complex \
'[0:v]pad=iw:ih+360:0:0[intv];[intv][1:v]overlay=(W-w)/2:H-360[vid]'
-map [vid] -c:v libx264 -crf 22 -preset veryfast output.mp4
share|improve this answer

I think I found the answer here: http://stackoverflow.com/questions/575705/how-can-i-tile-videos-create-a-video-montage I will have a closer look into the solutions posted in that thread.

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .