最小限の損失でMKVをAVIに変換する方法


23

MKVをAVIに変換するには、2つのことを行います。私が最初にやることはこれです:

ffmpeg -i filename.mkv -vcodec copy -acodec copy output.avi

またはこれ:

ffmpeg -i filename.mkv -sameq -acodec copy output.avi

どちらもMKVをAVIに変換しますが、問題はビデオが何らかの理由でスムーズに再生されないことです。ただし、もう1つやると修正されます。

ffmpeg -i output.avi -vcodec mpeg4 -b 4000k -acodec mp2 -ab 320k converted.avi

これを実行すると、ファイルは問題なく再生されます。あるファイルに対してこの方法で成功しましたが、別のファイルで試してみましたが、ビデオ品質にわずかながら顕著な損失があります。これは、2番目のステップを実行したときに得られる出力です。

FFmpeg version 0.6.1, Copyright (c) 2000-2010 the FFmpeg developers
  built on Dec 29 2010 18:02:10 with gcc 4.2.1 (Apple Inc. build 5664)
  configuration: 
  libavutil     50.15. 1 / 50.15. 1
  libavcodec    52.72. 2 / 52.72. 2
  libavformat   52.64. 2 / 52.64. 2
  libavdevice   52. 2. 0 / 52. 2. 0
  libswscale     0.11. 0 /  0.11. 0

Seems stream 0 codec frame rate differs from container frame rate: 359.00 (359/1) -> 29.92 (359/12)
Input #0, avi, from 'output.avi':
  Metadata:
    ISFT            : Lavf52.64.2
  Duration: 00:04:17.21, start: 0.000000, bitrate: 3074 kb/s
    Stream #0.0: Video: mpeg4, yuv420p, 704x480 [PAR 229:189 DAR 5038:2835], 29.92 fps, 29.92 tbr, 29.92 tbn, 359 tbc
    Stream #0.1: Audio: vorbis, 48000 Hz, stereo, s16
Output #0, avi, to 'converted.avi':
  Metadata:
    ISFT            : Lavf52.64.2
    Stream #0.0: Video: mpeg4, yuv420p, 704x480 [PAR 229:189 DAR 5038:2835], q=2-31, 4000 kb/s, 29.92 tbn, 29.92 tbc
    Stream #0.1: Audio: mp2, 48000 Hz, stereo, s16, 320 kb/s
Stream mapping:
  Stream #0.0 -> #0.0
  Stream #0.1 -> #0.1

2番目のステップで任意の大きな設定を使用しましたが、以前はうまく機能していましたが、この場合はうまくいきませんでした。どの設定を使用すればよいですか?


これは、ffmpegがsameqに対して提供したものです。オプション 'sameq'は削除されました。品質を保持するオプション(-sameqの目的ではない)を探している場合は、-qscale 0または同等の品質係数オプションを使用します。
DavidG

回答:


25

ビデオとオーディオのビットストリームをコピーするだけで、品質を損なうことなく:

ffmpeg -i filename.mkv -c:v copy -c:a copy output.avi

FFmpegでビデオとオーディオを自動的に変換する場合:

ffmpeg -i filename.mkv output.avi

7
FFmpegのデフォルト設定はひどい傾向があります。さまざまなコーデックを使用したエンコードの一般的なガイドを次に示します。FFmpeg wikiにはさらに詳細なガイドがあります。
evilsoup

破損した最初のコード作成ファイルはVLCで再生されませんでした。
codemirror

18
 ffmpeg -i "input.mkv" -f avi -c:v mpeg4 -b:v 4000k -c:a libmp3lame -b:a 320k "converted.avi"

私の提案:aviコンテナでmpeg4 + mp3を使用してください。


1

ffmulticonverterを使用してみてください。私にとって非常に便利です。ffmpegの一種のGUIであり、すべてのパラメーターを簡単に設定できます。さらに、すべての可能なビデオ形式のリストを見つけることができます。

LP


-3

定期的に使用するショートカットを推奨できますか?

ffmpeg -i filename.mkv -sameq output.avi

4
sameqは同じ品質を意味しないため、使用しないでください。実際、ffmpegから完全に削除されました。むしろ、ターゲットコーデックが提供するものを使用して品質を設定します。
-slhck
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.