
일부 오래된 mp4 파일을 다시 인코딩하고 ffmpeg를 사용하여 다음을 사용하여 이전 파일의 메타데이터를 새 파일로 복사했습니다.
ffmpeg -i YDXJ0100.mp4 -i YDXJ0100_1.mp4 -map 1 -map_metadata 0 -c copy YDXJ0100_.mp4
첫 번째 파일이 이전 버전인 경우 _1은 새 버전이고 _.mp4는 수정된 버전입니다.
그러나 파일별로 수행하려면 시간이 많이 걸립니다. 모든 오래된 파일(그러나 모든 파일은 아님)에 대해 수행하는 방식으로 어떻게 작성할 수 있습니까?
업데이트: 이 코드는 데이터 수정 및 기타 파일 타임스탬프를 제외하고 작동합니다.
for %%f in (*.mp4) do ffmpeg -i "%%f" -i "%%~nf_1.mp4" -map 1 -c copy -map_metadata 0 -map_metadata:s:v 0:s:v -map_metadata:s:a 0:s:a "%%~nf_.mp4"
답변1
배치 파일:
@echo off
for %%f in (*.mp4) do ffmpeg -i "%%f" -i "%%~nf_1.mp4" -map 1 -map_metadata 0 -c copy "%%~nf_.mp4"