次の方法で共有


Microsoft Agent Speech 出力タグ

[Microsoft エージェントは Windows 7 の時点で非推奨となり、以降のバージョンの Windows では使用できない場合があります。]

Microsoft エージェント サービスでは、音声テキスト文字列に挿入された特殊なタグを使用した音声出力の変更がサポートされています。 これらのタグは、文字の出力式の特性を変更するのに役立ちます。

音声出力タグでは、次の構文規則が使用されます。

  • すべてのタグの先頭と末尾は円記号 (\) です。
  • 1 つの円記号文字は、タグ内では有効になっていません。 タグのテキスト パラメーターに円記号を含めるには、二重円記号 (\\) を使用します。
  • タグでは大文字と小文字が区別されません。 たとえば、\pit\ は \PIT\ と同じです。
  • タグは空白に依存します。 たとえば、\Rst\ は \ Rst \ と同じではありません。

別のタグで特に指定または変更されない限り、音声出力は、1 つの Speak メソッドで指定されたテキスト内でタグによって設定された特性を保持します。 音声出力は、 Speak メソッドが完了した後、ユーザー定義パラメーターによって自動的にリセットされます。

一部のタグには引用符で囲まれた文字列が含まれます。 Visual Basic Scripting Edition (VBScript) や Visual Basic などの一部のプログラミング言語では、2 つの引用符を使用してタグのパラメーターを指定したり、文字列の一部として二重引用符を連結したりする必要がある場合があります。 後者は、次の Visual Basic の例に示されています。

Agent1.Characters("Genie").Speak "This is \map=" + chr(34) + "Spoken text" _
+ chr(34) + "=" + chr(34) + "Balloon text" + chr(34) + "\."

C、C++、Java™ プログラミングの場合は、円記号と二重引用符の前に円記号を付けます。 次に例を示します。

BSTR bszSpeak = SysAllocString(L"This is \\map=\"Spoken text\"=\"Balloon text\"\\");

pCharacter->Speak(bszSpeak, ......);

2 バイト文字セット (DBCS) 文字をサポートする外国語の場合は、2 バイト文字を使用して文字列パラメーターを指定できます。 ただし、タグ自体を含め、タグの定義に使用される他のすべてのパラメーターと文字には、1 バイト文字を使用します。

次のタグがサポートされます。

タグは主に、テキスト読み上げ (TTS) によって生成された出力を調整するために設計されています。 サウンド ファイルベースの音声出力では、 Mrk タグと Map タグのみを使用できます。

Note

Microsoft エージェントは、Microsoft Speech SDK に記載されているすべてのタグをサポートしているわけではありません。 パラメーターは、選択した TTS エンジンによっても異なる場合があります。 TTSModeID を使用して特定の TTS エンジンを設定できます。