Jofthomas HF staff commited on
Commit
64eb2f2
1 Parent(s): d223871

Update TextGen/router.py

Browse files
Files changed (1) hide show
  1. TextGen/router.py +14 -25
TextGen/router.py CHANGED
@@ -17,6 +17,15 @@ from langchain_google_genai import (
17
  from TextGen import app
18
  from gradio_client import Client, handle_file
19
  from typing import List
 
 
 
 
 
 
 
 
 
20
 
21
  class PlayLastMusic(BaseModel):
22
  '''plays the lastest created music '''
@@ -159,31 +168,11 @@ async def generate_wav(message: VoiceMessage):
159
  raise HTTPException(status_code=500, detail=str(e))
160
  @app.post("/generate_voice")
161
  async def generate_voice(message: VoiceMessage):
162
- try:
163
- voice = determine_vocie_from_npc(message.npc, message.genre)
164
- audio_file_pth = handle_file(voice)
165
-
166
- # Generator function to yield audio chunks
167
- async def audio_stream():
168
- result = predict(
169
- prompt=message.input,
170
- language=message.language,
171
- audio_file_pth=audio_file_pth,
172
- mic_file_path=None,
173
- use_mic=False,
174
- voice_cleanup=False,
175
- no_lang_auto_detect=False,
176
- agree=True,
177
- )
178
- for sampling_rate, audio_chunk in result:
179
- yield audio_chunk.tobytes()
180
- await asyncio.sleep(0) # Yield control to the event loop
181
-
182
- # Return the generated audio as a streaming response
183
- return StreamingResponse(audio_stream(), media_type="audio/wav")
184
-
185
- except Exception as e:
186
- raise HTTPException(status_code=500, detail=str(e))
187
 
188
  @app.get("/generate_song")
189
  async def generate_song(text: str):
 
17
  from TextGen import app
18
  from gradio_client import Client, handle_file
19
  from typing import List
20
+ from elevenlabs.client import ElevenLabs
21
+ from elevenlabs import stream
22
+
23
+
24
+ Eleven_client = ElevenLabs(
25
+ api_key=os.environ["ELEVEN_API_KEY"], # Defaults to ELEVEN_API_KEY
26
+ )
27
+
28
+
29
 
30
  class PlayLastMusic(BaseModel):
31
  '''plays the lastest created music '''
 
168
  raise HTTPException(status_code=500, detail=str(e))
169
  @app.post("/generate_voice")
170
  async def generate_voice(message: VoiceMessage):
171
+ audio_stream = Eleven_client.generate(
172
+ text=message.input,
173
+ stream=True
174
+ )
175
+ return audio_stream
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
176
 
177
  @app.get("/generate_song")
178
  async def generate_song(text: str):