英文文档地址:http://librosa.github.io/librosa/core.html由于本人才疏学浅,如有翻译错误,请指出,谢谢!
一、Audio processing
1.1 librosa.core.load
加载音频,audioread这种方式能加载的音频格式,我一般都把音频处理成wav格式然后通过该函数加载。参数为:path:音频路径 sr:音频频率(你可以不用原始的音频频率,他有重采样的功能) mono:该值为true时候是单通道、否则为双通道
offset:读音频的开始时间,也就是可以不从头开始读取音频 duration:持续时间,可以不加载全部时间,通过与offset合作读取其中一段音频
dtype:返回的音频信号值的格式,一般不设置
res_type:重采样的格式,一般不用返回值:y:音频的信号值 sr:音频的采样值,如果参数没有设置返回的是原始采样率
1.2 librosa.core.to_mono
把双通道的音频处理成单通道,也就是1.1中的mono
1.3 librosa.core.resample
重采样音频,也就是更改音频的采样率参数为:y:信号值 orig_sr:原始的采样频率
target_sr:你想要的采样频率
res_type:重采样的数据类型
fix:bool值,是否要改变信号长度,true为不改变。
scale:缩放重采样信号,使y和y_hat具有大致相等的总能量。
返回值:y_hat:重采样后的信号
1.4 librosa.core.get_duration
获取音频值、特征矩阵或者是文件名持续时间的秒数(我的理解是通过信号值或者是特征值来获取持续时间秒数)参数为:y:信号值 sr:采样率
S:特征值
n_fft:S特征的傅里叶变化窗口大小 hop_length:同上,S特征获取中窗口移动中每次的步长
center:(这个不太懂,附上原文)
- If True, S[:, t] is centered at y[t * hop_length] #S是该帧中心
- If False, then S[:, t] begins at y[t * hop_length]#S是该帧开始点
filename:直接通过原始文件来算
返回值:d:持续的秒数
1.5 librosa.core.autocorrelate
有界自相关参数为:y:信号值 max_size:要求自相关的长度
axis:沿着的维
返回值:y关于max_size的自相关值
1.6 librosa.core.zero_crossings
寻找过零点参数为:y:信号值 threshold:
-threshold <= y <= threshold 在这范围的值都算0 ref_magnitude:threshold的可缩放
pad:类似与卷积的pad,为0是valid zero-crossing.
zero_pos: If
True then the value 0 is interpreted as having positive sign.#0为正值 If
False, then 0, -1, and +1 all have distinct signs.#各自有各自的意思
axis:维,沿着什么方向 返回值:二值数据,如果是过零点返回true,不是则为false 可以通过np.nonzero(z)返回索引值 1.7 librosa.core.clicks
类似摘取,想要一部分的音频参数为:times:什么时候点击(click)即摘取,秒数为单位 frames:摘取的帧的索引值
sr:输出的采样率 hop_length:即步长,翻译为每帧之间的采样数
click_freq:从什么频率后开始摘取
click_duration:摘取的持续时间
click:摘取方式
length:输出的长度
返回值:click_signal:摘取的信号合成
二、Spectral representations
2.1 librosa.core.stft
短时傅里叶变化参数为:y:信号值
n_fft:傅里叶窗口大小 hop_length:步长,每帧之间的采样数
win_length:窗长,小于等于n_fft,然后pad匹配
window:窗类型,汉明窗等 center:特征是信号的中心还是起始点
dtype:类型
pad_model:对于边缘进行pad
返回值:D:短时傅里叶变化后的矩阵2.2 librosa.core.istft
逆短时傅里叶变化,把短时傅里叶变化的矩阵转为时间序列(信号值)Converts a complex-valued spectrogram
stft_matrix to time-series
y by minimizing the mean squared error between
stft_matrix and STFT of
y as described in
[1].In general, window function, hop length and other parameters should be same as in stft, which mostly leads to perfect reconstruction of a signal from unmodified
stft_matrix.
参数为:stft_matrix:短时傅里叶变化的矩阵 其他参数解释同2.1
返回值:y:时间序列,把短时傅里叶变化变为原来的时间序列,所以是逆!2.3 librosa.core.ifgram
Compute the instantaneous frequency (as a proportion of the sampling rate) obtained as the time-derivative of the phase of the complex spectrum as described by
[1].Calculates regular STFT as a side effect.参数为:norm:STFT归一化 ref_power:最小化阈值估计瞬时频率
返回值:if_gram:瞬时频率
D:短时傅里叶变化2.4 librosa.core.cqt
计算音频的常数Q变化的值,常数Q转换(ConstantQtransform)与短时距傅立叶转换一样为重要时频分析工具,其中特别适用于音乐信号的分析,这个转换产生的频谱最大的特 {MOD}是在频率轴为对数标度(logscale)而不是线性标度(linearscale),且窗口长度(windowlength)会随着频率而改变参数为:fmin:最小频率 n_bins:从最小频率开始,频率窗的数
bins_per_octave:每倍频程的bin数量
tuning:调整bin