File size: 1,906 Bytes
287c28c |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
import io
from TTS.utils.synthesizer import Synthesizer
from src.inference import TextToSpeechEngine
# Initialize Hindi model
lang = "hi"
hi_model = Synthesizer(
tts_checkpoint=f'checkpoints/{lang}/fastpitch/best_model.pth',
tts_config_path=f'checkpoints/{lang}/fastpitch/config.json',
tts_speakers_file=f'checkpoints/{lang}/fastpitch/speakers.pth',
# tts_speakers_file=None,
tts_languages_file=None,
vocoder_checkpoint=f'checkpoints/{lang}/hifigan/best_model.pth',
vocoder_config=f'checkpoints/{lang}/hifigan/config.json',
encoder_checkpoint="",
encoder_config="",
use_cuda=True,
)
# Initialize Tamil model
lang = "ta"
ta_model = Synthesizer(
tts_checkpoint=f'checkpoints/{lang}/fastpitch/best_model.pth',
tts_config_path=f'checkpoints/{lang}/fastpitch/config.json',
tts_speakers_file=f'checkpoints/{lang}/fastpitch/speakers.pth',
# tts_speakers_file=None,
tts_languages_file=None,
vocoder_checkpoint=f'checkpoints/{lang}/hifigan/best_model.pth',
vocoder_config=f'checkpoints/{lang}/hifigan/config.json',
encoder_checkpoint="",
encoder_config="",
use_cuda=True,
)
# Setup TTS Engine
models = {
"hi": hi_model,
"ta": ta_model,
}
engine = TextToSpeechEngine(models)
# Hindi TTS inference
hindi_raw_audio = engine.infer_from_text(
input_text="सलाम दुनिया",
lang="hi",
speaker_name="male"
)
byte_io = io.BytesIO()
scipy_wav_write(byte_io, DEFAULT_SAMPLING_RATE, hindi_raw_audio)
with open("hindi_audio.wav", "wb") as f:
f.write(byte_io.read())
# Tamil TTS inference
tamil_raw_audio = engine.infer_from_text(
input_text="வணக்கம் உலகம்",
lang="ta",
speaker_name="female"
)
byte_io = io.BytesIO()
scipy_wav_write(byte_io, DEFAULT_SAMPLING_RATE, tamil_raw_audio)
with open("tamil_audio.wav", "wb") as f:
f.write(byte_io.read())
|