
たとえば、10 分間のビデオがあり、1:00 ~ 2:00 と 4:00 ~ 5:00 を削除したいとします。これを 1 つの FFmpeg コマンドで実行することは可能ですか? (他のプログラムも歓迎) または、使用する部分 (タイムスタンプごと) をカットするコマンドと、フォルダー内のすべてのビデオを結合する別のコマンドがあるでしょうか?
背景ストーリー(この部分は読み飛ばしていただいて結構です)。私の仕事は国立公園の巡回で、毎月のレポート(新しい巣、不法侵入の標識、新しい動物など、新しい発見について)用に 30 ~ 40 分のビデオを作成しています。そして時々、チーフから、重要度が低いと思われるクリップをいくつか削除するように言われます。つまり、この遅いコンピューター オフィスで全体を再エンコードする必要があり、1080p60 の映像をエンコードするには約 8 ~ 10 時間かかります。つまり、夜遅くに帰宅することになります。今日、FFmpeg を使用すると再エンコードせずにカットと結合が可能であることを知りました。これで時間を節約できるかもしれません :)
答え1
ロスレスカット
試すロスレスカット:
LosslessCut は、ビデオ、オーディオ、字幕、その他の関連メディア ファイルに対して、極めて高速かつロスレスな操作を実現する究極のクロス プラットフォーム FFmpeg GUI を目指しています。主な機能は、ビデオおよびオーディオ ファイルのロスレス トリミングとカットです。これは、ビデオ カメラ、GoPro、ドローンなどから撮影した大きなビデオ ファイルをラフ カットしてスペースを節約するのに最適です。これにより、ビデオから良い部分をすばやく抽出し、低速の再エンコードを行って品質を低下させることなく、何ギガバイトものデータを破棄できます。また、エンコードせずにビデオに音楽や字幕トラックを追加することもできます。すべての処理が非常に高速なのは、すべての面倒な作業を実行する素晴らしい FFmpeg によってほぼ直接的なデータ コピーが行われるためです。
mpv
プレイヤーmpvいくつかあるインタラクティブなカット、スプライシング、連結/結合を実行できるスクリプト。
ffmpeg
あなたは連結デマルチプレクサ再エンコードせずにキーフレームをカットします。カットのタイムスタンプがキーフレームと一致しない場合、カットは完全に正確ではありません。しかし、あなたが行っている作業には十分近いかもしれません。
以下を含むものを作成
input.txt
:file 'input.mp4' outpoint 60 file 'input.mp4' inpoint 120 outpoint 240 file 'input.mp4' inpoint 300
連結:
ffmpeg -f concat -i input.txt -c copy output.mp4
キーフレームのリストについては、キーフレーム間隔を確認していますか?
答え2
ダウンロードMKV(Matroska形式)で作業している場合のもう1つのオプションです。