1. pydub入门:音频处理的瑞士军刀
第一次接触pydub是在处理播客音频时,当时需要把长达2小时的采访录音分割成多个片段。传统音频软件操作繁琐,而pydub用几行代码就搞定了这个需求。这个轻量级Python库已经成为我处理音频任务的首选工具。
pydub的核心优势在于它用简单的API封装了复杂的音频处理逻辑。比如合并两个音频文件,只需要用+运算符就能完成。它底层依赖FFmpeg这个强大的多媒体框架,所以支持几乎所有常见音频格式,包括MP3、WAV、FLAC、AAC等。不过要注意,使用前需要先安装FFmpeg并配置环境变量。
安装pydub非常简单:
pip install pydub
如果是Windows系统,建议下载FFmpeg的静态版本,解压后将bin目录添加到系统PATH。Mac用户可以用Homebrew一键安装:
brew install ffmpeg
2. 音频基础操作:从文件读写开始
2.1 读取不同格式的音频文件
pydub读取音频文件非常灵活。我最常用的是AudioSegment.from_file()方法,它能自动检测大部分音频格式:
from pydub import AudioSegment
# 读取MP3文件
mp3_file = AudioSegment.from_file("podcast.mp3", format="mp3")
# 读取WAV文件
wav_file = AudioSegment.from_file("sound.wav", format="wav")
遇到特殊格式时,比如RAW音频数据,需要指定采样参数:
raw_audio = AudioSegment.from_file("raw_data.raw",
format="raw",
frame_rate=44100,
channels=2,
sample_width=2)
2.2 保存音频文件的技巧
导出音频时,export()方法提供了丰富的参数控制。我经常需要调整比特率来平衡文件大小和音质:
# 导出为高质量MP3
mp3_file.export("output.mp3",
format="mp3",
bitrate="192k",
tags={"artist": "My Podcast", "album": "Season 1"})
# 导出为无损WAV
wav_file.export("o


429

被折叠的 条评论
为什么被折叠?



