我正在将一些用户生成的视频与 ffmpeg-concat 合并在一起。有时会遇到音频同步问题。我认为当音频和视频持续时间不匹配时它会失败。例如。:
ffprobe -v error -select_streams v:0 -show_entries stream=duration -of default=noprint_wrappers=1:nokey=1 IMG_7679.mov
16.666016
ffprobe -v error -select_streams a:0 -show_entries stream=duration -of default=noprint_wrappers=1:nokey=1 IMG_7679.mov
16.670998
问题是——如何在 concat 之前使音频和视频持续时间相等,而不会丢失内容?或者,也许经典的 ffmpeg 的 concat 以某种方式解决了这个问题,我应该使用它?
最佳答案
您可以使用 trim
和或 atrim
过滤器以剪切音频或视频的一部分。
[v]trim=0:3.23,setpts=START-PTS[vout]
[a]atrim=0:3.23,asetpts=START-PTS[aout]
setpts 和 asetpts 修复时间戳
关于audio - 如何使 ffmpeg 的视频和音频持续时间相同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63530641/