손실을 최소화하면서 MKV를 AVI로 변환하는 방법


23

MKV를 AVI로 변환하기 위해 두 가지 작업을 수행합니다. 내가하는 첫 번째 일은 다음과 같습니다.

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

아니면 이거:

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

이 중 하나는 MKV를 AVI로 변환하지만 문제는 어떤 이유로 비디오가 부드럽게 재생되지 않는다는 것입니다. 그래도 괜찮습니다. 하나만 더하면 수정됩니다.

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

이 작업을 수행하면 파일이 문제없이 재생됩니다. 한 파일에 대해이 방법으로 성공했지만 다른 파일에서 시도했지만 비디오 품질에 약간의 눈에 띄는 손실이 있습니다. 이것은 두 번째 단계를 수행 할 때 얻는 결과입니다.

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

방금 두 번째 단계에서 임의로 큰 설정을 사용했으며 이전에는 훌륭하게 작동했지만이 경우에는 그렇지 않았습니다. 어떤 설정을 사용해야합니까?


이것은 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 위키 에는 더 자세한 가이드가 있습니다.
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.