ffmpeg는 타임코드와 프레임 속도를 삽입합니다.

ffmpeg는 타임코드와 프레임 속도를 삽입합니다.

비디오에 시작 타임코드를 삽입하고 프레임 속도를 29.97로 강제하려고 합니다. 그러나 어떤 프레임 속도를 입력하든(-r 29.97을 통해 스크립트의 어느 위치에 있든) ffmpeg는 프레임 속도를 25fps로 강제합니다. fps=29.97도 시도했지만 'fps='의 가치가 하락한 것으로 이해됩니다. 내가 실행하는 명령은 다음과 같습니다.

ffmpeg -i /INPUT/FILE/SEQUENCE_%04d.jpg -vf -r 29.97 -vcodec prores -profile:v 0 -c:a mp2 -timecode 09:08:52:00 /OUTPUT/FILE.mov

나는 이 태그들의 모든 조합을 시도해 보았고, 무슨 일이 있어도 25fps를 얻었습니다. 이 문제를 해결해 본 사람이 있나요?

미리 감사드립니다.

답변1

명령이 올바르게 표시되면 구문이 잘못되었습니다.

...-vf -r 29.97...<-- 이는 비디오 필터 옵션에 대한 인수로 프레임 속도 플래그를 설정하는 것입니다. 29.97그런 다음 출력 파일 이름으로 해석됩니다.

다른 점은 이미지 시퀀스가 ​​25fps(기본값)로 해석되므로 명령이 작동하더라도 출력이 중복된 프레임을 갖게 되어 16% 느려진다는 것입니다.

대신 정확하게 입력하려면 29.97 또는 30000/1001로 설정하세요.

ffmpeg -framerate 30000/1001 -i /INPUT/FILE/SEQUENCE_%04d.jpg -c:v prores -profile:v 0 -c:a mp2 -timecode 09:08:52:00 /OUTPUT/FILE.mov

관련 정보