Tacotron2モデルをHugging Faceで実行し音声生成

$ pip3 install torchaudio speechbrain

import torchaudio
from speechbrain.inference.TTS import Tacotron2
from speechbrain.inference.vocoders import HIFIGAN

# 1. モデルの読み込み (Hugging Faceから自動ダウンロード)
# Tacotron2: テキスト -> メルスペクトログラム
tacotron2 = Tacotron2.from_hparams(source="speechbrain/tts-tacotron2-ljspeech", savedir="tmpdir_tts")
# HiFi-GAN: メルスペクトログラム -> 音声波形
hifi_gan = HIFIGAN.from_hparams(source="speechbrain/tts-hifigan-ljspeech", savedir="tmpdir_vocoder")

# 2. テキストからスペクトログラムを生成
text = "Hello, this is a test of Tacotron 2 on Hugging Face."
mel_output, mel_len, alignment = tacotron2.encode_text(text)

# 3. スペクトログラムから音声を生成
waveforms = hifi_gan.decode_batch(mel_output)

# 4. 音声ファイルとして保存
torchaudio.save('output.wav', waveforms.squeeze(1), 22050)

ほう