0

I have some voice detection code and it works! but, it runs really slowly. Can I do anything to make it faster?

import speech_recognition
import pyttsx3

recognizer = speech_recognition.Recognizer()

while True:
    try:
        with speech_recognition.Microphone() as mic:
            recognizer.adjust_for_ambient_noise(mic, duration=0.2)
            audio = recognizer.listen(mic)

            text = recognizer.recognize_google(audio)
            text = text.lower()
            print(f" {text}")
    except speech_recognition.UnknownValueError():
    
        recognizer = speech_recognition.Recognizer()
        continue

1 Answers1

1

Try creating mic once instead of each iteration:

import speech_recognition
import pyttsx3

recognizer = speech_recognition.Recognizer()


with speech_recognition.Microphone() as mic:
    while True:
        try:
            recognizer.adjust_for_ambient_noise(mic, duration=0.2)
            audio = recognizer.listen(mic)

            text = recognizer.recognize_google(audio)
            text = text.lower()
            print(f" {text}")
        except speech_recognition.UnknownValueError():
            pass
Yevhen Kuzmovych
  • 10,940
  • 7
  • 28
  • 48