답변:
비디오 를 3.84 초 지연 시켜야하는 경우 다음 과 같은 명령을 사용하십시오.
ffmpeg.exe -i "movie.mp4" -itsoffset 3.84 -i "movie.mp4" -map 1:v -map 0:a -c copy "movie-video-delayed.mp4"
오디오 를 3.84 초 지연 시켜야하는 경우 다음 과 같은 명령을 사용하십시오.
ffmpeg.exe -i "movie.mp4" -itsoffset 3.84 -i "movie.mp4" -map 0:v -map 1:a -c copy "movie-audio-delayed.mp4"
ffmpeg 빌드가 너무 오래되지 않았는지 확인하십시오. 2012보다 최신 버전이면 충분합니다.
설명
-itsoffset 3.84 -i "movie.mp4"
옵션 (movie.mp4) 을 따르는 입력 파일에서 모든 스트림의 타임 스탬프를 3.84 초 오프셋 합니다.
-map 1:v -map 0:a
두 번째 (지연) 입력에서 비디오 스트림을 가져오고 첫 번째 입력에서 오디오 스트림을 가져옵니다. 두 입력은 물론 동일한 파일 일 수 있습니다.
더 자세한 설명은 여기에서 찾을 수 있습니다 :
http://alien.slackbook.org/blog/fixing-audio-sync-with-ffmpeg/
ffprobe.exe "input_file.mp4"
또는 ffmpeg.exe -i "input_file.mp4"
지연 될 오디오 스트림의 색인이 2 (예 : 세 번째 스트림)이고 지연된 입력이 두 번째 (내 예에서와 같이). 세 번째 스트림 만 지연 시키려면 첫 번째 입력에서 다른 모든 스트림과 두 번째 (지연) 입력에서 하나의 오디오 스트림 만 가져옵니다.-map 0:0 -map 0:1 -map 1:2
-map 1:m:language:eng
, 모든 스트림을 선택할 것입니다 다수의 오디오 및 / 또는 자막 스트림을 포함하는 기준을 만족시키는 것. stackoverflow.com/questions/46769419/…
-c copy
대신 사용할 수 있습니다 -vcodec copy -acodec copy
, 그리고 itsoffset
어쩌면이 같은 일을 할?, 비디오 만 영향을 ffmpeg -i "movie.mp4" -itsoffset 3.84 -c copy "movie-video-delayed.mp4"
단순히 기간에 마이너스 기호를 추가하는 대신 오디오를 지연 : -3.84
.