通过运行以下代码,我可以获得所有可用的麦克风:
import speech_recognition as sr
for index, name in enumerate(sr.Microphone.list_microphone_names()):
print(f'{index}, {name}')
这些是我所有的麦克风(和其他东西):
0, Microsoft Sound Mapper - Input
1, Microphone (Realtek(R) Audio)
2, Stereo Mix (Realtek(R) Audio)
3, Microsoft Sound Mapper - Output
4, Speakers (Realtek(R) Audio)
5, Primary Sound Capture Driver
6, Microphone (Realtek(R) Audio)
7, Stereo Mix (Realtek(R) Audio)
8, Primary Sound Driver
9, Speakers (Realtek(R) Audio)
10, Realtek ASIO
11, Speakers (Realtek(R) Audio)
12, Stereo Mix (Realtek(R) Audio)
13, Microphone (Realtek(R) Audio)
14, Speakers 1 (Realtek HD Audio output with SST)
15, Speakers 2 (Realtek HD Audio output with SST)
16, PC Speaker (Realtek HD Audio output with SST)
17, Microphone 1 (Realtek HD Audio Mic input with SST)
18, Microphone 2 (Realtek HD Audio Mic input with SST)
19, Microphone 3 (Realtek HD Audio Mic input with SST)
20, Stereo Mix (Realtek HD Audio Stereo input)
如何选择特定麦克风进行语音识别,我需要在索引 1 和 2 处的麦克风之间切换以进行测试,我该怎么做。
参考代码:
import speech_recognition as sr
r = sr.Recognizer()
with sr.Microphone() as source:
print("Speak Anything!")
audio = r.listen(source)
r.energy_threshold = 300
r.pause_threshold = 1
try:
text = r.recognize_google(audio)
print("You said : {}".format(text))
except:
print("Sorry could not recognize what you said!")
有没有办法打印当前正在使用的麦克风?
答案 0 :(得分:0)
使用
mic = Microphone(device_index=1)
完整代码:
import speech_recognition as sr
r = sr.Recognizer()
mic = Microphone(device_index=1)
with mic as source:
print("Speak Anything!")
audio = r.listen(source)