2011-08-14 20 views
7

Microsoft'un konuşma tanıyıcı özelliğini kullanarak küçük bir uygulama üzerinde çalışıyorum. Yaptığım şey için yeterince hızlı olan tek kelimeleri tanımak için bunu göremiyorum. Normal olarak konuşabilmek isterim ve sistem söylediklerimden "anahtar kelimeler" alır ve bir ip oluşturur. Şu anda 5 kelimelik özel bir dilbilgisi kullanıyorum. Kırmızı, Mavi, Sarı, Yeşil, Turuncu. Mesela kırmızı mavi sarı diyorsam. Motor "Kırmızı" çekecek ve geri kalanlar boşluğa girecek.Microsoft Konuşma Tanıma Hızı

Aşağıdaki kullanarak denedi:

sr.RecognizeAsync(RecognizeMode.Single) 

Sonra AudioState sonra tek moda geri sıfırlamak değişiklikleri için "durdu." Bu, sonraki kelimeyi yakalamak için yeterince hızlı değil. Düşünceler?

cevap

6

PauseRecognizerOnRecognition'u denediniz mi? Bu işlev, önceki sesi işlerken ses girişinizi tamponlayacak gibi görünüyor. MSDN bağlantıya Yukarıdan

:

PauseRecognizerOnRecognition SpeechRecognized işleyicisi konuşma tanıma hizmeti duraklar ve tamponları yeni ses girişi ulaştığı anda yürütülmesi sırasında, doğrudur. SpeechRecognized olay işleyicisi çıktıktan sonra, konuşma tanıma hizmeti tanınmaya devam eder ve giriş arabelleğinden bilgi işlemeye başlar.

+0

RecognizerAudioPosition ile birlikte aradığım sonuçları elde edebildim. Çok teşekkür ederim! –

+0

@Josh R Yardım etmekten memnun oldum –

+0

Bunun nasıl çalıştığını gösterebilir misiniz? Aynı problemi yaşıyorum. –

İlgili konular