Deepfake_Generator / voiceClone.py
kratadata's picture
changes to tts
2ed5af9
from fish_audio_sdk import Session, TTSRequest
import os
import tempfile
fish_api_key = os.getenv("FISH_API_KEY")
session = Session(fish_api_key)
def create_model(audio_file, title:str="test"):
with open(audio_file, "rb") as voice:
print(voice)
model = session.create_model(
title=title,
description=" ",
voices=[voice.read()]
)
return model.id
def tts(model_id, input_text):
audio_chunks = []
tts_request = TTSRequest(
reference_id=model_id,
normalize=False,
text=input_text)
#print(tts_request)
# Collect audio chunks for TTS
for chunk in session.tts(tts_request, backend="speech-1.6"):
audio_chunks.append(chunk)
# Write audio chunks to a temporary file to serve as output
with tempfile.NamedTemporaryFile(delete=False, suffix=".wav") as tts_audio:
for chunk in audio_chunks:
tts_audio.write(chunk)
audio_path = tts_audio.name
return audio_path