当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python PyTorch phase_vocoder用法及代码示例


本文简要介绍python语言中 torchaudio.functional.phase_vocoder 的用法。

用法:

torchaudio.functional.phase_vocoder(complex_specgrams: torch.Tensor, rate: float, phase_advance: torch.Tensor) → torch.Tensor

参数

  • complex_specgrams(Tensor) -(…, freq, num_frame, complex=2) 维度的实数张量或具有复杂 dtype 的维度 (…, freq, num_frame) 的张量。

  • rate(float) -加速系数

  • phase_advance(Tensor) -每个 bin 中的预期相位提前。 (freq, 1)的尺寸

返回

拉伸频谱图。生成的张量与输入频谱图具有相同的 dtype,但帧数更改为 ceil(num_frame / rate)

返回类型

Tensor

给定一个 STFT 张量,在不以 rate 系数修改音高的情况下及时加速。

示例 - 使用复杂 dtype 的张量
>>> freq, hop_length = 1025, 512
>>> # (channel, freq, time)
>>> complex_specgrams = torch.randn(2, freq, 300, dtype=torch.cfloat)
>>> 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])
示例 - 具有真实 dtype 的张量和复杂字段的额外维度
>>> 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])

相关用法


注:本文由纯净天空筛选整理自pytorch.org大神的英文原创作品 torchaudio.functional.phase_vocoder。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。