python librosa音频处理库 Core IO and DSP(翻译文档)

英文文档地址: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 TrueS[:, 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)与短时距傅立叶转换一样为重要时频分析工具,其中特别适用于音乐信号的分析,这个转换产生的频谱最大的特色是在频率轴为对数标度(logscale)而不是线性标度(linearscale),且窗口长度(windowlength)会随着频率而改变

参数为:fmin:最小频率

                n_bins:从最小频率开始,频率窗的数

                bins_per_octave:每倍频程的bin数量

                tuning:调整bin

你可能感兴趣的:(音频,librosa,python)