快捷方式

HiFiGANVocoderBundle

class torchaudio.prototype.pipelines.HiFiGANVocoderBundle[source]

已弃用

警告

此类从 2.8 版本开始已弃用。它将在 2.9 版本中删除。此弃用是为将 TorchAudio 迁移到维护阶段的大规模重构工作的一部分。更多信息请参阅 https://github.com/pytorch/audio/issues/3902

打包相关信息以使用预训练模型的类

HiFiGANVocoder.

此类提供用于实例化预训练模型以及检索预训练权重和模型附加数据所需信息的接口。

Torchaudio 库会实例化此类对象,每个对象代表一个不同的预训练模型。客户端代码应通过这些实例访问预训练模型。

此包可将梅尔频谱图转换为波形,反之亦然。典型的用例流程是 文本 -> 梅尔频谱图 -> 波形,其中可以使用外部组件(例如 Tacotron2)从文本生成梅尔频谱图。代码示例请参见下方。

示例:将合成的梅尔频谱图转换为音频。
>>> import torch
>>> import torchaudio
>>> # Since HiFiGAN bundle is in prototypes, it needs to be exported explicitly
>>> from torchaudio.prototype.pipelines import HIFIGAN_VOCODER_V3_LJSPEECH as bundle
>>>
>>> # Load the HiFiGAN bundle
>>> vocoder = bundle.get_vocoder()
Downloading: "https://download.pytorch.org/torchaudio/models/hifigan_vocoder_v3_ljspeech.pth"
100%|████████████| 5.59M/5.59M [00:00<00:00, 18.7MB/s]
>>>
>>> # Generate synthetic mel spectrogram
>>> specgram = torch.sin(0.5 * torch.arange(start=0, end=100)).expand(bundle._vocoder_params["in_channels"], 100)
>>>
>>> # Transform mel spectrogram into audio
>>> waveform = vocoder(specgram)
>>> torchaudio.save('sample.wav', waveform, bundle.sample_rate)
示例:与 Tacotron2 一起使用,将文本转换为音频。
>>> import torch
>>> import torchaudio
>>> # Since HiFiGAN bundle is in prototypes, it needs to be exported explicitly
>>> from torchaudio.prototype.pipelines import HIFIGAN_VOCODER_V3_LJSPEECH as bundle_hifigan
>>>
>>> # Load Tacotron2 bundle
>>> bundle_tactron2 = torchaudio.pipelines.TACOTRON2_WAVERNN_CHAR_LJSPEECH
>>> processor = bundle_tactron2.get_text_processor()
>>> tacotron2 = bundle_tactron2.get_tacotron2()
>>>
>>> # Use Tacotron2 to convert text to mel spectrogram
>>> text = "A quick brown fox jumped over a lazy dog"
>>> input, lengths = processor(text)
>>> specgram, lengths, _ = tacotron2.infer(input, lengths)
>>>
>>> # Load HiFiGAN bundle
>>> vocoder = bundle_hifigan.get_vocoder()
Downloading: "https://download.pytorch.org/torchaudio/models/hifigan_vocoder_v3_ljspeech.pth"
100%|████████████| 5.59M/5.59M [00:03<00:00, 1.55MB/s]
>>>
>>> # Use HiFiGAN to convert mel spectrogram to audio
>>> waveform = vocoder(specgram).squeeze(0)
>>> torchaudio.save('sample.wav', waveform, bundle_hifigan.sample_rate)

属性

sample_rate

property HiFiGANVocoderBundle.sample_rate

模型训练所使用的音频的采样率。

类型

浮点数

方法

get_mel_transform

HiFiGANVocoderBundle.get_mel_transform() Module[source]

已弃用

警告

此函数已弃用。它将在 2.9 版本中删除。此弃用是为将 TorchAudio 迁移到维护阶段的大规模重构工作的一部分。更多信息请参阅 https://github.com/pytorch/audio/issues/3902

构造一个将波形转换为梅尔频谱图的类。

get_vocoder

HiFiGANVocoderBundle.get_vocoder(*, dl_kwargs=None) HiFiGANVocoder[source]

已弃用

警告

此函数已弃用。它将在 2.9 版本中删除。此弃用是为将 TorchAudio 迁移到维护阶段的大规模重构工作的一部分。更多信息请参阅 https://github.com/pytorch/audio/issues/3902

构造 HiFiGAN 生成器模型,该模型可用作 vocoder,并加载预训练权重。

权重文件将从互联网下载,并使用 torch.hub.load_state_dict_from_url() 进行缓存。

参数 (Args)

dl_kwargs (关键字参数字典):传递给 torch.hub.load_state_dict_from_url()

返回

HiFiGANVocoder 的变体。

文档

访问全面的 PyTorch 开发者文档

查看文档

教程

为初学者和高级开发者提供深入的教程

查看教程

资源

查找开发资源并让您的问题得到解答

查看资源