web-dev-qa-db-ja.com

MTSからAVIへのより高品質のFFMPEG変換

いくつかのフォーラムから次のコードを入手しました。私は初心者ですので、質問にご容赦ください...

ビデオをMTSからAVIに非常に高品質で変換する必要があります。現在、変換には次のコードを使用しています。

for %%a in ("*.mts") do ffmpeg.exe -i "%%a" -vcodec libxvid -vtag XVID -aspect 16:9 -maxrate 1800k -b 1500k -qmin 10 -qmax 42 -bufsize 5120  -acodec libmp3lame -ac 2 -ab 160k -y "%%~na_xvid.avi" 
for %%a in ("*.m2ts") do ffmpeg.exe -i "%%a" -vcodec libxvid -vtag XVID -aspect 16:9 -maxrate 1800k -b 1500k -qmin 10 -qmax 42 -bufsize 5120 -acodec libmp3lame -ac 2 -ab 160k -y "%%~na_xvid.avi" 

しかし、私は上記よりも良い品質を期待しています。どうすれば入手できますか?

3
Mohan Kumar

MPEG-4パート2ビデオ

エンコーダーmpeg4またはlibxvidを使用してMPEG-4パート2ビデオにエンコードする場合は、-qscale:v(またはエイリアス-q:v)を使用します。

ffmpeg -i input -c:v libxvid -qscale:v 2 -c:a libmp3lame -ac 2 -q:a 4 output.avi
  • ビデオ品質の場合は-qscale:vを調整し、オーディオ品質の場合は-q:alame -Vと同様)を調整します。

  • 値が小さいほど、両方のオプションの品質が高くなります。 -qscale:v 2では、入力と出力の違いがわからない場合があります。

参照:

H.264&H.265/HEVCビデオ

MPEG-4 Part2ビデオは古くなっています。より新しいフォーマットを使用すると、より低いビットレートでより良い品質が得られます。

ffmpegがlibx264/libx265をサポートしていると仮定した簡単な例(おそらくサポートしています):

ffmpeg -i input output.mp4

上記の例では、以下と同じデフォルト設定を使用します。

ffmpeg -i input -c:v libx264 -crf 23 -preset medium -c:a aac -b:a 128k output.mp4
  • これらのエンコーダーでは、可能であればAVIを避けてください。
  • MP3の代わりにAACを使用してください。

参照:

4
llogan

私自身アマチュアなので、Linuxではffmpeg -i video.MTS -acodec copy -vcodec rawvideo -y video.aviを使用して生のビデオと元のオーディオデータを保持しています。フラグとオプションは

-i: input file
-acodec copy: copy audio codec
-vcodec rawvideo: keep raw data for video codec
-y: silently overwrite output files

1つのディレクトリにある一連の.mtsファイルの場合は、

for f in *.MTS; do ffmpeg -i $f -acodec copy -vcodec rawvideo -y  ${f%.*}.avi; done

これにより、ビデオの品質は維持されますが、非常に大きな.aviファイルが生成されます。

0
bathyscapher