1. ホーム
  2. ffmpeg

[解決済み] 再エンコードせずにmp4動画を回転させる

2023-04-03 02:04:33

質問

Debian Wheezy システム上の Nexus 4 で撮影したビデオを回転させる方法を探しています。動画はポートレートモードで撮影され、私はそれらをランドスケープモードに回転させたいと思います。できれば、回転はコマンドライン駆動であることが望ましいです。

良い解決策をほのめかしているいくつかの以前の質問を見つけましたが、なんとか動作させることができないようです。

そもそも、こんな質問がありました。 FFmpegで動画を回転させる

しかし、それはffmpegが古く、私はavconvを使用する必要があることを示しています。 私はこの質問を見つけ、進むべき道を詳しく説明しました。 https://askubuntu.com/questions/269429/how-can-i-rotate-video-by-180-degrees-with-avconv

このため、以下のようなコマンドを使用するようにしました。

avconv -i original.mp4 -vf "transpose=1" -codec:v libx264 -preset slow -crf 25 -codec:a copy flipped.mp4

しかし、これは非常に時間がかかり (最後のテストでは、3分未満の映像に6時間以上かかりました)、再生可能なムービーにはなりません。また、ログ出力で Mb Rate > レベルの制限を示すエラーも発生します。

再エンコードに問題があるのでしょうか。回転を適用する前に、最初に携帯電話から別の、より実行可能なエンコードにビデオを再エンコードする必要がありますか? それとも、別の重要なポイントを逃しているのでしょうか?

どのように解決するのですか?

フラグを考慮するメディアプレーヤーがファイルを回転して再生するようにメタデータを変更したいだけなら、次のような方法を試してみてください。

ffmpeg -i input.mp4 -c copy -metadata:s:v:0 rotate=90 output.mp4

見ての通り stackoverflowの他の場所 .