static mic
parent
d78f5afcb2
commit
02ce0aeef4
|
|
@ -52,14 +52,24 @@ class Listener():
|
|||
print("[{0}] Microphone with name \"{1}\" found for `Microphone(device_index={0})`".format(index, name))
|
||||
exit()
|
||||
self.name = environ["MIC_NAME"]
|
||||
self._mic = None
|
||||
|
||||
def mic(self):
|
||||
if not self._mic:
|
||||
self._mic = self.new_mic()
|
||||
return self._mic
|
||||
|
||||
def new_mic(self):
|
||||
idx = [idx for idx,v in enumerate(sr.Microphone.list_microphone_names()) if v in self.name.split(",")][0]
|
||||
mic = sr.Microphone(device_index=idx)
|
||||
mic.__enter__()
|
||||
return mic
|
||||
|
||||
def run(self):
|
||||
mic_timeout=int(environ.get("MIC_TIMEOUT", 5))
|
||||
# obtain audio from the microphone
|
||||
r = sr.Recognizer()
|
||||
idx = [idx for idx,v in enumerate(sr.Microphone.list_microphone_names()) if v in self.name.split(",")][0]
|
||||
with sr.Microphone(device_index=idx) as source:
|
||||
return r.listen(source, timeout=mic_timeout, phrase_time_limit=mic_timeout)
|
||||
return r.listen(self.mic(), timeout=mic_timeout, phrase_time_limit=mic_timeout)
|
||||
|
||||
q = queue.Queue(maxsize=1)
|
||||
l = Listener()
|
||||
|
|
|
|||
Loading…
Reference in New Issue