Python之librosa库语音信号处理
Posted 月疯
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python之librosa库语音信号处理相关的知识,希望对你有一定的参考价值。
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库。 |
以上是关于Python之librosa库语音信号处理的主要内容,如果未能解决你的问题,请参考以下文章