快捷方式

Vad

class torchaudio.transforms.Vad(sample_rate: int, trigger_level: float = 7.0, trigger_time: float = 0.25, search_time: float = 1.0, allowed_gap: float = 0.25, pre_trigger_time: float = 0.0, boot_time: float = 0.35, noise_up_time: float = 0.1, noise_down_time: float = 0.01, noise_reduction_amount: float = 1.35, measure_freq: float = 20.0, measure_duration: Optional[float] = None, measure_smooth_time: float = 0.4, hp_filter_freq: float = 50.0, lp_filter_freq: float = 6000.0, hp_lifter_freq: float = 150.0, lp_lifter_freq: float = 2000.0)[source]

语音活动检测器 (Voice Activity Detector)。类似于 SoX 实现。

This feature supports the following devices: CPU, CUDA This API supports the following properties: TorchScript

尝试从语音录音的两端修剪静音和轻微的背景声音。该算法目前使用简单的倒谱功率测量来检测语音,因此可能会被其他声音(尤其是音乐)误导。

该效果只能从音频的前端进行修剪,因此若要从后端修剪,必须同时使用反向效果。

参数:
  • 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) 该算法(Python 内部)——为了检测所需音频的开始而进行的估计/降噪。此选项设置初始噪声估计的时间。(默认值: 0.35)

  • noise_up_time (float, optional) – 用于处理噪声水平增加的情况。(默认值: 0.1)

  • noise_down_time (float, optional) – 用于处理噪声水平降低的情况。(默认值: 0.01)

  • noise_reduction_amount (float, optional) – 检测算法中用于减少噪声估计的量。(默认值: 1.35) (Note: Corrected translation based on SoX doc)

  • measure_freq (float, optional) – 处理/测量的频率。(默认值: 20.0)

  • measure_duration – (float or None, optional) 测量持续时间。(默认值: 测量周期的两倍;即存在重叠。)

  • 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)

示例
>>> waveform, sample_rate = torchaudio.load("test.wav", normalize=True)
>>> waveform_reversed, sample_rate = apply_effects_tensor(waveform, sample_rate, [["reverse"]])
>>> transform = transforms.Vad(sample_rate=sample_rate, trigger_level=7.5)
>>> waveform_reversed_front_trim = transform(waveform_reversed)
>>> waveform_end_trim, sample_rate = apply_effects_tensor(
>>>     waveform_reversed_front_trim, sample_rate, [["reverse"]]
>>> )
参考资料
forward(waveform: Tensor) Tensor[source]
参数:

waveform (Tensor) – 维度为 (channels, time)(time) 的音频 Tensor。形状为 (channels, time) 的 Tensor 被视为同一事件的多通道录音,最终输出将修剪到任意通道中最早的语音活动位置。

文档

访问 PyTorch 的完整开发者文档

查看文档

教程

获取面向初学者和高级开发者的深入教程

查看教程

资源

查找开发资源并获得解答

查看资源