avconv 생성으로 인해 지속 시간이 잘못된 파일이 생성됨

avconv 생성으로 인해 지속 시간이 잘못된 파일이 생성됨

다음 명령을 사용하여 flac에서 가변 속도 mp3를 만들려고 합니다.

avconv -i t.flac -id3v2_version 3 -vn -acodec libmp3lame -aq 0 t.mp3

avconv와 mediainfo 모두 최종 mp3의 재생 시간을 2분 40초로 정확하게 표시하지만, 제가 사용해 본 모든 mp3 플레이어(clementine, juk 및 amarok)에서는 노래 길이가 21분 15초라고 합니다. clementine과 amarok을 사용하여 파일에 대한 세부 정보를 살펴보면 비트 전송률이 32kbps라고 생각한 반면 avconv와 mediainfo는 (정확하게) 전체 비트 전송률을 255kbps로 나열했습니다. (255/32)*2.66 = 21.20이므로 체감 비트레이트가 문제인 것은 확실한데 어떻게 해결해야 할지 모르겠습니다.

재미삼아 다음을 사용하여 고정 비트 전송률 파일을 만들어 보았습니다.

avconv -i t.flac -id3v2_version 3 -vn -acodec libmp3lame -ab 320k u.mp3

이것도 같은 문제가 있습니다. 이상하게도 비트 전송률이 지정되었음에도 불구하고 mediainfo에서는 여전히 비트 전송률이 가변적이라고 보고하며 mp3 플레이어에도 지속 시간과 관련된 동일한 일반적인 문제가 있습니다.

이 문제를 어떻게 해결할 수 있나요?

답변1

일정한 비트 전송률의 경우 수정 사항은 다음 항목에 설명되어 있습니다.libmp3lame을 사용하여 CBR을 얻는 방법:avconv 출력을 파일로 파이프합니다.

avconv -i test_orig.mp3 -b:a 128k -f mp3 - >test_ffmpeg_cbr.mp3

이로 인해 avconv는 CBR에 좋은 mp3 헤더를 사용하게 됩니다.

다른 방법: 결과 mp3에 대해 작업(소스 자료를 더 이상 사용할 수 없을 때 유용함):

avconv -i faulty_mp3 -vn -c:a copy -ss 0:0:0 repaired_mp3

답변2

lame직접 사용하면 어떤 가변 비트 전송률 메커니즘을 선택하든( lame제공 --abr, --vbr-old및 ) --vbr-new동일한 일이 발생합니다 .

그래서 이것은 MP3 형식이나 형편없는 인코더의 한계인 것 같습니다. 이와 같은 플레이어는 mplayer지금까지 경험한 평균 비트 전송률로 전체 길이를 추측하는 것 같습니다.

내가 시도한 파일은 30분을 표시하기 시작했고 10초 후에는 실제 8:08에 가까운 8:15로 떨어졌습니다.

아직까지는 잘 재생되기 때문에 고칠 필요는 없을 것 같습니다. 하드웨어 플레이어가 이를 처리할 수 없는 경우 고정 비트 전송률로 전환해야 합니다. 또는 플레이어가 가변 비트 전송률(OGG/Vorbis?)을 지원하는 다른 형식을 지원하는 경우 완전히 다른 형식을 사용해야 합니다.

답변3

avconv에 이 문제가 있음을 확인할 수 있지만아니요절뚝거리는!내 Linux Mint 14 Nadia에서

avconv 경로의 경우 빠른 수정은 다음을 사용하는 것입니다.수리하다최종 mp3 파일은 다음과 같습니다.vbrfix -always -makevbr -lameinfo imput.mp3 output.mp3

관련 정보