Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -127,6 +127,9 @@ LANGUAGE_NAME_TO_CODE = {
|
|
| 127 |
"Sundanese": "su",
|
| 128 |
}
|
| 129 |
|
|
|
|
|
|
|
|
|
|
| 130 |
def detect_language(audio_file):
|
| 131 |
"""Detect the language of the audio file."""
|
| 132 |
# Load the Whisper model (use "base" for faster detection)
|
|
@@ -140,7 +143,10 @@ def detect_language(audio_file):
|
|
| 140 |
|
| 141 |
# Detect the language
|
| 142 |
result = model.transcribe(processed_audio_path, task="detect_language", fp16=False)
|
| 143 |
-
|
|
|
|
|
|
|
|
|
|
| 144 |
|
| 145 |
# Clean up processed audio file
|
| 146 |
os.remove(processed_audio_path)
|
|
@@ -179,11 +185,12 @@ def transcribe_audio(audio_file, language="Auto Detect", model_size="Base (Faste
|
|
| 179 |
# Transcribe the audio
|
| 180 |
if language == "Auto Detect":
|
| 181 |
result = model.transcribe(processed_audio_path, fp16=False) # Auto-detect language
|
| 182 |
-
|
|
|
|
| 183 |
else:
|
| 184 |
language_code = LANGUAGE_NAME_TO_CODE.get(language, "en") # Default to English if not found
|
| 185 |
result = model.transcribe(processed_audio_path, language=language_code, fp16=False)
|
| 186 |
-
detected_language =
|
| 187 |
|
| 188 |
transcription = result["text"]
|
| 189 |
|
|
|
|
| 127 |
"Sundanese": "su",
|
| 128 |
}
|
| 129 |
|
| 130 |
+
# Reverse mapping of language codes to full language names
|
| 131 |
+
CODE_TO_LANGUAGE_NAME = {v: k for k, v in LANGUAGE_NAME_TO_CODE.items()}
|
| 132 |
+
|
| 133 |
def detect_language(audio_file):
|
| 134 |
"""Detect the language of the audio file."""
|
| 135 |
# Load the Whisper model (use "base" for faster detection)
|
|
|
|
| 143 |
|
| 144 |
# Detect the language
|
| 145 |
result = model.transcribe(processed_audio_path, task="detect_language", fp16=False)
|
| 146 |
+
detected_language_code = result.get("language", "unknown")
|
| 147 |
+
|
| 148 |
+
# Get the full language name from the code
|
| 149 |
+
detected_language = CODE_TO_LANGUAGE_NAME.get(detected_language_code, "Unknown Language")
|
| 150 |
|
| 151 |
# Clean up processed audio file
|
| 152 |
os.remove(processed_audio_path)
|
|
|
|
| 185 |
# Transcribe the audio
|
| 186 |
if language == "Auto Detect":
|
| 187 |
result = model.transcribe(processed_audio_path, fp16=False) # Auto-detect language
|
| 188 |
+
detected_language_code = result.get("language", "unknown")
|
| 189 |
+
detected_language = CODE_TO_LANGUAGE_NAME.get(detected_language_code, "Unknown Language")
|
| 190 |
else:
|
| 191 |
language_code = LANGUAGE_NAME_TO_CODE.get(language, "en") # Default to English if not found
|
| 192 |
result = model.transcribe(processed_audio_path, language=language_code, fp16=False)
|
| 193 |
+
detected_language = language
|
| 194 |
|
| 195 |
transcription = result["text"]
|
| 196 |
|