目录

pydub-AudioSegment入门基于Pyhton3

pydub AudioSegment入门(基于Pyhton3)

简介

pydub 是一个简单易用的 Python 音频处理库,专注于提供高层次的音频操作接口,而 AudioSegment 是它的核心类,用于表示音频片段(如 MP3、WAV、OGG 等格式)。通过 AudioSegment,你可以轻松实现音频文件的加载、切割、合并、格式转换、音量调整等操作。

核心功能

  • 多格式支持

    支持常见音频格式(如 MP3、WAV、AAC、OGG、FLAC 等),依赖 FFmpeg 或 libav 进行底层编解码。

  • 简洁的API

    提供类似列表和字典的操作方式(如切片、拼接、覆盖)。

  • 跨平台

    兼容 Windows、macOS、Linux。

安装与依赖

https://i-blog.csdnimg.cn/direct/aa1ef8265a02465fb1455e20e56fa8a1.png

基本用法

加载音频文件

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秒淡出