
내 비디오를 특정 출력 형식으로 변환하기 위해 FFMPEG(명령줄 입력)를 사용합니다. 내가 직면한 문제는 FFMPEG에 일정한 비트 전송률(700kbps)을 전달하려고 할 때 결과가 다른 비트 전송률(예: 1000kbps)의 출력 비디오라는 것입니다. 이 현상은 모든 영상에서 항상 발생합니다. 왜 이런 현상이 발생하는 걸까요? 일정한 비트 전송률을 유지해야 합니다. 누구든지 나를 도와 줄 수 있습니까?
내 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
minrate
CBR을 강제 실행하려면 , maxrate
및를 사용해야 합니다 bufsize
(참조:여기)
ffmpeg -i myfile.avi
-b 4000k -minrate 4000k -maxrate 4000k -bufsize 1835k
out.m2v