speechbrain.augment.codec 模块

通过 torchaudio 进行编解码器数据增强

该库通过 torchaudio 提供编解码器数据增强技术,用于增强音频数据处理。

有关详细指南和使用示例,请参阅以下教程:https://pytorch.ac.cn/audio/stable/tutorials/audio_data_augmentation_tutorial.html

注意:此代码兼容 FFmpeg 作为 torchaudio 后端。使用 FFmpeg2 时,处理的最大样本数限制为 16。

作者
  • Mirco Ravanelli 2023

摘要

CodecAugment

使用 torchaudio 将随机音频编解码器应用于输入波形。

参考

class speechbrain.augment.codec.CodecAugment(sample_rate=16000)[source]

基类: Module

使用 torchaudio 将随机音频编解码器应用于输入波形。

此类提供了一个接口,用于将编解码器数据增强技术应用于音频数据。

参数:

sample_rate (int) – 输入波形的采样率。

示例

>>> waveform = torch.rand(4, 16000)
>>> if torchaudio.list_audio_backends()[0] == 'ffmpeg':
...     augmenter = CodecAugment(16000)
...     output_waveform = augmenter(waveform)
apply_codec(waveform, format=None, encoder=None)[source]

应用选定的音频编解码器。

参数:
  • waveform (torch.Tensor) – 输入波形,形状为 [batch, time]

  • format (str) – 要使用的音频格式(例如,“wav”,“mp3”)。默认为 None。

  • encoder (str) – 用于该格式的编码器(例如,“opus”,“vorbis”)。默认为 None。

返回值:

输入波形的编码版本,形状为 [batch, time]

返回类型:

torch.Tensor

forward(waveform)[source]

从可用列表中应用随机音频编解码器。

参数:

waveform (torch.Tensor) – 输入波形,形状为 [batch, time]

返回值:

输入波形的编码版本,形状为 [batch, time]

返回类型:

torch.Tensor