Microsoft Speech Platform のサンプルプログラム その1 (C#)
投稿者:マーチン 2012年5月4日
カテゴリ:障碍者全般::音声合成
カテゴリ:障碍者全般::音声合成
Microsoft Visual C# を使った Microsoft Speech Platform 用の簡単なプログラムを作成してみました。"Microsoft Speech Object Library" SpeechLib の SpVoice COM クラスを使用する方法です。SAPI text-to-speech (TTS) 拡張マークアップ言語(XML) を使うことが可能です。
【動作環境】 Windows XP / Vista / 7 (32bit/64bit)
.NET Framework 2.0 以降が必要
Microsoft Server Speech 11.0
⇒ 【まほろば】無料の音声合成エンジン 「Microsoft Speech Platform 11」
【開発環境】 Microsoft Visual C# 2010 Express
【ソフト種別】 オープンソース (改変、再配布は自由です)
.NET Framework 2.0 以降が必要
Microsoft Server Speech 11.0
⇒ 【まほろば】無料の音声合成エンジン 「Microsoft Speech Platform 11」
【開発環境】 Microsoft Visual C# 2010 Express
【ソフト種別】 オープンソース (改変、再配布は自由です)
●サンプルプログラム
◆実行ファイル
mssp_SampleA_13_Exe.zip をダウンロードして解凍し、実行ファイルを実行する。
◆TTS XML
SAPI text-to-speech (TTS) 拡張マークアップ言語(XML)は、W3Cの音声合成マークアップ言語(SSML)の詳細が完成する前に、開発されたものです。現在は、SSMLが音声合成用の好ましいマークアップ言語ですが、SAPI TTS XML もまだサポートされています。以下、記述方法の一例を表にしました。詳しくは、SDKをインストール後、「MicrosoftSpeechPlatformSDK.chm」の ”XML TTS Tutorial” を参考にしてください。
または、Galatea Dialog Studio:日本語テキスト音声合成用記号(JEIDA-62-2000)要素 が参考になります。
項目 | 内容 | 記述例 |
---|---|---|
lang | 言語 | <lang langid="409">so good</lang> |
voice | 話者 | <voice required="Name=Microsoft Sam">hello</voice> <voice required="Gender=Female">そうね</voice> |
volume | 音量 | <volume level="90"> ~ </volume> |
rate | 速度 | <rate absspeed="5"> ~ </rate> <rate speed="-5"> ~ </rate> |
pitch | 音程 | <pitch absmiddle="-5"> ~ </pitch> <pitch middle="2"> ~ </pitch> |
emph | 強調 | <emph> ~ </emph> |
silence | 一時休止 | <silence msec="2000"/> |
context | テキストの意味 | <context id="date_ymd">2012/05/05</context> <context id="time">17:45</context> <context id="number_decimal">3.14156</context> |
partofsp | 品詞の指定 | <partofsp part="Noun"> ~ </partofsp> |
pron | 読み上げ内容 | <pron sym="ムヘンカン"/>無変換<pron> |
●ソースファイル
◆ダウンロード
(1)Microsoft Visual C# 2010 用ソースファイル mssp_SampleA_13_Src.zip をダウンロードして、解凍する。
(2)SpeechPlatformSample.csproj を開く。
(2)SpeechPlatformSample.csproj を開く。
◆Visual C# で SpVoice COM クラスを使うには
(1)[プロジェクト] [参照の追加] で、[COM] タブを選択し、
(3)プログラムの先頭に、
using SpeechLib;
を追加する。
Microsoft Speech Object LIbrary 11.0
(パス C:¥Program Files¥Common Files¥Microsoft Shared¥Speech¥Platform¥v11.0¥mssps.dll)
を追加する。(パス C:¥Program Files¥Common Files¥Microsoft Shared¥Speech¥Platform¥v11.0¥mssps.dll)
(3)プログラムの先頭に、
using SpeechLib;
を追加する。
◆ソースの主要部分
・変数の定義
・音声リストの作成
・音声、音量、速度の設定と、読み上げ実行
●SAPI5用に改造するには
参照設定の
Microsoft Speech Object LIbrary 11.0
を削除し、Microsoft Speech Object Library 5.3
(パス C:¥Windows¥System32¥Speech¥Common¥sapi.dll)
を追加する。(パス C:¥Windows¥System32¥Speech¥Common¥sapi.dll)
◆関連記事
【まほろば】Microsoft Speech Platform のサンプルプログラム その2 (C#)
【まほろば】Microsoft Speech Platform のサンプルプログラム (Python)
【まほろば】無料の音声合成エンジン 「Microsoft Speech Platform 11」
【まほろば】Microsoft Speech Platform 簡単インストーラー Ver.2.2
【まほろば】SAPI5 対応の日本語音声合成エンジンのインストール2
【まほろば】Microsoft Speech Platform のサンプルプログラム (Python)
【まほろば】無料の音声合成エンジン 「Microsoft Speech Platform 11」
【まほろば】Microsoft Speech Platform 簡単インストーラー Ver.2.2
【まほろば】SAPI5 対応の日本語音声合成エンジンのインストール2