Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I would like to combine three (possibly more) video sequences into a composite video, where the sequences are running side-by-side as show below. I do not need to have overlapping pictures although that capability would be desirable)

Can anyone recommend a tool for this?

the picture

share|improve this question
add comment

2 Answers

up vote 2 down vote accepted

Any Non-Linear Video Editor

  • Adobe Premiere
  • Adivemux
  • Final Cut

If you're on a Linux Machine there's also

  • Kino
  • Cinelerra
share|improve this answer
    
do you mean "Avidemux" not "Adivemux"? –  quack quixote Nov 17 '09 at 16:42
    
I download Avidemux; it seems like a useful tool but I still can't see how to compose multiple videos as I asked in the question above –  rupello Nov 17 '09 at 20:15
    
Wrong spelling sorry quack. –  Charlls Nov 19 '09 at 20:37
add comment

If you can handle some scripting, try AviSynth.

AviSynth outputs .avi video, which can be encoded by your favourite encoder. eg. VirtualDub.

Below is sample script which takes a single file and chops it up into four panels, which are then surrounded by blue margins. It can just as easily handle four different video sources. AviSynth is a very powerful tool, but scripting does not suit everyone.

#BEGIN----------
inVid=AviSource("myVides.avi")
Mg=8    # Margin:               # must be a multiple of 4
hM=Mg/2 # half Margin           # must be an even number 
pane1H=((inVid.height/8)/2)*2   # round it to an even number
pane1W=((inVid.width   )/2)*2   # round it to an even number
pane2H=((inVid.height/2)/2)*2   # round it to an even number
pane2W=((inVid.width /3)/2)*2   # round it to an even number
pane3H=pane2H
pane3W=pane1W-pane2W
pane4H=((inVid.height-pane2H-pane1H)/2)*2 # round it to an even number
pane4W=pane1W
####   Crop( clip  ,Left      ,Top           ,-Right     ,-Bottom        ).AddBorders( L  ,T  ,R  ,B  ,Colour  ) 
pane1 =Crop( inVid ,0         ,0             ,-0         ,-pane2H-pane4H ).AddBorders( Mg ,Mg ,Mg ,hM ,$00ffff )
pane2 =Crop( inVid ,0         ,pane1H        ,-pane3W-hM ,-pane4H        ).AddBorders( Mg ,hM ,hM ,hM ,$00ffff )
pane3 =Crop( inVid ,pane2W+hM ,pane1H        ,-0         ,-pane4H        ).AddBorders( hM ,hM ,Mg ,hM ,$00ffff )
pane4 =Crop( inVid ,0         ,pane1H+pane3H ,-0         ,-0             ).AddBorders( Mg ,hM ,Mg ,Mg ,$00ffff )
row1=pane1
row2=StackHorizontal(pane2, pane3)
row3=pane4
out=StackVertical(row1, StackVertical(row2, row3))
return out
#END----------
share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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