Я хочу добавить преобразование речи в текст на моей консоли, когда пользователь перестал говорить.Для этого я установил модуль speech_recognition и python2.
Когда я запускаю из командной строки python -m speech_recognition
, он может определить конец пользовательской речи, преобразовать его и распечатать на моей консоли и вернуться обратно, чтобы прослушать звук с микрофона, пока я не перестану запускать программу,В этом случае я не уверен, какой конвертер он использует, но вывод достаточно точный
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm_route.c:867:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_route.c:867:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_route.c:867:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_route.c:867:(find_matching_chmap) Found no matching channel map
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for 4294967295, skipping unlock
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for 4294967295, skipping unlock
A moment of silence, please...
Set minimum energy threshold to 1806.92166802
Say something!
Got it! Now to recognize it...
I am testing this speech converters. I am done!
Say something!
Got it! Now to recognize it...
The second test tw going on.
Теперь я пытаюсь воспроизвести, выполняя распознавание речи контролируемым образом, используя приведенные примеры фрагментов кода иЯ выбрал Microsoft Bing для конверсий.
def convert_speech_to_text(audio):
message = sr.Recognizer().recognize_bing(audio, key=BING_KEY)
return(message)
while True:
# try:
with sr.Microphone() as source:
sr.Recognizer().adjust_for_ambient_noise(source)
print(1,'say')
audio = sr.Recognizer().listen(source)
print("Converting")
message = convert_speech_to_text(audio)
print(message)
# except:
# print("error")
Застревает после печати (1, «скажем»), не прекращает прослушивание микрофона, не выполняется никаких преобразований и не возвращается к прослушиванию.
Можно ли как-то воспроизвести то, что команда python -m speech_recognition
делает как файл .py?