2013-09-29 11 views
8

जैसे कुछ शब्दों के साथ एंड्रॉइड फोन को जगाएं, उदाहरण के लिए "हैलो जॉर्ज" उदाहरण के लिए मैं एंड्रॉइड फोन को जागृत करना चाहता हूं, लेकिन कोई उपयोगी उत्तर नहीं मिला। सबसे पहले, एंड्रॉइड ऐप को इस सुविधा के लिए पृष्ठभूमि में सेवा के रूप में सुनने की ज़रूरत है या नहीं? अगर कोई जानता है कि इस मुद्दे को कैसे कार्यान्वित किया जाए या कोई सुराग है तो मैं सराहना करता हूं।हाय गैलेक्सी या ओके Google

बेस्ट सादर धन्यवाद

+2

'आवाज़ आदेश के साथ जाग' की एक विशेषता है बड़ी बैटरी नाली से बचने के लिए, डिवाइस स्टैंडबाय में होने पर वॉयस कमांड सुनने के लिए एक विशेष सीपीयू का उपयोग करता है। इस सुविधा को अच्छी तरह से करने के लिए आपको अपना खुद का डिवाइस और कस्टम रोम बनाना होगा। –

उत्तर

7

हाय मैं ओपन माइक + http://OpenMic.RSenApps.com, जो बहुत ही तुम क्या चाहते करने के लिए कुछ ऐसा ही की डेवलपर हूं। सच्चाई यह है कि यह लगता है की तुलना में यह बहुत जटिल है और मैं केवल उन प्रणालियों को लागू करना शुरू कर रहा हूं जो वास्तव में कुशल हैं। तो मुझे लगता है कि मुख्य बात यह है कि आप कितनी दूर जाना चाहते हैं? आप Google स्पीच रिकॉग्निशन को कार्यान्वित कर सकते हैं, लेकिन अंत में, यह बहुत छोटी है और वास्तव में लंबे समय तक काम नहीं करता है या आप अपनी खुद की भाषण मान्यता को कार्यान्वित कर सकते हैं, जो मैं करने की प्रक्रिया में हूं ...

3

सीएमयूएसएफएनएक्स ने हाल ही में एंड्रॉइड मंच पर निरंतर सुनवाई लागू की है। आप विकी पेज

पर डेमो पा सकते हैं आप सुनने के लिए एक या एकाधिक कीवर्ड कॉन्फ़िगर कर सकते हैं, डिफ़ॉल्ट कीवर्ड "ओह शक्तिशाली कंप्यूटर" है। आप पहचान थ्रेसहोल्ड को भी कॉन्फ़िगर कर सकते हैं। वर्तमान में समर्थित भाषाओं अमेरिकी अंग्रेजी और कुछ अन्य हैं (फ्रेंच, स्पेनिश, रूसी, आदि)। आप अपनी भाषा के लिए अपने मॉडल को प्रशिक्षित कर सकते हैं।

सुनना आसान है, आप एक पहचानकर्ता बना सकते हैं और बस कीवर्ड खोलना खोज जोड़ें:

recognizer = defaultSetup() 
     .setAcousticModel(new File(modelsDir, "hmm/en-us-semi")) 
     .setDictionary(new File(modelsDir, "lm/cmu07a.dic")) 
     .setKeywordThreshold(1e-5f) 
     .getRecognizer(); 

recognizer.addListener(this); 
recognizer.addKeywordSearch(KWS_SEARCH_NAME, KEYPHRASE); 
switchSearch(KWS_SEARCH_NAME); 

और परिभाषित एक श्रोता:

@Override 
public void onPartialResult(Hypothesis hypothesis) { 
    String text = hypothesis.getHypstr(); 
    if (text.equals(KEYPHRASE)) 
     // do something 
} 
संबंधित मुद्दे