音声認識エンジンの言語を指定する方法

[ この記事は、Windows ランタイム アプリを作成する Windows 8.x および Windows Phone 8.x 開発者を対象としています。Windows 10 向けの開発を行っている場合は、「最新のドキュメント」をご覧ください]

音声認識に使われるインストール済みの言語を選ぶ方法について説明します。

ここでは、システムにインストールされている言語を列挙し、どの言語が既定の言語であるかを指定します。また、音声認識用に別の言語を選びます。

理解しておく必要があること

テクノロジ

必要条件

このトピックは、「クイック スタート: 音声認識」に基づいています。音声認識と認識の制約についての基本的な知識が必要です。

このチュートリアルを完了するには、以下のトピックに目を通して、ここで説明されているテクノロジをよく理解できるようにしてください。

手順

ステップ 1: 既定の言語を指定する

音声認識エンジンでは、システムの音声認識の言語を既定の認識言語として使います。この言語は、デバイスで [設定]、[システム]、[音声認識]、[音声認識の言語] の順に移動し、画面上でユーザーが設定します。

systemSpeechLanguage 静的プロパティを調べて、既定の言語を特定します。

var language = SpeechRecognizer.systemSpeechLanguage; 

ステップ 2: インストールされている言語を確認する

インストールされている言語はデバイスによって異なる場合があります。特定の制約を使う際にある言語に依存する場合は、その言語が存在するかどうかを確認してください。

  新しい言語パックをインストールした場合は、再起動が必要です。指定の言語がサポートされていない場合や、指定の言語のインストールが完了していない場合は、エラー コード SPERR_NOT_FOUND (0x8004503a) の例外が発生します。

 

SpeechRecognizer クラスの 2 つの静的プロパティのいずれかを調べて、デバイスでサポートされる言語を特定します。

  • supportedTopicLanguages— 定義済みのディクテーション文法および Web 検索文法と共に使われる Language オブジェクトのコレクションです。

  • supportedGrammarLanguages— 一覧の制約または Speech Recognition Grammar Specification (SRGS) ファイルと共に使われる Language オブジェクトのコレクションです。

ステップ 3: 言語を指定する

言語を指定するには、SpeechRecognizer コンストラクターで Language オブジェクトを渡します。

ここでは、認識言語として "en-US" を指定します。

var language = new Windows.Globalization.Language(“en-US”); 
var recognizer = new SpeechRecognizer(language); 

注釈

トピック制約を構成するには、SpeechRecognitionTopicConstraintSpeechRecognizerconstraints コレクションに追加して、compileConstraintsAsync を呼び出します。サポートされているトピックの言語で認識エンジンが初期化されていない場合は、TopicLanguageNotSupportedspeechRecognitionResultStatus が返されます。

一覧の制約を構成するには、speechRecognitionListConstraintSpeechRecognizerconstraints コレクションに追加して、compileConstraintsAsync を呼び出します。カスタム一覧の言語を直接指定することはできません。代わりに、認識エンジンの言語を使って一覧が処理されます。

SRGS 文法は、SpeechRecognitionGrammarFileConstraint クラスによって表されるオープン スタンダードの XML 形式です。カスタム一覧とは異なり、SRGS マークアップで文法の言語を指定できます。認識エンジンが SRGS マークアップと同じ言語に初期化されていない場合は、TopicLanguageNotSupportedSpeechRecognitionResultStatus に基づいて compileConstraintsAsync が失敗します。

関連トピック

音声操作への反応

デザイナー向け

音声認識の設計ガイドライン