(feat:TTS) create gtts over abstraction

This commit is contained in:
ManishMadan2882
2024-10-29 03:11:51 +05:30
parent 1c791f240a
commit 7ff3a31e72
4 changed files with 55 additions and 0 deletions

View File

@@ -0,0 +1,19 @@
import io
import base64
from gtts import gTTS
from application.tts.base import BaseTTS
class GoogleTTS(BaseTTS):
def __init__(self, text):
self.text = text
def text_to_speech(self):
lang = "en"
audio_fp = io.BytesIO()
tts = gTTS(text=self.text, lang=lang, slow=False)
tts.write_to_fp(audio_fp)
audio_fp.seek(0)
audio_base64 = base64.b64encode(audio_fp.read()).decode("utf-8")
return audio_base64, lang