MP4ビデオファイルをトリミングする方法(画像ではなく時間)


17

私は、mp4ファイルの開始と終了を効率的かつ可逆的に切り落とすのに役立つアプリを探しています。

たとえば、キーフレームを見つけて、そのコードと別のキーフレームの間でロットを再エンコードする必要がなく(低速で不可逆)、AV同期を失うことなく、ロットをコピーできるものはありますか?

MP4とは、MP4コンテナ内のH264ビデオ+ AACオーディオを意味します

h264以前のAvidemuxは、元のエンコードされたストリームを再利用できるため、損失なしでトリミングされたバージョンを作成するのに数秒しかかからないため、このための優れたツールでしたが、h264では希望がありません-1つを開くと2つのオプションがあります: (AV同期が大幅に失われる)、またはすぐにクラッシュする危険なモードを使用します。

AFAIK、Openshot、Kdenlive、Pitiviなどはすべて、デコードと再コーディング(低速で非可逆)によってこれを行います。

簡単なことのようです(おそらくここに私の知識の欠如を示しています!)ので、何かが足りないのではないかと思っていました。


:あなたがビデオの最後を切る必要がある場合、私は別のトピックに与えた答えを参照してくださいaskubuntu.com/questions/412558/...
v010dya

2
superuser.com/questions/377343/…は、関連性が高く、以下と同様の解決策を提供しますが、良い情報を追加します。
-pbhj

回答:


24

ffmpeg

ffmpeg -i source.mp4 -ss 00:00:00 -t 00:00:00 -vcodec copy -acodec copy splice.mp4

これは、source.mp4を使用し、同じオーディオおよびビデオコーデックを使用し、品質を低下させずに、-ssがビデオを開始してからsplice.mp4を出力するまでに-t時間かかります

タイミングは書式設定に非常に敏感であることに注意してください(上記の書式設定の例です)。また、一部のディストリビューションでffmpegは、に置き換えられましたavconv。上記のコマンドを実行し、ffmpegをavconvに置き換えるだけでこれを解決できます。

このトピックに関する別の優れた情報源。(ありがとう@pbhj)


3
鮮やかさ。-ss引数を省略できないことに注意してください。つまり9:00、9分間は00:09:00それ以外の場合は黙って無視されると表現する必要があります。avconvffmpegの警告によると、この回答も使用するように更新する必要があると思います。ありがとう。
artfulrobot 14年

サイドノート、その警告はffmpegではなくavconvがインストールされていることを反映しているだけなので、ffmpeg実行可能ファイルは実際にはavconvの単なるラッパーであり、そのラッパーは間もなく廃止される可能性があります。ffmpegがインストールされていてavconvがインストールされていない場合、その警告は表示されません。ffmpeg自体が非推奨であることを意味するものではありません(ただし、Ubuntuの最近のバージョンは、ffmpegではなくデフォルトでavconvをインストールすることを選択しています)。
トーマスラッター

5

Ubuntu 16.04では、同等のffmpegコマンドはavconv

インストールするには、次を実行します。

sudo apt-get install libav-tools

時間ごとにビデオをトリミングするコマンドラインの例:

avconv -i originalFile.ogv -ss 00:00:00 -t 00:00:10 -vcodec copy -acodec copy croppedFile.ogv

Ubuntuの以降のバージョンでは使用できません。
lolmaus-アンドレイミハイロフ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.