Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Video FFMpeg-向已包含声音的视频添加声音_Video_Ffmpeg - Fatal编程技术网

Video FFMpeg-向已包含声音的视频添加声音

Video FFMpeg-向已包含声音的视频添加声音,video,ffmpeg,Video,Ffmpeg,这里是我拥有的:input1.avi——包含声音的视频。input2.avi-不包含声音的视频。music.mp3-音频文件 我想将背景音乐music.mp3文件添加到视频中 C:\input1.avi-ic:\music.mp3-shortest-C:v copy-C:a copy C:\output1.avi 然后output1.avi与input1相同-有声音但没有背景音乐music.mp3的电影 当我尝试使用没有声音的其他文件视频时: C:\input2.avi-ic:\music.mp

这里是我拥有的:input1.avi——包含声音的视频。input2.avi-不包含声音的视频。music.mp3-音频文件

我想将背景音乐music.mp3文件添加到视频中

C:\input1.avi-ic:\music.mp3-shortest-C:v copy-C:a copy C:\output1.avi 然后output1.avi与input1相同-有声音但没有背景音乐music.mp3的电影

当我尝试使用没有声音的其他文件视频时:

C:\input2.avi-ic:\music.mp3-shortest-C:v copy-C:a copy C:\output2.avi 然后output2.avi与input2+相同,它有背景音乐

我也尝试过这样做:

C:\ffmpeg\bin>ffmpeg -i C:\input.avi -i C:\music.mp3 -shortest -c:v copy -filter_ complex "[1]volume=1.5[1a];[0][1a]amerge[a]" -map 0:v -map "[a]" -ac 2 C:\output1.avi
但下一个错误是:

ffmpeg version N-78949-g6f5048f Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 5.3.0 (GCC)
  configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-av
isynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enab
le-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --
enable-libdcadec --enable-libfreetype --enable-libgme --enable-libgsm --enable-l
ibilbc --enable-libmodplug --enable-libmfx --enable-libmp3lame --enable-libopenc
ore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --ena
ble-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable
-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --ena
ble-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx
264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable
-lzma --enable-decklink --enable-zlib
  libavutil      55. 19.100 / 55. 19.100
  libavcodec     57. 27.101 / 57. 27.101
  libavformat    57. 28.100 / 57. 28.100
  libavdevice    57.  0.101 / 57.  0.101
  libavfilter     6. 39.100 /  6. 39.100
  libswscale      4.  0.100 /  4.  0.100
  libswresample   2.  0.101 /  2.  0.101
  libpostproc    54.  0.100 / 54.  0.100
Input #0, avi, from 'C:\output1.avi':
  Metadata:
    encoder         : Lavf57.28.100
  Duration: 00:02:05.76, start: 0.000000, bitrate: 450 kb/s
    Stream #0:0: Video: mpeg4 (Simple Profile) (XVID / 0x44495658), yuv420p, 720
x480 [SAR 1:1 DAR 3:2], 440 kb/s, 25 fps, 25 tbr, 25 tbn, 25 tbc
    Stream #0:1: Audio: mp3 (U[0][0][0] / 0x0055), 44100 Hz, stereo, s16p, 128 k
b/s
[mp3 @ 00000000005abc20] Skipping 0 bytes of junk at 32370.
Input #1, mp3, from 'C:\music.mp3':
  Metadata:
    title           : Broadcast News Package - News Intro
    artist          : After Effects News Template
  Duration: 00:01:57.89, start: 0.025057, bitrate: 194 kb/s
    Stream #1:0: Audio: mp3, 44100 Hz, stereo, s16p, 192 kb/s
    Metadata:
      encoder         : Lavc56.26
[Parsed_amerge_1 @ 0000000000610200] No channel layout for input 1
[Parsed_amerge_1 @ 0000000000610200] No channel layout for input 2
[AVFilterGraph @ 00000000005ddfe0] The following filters could not choose their
formats: Parsed_amerge_1
Consider inserting the (a)format filter near their input or output.
Error configuring complex filters.
I/O error

那么为什么input1不包含背景音乐呢?如何减少或增加music.mp3文件的音量?

一种方法是同时使用ffmpeg和Sox:

使用ffmpeg从原始视频中提取当前音轨 使用Sox合并提取的配乐和背景音乐 使用ffmpeg将新合并的音频曲目替换提取的原始音轨 此sox命令将允许您合并两个音频文件,并根据需要设置音量:

sox-m-v videoVol./temp/videoAudio.mp3-v musicVol./temp/temmusic.mp3./temp/mixedAudio.mp3

有几件事需要注意:

您需要检查音频的采样率是否匹配,如果不匹配,则调整采样率,以便他们查看下面的sox语法以更改音频率 您可能希望减少或延长音乐长度,以便在合并之前与视频配乐匹配 更改音频速率的Sox语法:

sox./temp/videoAudio.mp3-r 44100./temp/videoAudio.mp3


您的问题可能与前一天的复制和粘贴重复?