Krishna086 commited on
Commit
42c91bd
·
verified ·
1 Parent(s): 7eeede4

Create audio_processor.py

Browse files
Files changed (1) hide show
  1. audio_processor.py +16 -4
audio_processor.py CHANGED
@@ -24,27 +24,39 @@ def transcribe_audio(audio_file):
24
  return ""
25
 
26
  def text_to_speech(text, target_lang):
27
- """Convert translated text to audio."""
28
  try:
 
 
 
 
29
  # Map target language to gTTS codes
30
  lang_map = {
31
  "English": "en",
32
  "French": "fr",
33
  "Spanish": "es",
34
  "German": "de",
35
- "Chinese": "zh",
36
  "Arabic": "ar",
37
  "Russian": "ru",
38
  "Hindi": "hi",
39
- "Japanese": "ja"
40
  }
41
  lang_code = lang_map.get(target_lang, "en")
42
 
43
  # Generate audio
 
44
  tts = gTTS(text=text, lang=lang_code, slow=False)
45
  audio_path = "output_audio.mp3"
46
  tts.save(audio_path)
47
- return audio_path
 
 
 
 
 
 
 
48
  except Exception as e:
49
  st.error(f"Audio generation failed: {str(e)}")
50
  return None
 
24
  return ""
25
 
26
  def text_to_speech(text, target_lang):
27
+ """Convert translated text to audio with robust handling."""
28
  try:
29
+ if not text:
30
+ st.error("No text to convert to audio.")
31
+ return None
32
+
33
  # Map target language to gTTS codes
34
  lang_map = {
35
  "English": "en",
36
  "French": "fr",
37
  "Spanish": "es",
38
  "German": "de",
39
+ "Chinese": "zh-cn",
40
  "Arabic": "ar",
41
  "Russian": "ru",
42
  "Hindi": "hi",
43
+ "Japanese": "ja",
44
  }
45
  lang_code = lang_map.get(target_lang, "en")
46
 
47
  # Generate audio
48
+ st.write(f"Generating audio for language code: {lang_code}") # Debug output
49
  tts = gTTS(text=text, lang=lang_code, slow=False)
50
  audio_path = "output_audio.mp3"
51
  tts.save(audio_path)
52
+
53
+ # Verify file exists
54
+ if os.path.exists(audio_path):
55
+ st.success(f"Audio generated at: {audio_path}")
56
+ return audio_path
57
+ else:
58
+ st.error("Audio file not found after generation. Check server permissions.")
59
+ return None
60
  except Exception as e:
61
  st.error(f"Audio generation failed: {str(e)}")
62
  return None