目录
- 简介
- 核心功能
- 安装与依赖
- 基本用法
- 加载音频文件
- 导出音频文件
- 音频基础操作
简介
pydub 是一个简单易用的 Python 音频处理库,专注于提供高层次的音频操作接口,而 AudioSegment 是它的核心类,用于表示音频片段(如 MP3、WAV、OGG 等格式)。通过 AudioSegment,你可以轻松实现音频文件的加载、切割、合并、格式转换、音量调整等操作。
核心功能
-
多格式支持
支持常见音频格式(如 MP3、WAV、AAC、OGG、FLAC 等),依赖 FFmpeg 或 libav 进行底层编解码。 -
简洁的API
提供类似列表和字典的操作方式(如切片、拼接、覆盖)。 -
跨平台
兼容 Windows、macOS、Linux。
安装与依赖
基本用法
加载音频文件
from pydub import AudioSegment
# 加载音频文件(自动检测格式)
audio = AudioSegment.from_file("input.mp3")
# 指定格式加载
audio = AudioSegment.from_wav("input.wav")
audio = AudioSegment.from_mp3("input.mp3")
导出音频文件
audio.export("output.wav", format="wav")
audio.export("output.mp3", format="mp3", bitrate="192k")
音频基础操作
# 获取音频属性
duration = len(audio) # 时长(毫秒)
channels = audio.channels # 声道数
sample_width = audio.sample_width # 采样位深(字节)
frame_rate = audio.frame_rate # 采样率(Hz)
# 切割音频(从第10秒到第20秒)
segment = audio[10_000:20_000]
# 调整音量(增加6分贝)
louder = audio + 6
# 拼接音频
combined = audio1 + audio2
# 重复播放
looped = audio * 3
# 淡入淡出
faded = audio.fade_in(2000).fade_out(3000) # 2秒淡入,3秒淡出