竟然没人来,我来试试!
假设你的有声书和背景音都是mp3格式,并且你已经安装ffmpeg了,可以通过下面命令实现为单一mp3文件添加背景音乐:
[Shell] 纯文本查看 复制代码 ffmpeg -i book.mp3 -i beijing.mp3 -filter_complex "[0:a]volume=1.0[a1];[1:a]volume=0.5[a2];[a1][a2]amix=inputs=2:duration=longest" -y output.mp3
如何实现批量?这里假设要处理的有声书mp3都在“./book”文件夹下,具体文件结构如下
[Asm] 纯文本查看 复制代码 --book
--1.mp3
--2.mp3
...
--beijing.mp3
--mix_audio.bat
生成之后的有声书位于当下文件,这里就要写一个mix_audio.bat脚本来处理了:
[Shell] 纯文本查看 复制代码 @echo off
title 批量混合有声书与背景音乐
:: 设置背景音乐文件路径
set background_music=beijing.mp3
:: 遍历 ./book 文件夹中的所有 MP3 文件
for %%f in (.\book\*.mp3) do (
echo 正在处理 %%f...
:: 使用 FFmpeg 混合背景音乐和有声书音频
ffmpeg -i "%%f" -i "%background_music%" -filter_complex "[0:a][1:a]amix=inputs=2:duration=longest:dropout_transition=3" -y "%%~nf_with_background.mp3"
echo %%f 已处理完毕,输出为 %%~nf_with_background.mp3
)
echo 所有文件已处理完毕!
pause
over! |