Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Konuşma tanıma için kullanılacak yüklü bir dili seçmeyi öğrenin.
Önemli API'ler: DesteklenenKonuDilleri, DesteklenenDilbilgisiDilleri, Dil
Burada bir sistemde yüklü olan dilleri numaralandırır, varsayılan dili belirler ve tanıma için farklı bir dil seçeriz.
Ön koşullar:
Bu konu, Konuşma tanımaüzerine inşa eder.
Konuşma tanıma ve tanıma kısıtlamaları hakkında temel bilgilere sahip olmanız gerekir.
Windows uygulamaları geliştirme konusunda yeniyseniz, burada açıklanan teknolojiler hakkında bilgi edinmek için bu konulara göz atın.
- İlk uygulamanızı oluşturma
- Olaylar ve yönlendirilen olaylara genel bakış ile olaylar hakkında bilgi edinin
Kullanıcı deneyimi yönergeleri:
Yararlı ve etkileşimli bir konuşma özellikli uygulama tasarlama hakkında yararlı ipuçları için bkz . Konuşma tasarımı yönergeleri .
Varsayılan dili tanımlama
Konuşma tanıma, sistem konuşma dilini varsayılan tanıma dili olarak kullanır. Bu dil, cihaz Ayarları > Sistem > Konuşma Konuşma > Dili ekranında kullanıcı tarafından ayarlanır.
SystemSpeechLanguage statik özelliğini denetleyerek varsayılan dili belirleriz.
var language = SpeechRecognizer.SystemSpeechLanguage;
Yüklü bir dili onaylama
Yüklü diller cihazlar arasında farklılık gösterebilir. Belirli bir kısıtlamaya bağlıysanız bir dilin varlığını doğrulamanız gerekir.
Not Yeni bir dil paketi yüklendikten sonra yeniden başlatma gerekir. Belirtilen dil desteklenmiyorsa veya yüklenmeyi tamamlamadıysa hata kodu SPERR_NOT_FOUND (0x8004503a) ile ilgili bir özel durum oluşur.
SpeechRecognizer sınıfının iki statik özelliğinden birini denetleyerek bir cihazda desteklenen dilleri belirleyin:
SupportedTopicLanguages—Önceden tanımlanmış dikte ve web arama dil bilgisi ile kullanılan Dil nesnelerinin koleksiyonu.
SupportedGrammarLanguages—Liste kısıtlaması veya Konuşma Tanıma Dil Bilgisi Belirtimi (SRGS) dosyasıyla kullanılan Dil nesnelerinin koleksiyonu.
Dil belirtme
Belirli bir dili seçmek için Language nesnesini SpeechRecognizer oluşturucusuna geçirin.
Burada, tanıma dili olarak "en-US" belirteceğiz.
var language = new Windows.Globalization.Language("en-US");
var recognizer = new SpeechRecognizer(language);
Açıklamalar
Konu kısıtlaması, SpeechRecognizer'ınConstraints koleksiyonuna bir SpeechRecognitionTopicConstraint eklenip CompileConstraintsAsync çağrılarak yapılandırılabilir. SpeechRecognitionResultStatus, tanıyıcı desteklenen bir konu diliyle başlatılmazsa, TopicLanguageNotSupported olarak döndürülür.
Liste kısıtlaması, SpeechRecognizer'ın Constraints koleksiyonuna bir SpeechRecognitionListConstraint eklenip CompileConstraintsAsync çağrılarak yapılandırılır. Özel listenin dilini doğrudan belirtemezsiniz. Bunun yerine, liste tanıyıcının dili kullanılarak işlenir.
SRGS dil bilgisi, SpeechRecognitionGrammarFileConstraint sınıfı tarafından temsil edilen açık standart bir XML biçimidir. Özel listelerden farklı olarak, SRGS işaretlemesinde dil bilgisinin dilini belirtebilirsiniz. Eğer tanıyıcı, SRGS işaretlemesiyle aynı dilde başlatılmazsa, CompileConstraintsAsync, SpeechRecognitionResultStatusTopicLanguageNotSupported hatasıyla başarısız olur.
İlgili makaleler
Örnekleri
Windows developer