librosa
是一个用于音频和音乐分析的 Python 库,特别适合处理音乐信息检索(MIR)任务。它提供了丰富的工具和函数来处理音频信号,从基础的音频加载和播放,到高级的特征提取和可视化。以下是 librosa
的一些主要功能和使用示例。
主要功能
-
音频加载和保存:
- 加载音频文件:
librosa.load
- 保存音频文件:
librosa.output.write_wav
- 加载音频文件:
-
时间和频率操作:
- 计算时域和频域特征(如MFCC、色度、谱图等)
- 音调和速度调整
- 时间对齐和音频分割
-
特征提取:
- 梅尔频率倒谱系数(MFCC):
librosa.feature.mfcc
- 色度特征:
librosa.feature.chroma_stft
- 谱图:
librosa.feature.melspectrogram
- 零交叉率、短时能量等
- 梅尔频率倒谱系数(MFCC):
-
音频效果:
- 滤波器应用
- 时域和频域变换
- 音频增益调整
-
可视化:
- 波形图:
librosa.display.waveplot
- 频谱图:
librosa.display.specshow
- 色度图等
- 波形图:
安装
你可以使用 pip 安装 librosa
:
pip install librosa
示例
下面是一些常见的 librosa
用法示例:
1. 加载音频文件
import librosa
# 加载音频文件
y, sr = librosa.load('path/to/audio/file.wav', sr=None) # y 是音频时间序列,sr 是采样率
2. 绘制音频波形
import matplotlib.pyplot as plt
import librosa.display
# 绘制波形
plt.figure(figsize=(