« 組込み技術展と圧力鍋とビール | Home | ボイスレコーダで録音した音声をオーディオCDにする方法 »
December 10, 2008
Microsoft Speech API事始め
Microsoft Speech APIを触ってみた。.NETだとすごく簡単だった。Hello Worldは以下のとおり。Microsoft Windows XP上で、Microsoft Speech SDK 5.1をインストールし、Visual C# 2005 Express Editionで作成した。最初に参照設定で、"Microsoft Speech Object Library"を追加すること。
このコードは、インストールされているすべてのVoiceで"It's fine today"と発音する。
using System;
using System.Collections.Generic;
using System.Text;
using SpeechLib;
namespace TTSTest
{
class Program
{
static void Main(string[] args)
{
SpVoice voice = new SpVoice();
ISpeechObjectTokens token = voice.GetVoices("", "");
for (int i = 0; i < token.Count; i++)
{
voice.Voice = token.Item(i);
Console.WriteLine(token.Item(i).GetDescription(0));
voice.Speak("it's fine today", SpeechVoiceSpeakFlags.SVSFlagsAsync);
}
while (voice.Status.RunningState == SpeechRunState.SRSEIsSpeaking) ;
}
}
}No TrackBacks
TrackBack URL: http://www.argv.org/~chome/blog/mt-tb.cgi/166


おぉ、しゃべりましたか。
このくらい簡単だといいよね。C++で書くとけっこう難儀かも。
しゃべりました。
しゃべらせるだけなら、3行で十分です。すんげー簡単でした。
C++でもCOMコンポーネントの初期化が加わるくらいのようです。
ども、情報ありがとうございました。
すげー。C#とか触ってやがる。
やばいなぁ。勉強しなければ。
いや、そんなヒマがあるなら仕事のコードを…。
C#はC++知ってれば覚えるのは速いよ。
Windowsアプリを書くときの言語の選択はについては、C#はGUIが必要なときに、そうでないときはC++でWin32をたたいてます。
ただ今回のように、なにかと.NETフレームワークに頼ったほうが楽なことも多くて、C#に移行する傾向にあることも事実。特にCOM絡みとか、Socketとかね。