Windows10にしゃべらせるプログラム

10行プログラムカテゴリのアイキャッチ画像10行以内のプログラム
スポンサーリンク

今回は、Windows10にしゃべらせるプログラムを作ります。ソースコードはたったの2行です。
プログラミング言語は、マイクロソフトのJScriptを使います。
メモ帳で手軽にできるのでぜひ試してみてください。

speech.js

// 文字コードはシフトJISで保存
var tts = WScript.CreateObject("SAPI.SpVoice");
tts.Speak("おっす!おらゴクウ!");

メモ帳やエディタなどで、拡張子を「js」、文字コードを「シフトJIS」で保存するとこんなアイコンになります。

JScriptアイコン

ダブルクリックで実行です。
しゃべりましたか??ちなみに「!」の部分はしゃべりません。悪しからず。

Windows10には標準でMicrosoft Speech API 5.3(2017年10月時点)が提供されています。

その昔TTS(Text To Speech)エンジンというものがありまして、文字列を与えるとWindowsがしゃべってくれました。もちろん現在でもこのTTSはWindowsに搭載されています。プログラム言語からTTSへの橋渡しをする役割がMicrosoft Speech API(通称:SAPI)です。

SAPIのドキュメントは、MSDNのサイトにあります。

SpVoice Interface (SAPI 5.3)

このドキュメントを見るとRateプロパティなどがあり、話す速度を調整できるようです。

Rateプロパティ値の範囲 -10~10音声出力の速度を調整できる
使い方)***.Rate = 3;

実際に使ってみます。

// 文字コードはシフトJISで保存
var tts = WScript.CreateObject("SAPI.SpVoice");

// 速度をだんだん早くさせてしゃべらせる
for(var i=-5; i<10; i+=2){
	tts.Rate = i;
	tts.Speak("おなかすいた?");
}

SAPIは、色々なプログラミング言語から呼び出せます。もちろんPythonでもwin32comというモジュールをインポートすればSAPIを呼び出し可能です。
誰かさんのTwitterのつぶやきデータをスクレイピング(ウェブサイトから必要な情報を抽出すること)して本当につぶやかせることも可能です。面白いですね。

コメント