🚀 基于自定义德语数据集训练的HiFIGAN声码器
本仓库提供了使用基于自定义德语数据集训练的 HiFIGAN 声码器所需的所有工具。该数据集使用 mp3_to_training_data 生成。
预训练模型(目前已训练8个轮次)以频谱图作为输入,并输出波形。通常,声码器会在将输入文本转换为频谱图的TTS模型之后使用。
🚀 快速开始
✨ 主要特性
- 基于自定义德语数据集训练的HiFIGAN声码器。
- 可与TTS模型配合使用,将频谱图转换为音频。
- 支持在GPU上进行推理。
📦 安装指南
安装SpeechBrain库:
pip install speechbrain
💻 使用示例
基础用法
使用TTS模型(例如 tts-tacotron-german)生成频谱图并将其转换为音频:
import torchaudio
from speechbrain.pretrained import Tacotron2
from speechbrain.pretrained import HIFIGAN
tacotron2 = Tacotron2.from_hparams(source="padmalcom/tts-tacotron2-german", savedir="tmpdir_tts")
hifi_gan = HIFIGAN.from_hparams(source="padmalcom/tts-hifigan-german", savedir="tmpdir_vocoder")
mel_output, mel_length, alignment = tacotron2.encode_text("Mary had a little lamb")
waveforms = hifi_gan.decode_batch(mel_output)
torchaudio.save('example_TTS.wav',waveforms.squeeze(1), 22050)
高级用法
在GPU上进行推理
若要在GPU上进行推理,在调用 from_hparams
方法时添加 run_opts={"device":"cuda"}
:
import torchaudio
from speechbrain.pretrained import Tacotron2
from speechbrain.pretrained import HIFIGAN
tacotron2 = Tacotron2.from_hparams(source="padmalcom/tts-tacotron2-german", savedir="tmpdir_tts", run_opts={"device":"cuda"})
hifi_gan = HIFIGAN.from_hparams(source="padmalcom/tts-hifigan-german", savedir="tmpdir_vocoder", run_opts={"device":"cuda"})
mel_output, mel_length, alignment = tacotron2.encode_text("Mary had a little lamb")
waveforms = hifi_gan.decode_batch(mel_output)
torchaudio.save('example_TTS.wav',waveforms.squeeze(1), 22050)
📄 许可证
本项目采用 Apache 2.0 许可证。
信息表格
属性 |
详情 |
模型类型 |
基于HiFIGAN的声码器 |
训练数据 |
自定义德语数据集 |
许可证 |
Apache 2.0 |