web-dev-qa-db-ja.com

複数のビデオを1つのコンポジットに並べて組み合わせるにはどうすればよいですか?

以下に示すように、3つ(場合によってはそれ以上)のビデオシーケンスをコンポジットビデオに結合し、シーケンスを並べて実行したいと思います。その機能が望ましいですが、私は重複する写真を持っている必要はありません)

誰かがこれのためのツールをお勧めできますか?

the picture

3
rupello

ノンリニアビデオエディタ:

  • Adobe Premiere
  • Avidemux
  • ファイナルカット

Linuxマシンを使用している場合は、次のものもあります。

  • キノ
  • Cinelerra
2
Charlls

スクリプトを処理できる場合は、 AviSynth を試してください。

AviSynthは.aviビデオを出力します。これは、お気に入りのエンコーダーでエンコードできます。例えば。 VirtualDub。

以下は、1つのファイルを取得し、それを4つのパネルに分割し、青い余白で囲むサンプルスクリプトです。 4つの異なるビデオソースを同じように簡単に処理できます。 AviSynthは非常に強力なツールですが、スクリプトはすべての人に適しているわけではありません。

#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----------
0
Peter.O