我在笔记本电脑上使用 Ubuntu Vivid,我想重新编译音频和语音,并延迟音频。电影比音频晚了。我从原始视频中解复用了 voice.aac 和 video.h264。我知道可以通过编辑 aac 来实现,但这个文件不需要对 aac 进行任何修改。只是想延迟音频。
答案1
这-itsoffset
选项应该可以满足你的要求:
-itsoffset 偏移量(输入)
设置输入时间偏移。
偏移量必须是时间持续时间规范,请参阅(ffmpeg-utils)ffmpeg-utils(1)手册中的时间持续时间部分。
偏移量会添加到输入文件的时间戳中。指定正偏移量意味着相应的流会延迟偏移量中指定的时间长度。
所以
$ ffmpeg -i video.h264 -itsoffset 1.0 -i voice.aac -map 0:a -map 1:v -c copy remuxed.mp4
应该会有 1 秒的音频延迟。但是,这里可能存在容器问题,因为ffmpeg
必须从头开始弄清楚一切。
更好的是如果你使用原始文件:
$ ffmpeg -i orig.mkv -itsoffset 1.0 -i orig.mkv -map 0:a -map 1:v -c copy remuxed.mkv
这将应用 1 秒的延迟(根据选择-itsoffset
) 到input 0
,并且无延迟到input 1
。-map
选项指定从 中获取(延迟)音频input 0
,从 中获取(非延迟)视频input 1
。
希望更清楚!
(如果您想延迟视频,请更改-map
选项:
$ ffmpeg -i orig.mkv -itsoffset 1.0 -i orig.mkv -map 0:v -map 1:a -c copy remuxed.mkv
指定拍摄延迟的视频和非延迟的音频)