FFMPEG가 비디오에 추가 비트 전송률을 추가하는 이유는 무엇입니까?


1

FFMPEG (명령 줄 입력)를 사용하여 비디오를 특정 출력 형식으로 변환합니다. 내가 직면하고있는 문제는 FFMPEG에 일정한 비트 전송률 (700 kbps)을 전달하려고하면 결과가 다른 비트 전송률 (예 : 1000 kbps)의 출력 비디오입니다. 이 현상은 모든 비디오에서 항상 발생합니다. 왜 이런 일이 발생합니까? 일정한 비트 전송률을 유지해야합니다. 누구든지 나를 도울 수 있습니까?

내 FFMPEG 버전은 0.5입니다

FFMPEG에 전달하는 명령 줄 매개 변수는

-i {inputfile}
-b 700k -ab 64k
-vcodec libx264
-acodec libfaac -ac 2 -ar 44100
-y -s 320x240 
{outputfile}

편집하다:

다음 파라미터를 사용할 때 +/- 3 %의 변동으로 CBR을 강제 할 수있었습니다.

 ffmpeg -i myfile.avi
 -b 4000k -minrate 4000k 
 -maxrate 4000k -bufsize 1835k   out.m2v

그러나 매개 변수 세트와 함께 -maxrate 및 -minrate를 사용하면 CBR을 강제 실행할 수 없었습니다. 내 매개 변수 세트는 다음과 같습니다

-i {inputfile}
-b 1200k -minrate 1200k 
 -maxrate 1200k -bufsize 1200k 
-ab 64k -vcodec libx264
-acodec libfaac -ac 2 -ar 44100
-y -s 320x240 
{outputfile}

왜 이런 일이 발생합니까?


1
오디오 비트 전송률이 64kbps를 추가한다는 것을 잊지 마십시오.
llogan

-b스위치가 더 이상 사용되지 않는다고 생각했습니다 .
Marco

@Marco는 더 이상 사용되지 않지만 -b비디오 비트 레이트를 설정 하는 데 사용되는 것과는 다른 의미를 갖지만 이제 전체 비트 레이트 (비디오 및 오디오 모두)를 설정합니다. 비디오 비트 전송률을 설정하려면 -b:v(및 -b:a대신 -ab) 더 적절하게 사용해야 합니다. 그러나이 중 어느 것도 특히 질문자에게 도움이되지 않습니다.
evilsoup

답변:


1

사용해야 CBR 강제로 minrate, maxratebufsize(참조 여기에 )

ffmpeg -i myfile.avi
       -b 4000k -minrate 4000k -maxrate 4000k -bufsize 1835k
       out.m2v
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.