Я пытаюсь сделать простой код распознавания речи:
import speech_recognition as sr
r=sr.Recognizer()
with sr.Microphone() as source:
print("say something")
audio=r.listen(source)
try:
print(r.recognize_google(audio))
except:
pass
Это дает мне эту ошибку:
в pyaudio.py ", строка 441,
in __init__
self._stream = pa.open(**arguments)
OSError: [Errno -9985] Устройство недоступно
Это странно, потому что при тестировании pyaudio с использованием следующегокод:
import pyaudio
pa = pyaudio.PyAudio()
print(pa.get_default_output_device_info())
for i in range(0, pa.get_device_count()):
print("Name: " + pa.get_device_info_by_index(i)["name"])
print("Index: " , pa.get_device_info_by_index(i)["index"])
print("\n")
Он распознает многие устройства, такие как:
{'index': 3, 'structVersion': 2, 'name': 'Speakers (High Definition Audio', 'hostApi': 0, 'maxInputChannels': 0, 'maxOutputChannels': 2, 'defaultLowInputLatency': 0.09, 'defaultLowOutputLatency': 0.09, 'defaultHighInputLatency': 0.18, 'defaultHighOutputLatency': 0.18, 'defaultSampleRate': 44100.0}
Name: Microsoft Sound Mapper - Input
Index: 0
Name: Microphone (High Definition Aud
Index: 1
Name: Microsoft Sound Mapper - Output
Index: 2
Name: Speakers (High Definition Audio
Index: 3
Мой вопрос: как настроить speech_recognition
или pyaudio
таким образом, чтобы он связывался с однимиз доступных устройств?
Примечание: я использую Windows 10 и Python 3.7