ビデオ(mp4)を180度回転させたいが、反転させたくない。 avconvで実行できますか?
transpose
ビデオフィルターを使用することができます。 180度回転することはできませんが、90度回転してフィルターをチェーンすることはできます。
avconv -i video.mp4 -vf transpose=1,transpose=1 out.mkv
transpose
マンページのavconv
を参照してください。 http://manpages.ubuntu.com/manpages/quantal/en/man1/avconv.1.html
はい。ただし、コマンドが適切に機能するには、コマンドにいくつかの追加オプションを追加する必要があります。転置とvflip/hflipでうまくいくはずですが、必要なものについてavconvに詳細を伝えなければ、おそらく非常に低品質の出力が試されます:
avconv -i original.mp4 -vf "hflip,vflip" -codec:v libx264 -preset slow -crf 20 -codec:a copy flipped.mp4
-crf
オプションに注意してください。それが出力品質を設定します。 0(損失なし)から対数的に上向きになります。ほとんどの場合、おそらく19〜25の値が必要です。 -preset
は、「低速」、「中」、「高速」のいずれかのエンコーディングの速度を設定します。遅いと、明らかなトレードオフを伴う小さなファイルサイズになります。 -codec:v
を調整して、オリジナルと一致させる必要があります。これらのオプションを設定しないと、デフォルトが使用されますが、iPhoneビデオを反転させるとうまく機能しません。
Avconvでの追加の方法は、vflipおよびhflipフィルターを使用することです。より速く、おそらくより良い品質で実行する必要があります:
avconv -i video.mp4 -vf vflip,hflip out.mp4
14.04以降のavconvまたはffmpegの場合
この質問に対する@phoibosの質の高い回答以来、libavのドキュメントにはいくつかの変更が加えられています。ビデオを180度回転させるには、2つの90度コマンドを(コンマで区切って)連鎖させて、完全に反転することを避けます。
avconv -i inputfile -vf transpose = clock、transpose = clock outputfile
時計回りに回転します。
ffmpegの構文は同じです。
ffmpeg -i inputfile -vf transpose = clock、transpose = clock outputfile
ここで、inputfileはサポートされている入力ビデオファイルで、outputfileは目的の出力ファイルです。
反時計回りに回転するには、時計をcclockに置き換えます
ソース:
https://libav.org/avconv.html#transpose
Ubuntu 14.04.5および16.04 LTSでのテスト
これは私がしました:
avconv -i invertedOne.mp4 -c:a copy -vf "hflip,vflip" rightOne.mp4
フルHDビデオ、知覚できない品質損失で素晴らしい結果