Я пытаюсь создать приложение типа Alexa для компьютера под названием "Эмма", используя Python. Используя модуль Speech Recognition , он будет использовать микрофон в качестве источника для прослушивания пользователя. он работает нормально, но после ответа или выполнения каких-либо действий, таких как поиск, он зависает и больше не работает.
Я подумал, что, возможно, для распознавания речи требуется некоторое ограниченное время, но после поиска я ничего не нашел о Это. Теперь я просто не знаю, это из-за распознавания речи или некоторых других модулей, таких как GTTS (Google Text To Speech).
Вот ссылка на мой репозиторий, если вам нужно увидеть весь код: https://github.com/sina1mhi/emma_virtual_assistant
Пожалуйста, дайте мне знать ваши способы решения проблемы.
Вот часть кода распознавания речи:
def record_audio(ask=False, lang="en-US"):
with sr.Microphone() as source: # microphone as source
print("Emma: I'm listening")
if ask:
speak(ask)
time.sleep(1)
audio = r.listen(source) # listen for the audio via source
voice_data = ''
try:
voice_data = r.recognize_google(
audio, language=lang) # convert audio to text
except sr.UnknownValueError: # error: recognizer does not understand
speak("I did'nt get that")
exit()
except sr.RequestError:
# error: recognizer is not connected
speak('Sorry, the service is down')
exit()
print(f">> {voice_data.lower()}") # print what user said
return voice_data.lower()