使用 FFmpeg 将音频输入与视频混合到特定位置

Posted

技术标签:

【中文标题】使用 FFmpeg 将音频输入与视频混合到特定位置【英文标题】:Mix audio input with video to specific location with FFmpeg 【发布时间】:2016-05-17 12:36:02 【问题描述】:

我创建了小型视频编辑工具,您可以使用该工具将一些叠加图像添加到视频中,并在特定位置和持续时间显示它们(过滤器:叠加=启用(从,到...)等)。 现在我还想以与图片相同的方式添加一些简短的音频声音 -> 将它们添加到视频中的特定时间。这意味着如果可能的话,叠加层和音频声音应该在一个命令中。我正在使用 amix 来合并所有声道(video.mp4 和 sound.mp3),但问题是它们都从头开始。我尝试使用 adelay=1500 但实际上我延迟了一个通道,这意味着我听到了 1.5 秒延迟的重复声音。所以我只想延迟 sound.mp3 输入。我做错了吗?

我的尝试是:

-i video.mp4 -i sound.mp3 -filter_complex amix -preset ultrafast -vcodec libx264 -r 24 -profile:v baseline -threads 14 video_output.mp4

非常感谢!

【问题讨论】:

【参考方案1】:

我对使用 FFMPEG 还是很陌生,但我已经使用“-ss 0.3 -i INPUT”来修复两个音频文件混合时的偏移/延迟。

试试这个:

    -i video.mp4 -ss 0.015 -i sound.mp3 -filter_complex amix -preset ultrafast -vcodec libx264 -r 24 -profile:v baseline -threads 14 video_output.mp4

【讨论】:

以上是关于使用 FFmpeg 将音频输入与视频混合到特定位置的主要内容,如果未能解决你的问题,请参考以下文章

如何运行命令行 FFMPEG 并接受多个管道(视频和音频)而不阻塞第一个输入?

ffmpeg:如何将 wav 作为音频输入来创建视频?

将各种音频和视频源混合成一个视频

使用 ffmpeg 和 python 将视频中的所有音频流提取到单独的音频文件中

将音频视频与ffmpeg合并时如何提高结果视频的质量?

使用ffmpeg实现给音频,视频添加水印的操作