torchaudio.functional¶
用于执行常见音频操作的函数。
效用¶
amplitude_to_DB¶
DB_to_amplitude¶
create_fb_matrix¶
-
torchaudio.functional.
create_fb_matrix
(n_freqs:int、f_min:float、f_max:float、n_mels:int、sample_rate:int、norm:Optional[str] = None)→ torch。张量[来源]¶ 创建频次 bin 转换矩阵。
- 参数
- 返回
大小为 (, ) 的三角滤波器组 (fb 矩阵) 表示要高亮/应用于 x 的 Frequencys 数量 FilterBank 的数量。 每列都是一个 filterbank,因此假设有一个矩阵 A size (..., ) 时,应用的结果将为 。
n_freqs
n_mels
n_freqs
A * create_fb_matrix(A.size(-1), ...)
- 返回类型
张肌
create_dct¶
mask_along_axis¶
mask_along_axis_iid¶
mu_law_encoding¶
mu_law_decoding¶
apply_codec¶
-
torchaudio.functional.
apply_codec
(波形:手电筒。张量、sample_rate:int、格式:str、channels_first:bool = True、压缩:可选[浮点] = 无、编码:可选[str] = 无、bits_per_sample:可选[int] = 无)→ torch。张量[来源]¶ 将编解码器作为增强的一种形式。
- 参数
waveform (Tensor) - 音频数据。必须是 2 维的。另请参阅 。
`channels_first`
sample_rate (int) – 音频波形的采样率。
format (str) – 文件格式。
channels_first (bool) – 当 True 时,输入和输出 Tensor 的维度均为 。 否则,它们的维度为 。
[channel, time]
[time, channel]
compression (float) (压缩 (浮点) ) – 用于 WAV 以外的格式。 有关详细信息,请参阅
。
encoding (str, optional) – 更改受支持格式的编码。 有关更多详细信息,请参阅
。
bits_per_sample (int, optional) – 更改受支持格式的位深度。 有关更多详细信息,请参阅
。
- 返回
结果 Tensor。 如果 ,则它有 else 。
channels_first=True
[channel, time]
[time, channel]
- 返回类型
滤波¶
allpass_biquad¶
-
torchaudio.functional.
allpass_biquad
(波形:手电筒。Tensor, sample_rate: int, central_freq: float, Q: float = 0.707) → torch。张量[来源]¶ 设计双极点全通滤波器。类似于 SoX 实现。
- 参数
波形(割torch。Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
central_freq (float) – 中心频率 (以 Hz 为单位)
Q (浮点,可选) – https://en.wikipedia.org/wiki/Q_factor (默认:
0.707
)
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
引用
http://sox.sourceforge.net/sox.html https://www.w3.org/2011/audio/audio-eq-cookbook.html#APF
band_biquad¶
-
torchaudio.functional.
band_biquad
(波形:手电筒。张量、sample_rate:int、central_freq:浮点、Q:浮点 = 0.707、噪声:bool = False)→ torch。张量[来源]¶ 设计双极带滤波器。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
central_freq (float) – 中心频率 (以 Hz 为单位)
Q (浮点,可选) – https://en.wikipedia.org/wiki/Q_factor (默认值: )。
0.707
noise (bool, optional) – 如果 ,则对未音调的音频(例如打击乐)使用备用模式。 如果 ,则使用面向音高音频的模式,即语音、歌唱、 或器乐 (默认值: )。
True
False
False
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
引用
http://sox.sourceforge.net/sox.html https://www.w3.org/2011/audio/audio-eq-cookbook.html#APF
bandpass_biquad¶
-
torchaudio.functional.
bandpass_biquad
(波形:手电筒。Tensor, sample_rate: int, central_freq: float, Q: float = 0.707, const_skirt_gain: bool = False) → torch。张量[来源]¶ 设计 2 极点带通滤波器。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
central_freq (float) – 中心频率 (以 Hz 为单位)
Q (浮点,可选) – https://en.wikipedia.org/wiki/Q_factor (默认:
0.707
)const_skirt_gain (bool, optional) – 如果 ,则使用恒定的裙边增益 (峰值增益 = Q)。 如果 ,则使用恒定的 0dB 峰值增益。(默认:
True
False
False
)
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
引用
http://sox.sourceforge.net/sox.html https://www.w3.org/2011/audio/audio-eq-cookbook.html#APF
bandreject_biquad¶
-
torchaudio.functional.
bandreject_biquad
(波形:手电筒。Tensor, sample_rate: int, central_freq: float, Q: float = 0.707) → torch。张量[来源]¶ 设计 2 极点带阻滤波器。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
central_freq (float) – 中心频率 (以 Hz 为单位)
Q (浮点,可选) – https://en.wikipedia.org/wiki/Q_factor (默认:
0.707
)
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
引用
http://sox.sourceforge.net/sox.html https://www.w3.org/2011/audio/audio-eq-cookbook.html#APF
bass_biquad¶
-
torchaudio.functional.
bass_biquad
(波形:手电筒。张量,sample_rate:int,增益:浮点数,central_freq:浮点数 = 100,Q:浮点数 = 0.707)→torch。张量[来源]¶ 设计低音音调控制效果。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
gain (float) - 提升(或衰减)所需的增益,以 dB 为单位。
central_freq (float, optional) – 中心频率 (以 Hz 为单位)。(默认:
100
)Q (浮点,可选) – https://en.wikipedia.org/wiki/Q_factor (默认值: )。
0.707
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
引用
http://sox.sourceforge.net/sox.html https://www.w3.org/2011/audio/audio-eq-cookbook.html#APF
双二阶¶
-
torchaudio.functional.
biquad
(波形:手电筒。张量、b0:浮点、b1:浮点、b2:浮点、a0:浮点、a1:浮点、a2:浮点)→ torch。张量[来源]¶ 执行输入张量的双二阶滤波器。初始条件设置为 0。https://en.wikipedia.org/wiki/Digital_biquad_filter
反差¶
-
torchaudio.functional.
contrast
(波形:手电筒。Tensor,enhancement_amount:float = 75.0)→ torch。张量[来源]¶ 应用对比效果。类似于 SoX 实现。 与压缩类似,此效果会修改音频信号以使其听起来更响亮
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
enhancement_amount (float) – 控制增强的数量 enhancement_amount 允许的值范围:0-100 请注意,enhancement_amount = 0 仍会显著增强对比度
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
引用
直流移位¶
deemph_biquad¶
-
torchaudio.functional.
deemph_biquad
(波形:手电筒。Tensor,sample_rate: int) → torch。张量[来源]¶ 应用 ISO 908 CD 去加重(搁架)IIR 滤镜。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率、允许的采样率或
44100
48000
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
引用
http://sox.sourceforge.net/sox.html https://www.w3.org/2011/audio/audio-eq-cookbook.html#APF
抖动¶
equalizer_biquad¶
-
torchaudio.functional.
equalizer_biquad
(波形:手电筒。Tensor, sample_rate: int, center_freq: float, gain: float, Q: float = 0.707) → torch。张量[来源]¶ 设计双二阶峰值均衡器滤波器并执行滤波。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
center_freq (float) – 滤波器的中心频率
增益 (float) – 提升(或衰减)处的所需增益,单位为 dB
Q (浮点,可选) – https://en.wikipedia.org/wiki/Q_factor (默认:
0.707
)
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
镶边¶
-
torchaudio.functional.
flanger
(波形:手电筒。张量、sample_rate:int、延迟:float = 0.0、深度:float = 2.0、regen:float = 0.0、宽度:float = 71.0、速度:float = 0.5、phase:float = 25.0、调制:str = 'sinusoidal'、插值:str = 'linear') →Torch。张量[来源]¶ 将镶边效果应用于音频。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., channel, time) 的音频波形。 最多允许 4 个通道
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
delay (float) – 期望的延迟,以毫秒 (ms) 为单位 允许的值范围为 0 到 30
depth (float) – 所需的延迟深度,以毫秒 (ms) 为单位 允许的值范围为 0 到 10
regen (float) – 所需的 regen (Feeback Gain) (以 dB 为单位) 允许的值范围为 -95 到 95
width (float) – 所需的宽度 (延迟增益) ,单位为 dB 允许的值范围为 0 到 100
speed (float) – 调制速度,单位为 Hz 允许的值范围为 0.1 到 10
phase (float) – 多通道的相移百分比 允许的值范围为 0 到 100
modulation (str) – 使用 “sinusoidal” 或 “triangular” 调制。(默认:
sinusoidal
)interpolation (str) – 使用 “linear” 或 “quadratic” 进行延迟线插值。(默认:
linear
)
- 返回
维度波形 (..., channel, time)
- 返回类型
张肌
引用
http://sox.sourceforge.net/sox.html
Scott Lehman,Effects Explained,https://web.archive.org/web/20051125072557/http://www.harmony-central.com/Effects/effects-explained.html
获得¶
highpass_biquad¶
-
torchaudio.functional.
highpass_biquad
(波形:手电筒。Tensor, sample_rate: int, cutoff_freq: float, Q: float = 0.707) → torch。张量[来源]¶ 设计双二阶高通滤波器并执行滤波。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
cutoff_freq (float) – 滤波器截止频率
Q (浮点,可选) – https://en.wikipedia.org/wiki/Q_factor (默认:
0.707
)
- 返回
波形维度 (..., time)
- 返回类型
张肌
过滤器¶
-
torchaudio.functional.
lfilter
(波形:手电筒。Tensor,a_coeffs:torch。Tensor,b_coeffs:torch。Tensor,clamp: bool = True) → torch。张量[来源]¶ 通过评估差分方程来执行 IIR 滤波器。
- 参数
waveform (Tensor) - 维数为 的音频波形。必须规范化为 -1 到 1。
(..., time)
a_coeffs (Tensor) – 维数 的差集方程的分母系数。 较低的延迟系数在前,例如 . 必须与 b_coeffs 相同(必要时填充 0)。
(n_order + 1)
[a0, a1, a2, ...]
b_coeffs (Tensor) – 维数的分子差分方程 。 较低的延迟系数在前,例如 . 必须与 a_coeffs 相同(必要时用 0 填充)。
(n_order + 1)
[b0, b1, b2, ...]
clamp (bool, optional) – 如果 ,则将输出信号限制在 [-1, 1] 范围内(默认:
True
True
)
- 返回
维数为 的波形。
(..., time)
- 返回类型
张肌
lowpass_biquad¶
-
torchaudio.functional.
lowpass_biquad
(波形:手电筒。Tensor, sample_rate: int, cutoff_freq: float, Q: float = 0.707) → torch。张量[来源]¶ 设计双二阶低通滤波器并执行滤波。类似于 SoX 实现。
- 参数
波形(割torch。Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
cutoff_freq (float) – 滤波器截止频率
Q (浮点,可选) – https://en.wikipedia.org/wiki/Q_factor (默认:
0.707
)
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
超速¶
相位¶
-
torchaudio.functional.
phaser
(波形:手电筒。张量、sample_rate:int、gain_in:浮点数 = 0.4、gain_out:浮点数 = 0.74、delay_ms:浮点数 = 3.0、衰减:浮点数 = 0.4、mod_speed:浮点数 = 0.5、正弦曲线:bool = True)→Torch。张量[来源]¶ 对音频应用阶段划分效果。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
gain_in (float) – 提升(或衰减)时所需的输入增益,单位为 dB 允许的值范围为 0 到 1
gain_out (float) – 提升(或衰减)时所需的输出增益,单位为 dB 允许的值范围为 0 到 1e9
delay_ms (float) – 所需的延迟(以毫秒为单位) 允许的值范围为 0 到 5.0
Decay (float) – 相对于增益的期望衰减 允许的值范围为 0 到 0.99
mod_speed (float) – 调制速度,单位为 Hz 允许的值范围为 0.1 到 2
sinusoidal (bool) – 如果 ,则使用正弦调制(最好用于多个乐器) 如果 ,则使用三角调制(为单个乐器提供更清晰的移相效果) (默认:
True
False
True
)
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
引用
http://sox.sourceforge.net/sox.htmlScott Lehman,Effects Explained,https://web.archive.org/web/20051125072557/http://www.harmony-central.com/Effects/effects-explained.html
riaa_biquad¶
-
torchaudio.functional.
riaa_biquad
(波形:手电筒。Tensor,sample_rate: int) → torch。张量[来源]¶ 应用 RIAA 黑胶唱片播放均衡。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)。 允许的采样率(以 Hz 为单位):,''48000'',''88200'',''96000''
44100
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
引用
http://sox.sourceforge.net/sox.html https://www.w3.org/2011/audio/audio-eq-cookbook.html#APF
treble_biquad¶
-
torchaudio.functional.
treble_biquad
(波形:手电筒。张量,sample_rate:int,增益:浮点数,central_freq:浮点数 = 3000,Q:浮点数 = 0.707)→ torch。张量[来源]¶ 设计高音调控制效果。类似于 SoX 实现。
- 参数
waveform (Tensor) – 维度为 (..., time) 的音频波形
sample_rate (int) – 波形的采样率,例如 44100 (Hz)
gain (float) - 提升(或衰减)所需的增益,以 dB 为单位。
central_freq (float, optional) – 中心频率 (以 Hz 为单位)。(默认:
3000
)Q (浮点,可选) – https://en.wikipedia.org/wiki/Q_factor (默认值: )。
0.707
- 返回
(..., 时间) 的维度波形
- 返回类型
张肌
引用
http://sox.sourceforge.net/sox.html https://www.w3.org/2011/audio/audio-eq-cookbook.html#APF
瓦德¶
特征提取¶
-
torchaudio.functional.
vad
(波形:手电筒。张量,sample_rate:int,trigger_level:浮点数 = 7.0,trigger_time:浮点数 = 0.25,search_time:浮点数 = 1.0,allowed_gap:浮点数 = 0.25,pre_trigger_time:浮点数 = 0.0,boot_time:浮点数 = 0.35,noise_up_time:浮点数 = 0.1,noise_down_time:浮点数 = 0.01,noise_reduction_amount:浮点数 = 1.35,measure_freq:浮点数 = 20.0,measure_duration:可选[浮点数] = 无、measure_smooth_time:浮点数 = 0.4、hp_filter_freq:浮点数 = 50.0、lp_filter_freq:浮点数 = 6000.0、hp_lifter_freq:浮点数 = 150.0、lp_lifter_freq:浮点数 = 2000.0)→手电筒。张量[来源]¶ 语音活动检测器。类似于 SoX 实现。 尝试从语音录音的结尾修剪静音和安静的背景声音。 该算法目前使用简单的倒谱功率测量来检测语音, 所以可能会被其他事物所愚弄,尤其是音乐。
该效果只能从音频的前面进行修剪, 所以为了从后面修剪,还必须使用反向效果。
- 参数
waveform (Tensor) - 维度 (..., time) 的音频张量
sample_rate (int) – 音频信号的采样率。
trigger_level (float, optional) (浮点数,可选) – 用于触发活动检测的测量级别。 这可能需要根据噪音水平、信号水平、 以及输入音频的其他特性。(默认值:7.0)
trigger_time (float, optional) – 时间常数 (以秒为单位) 用于帮助忽略短促的声音。(默认值:0.25)
search_time (float, optional) – 音频量 (以秒为单位) 搜索更安静/更短的音频突发以包含之前的音频 拖动到检测到的触发点。(默认值:1.0)
allowed_gap (float, optional) – 两者之间允许的间隔 (以秒为单位) 要包含先前的音频的较长/更短的突发 拖动到检测到的触发点。(默认值:0.25)
pre_trigger_time (float, optional) – 要保留的音频量 (以秒为单位) 在触发点之前以及找到的任何更安静/更短的突发。(默认值:0.0)
boot_time (float, optional) 算法 (内部) – 估计/减少以检测所需音频的开始。 此选项设置初始噪声估计的时间。(默认值:0.35)
noise_up_time (float, optional) – 当噪音水平增加时。(默认值:0.1)
noise_down_time (float, optional) – 当噪音水平降低时。(默认值:0.01)
noise_reduction_amount (float, optional) – 检测算法 (例如 0, 0.5, ...)。(默认:1.35)
measure_freq (float, optional) – 处理/测量。(默认值:20.0)
measure_duration – (浮点,可选)测量持续时间。 (默认值:测量周期的两倍;即重叠。
measure_smooth_time (float, optional) – 光谱测量。(默认值:0.4)
hp_filter_freq (float, optional) – 在检测器算法的输入处。(默认值:50.0)
lp_filter_freq (float, optional) – 在检测器算法的输入处。(默认值:6000.0)
hp_lifter_freq (float, optional) – 在检测器算法中。(默认值:150.0)
lp_lifter_freq (float, optional) – 在检测器算法中。(默认值:2000.0)
- 返回
维度 (..., time) 的音频张量。
- 返回类型
张肌
引用
光谱图¶
-
torchaudio.functional.
spectrogram
(波形:手电筒。张量、pad:int、window:torch 的 intent 和。张量、n_fft:int、hop_length:int、win_length:int、power:可选[float]、标准化:bool、center: bool = True、pad_mode:str = 'reflect'、单面:bool = True)→ torch。张量[来源]¶ 从原始音频信号创建频谱图或一批频谱图。 频谱图可以是仅幅度的,也可以是复数的。
- 参数
waveform (Tensor) - 维度 (..., time) 的音频张量
pad (int) - 信号的两侧填充
window (Tensor) – 应用于/乘以每个帧/窗口的窗口张量
n_fft (int) – FFT 的大小
hop_length (int) – STFT 窗口之间的跃点长度
win_length (int) – 窗口大小
power (float 或 None) – 幅度频谱图的指数, (必须> 0) 例如,1 表示能量,2 表示功率,等等。 如果为 None,则返回复数谱。
normalized (bool) - 是否在 stft 之后按幅度进行归一化
center (bool, optional) – 是否在两侧填充,以便 第 \(t\) 帧以时间 \(t \times \text{hop\_length}\) 为中心。 违约:
waveform
True
pad_mode (string, optional) – 控制 is 时使用的填充方法。违约:
center
True
"reflect"
onesided (bool, optional) – 控制是否将一半的结果返回给 避免冗余。违约:
True
- 返回
维度 (..., freq, time),freq 是 和 的编号 傅里叶分箱,时间是窗口跃点数 (n_frame)。
n_fft // 2 + 1
n_fft
- 返回类型
张肌
格里芬林¶
-
torchaudio.functional.
griffinlim
(specgram:Torch。Tensor,窗口:torch。张量、n_fft:int、hop_length:int、win_length:int、power:float、normalized: bool、n_iter:int、momentum:float、length: Optional[int], rand_init: bool) → torch。张量[来源]¶ - 使用 Griffin-Lim 变换从线性尺度幅度频谱图计算波形。
从 librosa 移植的实现。
- [1] McFee、Brian、Colin Raffel、Dawen Liang、Daniel PW Ellis、Matt McVicar、Eric Battenberg 和 Oriol Nieto。
“librosa:python 中的音频和音乐信号分析。” 第 14 届蟒蛇科学会议论文集,第 18-25 页。2015.
- [2] Perraudin, N., Balazs, P., & Søndergaard, P. L.
“一种快速的 Griffin-Lim 算法,” IEEE 信号处理在音频和声学中的应用研讨会(第 1-4 页), 2013 年 10 月。
- [3] D. W. Griffin 和 J. S. Lim,
“来自改进的短时傅里叶变换的信号估计,” IEEE Trans. ASSP,第 32 卷,第 2 期,第 236-243 页,1984 年 4 月。
- 参数
specgram (Tensor) - 维度为 (..., freq, frames) 的仅幅度的 STFT 频谱图 其中 freq 是 。
n_fft // 2 + 1
window (Tensor) – 应用于/乘以每个帧/窗口的窗口张量
n_fft (int) – FFT 的大小,创建 bin
n_fft // 2 + 1
hop_length (int) – STFT 窗口之间的跃点长度。( 违约:
win_length // 2
)win_length (int) – 窗口大小。(默认:
n_fft
)power (float) - 幅度频谱图的指数, (必须> 0) 例如,1 表示能量,2 表示功率,等等。
normalized (bool) - 是否在 stft 之后按量级进行归一化。
n_iter (int) – 阶段恢复过程的迭代次数。
momentum (float) - 快速 Griffin-Lim 的动量参数。 将此设置为 0 将恢复原始的 Griffin-Lim 方法。 接近 1 的值可以加快收敛速度,但高于 1 的值可能不会收敛。
rand_init (bool) – 如果为 True,则随机初始化阶段,否则为零。
- 返回
waveform of (..., time),其中 time 等于参数(如果给定)。
length
- 返回类型
phase_vocoder¶
-
torchaudio.functional.
phase_vocoder
(complex_specgrams:Torch。Tensor、rate:float、phase_advance:torch。Tensor) → torch 的 Tensor 中。张量[来源]¶ 给定一个 STFT 张量,在不修改音高的情况下通过 的因子 。
rate
- 参数
complex_specgrams (Tensor) – 维度 (..., freq, time, complex=2)
rate (float) - 加速因子
phase_advance (Tensor) – 每个 bin 中的预期相位提前。的维度 (freq, 1)
- 返回
维数为 (..., freq, ceil(time/rate), complex=2) 的复数规格符 Stretch
- 返回类型
张肌
- 例
>>> freq, hop_length = 1025, 512 >>> # (channel, freq, time, complex=2) >>> complex_specgrams = torch.randn(2, freq, 300, 2) >>> rate = 1.3 # Speed up by 30% >>> phase_advance = torch.linspace( >>> 0, math.pi * hop_length, freq)[..., None] >>> x = phase_vocoder(complex_specgrams, rate, phase_advance) >>> x.shape # with 231 == ceil(300 / 1.3) torch.Size([2, 1025, 231, 2])
compute_deltas¶
-
torchaudio.functional.
compute_deltas
(specgram:Torch。Tensor,win_length:int = 5,模式:str = 'replicate') → torch。张量[来源]¶ 计算张量的 delta 系数,通常是频谱图:
\[d_t = \frac{\sum_{n=1}^{\text{N}} n (c_{t+n} - c_{t-n})}{2 \sum_{n=1}^{\text{N}} n^2} \]其中 \(d_t\) 是时间 \(t\) 的增量,\(c_t\) 是时间 \(t\) 的频谱图系数,\(N\) 是 。
(win_length-1)//2
- 参数
- 返回
维度增量的张量 (..., freq, time)
- 返回类型
张肌
- 例
>>> specgram = torch.randn(1, 40, 1000) >>> delta = compute_deltas(specgram) >>> delta2 = compute_deltas(delta)
detect_pitch_frequency¶
-
torchaudio.functional.
detect_pitch_frequency
(波形:手电筒。张量、sample_rate:int、frame_time:float = 0.01、win_length:int = 30、freq_low:int = 85、freq_high:int = 3400)→ torch。张量[来源]¶ 检测俯仰频率。
它是使用归一化互相关函数和中位数平滑实现的。
- 参数
waveform (Tensor) - 维度为 (..., freq, time) 的音频张量
sample_rate (int) – 波形的采样率 (Hz)
frame_time (float, optional) – 帧的持续时间 (Default: )。
10 ** (-2)
win_length (int, optional) – 中值平滑的窗口长度 (以帧数为单位) (默认值: )。
30
freq_low (int, optional) – 可检测到的最低频率 (Hz) (默认值: )。
85
freq_high (int, optional) – 可检测到的最高频率 (Hz) (默认值: )。
3400
- 返回
维度 (..., frame) 的 freq 张量
- 返回类型
张肌
sliding_window_cmn¶
-
torchaudio.functional.
sliding_window_cmn
(波形:手电筒。张量,cmn_window:int = 600,min_cmn_window:int = 100,中心:bool = False,norm_vars:bool = False)→ torch。张量[来源]¶ 对每个话语应用滑动窗口倒谱均值(和可选的方差)归一化。
- 参数
waveform (Tensor) - 维度为 (..., freq, time) 的音频张量
cmn_window ( int , 可选 ) – 用于运行平均 CMN 计算的帧中的窗口 ( int , 默认值 = 600)
min_cmn_window (int,可选) – 解码开始时使用的最小 CMN 窗口 (仅在开始时添加延迟)。 仅在 center == false 时适用,如果 center==true (int, default = 100) 则忽略
center (bool,可选) – 如果为 true,则使用以当前帧为中心的窗口 (在可能的情况下,模数末端效应)。如果为 false,则 window 位于左侧。(布尔值,默认值 = false)
norm_vars (bool, optional) – 如果为 true,则将方差标准化为 1。(布尔值,默认值 = false)
- 返回
维度 (..., frame) 的 freq 张量
- 返回类型
张肌
compute_kaldi_pitch¶
-
torchaudio.functional.
compute_kaldi_pitch
(波形:手电筒。张量,sample_rate:浮点数,frame_length:浮点数 = 25.0,frame_shift:浮点数 = 10.0,min_f0:浮点数 = 50,max_f0:浮点数 = 400,soft_min_f0:浮点数 = 10.0,penalty_factor:浮点数 = 0.1,lowpass_cutoff:浮点数 = 1000,resample_frequency:浮点数 = 4000,delta_pitch:浮点数 = 0.005,nccf_ballast:浮点数 = 7000,lowpass_filter_width:int = 1, upsample_filter_width:int = 5,max_frames_latency:int = 0,frames_per_chunk:int = 0,simulate_first_pass_online:bool = False,recompute_frame:int = 500,snip_edges:bool = True)→ torch。张量[来源]¶ 根据 [1] 中描述的方法提取音高。
此函数计算来自 Kaldi 的 compute-kaldi-pitch-feats 的等效值。
- 参数
waveform (Tensor) - 形状为 (..., time) 的输入波形。
sample_rate (float) (浮点) ) – 波形的采样率。
frame_length (float, optional) ( (float, optional) (以毫秒为单位)) – 帧长度(以毫秒为单位)。(默认值:25.0)
frame_shift (float, optional) – 以毫秒为单位的移帧。(默认值:10.0)
min_f0 (float, optional) – 要搜索的最小 F0 (Hz) (默认值:50.0)
max_f0 (float, optional) – 要搜索的最大 F0 (Hz) (默认值:400.0)
soft_min_f0 (float (float, optional) – 以软方式应用的最小 f0 不得超过 min-f0 (默认值:10.0)
penalty_factor (float, optional) ( (float, optional) (浮点数,可选) – FO 更改的成本因子。(默认值:0.1)
lowpass_cutoff (float, optional) – LowPass filter 的截止频率 (Hz) (默认值:1000)
resample_frequency (float, optional) – 我们将信号下采样到的频率。必须大于 low-pass-cutoff 的两倍。 (默认值:4000)
delta_pitch (float, optional) – 我们的算法测量的音高的最小相对变化。(默认值:0.005)
nccf_ballast (float, optional) – 增加此系数可降低静默帧的 NCCF (默认值:7000)
lowpass_filter_width (int, optional) - 确定低通滤波器宽度的整数,more提供更清晰的滤波器。 (默认值:1)
upsample_filter_width (int, optional) – 确定上采样 NCCF 时过滤器宽度的整数。(默认值:5)
max_frames_latency (int, optional) – 我们允许音高跟踪引入的最大延迟帧数 特征处理 (仅在 和 时影响输出) (默认值: 0)
frames_per_chunk > 0
simulate_first_pass_online=True
frames_per_chunk (int, optional) – 用于能量标准化的帧数。(默认值:0)
simulate_first_pass_online (bool,可选) – 如果为 true,则该函数将输出与在线解码器相对应的特征 将在解码的第一轮中看到 - 而不是功能的最终版本, 这是默认设置。(默认值:False) 如果 .
frames_per_chunk > 0
recompute_frame (int, optional) – 仅与在线音高提取的兼容性相关。 非关键参数;我们重新计算一些正向指针的帧, 在修正了我们对信号能量的估计之后。 如果 .(默认值:500)
frames_per_chunk > 0
snip_edges (bool,可选) – 如果此项设置为 false,则不会截取结束边缘附近的不完整帧。 因此,帧数是文件大小除以 Frame-Shift。 这使得不同类型的特征提供相同的帧数。(默认值:True)
- 返回
Pitch 功能。形状:最后一个维度 对应于 pitch 和 NCCF。
(batch, frames 2)
- 返回类型
张肌
- 参考:
针对自动语音识别进行调整的音高提取算法
Ghahremani、B. BabaAli、D. Povey、K. Riedhammer、J. Trmal 和 S. Khudanpur
2014 IEEE声学、语音和信号处理国际会议(ICASSP),
佛罗伦萨,2014 年,第 2494-2498 页,doi:10.1109/ICASSP.2014.6854049。