지금까지 다음 스크립트를 사용하여 더 큰 비디오에서 비디오의 중요한 부분을 잘라내는 동시에 입력 파일에 있는 여러 오디오 트랙 중에서 가장 많이 동기화된 오디오 트랙을 선택했습니다.
infile="2023-04-15 23-46-57.mp4"
outfile="John Rambo.mp4"
starttimestamp=00:00:04
endtimestamp=01:28:51
ffmpeg -i "$infile" -c:a copy -c:v copy -map 0:0 -map 0:1 -ss $starttimestamp -to $endtimestamp "$outfile"
(0:1은 타임스탬프 및 파일 이름과 마찬가지로 사례별로 변경됩니다.)
지금까지는 완벽하게 작동했습니다. 그러나 현재 ffmpeg 4.4.3(데스크톱 == Fedora 35의 최신 버전) 및 6.0.1(NAS == Synology Community Pack)을 사용하면 A/V를 이와 같이 동기화 상태로 유지할 수 없습니다. . 중간 부분을 잘라내지 않고 오디오 채널(이 경우 0:1)(예: A/V 동기화)만 추출하면 출력이 동기화됩니다. 파일을 잘라낸 후에는 비동기식입니다. 나는 하나 (중간 파일) 대신 단계로 자르고 아래와 같이 ffmpeg 호출의 오디오 부분에 -ss 및 -to 인수를 복사하려고 시도했습니다.
ffmpeg -i "$infile" -c:a copy -ss $starttimestamp -to $endtimestamp -c:v copy -map 0:0 -map 0:1 -ss $starttimestamp -to $endtimestamp "$outfile"
내가 뭘 잘못했나요?