Я делаю простую программу для прослушивания моего микрофона и с помощью API Google преобразую ее в текст. Все идет хорошо, но моя проблема в том, что когда я перестаю говорить, программа продолжает слушать, и через несколько секунд после того, как я перестал говорить, она останавливается.
Я знаю, что это, вероятно, проблема с моим фоновым шумом, хотя у меня есть микрофон Blue Yeti, поэтому он не должен слетать, но все же я попытался настроить шум, и все же он показал тот же результат.
import speech_recognition as sr
# obtain audio from the microphone
r = sr.Recognizer()
with sr.Microphone(device_index = 1) as source:
print("Say something!")
#audio = r.adjust_for_ambient_noise(source) - Tried also that
audio = r.listen(source)
print('Stopped listening!')
try:
print("Google Speech Recognition thinks you said " + r.recognize_google(audio, language = "he-HE"))
except sr.UnknownValueError:
print("Google Speech Recognition could not understand audio")
except sr.RequestError as e:
print("Could not request results from Google Speech Recognition service; {0}".format(e))
Как и ожидалось, программа продолжает слушать, даже когда я не говорю несколько секунд, что делает ее очень медленной и плохой. Спасибо за помощь!
Вы можете попробовать настроить атрибут pause_threshold
класса Recognizer
.
По умолчанию установлено 0.8
Нашел информацию, посмотрев исходный код Recognizer
здесь: https://github.com/Uberi/speech_recognition/blob/350397d2fb5db318c877f29ee3dc6e6cbf4a393d/speech_recognition/в этом.py#L508
если весь код правильный, попробуйте с наушниками, подключенными к ПК, и, пожалуйста, в настройках наушников с включенным микрофоном ..... так что в основном программа работает, но иногда проблема заключается в микрофоне ... Вот почему программа не показывает никаких ошибок. ... потому что он пытается слушать, но не может понять, потому что проблема в микрофоне или источнике ....