FFmpeg를 사용한 H.264 다중 패스 인코딩

FFmpeg를 사용한 H.264 다중 패스 인코딩

멀티패스를 사용하여 H.264로 비디오를 인코딩하고 싶습니다. 나는 시도했다 :

ffmpeg -y -ss 00:00:12.0 -i "c:\vid\example.mkv" -vframes 420 -vcodec libx264 -preset Veryslow -refs 8 -b:v 1200k -an -pass 1 -f h264 /dev/ 없는

ffmpeg -y -ss 00:00:12.0 -i "c:\vid\example.mkv" -vframes 420 -vcodec libx264 -preset Veryslow -refs 8 -b:v 1200k -acodec copy -pass 2 "c:\vid \encoded.mkv"

하지만 오류 메시지가 표시됩니다.

/dev/null: 해당 파일 또는 디렉터리 없음

ratecontrol_init: 통계 파일을 열 수 없습니다.

출력 스트림 #0:0에 대한 인코더를 여는 중 오류가 발생했습니다. 비트 속도, 속도, 너비 또는 높이와 같은 매개 변수가 잘못되었을 수 있습니다.

내가 뭐 잘못 했어요? 그런데 FFmpeg에서 멀티 패스를 사용하는 방법을 잘 모르겠습니다. 오류를 해결하는 방법에 대한 아이디어가 있습니까?

답변1

Windows에는 가 없습니다 /dev/null. 대신 사용하세요 NUL.

자세한 내용은 다음을 참조하세요.H.264 인코딩에 대한 FFmpeg Wiki 게시물.

답변2

노력하다

ffmpeg -y -ss 00:00:12.0 -i "c:\vid\example.mkv" -vframes 420 -vcodec libx264 -preset veryslow -refs 8 -b:v 1200k -an -pass 1 -f matroska dummy

ffmpeg -y -ss 00:00:12.0 -i "c:\vid\example.mkv" -vframes 420 -vcodec libx264 -preset veryslow -refs 8 -b:v 1200k -acodec copy -pass 2 "c:\vid\encoded.mkv"

두 번째 패스가 완료된 후 첫 번째 패스에서 생성된 더미 파일을 삭제합니다.

관련 정보