Jika Anda perlu menunda video hingga 3,84 detik, gunakan perintah seperti ini:
ffmpeg.exe -i "movie.mp4" -itsoffset 3.84 -i "movie.mp4" -map 1:v -map 0:a -c copy "movie-video-delayed.mp4"
Jika Anda perlu menunda audio hingga 3,84 detik, gunakan perintah seperti ini:
ffmpeg.exe -i "movie.mp4" -itsoffset 3.84 -i "movie.mp4" -map 0:v -map 1:a -c copy "movie-audio-delayed.mp4"
Pastikan, bahwa ffmpeg build Anda tidak terlalu lama, lebih baru dari 2012 sudah cukup.
Penjelasan
-itsoffset 3.84 -i "movie.mp4"
Mengimbangi stempel waktu semua aliran dengan 3,84 detik dalam file input yang mengikuti opsi (movie.mp4).
-map 1:v -map 0:a
Membawa aliran video dari input kedua (tertunda) dan streaming audio dari input pertama - tentu saja kedua input mungkin file yang sama.
Penjelasan lebih lanjut dapat ditemukan di sini:
http://alien.slackbook.org/blog/fixing-audio-sync-with-ffmpeg/
ffprobe.exe "input_file.mp4"
atauffmpeg.exe -i "input_file.mp4"
Anggaplah indeks aliran audio yang akan ditunda adalah 2 (yaitu aliran ketiga) dan bahwa input yang tertunda adalah yang kedua (seperti dalam contoh saya). Untuk hanya menunda aliran ketiga, ambil semua aliran lain dari input pertama dan hanya streaming audio dari input kedua (tertunda):-map 0:0 -map 0:1 -map 1:2
-map 1:m:language:eng
Namun, ingatlah, bahwa ia akan memilih semua stream memenuhi kriteria, mungkin termasuk beberapa audio dan / atau subtitle stream. Anda dapat menemukan informasi lebih lanjut di stackoverflow.com/questions/46769419/…-c copy
dapat digunakan sebagai pengganti-vcodec copy -acodec copy
, danitsoffset
hanya mempengaruhi video, jadi mungkin ini akan bekerja sama ?:ffmpeg -i "movie.mp4" -itsoffset 3.84 -c copy "movie-video-delayed.mp4"
dan untuk menunda audio bukan hanya menambahkan tanda negatif untuk durasi:-3.84
.Jadikan audio hening pertama kali:
Kemudian file concat:
sumber