
これを使うと、品質は悪くないように見えます。
ffmpeg -same_quant -i video.mp4 video.avi
ドキュメントにはffmpeg
次のように書かれています: 「これは同じ品質ではないことに注意してください。必要な場合を除き、このオプションを使用しないでください。」
最高の品質が得られます-same_quant
か、それとも入力と同じ品質が得られ、より推奨されるオプションがありますか?
答え1
(上記のコメントから引用)
使用されるコーデックによっては (一部のコーデックは一部のコンテナと互換性がありません)、ストリームをコピーするだけで済みます ( -codec copy
)。これは、ストリームを再エンコードするのではなく、別のコンテナに再パッケージ化するだけなので、品質の変化を避ける最善の方法です。
オーディオ/ビデオファイルを扱う際には、次の点に留意することが重要です。コンテナ使用されるコーデックからはほとんど独立しています。ファイルを「AVIビデオ」や「MP4ビデオ」と呼ぶのが一般的ですが、これらはコンテナであり、プレーヤーがストリームを再生できるかどうかについてはほとんどわかりません。技術的な制限(たとえば、AVI は h264 と Ogg Vorbis で問題が発生する場合があります) の場合は、任意のコーデックを使用できます。
-same_quant
ffmpeg に同様の品質を達成するように指示する方法のようですが、ビデオを再エンコードすると (少なくとも非可逆コーデックの場合)、同じ品質を得る方法がなくなります。品質を気にする場合、可能な場合はストリームの再エンコードを避けるのがよい経験則です。
したがって、ffmpeg を使用してストリームをコピーするには、次のようにします。
ffmpeg -i video.mp4 -codec copy video.avi
(@Peter.Oが述べたように、オプションの順序は重要なので、ここには-codec copy
必ず を配置します。 を保持することもできます-same_quant
が、ストリームを再エンコードしないので効果はありません。
答え2
FreeBSD 8. 2 では、-codec copy を試しましたが、メッセージ unknown decoded も表示されました。試行錯誤の結果、FreeBSD で動作するものを見つけました。
ffmpeg -i video.mp4 -vcodec copy video.avi