【プラグイン】文章を読み上げる

Go down

【プラグイン】文章を読み上げる

投稿 by miyako on 2017-06-14, 10:55 am

簡単な音声合成プラグインを公開しました。

https://github.com/miyako/4d-plugin-speech-synthesizer

システムAPI(Mac:NSSpeechSynthesizer/Windows:SAPI)を使用しているため,若干,プラットフォーム間で違いがあります。

macOS

ボイスは64種類インストールされているはずです。

VOICES LIST ($voices)

ボイス識別子はUTI形式で返されます。

名称からして「シンジ」「ユナ」「キョーコ・プレミアム」が日本語話者だと思われます。(プレミアム・・・?)

com.apple.speech.synthesis.voice.sin-ji
com.apple.speech.synthesis.voice.yuna
com.apple.speech.synthesis.voice.kyoko.premium

日本語のボイスを指定すれば,一応,漢字も読み上げてくれます。

C_OBJECT($options)
OB SET($options;"rate";200)
OB SET($options;"volume";1)  //0 to 1 on Mac
OB SET($options;"voice";"com.apple.speech.synthesis.voice.kyoko.premium")

SAY ("漢字も読めますよ";JSON Stringify($options))

rateはスピードの目安で,180-220が普通の速度とされています(Appleドキュメントより)。

ボリュームは0から1の間で指定します。

$3にファイルパスを指定すると,AIFFファイルが出来上がります。
品質はサンプルレート:22,050・16ビット/サンプル・モノラルです。

$path:=System folder(Desktop)+"sample.aiff"
SAY ("漢字も読めますよ";JSON Stringify($options);$path)

発声は非同期処理であり,コマンドから制御が返された後も話し続けます。

Windows

ボイスはSAPI(デスクトップ)が2声,Cortana(モバイル)が4声,インストールされているはずです。
名称からして「はるか」「あゆみ」「いちろう」「さやか」が日本語話者だと思われます。

Macとは違い,速度は-10から10の間で指定します。
0が普通のスピードです。

ボリュームは0から100の間で指定します。

発声は同期処理であり,話し終えるまでコマンドから制御が返されません。

$3にファイルパスを指定すると,WAVファイルが出来上がります。
品質はサンプルレート:22,050・16ビット/サンプル・モノラルです。

文字列最初の文字が「<」の場合,データはXMLであるとみなされます。

https://msdn.microsoft.com/ja-jp/library/ms723637(v=vs.85).aspx

たとえば,

<CONTEXT ID = "date_mdy">12/21/99</CONTEXT>

という文字列は「きゅうじゅうきゅうねん・じゅうにがつ・にじゅうににち」と発声されます。

miyako

投稿数 : 211
登録日 : 2016/07/05

トップに戻る Go down

トップに戻る


 
Permissions in this forum:
返信投稿: 不可