web-dev-qa-db-ja.com

2つの* .aviファイルを1つにマージする方法

私は2つを持っています *.aviファイル:

sequence1.avi
sequence2.avi

コマンドラインまたはGUIを使用してこれらの2つのファイルをマージするにはどうすればよいですか?

22
Stefan

これを行うための専用ツールがあります avimerge

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

インストールされていない場合は、トランスコードをインストールします。Avimergeはトランスコードパッケージの一部です https://manpages.debian.org/jessie/transcode/avimerge.1.en.htmlhttp:// manpages.ubuntu.com/manpages/bionic/man1/avimerge.1.html

31
Michael Mrozek

Mencoderで簡単(Arch Linuxのmplayerに同梱):

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

Avidemux は、少なくとも同じ解像度と他のいくつかの制約がある場合、2つのビデオを貼り付けることができます。 「ファイル」メニューの「追加」を使用します。

トランスコード パッケージからaviファイルをavimergeとマージできます:

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

GUIツールではないことは知っていますが、GUIを作成するには、次のスクリプトを使用できます。

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

kdialogを使用しているため、KDEユーザー向けです。GNOMEユーザーはZenityを使用するように変更する必要があります...

1
pbm

出力としてAVIコンテナー形式に慣れていない場合は、MKVtoolnix GUIからAVIファイルを簡単に可逆結合できます。 https://forums.plex.tv/t/howto-joining-multi-part-movies-files-with-mkvtoolnix-gui/113211 (このリンクの手順は、以下に要約されます:最初のAVIファイル、右クリック>追加> 2番目のファイルを選択し、[マルチプレクサーの開始]をクリック)。

これは、字幕、mp4ファイルなどでも機能します。また、最新のプレーヤーでの再生やストリーミングの信頼性が高い出力ファイルという利点もあります。

1
krispy

そのように ffmpeg concat を使用するのはどうですか?

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

エラーが発生した場合危険なファイル名concat-safe 0の間に-iを追加します。

1
OzzyCzech