speechbrain.dataio.preprocess 模块

音频的预处理器

摘要

类:

AudioNormalizer

将音频标准化为一种标准格式

参考

class speechbrain.dataio.preprocess.AudioNormalizer(sample_rate=16000, mix='avg-to-mono')[source]

基础类:object

将音频标准化为一种标准格式

Parameters:
  • sample_rate (int) – 输入信号应转换到的采样率。

  • mix ({"avg-to-mono", "keep"}) – “avg-to-mono” - 将所有通道相加并按通道数进行归一化。这也会移除通道维度,生成 [时间] 格式的张量。 “keep” - 不归一化通道信息

Example

>>> import torchaudio
>>> example_file = 'tests/samples/multi-mic/speech_-0.82918_0.55279_-0.082918.flac'
>>> signal, sr = torchaudio.load(example_file, channels_first = False)
>>> normalizer = AudioNormalizer(sample_rate=8000)
>>> normalized = normalizer(signal, sr)
>>> signal.shape
torch.Size([160000, 4])
>>> normalized.shape
torch.Size([80000])

注意

这也会对音频进行上采样。然而,上采样无法在它增加的带宽中产生有意义的信息。通常,如果模型没有专门训练用于上采样数据,它们在上采样数据上的表现不会很好。

__call__(audio, sample_rate)[source]

执行归一化

Parameters:
  • audio (torch.Tensor) – 输入的波形 torch 张量。假设为 [时间, 通道],或 [时间]。

  • sample_rate (int) – 音频采样的速率。

Returns:

audio – 通道和采样率标准化的音频。

Return type:

torch.Tensor