Imarticuslearning commited on
Commit
1286398
·
verified ·
1 Parent(s): d32f3a2

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +23 -3
app.py CHANGED
@@ -11,6 +11,7 @@ import random
11
  from html import escape
12
  import asyncio
13
  import edge_tts
 
14
  import pandas as pd
15
  import tempfile
16
  import traceback
@@ -86,12 +87,31 @@ def get_questions(prompt, input_text, num_questions=3, max_retries=10):
86
 
87
  return new_questions
88
 
89
- async def generate_question_audio(question, voice="en-IE-EmilyNeural"):
90
  clean_question = re.sub(r'[^A-Za-z0-9.,?! ]+', '', question)
91
  tts = edge_tts.Communicate(text=clean_question, voice=voice)
92
  with tempfile.NamedTemporaryFile(delete=False, suffix=".mp3") as tmp_file:
93
- await tts.save(tmp_file.name)
94
- return tmp_file.name
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
95
 
96
  ########################################///////////////////////////////////////////////////#########################################
97
 
 
11
  from html import escape
12
  import asyncio
13
  import edge_tts
14
+ from gtts import gTTS
15
  import pandas as pd
16
  import tempfile
17
  import traceback
 
87
 
88
  return new_questions
89
 
90
+ async def generate_question_audio(question, voice="en-US-JennyNeural"):
91
  clean_question = re.sub(r'[^A-Za-z0-9.,?! ]+', '', question)
92
  tts = edge_tts.Communicate(text=clean_question, voice=voice)
93
  with tempfile.NamedTemporaryFile(delete=False, suffix=".mp3") as tmp_file:
94
+ try:
95
+ # 🔹 Try Edge-TTS first
96
+ tts = edge_tts.Communicate(text=clean_question, voice=voice)
97
+ await tts.save(tmp_file.name)
98
+ #print("✅ Edge-TTS audio generated successfully.")
99
+ return tmp_file.name
100
+ except Exception as e:
101
+ #print(f"⚠️ Edge-TTS failed: {e}")
102
+ #print("⏪ Falling back to Google TTS...")
103
+
104
+ try:
105
+ # 🔹 Fallback: Google TTS (works inside Hugging Face)
106
+ tts = gTTS(text=clean_question, lang="en")
107
+ tts.save(tmp_file.name)
108
+ #print("✅ gTTS fallback audio generated successfully.")
109
+ return tmp_file.name
110
+
111
+ except Exception as e2:
112
+ print(f"❌ gTTS also failed: {e2}")
113
+ return None
114
+
115
 
116
  ########################################///////////////////////////////////////////////////#########################################
117