ffmpeg,替换mp4视频文件中的部分音频

use*_*753 0 ffmpeg

我想使用 ffmpeg 将一个 mp4 文件中的部分音频替换为另一个 mp3 文件的部分。这就是我想做的:

ffmpeg -i 2009.mp4 -i birds.mp3 -filter_complex "[0:a]atrim=end=45,asetpts=PTS-STARTPTS[aud1];[1:a]atrim=0:18,asetpts=PTS-STARTPTS[aud2];  [0:a]atrim=start=63,asetpts=PTS-STARTPTS[aud3]; [aud1][aud2][aud3]concat=n=3:v=0:a=1[aout]"  -map 0:v -map "[aout]" -c:v copy   output.mp4
Run Code Online (Sandbox Code Playgroud)

它给了我这个错误:

[NULL @ 000000000596e020] 无法找到“ffmpeg”ffmpeg 的合适输出格式:参数无效

use*_*753 5

我解决了我的问题,现在一切正常。我想用另一个 mp3 文件替换 mp4 文件中前 60 秒的音频,并在最后 3 秒淡出该音频。正确的代码是:

 -y -i  C:\videotemp\temp.mp4 -i intro-mpdified.mp3 -filter_complex "[0:a]atrim=start=60,asetpts=PTS-STARTPTS[aud1];[1:a]atrim=0:60,afade=t=out:st=57:d=3,asetpts=PTS-STARTPTS[aud2];  [aud2][aud1]concat=n=2:v=0:a=1[aout]"  -map 0:v -map "[aout]" -c:v copy -c:a  libmp3lame C:\videotemp\tempnew.mp4
Run Code Online (Sandbox Code Playgroud)