CLI tool to control your IoT gadgets.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
roomcomputer/speech/speech.py

39 lines
901 B

import speech_recognition as sr
4 years ago
class voiceInput(object):
recognizer = sr.Recognizer()
4 years ago
muted = True
def voiceToText( self, deviceIndex=30 ):
try:
with sr.Microphone( deviceIndex ) as src:
self.recognizer.adjust_for_ambient_noise( src, 0.2 )
print("Listening...")
audio = self.recognizer.listen( src, phrase_time_limit=5 )
print("Thinking...")
text = self.recognizer.recognize_google(audio)
print(text)
return self.voiceToText(deviceIndex)
except sr.RequestError as err:
print("Unable to request results: {0}".format(err))
return self.voiceToText(deviceIndex)
except sr.UnknownValueError:
print("????")
return self.voiceToText(deviceIndex)
def setMuted( self, setm: bool=True ):
self.muted = setm
def switchMute( self ):
self.setMuted( not self.muted )
voice = voiceInput()
voice.setMuted(False)
print( "out:", voice.voiceToText() )