出典:mac.eltima.com
ビデオストリームとオーディオストリームの開始時間をずらしてエンコードする方法です。手動の音ズレ調整などに。
コマンド例
ビデオに対し、オーディオを2.435秒遅らせる場合。
ffmpeg -i video.mp4 -itsoffset 2.435 -i audio.m4a -map 0:1 -map 1:0 -c copy out.mp4
-map 0:1
0番目の入力ファイルの1番目のストリームを出力する。ストリーム番号はffmpeg -i video.mp4
で確認できる。よくわからなければ-map 0:v
で可-map 1:0
上と同様。よくわからなければ-map 1:a
で可
なお、実際には意図した時間よりも約1フレーム早くなった。切り出すときと同様、FFmpegでの時間の指定は難しいようだ。
FFmpegでは(グローバルでない)オプションはその次の入出力ファイルに掛かることを注記しておく。したがって、-itsoffset 2.435
は-i audio.m4a
に対して適用される。