瀏覽代碼

add stt lib

nico 8 年之前
父節點
當前提交
5e837a421b
共有 4 個文件被更改,包括 40 次插入7 次删除
  1. 16 0
      README.md
  2. 1 1
      core/JarvisTrigger.py
  3. 19 2
      core/OrderListener.py
  4. 4 4
      test.py

+ 16 - 0
README.md

@@ -0,0 +1,16 @@
+install pico2wave on Linux
+```
+apt-get install libtts-pico-utils
+```
+
+
+instal flac
+```
+apt-get install flac
+```
+
+Python lib
+```
+pip install SpeechRecognition
+pip install pyaudio
+```

+ 1 - 1
core/JarvisTrigger.py

@@ -30,7 +30,7 @@ class JarvisTrigger:
         :return:
         :return:
         """
         """
 
 
-        detector = snowboydecoder.HotwordDetector(self.model, sensitivity=0.4)
+        detector = snowboydecoder.HotwordDetector(self.model, sensitivity=0.5)
 
 
         # start snowboy loop
         # start snowboy loop
         detector.start(detected_callback=self.main_controller.hotword_detected,
         detector.start(detected_callback=self.main_controller.hotword_detected,

+ 19 - 2
core/OrderListener.py

@@ -1,7 +1,9 @@
+import speech_recognition as sr
+
 
 
 class OrderListener:
 class OrderListener:
 
 
-    def __init__(self, main_controller):
+    def __init__(self, main_controller=None):
         """
         """
         This class is called after we catch the hotword that have woke up JARVIS.
         This class is called after we catch the hotword that have woke up JARVIS.
         We now wait for an order spoken out loud by the user, translate the order into a text and run the action
         We now wait for an order spoken out loud by the user, translate the order into a text and run the action
@@ -16,4 +18,19 @@ class OrderListener:
         Start recording the microphone
         Start recording the microphone
         :return:
         :return:
         """
         """
-        pass
+        # obtain audio from the microphone
+        r = sr.Recognizer()
+        with sr.Microphone() as source:
+            print("Say something!")
+            audio = r.listen(source)
+
+        # recognize speech using Google Speech Recognition
+        try:
+            # for testing purposes, we're just using the default API key
+            # to use another API key, use `r.recognize_google(audio, key="GOOGLE_SPEECH_RECOGNITION_API_KEY")`
+            # instead of `r.recognize_google(audio)`
+            print("Google Speech Recognition thinks you said " + r.recognize_google(audio))
+        except sr.UnknownValueError:
+            print("Google Speech Recognition could not understand audio")
+        except sr.RequestError as e:
+            print("Could not request results from Google Speech Recognition service; {0}".format(e))

+ 4 - 4
test.py

@@ -1,7 +1,7 @@
-from neurons import Say
-from neurons import SystemDate
+from core.OrderListener import OrderListener
 
 
-say_neurone = Say("oui monsieur?")
 
 
+oder = OrderListener()
+
+oder.start()
 
 
-#date_neurone = SystemDate()