私は長いmpegムービーを持っていて、最初と最後から多くの素材を切り取り、途中で特定のパッチを切り取りたいと思っています。 Linuxコマンドラインからこれを簡単に実行できる方法はありますか?
ジョブのツールはmpgtxです(インストールされていない場合は、Sudo apt-get install mpgtxなどを試してください)。
ファイルの名前がinput.mpgで、output.mpgを作成するとします。一般的なタスクは次のとおりです。
mpegムービーからセグメントを選択し、それらから新しいmpegムービーを作成します
//秒10〜20、42〜52、次に1:23〜1:33を取得し、新しいmpegムービーを作成します
mpgtx -j input.mpg [0:10-0:20] [0:42-0:52] [1:23-1:33] -o output.mpg
注:mpgtx-jはmpgjoinと同等です。注:Sudo apt-get installmpgtxを介してインストールする必要があります
mpegムービーの最初または最後から選択します
//最初の20秒、42秒から52秒、次に1:23から最後までを取得します***
mpgtx -j input.mpg [-0:20] [0:42-0:52] [1:23-] -o output.mpg
mpegムービーをカスタムの長さのいくつかのファイルに分割します
//分1-2と3-4を2つのファイル(out-1.mpgとout-2.mpg)に分割します
mpgtx -s input.mpg [1:00-2:00] [3:00-4:00] -b out
mpegムービーを同じ長さに分割します
//ムービーをout-1.mpg、out-2.mpg、...、out-5.mpgと呼ばれる5つの等しい長さの部分に分割します
mpgtx -5 input.mpg -b out
コマンドラインから複数のmpegビデオファイルを連結または結合します
mpgtx -j file1.mpg file2.mpg file3.mpg -o output.mpg
タイミングがずれている場合はファイルを再エンコードします
Mpgtxの動作方法(画像のグループベース)が原因で、タイミングがあまり正確でない場合があります。 mpegを一定のビットレートで再エンコードすると、ファイルが生成され、上記の方法で非常に正確に分割できることがわかりました。簡単な再エンコード呼び出しは次のとおりです。
// 2250kの固定ビットレートで再エンコードします
ffmpeg -i input.mpg -b 2250k -minrate 2250k -maxrate 2250k -bufsize 1000k output.mpg
注意。 ffmpegはmpgtxが実行できることの多くを実行できますが、後者を使用すると、複数のカットを指定するのがはるかに簡単になります(また、開始時間と期間ではなく、開始時間と終了時間で入力を指定できます)。ただし、ffmpegは素晴らしい仲間です。 AVIをffmegでmpegに変換してから、mpgtxで分割を行うことが、作業を完了するための最も簡単な手段であることがわかりました。
詳細については、mpgtxとffmpegのマニュアルページ(およびそのオンラインヘルプページ http://ffmpeg.org/ffmpeg-doc.html )を参照してください。
Ffmpegを試すことができます。 http://www.joeldare.com/wiki/video:cut_video_with_ffmpegを参照
残しておきたい映画の断片を切り取り、それらを結合して最終的な映画を作成します(ビデオの結合: http://ffmpeg.org/faq.html#SEC )
ここで利用可能なその他のffmpegオプションに関するドキュメント: http://ffmpeg.org/ffmpeg-doc.html