当前位置: 首页 > article >正文

将音频mp3文件添加背景音乐

你可以使用 Python 的 pydub 库来合成两个音频文件,并调整背景音乐的音量,使朗诵的声音更强。以下是实现的 Python 代码:

步骤

  1. 读取朗诵音频文件(speech.mp3)。
  2. 读取背景音乐文件(background.mp3)。
  3. 统一两者的采样率和时长(如果需要)。
  4. 降低背景音乐音量,提高朗诵音频的音量(可调整)。
  5. 合并两条音轨并导出最终的 MP3 文件。

Python 代码

from pydub import AudioSegment

# 读取朗诵音频
speech = AudioSegment.from_file("speech.mp3", format="mp3")

# 读取背景音乐
background_music = AudioSegment.from_file("background.mp3", format="mp3")

# 调整背景音乐的音量,使其变轻(-15 dB,可调)
background_music = background_music - 15

# 调整朗诵音频的音量,使其增强(+5 dB,可调)
speech = speech + 5

# 确保背景音乐和朗诵音频长度一致(循环背景音乐或截断)
if len(background_music) < len(speech):
    background_music = background_music * (len(speech) // len(background_music) + 1)
background_music = background_music[:len(speech)]  # 截取相同长度

# 合并两条音轨
final_audio = speech.overlay(background_music)

# 导出最终音频文件
final_audio.export("output.mp3", format="mp3")

print("音频合成完成,保存为 output.mp3")

参数说明

  • background_music - 15:降低背景音乐的音量,使其轻一点。
  • speech + 5:增加朗诵音频的音量,使其更突出。
  • overlay(background_music):将背景音乐和朗诵音频合并。
  • export("output.mp3", format="mp3"):导出最终的 MP3 文件。

依赖安装

如果你的环境没有安装 pydub,需要先安装:

pip install pydub

此外,你还需要 ffmpeg 支持 MP3 格式转换:

sudo apt install ffmpeg  # Ubuntu
brew install ffmpeg      # macOS

Windows 用户可以从 FFmpeg 官网 下载并配置环境变量。


优化

  • 如果背景音乐较长,可以 fade_in(3000).fade_out(3000) 让音乐渐入渐出:
    background_music = background_music.fade_in(3000).fade_out(3000)
    
  • 也可以调整背景音乐的 stereomono,避免干扰朗诵:
    background_music = background_music.set_channels(1)  # 转单声道
    

这样,你就可以得到一个 朗诵声音清晰、背景音乐柔和的 MP3 文件 🎵😊


http://www.kler.cn/a/532370.html

相关文章:

  • 机器学习--1.KNN机器学习入门
  • 我主编的电子技术实验手册(24)——RL并联电路
  • 趣味Python100例初学者练习01
  • Kafka流式计算架构
  • 基于LLM的路由在专家混合应用:一种新颖的交易框架,该框架在夏普比率和总回报方面提升了超过25%
  • 新月军事战略分析系统使用手册
  • Python迭代器:解密数据遍历的核心机制
  • Ajax:重塑Web交互体验的人性化探索
  • 解析PHP文件路径相关常量
  • Unity飞行代码 超仿真 保姆级教程
  • 数据分析师使用Kutools for Excel 插件
  • C++资源管理
  • Android开发EventBus
  • C_数据结构(队列) —— 队列的初始化、入队列队尾、队列判空、出队列队头、取队头队尾数据、队列有效元素个数、销毁队列
  • JS中document获取元素方法【内涵案例】
  • Paimon写入性能
  • 读写锁: ReentrantReadWriteLock
  • 【C++STL标准模板库】二、STL三大组件
  • 数据结构与算法——二分查找
  • e2studio开发RA4M2(6)----GPIO外部中断(IRQ)配置
  • 机器学习中的关键概念:通过SKlearn的MNIST实验深入理解
  • Linux+Docer 容器化部署之 Shell 语法入门篇 【Shell 替代】
  • 神经网络常见激活函数-sigmoid函数
  • deepseek接入pycharm 进行AI编程
  • 高精度乘法(高×高)
  • 438.找到字符串中所有字母异位词