さて、折角MSCompAssをアップグレードしたので、DLL参照を行うようなサンプルネタがないかな、と考え、前にDLL参照を行った「音声認識」のサンプル(注)を思い出しました。
注:以下のシリーズ記事で、Visual Studio C#のプログラムが(1)と(2)、MSCompAss用は(3)に書いています。
【C#】Visual Studioのファイルを調べてみる(1)
【C#】Visual Studioのファイルを調べてみる(2)
【C#】Visual Studioのファイルを調べてみる(3完)
これは自分で企画して書いたのではなく、MSChartでちょっと悪戯した後、「似たような面白いオブジェクトはないか?」とWebを漁っていて偶然取得したVisual Studioサンプルが音声認識を扱っていたのでそれを扱ったのでした。その中にあったコードが、
”using System.Speech.Recognition;”
また、それを使う為にこのパイラーが参照したDLLが"System.Speech.dll" ...
ん?
思い返せば大分前、(既に昔、BCCForm and BCCSkeltonでWin32 APIベースのSAPIというCOMを使って"TextToSpeech"という音声による読み上げプログラムを作っていたので)"Text to Speech(TTS)"というキーワードを使って色々とググったら、GoogleのTTSエンジンの話しか出なかったこと、またその後見つけたC#のサンプルはテキスト読み上げをする為にWin32 APIベースのSAPIを使うという「面倒臭い」ものだったことからネタとして不採用したことを思い出しました。
しかし、
"System.Speech.dll"って「音声読み上げ用のクラスもあるんじゃない?」と思い、今度は"System.Speech"をキーワードにして調べると、あった、あった、ありましたよ。
およびそれが含まれる
こいつらで、MSChartのように又簡単に音声出力ができるんだろうと考え、早速サンプルを作ってテストして確認しました。
次はこれで時間稼ぎしようと思っています。
が、
この空間は広く、未知のものが多く転がっているので、少しお勉強をした方が良いようだな、と調べているうちに、
Windows.Media.SpeechSynthesis Namespace
「二人はどんな関係?」と無粋な質問をしたくなる。どうもこれはいわゆる"UWP (Universal Windows Platform)"という世界の住人らしく、System.Speechが.NET APIの世界なので「異世界の似た者同士」なのかしら?(注)
注:MicrosoftがWindowsのプラットフォームを更新する度に、新しいアブリビーションが増えて混乱します。少し整理しましょう。
Microsoft .NER Framework(Win 7から)
UWP(Win 10から-こっちの方が分かりやすいか?ご本家のこれは殆ど「寿限無、寿限無」の世界だな。)
まだわかりづらいので全体像がないかと思って調べると、こんなのがあった。(正しいか、どうかは知らんけど...まぁ、その道の人も苦労するぐらいに分かりづらい、ということはわかります。)
At the end of the day,
もう少し勉強してサンプルプログラムを作りますわ。
