###咱们想着将原音频和配音音频合并成一条音频,这里就须要进行音频同轨了。其命令是:ffmpeg -y -i D:\\ffmpeg_test\\org_video_sound_input.wav -i D:\\ffmpeg_test\\org_voice_input.wav -filter_complex amix=inputs=2:duration=longest D:\\ffmpeg_test\\org_voice_output.wav##将音频左右声道离开,用到ffmpeg的map_channelffmpeg -y -i source.wav -map_channel 0.0.0 01left.wav -map_channel 0.0.1 01right.wav###音频截取,截取0秒到10秒;  用 -ss 和 -t 选项,从第30秒开始,向后截取10秒的视频ffmpeg -y -i source.wav -vn -acodec copy -ss 00:00:00 -t 00:00:08.784 ouput1.wavffmpeg -y -i source.wav -vn -acodec copy -ss 00:00:09.900 -t 00:00:00.530 ouputpe2.wavffmpeg -y -i source.wav -ss 00:00:09.900 -c copy -t 00:00:00.530 -codec copy ouputpe2.wav//to 示意从什么工夫点完结ffmpeg -y -ss 00:00:00 -to 00:00:08.784      -i source.wav -vn -acodec copy  ouput1.wavffmpeg -y -ss 00:00:09.900 -to 00:00:10.150  -i source.wav -vn -acodec copy  ouputpe2.wav####补白,手动生成一条250ms 长的空白音频: test.wav,设置采样率 8000, -ac 1  设置声道数为1# -ac 1:声道数量转成1  -ar 22050:采样率转成22050Hz   -ab 64k:比特率转成64kbffmpeg -f lavfi -t 00:00:00.500 -i anullsrc -ar 8000  test3.wav -y####音频拼接,将多个wav按程序拼接生成一个wavffmpeg -y -i "concat:ouput1.wav|test3.wav|ouputpe2.wav"   -acodec copy  result2.wav###将3个音频合成一个ffmpeg -y -i ouput1.wav -i test3.wav -i ouputpe2.wav -filter_complex "[0:0] [1:0] [2:0] concat=n=3:v=0:a=1 [a]" -map "[a]" outputEnd.wav###设置采样率ffmpeg -i 1.mp3 -i 2.mp3 -i 3.mp3 -filter_complex [0:0][1:0][2:0]concat=n=3:v=0:a=1[a] -map [a] -b:a 32k -ar 8000 4.mp3###双声道转单声道ffmpeg -i  99.wav  -ac 1 10.wav

Go应用示例代码:

    cmd := "ffmpeg -y -ss 00:00:00 -to 00:00:08.784      -i source.wav -vn -acodec copy  ouput1.wav"    _, err := exec.Command("cmd", "/C", cmd).Output() //windows下运行    //_, err := exec.Command("bash", "-c", cmd).Output() //linux 下运行    if err != nil {        fmt.Println(fmt.Sprintf("Failed to execute command: %s,%s", cmd, err.Error()))    }

参考文档:
https://www.jianshu.com/p/2c0...
https://www.jianshu.com/p/7db...