web-dev-qa-db-ja.com

コマンドラインからのoggビデオファイルの連結

はい。 デスクトップ記録ツール を使用して作成したoggファイルがいくつかあります。 ffmpegを1回使用してトランスコードしました(主に最初と最後を切り抜くため)。

これで、1つの.ogvファイルに連結したい3つのファイルがあります。 oggCatを使用しようとしましたが、なんらかのエラーでクラッシュしました(oggCatを使用してファイルをそれ自体に連結しようとしましたが、失敗しすぎて、ディストリビューションが壊れたバージョンのパッケージ)。ファイルをcatするだけで機能しますが、どちらがクールでないかを探すことはできません。 mencoderはこのように実行しますmencoder -ovc lavc -oac lavc file1.ogv file2.ogv file3.ogv -o complete.ogv。ファイルをaviにトランスコードし、3つのビデオの一部を切り取ります。

だから、どうすればこれを行うことができますか?

更新1:私の現在の回避策は、ffmpegを使用して3つのファイルを.mpgにトランスコードし、次にそれらを一緒にcatしてから、ogvにトランスコードし直すことです。

更新2:PiTiViはこの種のことで機能しますが、自動化してスクリプトを作成できるコマンドラインから何かが必要です。

19
Noufal Ibrahim

Ogg Video Tools あなたが探していることをしているようです。

簡単な説明:

2つ以上のビデオファイルを連結(結合)すると便利な場合があります。そのために、oggCatを使用できます。これは、指定されたファイルから連続したOggビデオファイルを作成します。

# oggCat newFile.ogv file1.ogv file2.ogv [ file3.ogv [...] ]

注:ビデオファイルは、フレームレート、キーフレームギャップ、フレームサイズなどで対応している必要があります。

もっと見る ここここ

9
soandos

これにはffmpegのconcatdemuxerを使用します(ffmpegの最新バージョンが必要です)。

まず、inputs.txt(または任意の名前)というファイルを作成します。このファイルには、次のような行が含まれています。

file '/path/to/input1.ogv'
file '/path/to/input2.ogv'
file '/path/to/input3.ogv'

これは、相対または絶対ファイルパスである可能性があることに注意してください。ファイルがすべて同じディレクトリにあり、input1.ogv、input2.ogv ...のようなパターンで名前が付けられている場合は、forループを使用してinputs.txtを生成できます。

rm inputs.txt; for f in input*.ogv; do echo "$f" >> inputs.txt; done

ファイルを作成したら、次のようにogvファイルをロスレスで連結できます。

ffmpeg -f concat -i inputs.txt -c copy output.ogv
6
evilsoup

http://www.xiph.org/oggz/ 機能があり、

  • mergeOggファイルをマージし、表示時間の順にページをインターリーブします。

編集:これは、次々にビデオを再生したいので、あなたが望むことをしません。


http://sox.sourceforge.net も機能する可能性があります、構文( http://sox.sourceforge.net/sox.html ):

 sox infile1 infile2 outfile

編集:これはオーディオのみを処理します。


compileoggvideotools を試して、oggCatが機能するかどうかを確認できます。

編集:これはあなたのために働いた...


http://sourceforge.net/projects/oggvideotools/support で、1)取得したバイナリを実行したときに表示されるエラーメッセージのテキストを含む、ディストリビューションの問題を修正するように依頼できます。配布リポジトリから2)コンパイル3)コンパイルされたバージョンを実行します。

編集:連結を行うための代替プログラムを探しています。


mkvtoolnix を使用してoggファイルを単一のmkvに連結し、同じツールを使用してそこからoggを抽出してみてください

1
user89272

PiTiVi を使ってみましたか? 3つのクリップをタイムラインに順番に配置し、結果を1つのファイルとして保存します。

1
Shane Wealti