当前位置: 首页 > 知识库问答 >
问题:

如何使用FFMPEG将新的音频(不混音)添加到视频中?

柯镜
2023-03-14
ffmpeg -i video.avi -i audio.mp3 -vcodec codec -acodec codec output_video.avi -newaudio

但是我将ffmpeg更新到了最新版本(ffmpeg version git-2012-06-16-809d71d),现在在这个版本中参数-newaudio不起作用。

请告诉我如何使用FFMPEG将新音频添加到视频(不是混合)中。

共有1个答案

蓝鸿哲
2023-03-14
ffmpeg -i video.mp4 -i audio.wav -map 0:v -map 1:a -c:v copy -shortest output.mp4
  • -map选项允许您手动选择流/音轨。有关更多信息,请参见FFmpeg Wiki:Map。
  • 此示例使用-c:v copy对视频进行流复制(mux)。不会对视频进行重新编码。质量得以保存,过程快速。
    • 如果输入音频格式与输出格式兼容,则将-c:v copy更改为-c copy以流复制视频和音频。
    • 如果要重新编码视频和音频,请删除-c:v copy/-c copy.

    ffmpeg -i video.mkv -i audio.mp3 -map 0 -map 1:a -c:v copy -shortest output.mkv
    
    • -map选项允许您手动选择流/音轨。有关更多信息,请参见FFmpeg Wiki:Map。
    • 此示例使用-c:v copy对视频进行流复制(mux)。不会对视频进行重新编码。质量得以保存,过程快速。
      • 如果输入音频格式与输出格式兼容,则将-c:v copy更改为-c copy以流复制视频和音频。
      • 如果要重新编码视频和音频,请删除-c:v copy/-c copy.

      使用video.mkv中的视频。使用amerge筛选器混合来自video.mkvaudio.m4a的音频:

      ffmpeg -i video.mkv -i audio.m4a -filter_complex "[0:a][1:a]amerge=inputs=2[a]" -map 0:v -map "[a]" -c:v copy -ac 2 -shortest output.mkv
      

      有关更多信息,请参见FFmpeg Wiki:音频通道。

      您可以使用anullsrc过滤器制作静音音频流。滤波器允许您选择所需的通道布局(单声道、立体声、5.1等)和采样率。

      ffmpeg -i video.mp4 -f lavfi -i anullsrc=channel_layout=stereo:sample_rate=44100 \
      -c:v copy -shortest output.mp4
      
      • 将两个音频流合并为一个
      • FFMPEG Wiki:音频通道操作
      • 另一视频中的FFMPEG多路复用视频和音频

 类似资料:
  • 我想从视频中提取对齐的音频流。目标是获得与视频精确对齐的音频序列。 问题:视频和音频序列不对齐。输出音频持续时间比视频输入短。 要复制的脚本: 我的尝试(没有成功): 按照此答案中的建议添加 添加,同时导出视频(链接) 在Audacity中打开。那里的持续时间是 在VLC中打开。持续时间: 显式设置帧率 其他视频文件 如果能给我一些建议,我将不胜感激。非常感谢。

  • 我有一个长音频部分和一个短视频部分,我想在一起mux。 我正在尝试使用以下命令进行MUX: video_0-0002.h264-整个文件(2秒长) Audio.wav-从4秒到6秒 但音频被搞砸了...我怎样才能正确地做呢? 也试过了,听起来好像最后还是有寂静。

  • 我正在尝试将MP3音频文件混合到MP4视频中。经过数小时的搜索,我得出结论,我需要将MP3文件转换为AAC格式,该格式适合MP4容器。 在android中为视频添加音频 但是我找不到任何关于如何将MP3文件转换为AAC格式的留档。那么你对如何将MP3音频转换为AAC音频有什么建议吗? 此外,我还需要在最终视频中的特定时间插入几段音频。

  • 音频和视频都能在第一次正确播放,在音频播放完成时视频循环(因为它更短)。唯一的问题是音频循环不工作,一旦音频第一次完成,流就停止了。 以下是日志: ffmpeg version 4.3.1版权所有(c)2000-2020 ffmpeg开发人员 使用Apple clang version 12.0.0(clang-1200.0.32.27) 配置构建:--prefix=/usr/local/cell

  • 我编写了代码将几个音频文件与1个图像组合成WebM视频。(audio1与默认jpg结合,audio2与默认jpg结合等)。 问题是,在此之后,视频长度比音频长度长25秒(因此音频在视频结束前缩短25秒)。 有没有办法在音频的同时停止视频?这是我使用的代码(我启动一个BAT命令文件)

  • 使用ffmpeg concat连接多个文件似乎会导致音频的时间戳或偏移不匹配。我试过几个视频,发现H.264/MP4也有同样的问题。 使用并对视频进行编码似乎可以很好地工作。当ffmpeg执行全部转换计算时,音频保持同步,似乎可以得到所有正确的结果。 然而,简单地将视频级联而不进行任何转换或编码会导致同步问题缓慢增加。显然,对视频进行编码而不是简单地加入它们将导致信息/质量的损失,所以我宁愿找到一