매우 짜증나는 상황입니다...
프레임 속도가 29.97인 MPG2 비디오가 있는데 MP4로 변환할 때 프레임이 중복됩니다.
해당 명령(직선 변환, 옵션 없음):
ffmpeg -i ~/Desktop/file.mpg ~/Desktop/file.mp4
프레임이 중복됩니다...
프레임 속도를 설정하는 동안:
ffmpeg -i ~/Desktop/file.mpg -framerate 29.97 ~/Desktop/file.mp4
작동하지 않습니다!
시도해 보도록 안내합니다:
ffmpeg -i ~/Desktop/file.mpg -r 29.97 ~/Desktop/file.mp4
여전히 중복된 프레임이 있습니다!
마지막으로 ffmpeg를 사용해 보았습니다.3번째프레임 속도 옵션!:
ffmpeg -i ~/Desktop/file.mpg -vf fps=fps=29.97 ~/Desktop/file.mp4
단, 출력할 때 오디오/비디오가 동기화되지 않았습니다!
어떤 FPS 옵션을 사용해야 합니까?
답변1
사용
ffmpeg -i ~/Desktop/file.mpg -vsync 0 ~/Desktop/file.mp4
이렇게 하면 복제가 생략됩니다.
-vsync passthrough
와 동의어입니다 -vsync 0
.
답변2
-vsync
이제 더 이상 사용되지 않으므로 대신 사용해야 합니다 -fps_mode
.
기본적으로는 fps_mode
이므로 auto
fps가 자동으로 변경될 수 있습니다. 예를 들어 원본 소스는 가변 프레임 속도이지만 ffmpeg는 이를 자동으로 일정한 프레임 속도로 변경하도록 결정할 수 있으며 이로 인해 프레임이 중복되거나 삭제될 수 있습니다.
fps 변경을 방지하려면 -fps_mode passthrough
. ( -vsync 0
또는 과 동일합니다 -vsync passthrough
).
자세한 내용은 다음을 참조하세요.ffmpeg 문서.
ffmpeg -i ~/Desktop/file.mpg -fps_mode passthrough ~/Desktop/file.mp4