app.py
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
import speech_recognition as spr from googletrans import Translator from gtts import gTTS import os recog1 = spr.Recognizer() mc = spr.Microphone(device_index=2) def recognize_speech(recog, source): try: recog.adjust_for_ambient_noise(source, duration=0.2) # Adjust for background noise audio = recog.listen(source) # Capture audio input recognized_text = recog.recognize_google(audio) # Recognize using Google's recognizer return recognized_text.lower() except spr.UnknownValueError: print("Google Speech Recognition could not understand the audio.") return None except spr.RequestError as e: print(f"Could not request results from Google Speech Recognition service; {e}") return None with mc as source: print("Speak 'hello' to initiate the Translation!") print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") MyText = recognize_speech(recog1, source) if MyText and 'hello' in MyText: translator = Translator() from_lang = 'en' to_lang = 'hi' with mc as source: print("Speak a sentence to translate...") get_sentence = recognize_speech(recog1, source) if get_sentence: try: print(f"Phrase to be Translated: {get_sentence}") text_to_translate = translator.translate(get_sentence, src=from_lang, dest=to_lang) translated_text = text_to_translate.text speak = gTTS(text=translated_text, lang=to_lang, slow=False) speak.save("captured_voice.mp3") os.system("start captured_voice.mp3") except Exception as e: print(f"An error occurred: {e}") else: print("Unable to capture the sentence for translation.") |