librosa是一个非常强大的python语音信号处理的第三方库,本文参考的是librosa的官方文档,本文主要总结了一些重要,对我来说非常常用的功能。
学会librosa后再也不用用python去实现那些复杂的算法了,只需要一句语句就能轻松实现。
官网:https://librosa.org/doc/latest/core.html
核心 IO 和 DSP
音频加载
|
加载音频文件作为浮点时间系列。 |
|
在固定长度的缓冲区中流式传输音频。 |
|
通过跨通道平均样本将音频信号转换为单声道。 |
|
从orig_sr到target_sr重新组件时间系列 |
|
计算音频时间系列的持续时间(在几秒钟内),功能矩阵,或文件名。 |
获取给定文件的采样率。 |
时域处理
|
边界滞后自动相关性 |
|
通过 Burg 的方法进行线性预测系数 |
|
找到信号的零交叉点:指数如此。 |
mu_compress(x[,亩,量化]) |
粘液压缩 |
mu_expand(x[,亩,量化]) |
穆法扩张 |
信号生成
|
构建"单击轨道"。 |
|
以给定频率构建纯音(舒适)信号。 |
|
构建"鸣叫"或"精扫"信号。 |
光谱表示
|
短时间富利埃转换 (STFT)。 |
(stft_matrix[,hop_length,win_length,...]) |
反向短时间富里埃转换 (ISTFT)。 |
|
时间频率重新分配光谱图。 |
|
计算音频信号的常量Q转换。 |
|
计算反向常量Q转换。 |
|
计算音频信号的混合常数-Q转换。 |
|
计算音频信号的伪常量-Q转换。 |
vqt(y[,sr,hop_length,芬,n_bins,...]) |
计算音频信号的变量Q转换。 |
|
使用 IIR 过滤器的时间频率表示 |
|
快速梅林转换 (FMT) |
|
将复杂值的光谱图 D 分离到其量级 (S) 和相 (P) 组件中,以便。 |
相位恢复
|
使用"快速"格里芬-林算法的近似量级光谱图反转。 |
|
使用"快速"格里芬-林算法的近似常量-Q级光谱图反转。 |
谐波
|
在时间频率表示的谐波下计算能量。 |
|
谐波显著功能。 |
|
相声编码器。 |
规模缩放
|
将振幅光谱图转换为 dB 缩放光谱图。 |
db_to_amplitude(S_db[,参考]) |
将 dB 比例光谱图转换为振幅光谱图。 |
|
将功率光谱图(振幅平方)转换为分贝 (dB) 单位 |
db_to_power(S_db[,参考]) |
将 dB 级光谱图转换为电源光谱图。 |
|
功率光谱仪的感性权重。 |
|
计算一组频率的权重。 |
|
计算一组频率的多个权重。 |
|
计算一组频率的 A 权重。 |
|
计算一组频率的 B 权重。 |
|
计算一组频率的 C 权重。 |
|
计算一组频率的 D 权重。 |
pcen(S[,sr,hop_length,获得,偏见,权力,...]) |
每通道能量正常化(PCEN) |
时间单位转换
|
将帧指数转换为音频样本指数。 |
|
将帧转换为时间(秒)。 |
|
将样本指数转换为 STFT 框架。 |
|
将样本指数转换为时间(在几秒钟内)。 |
|
将时间戳转换为 STFT 框架。 |
|
将时间戳(在几秒钟内)转换为示例指数。 |
|
将块指数转换为框架指数 |
|
将块指数转换为样本指数 |
|
将块指数转换为时间(在几秒钟内) |
频率单元转换
|
将一个或多个频率(在 Hz 中)转换为最近的注释名称。 |
|
获取给定频率的 MIDI 注释编号 |
|
将频率(在 Hz 中)转换为印度斯坦语斯瓦拉 |
|
将频率(在 Hz 中)转换为卡纳蒂奇斯瓦拉 |
获取MIDI注释的频率(Hz) |
|
|
将一个或多个 MIDI 数字转换为注释字符串。 |
|
将 MIDI 编号转换为印度斯坦斯瓦拉 |
|
将 MIDI 数字转换为给定梅拉卡塔拉内的卡纳蒂奇斯瓦拉 |
|
将一个或多个注释名称转换为频率(Hz) |
|
将一个或多个拼写注释转换为 MIDI 编号。 |
|
将西文笔记转换为印度斯坦尼斯瓦拉 |
|
将西方纸币转换为卡纳蒂奇斯瓦拉 |
|
将Hz转换为梅尔斯 |
|
将频率 (Hz) 转换为(分数)八度数字。 |
|
将梅尔箱编号转换为频率 |
|
将八度数字转换为频率。 |
A4_to_tuning(A4[,bins_per_octave]) |
将参考音高频率(例如)转换为调谐估计值,按每个八度箱的分数进行。 |
|
将每个八度音阶(例如)中每个垃圾箱的分数调整偏差(从 0)转换为相对于 A440 的参考音高频率。 |
音乐符号
|
列出所有 12 个按色阶排列的注释名称,根据给定键(主要或次要键)拼写。 |
为给定键构建硅量级度。 |
|
|
拼写卡纳蒂奇斯瓦拉名称给定的梅拉卡塔拉加 |
为给定的梅拉卡塔拉加构建斯瓦拉指数(度) |
|
为给定指标(度)构建 |
|
按姓名和索引列出梅拉卡塔拉加斯。 |
|
列表按名称支持。 |
频率范围生成
fft_frequencies([sr,n_fft]) |
np.fft.fftfreq 的替代实施 |
|
计算常数-Q箱的中心频率。 |
|
计算一系列调整为梅尔比例的声学频率。 |
tempo_frequencies(n_bins],hop_length,sr]) |
计算频率(每分钟节拍)与发病的自动相关性或节奏矩阵相对应。 |
fourier_tempo_frequencies([sr,win_length]) |
计算频率(每分钟节拍)与傅立叶节奏矩阵相对应。 |
音高和调谐
|
基本频率 (F0) 使用概率 YIN (pYIN) 估算。 |
|
使用 YIN 算法进行基本频率 (F0) 估计。 |
|
估计音频时间系列或光谱输入的调整。 |
|
鉴于音高集合,估计其调谐偏移(以垃圾箱的分数)相对于 A440=440.0Hz。 |
|
门槛寄生插值 STFT 上的间距跟踪。 |
杂项
samples_like(X[,hop_length,n_fft,轴]) |
返回一系列样本指数,以匹配功能矩阵中的时间轴。 |
times_like(X[,sr,hop_length,n_fft,轴]) |
返回时间值阵列,以匹配功能矩阵中的时间轴。 |
获取目前由利布罗萨使用的FT库 |
|
|
设置利布罗萨使用的FT库。 |