プロデル用PC-Talker発声プラグイン[プログラミング]
(2014-01-28 21:21:25) by Dream


日本語プログラミング言語「プロドル」という、日本語でプログラムが書ける言語があります(説明がそのまま?)
スクリーンリーダーとの相性もよく、作成したプログラムはほぼ問題なくスクリーンリーダーで使用することができます。

しかし、時々文字列をしゃべらせたいことがあります。
1つの方法として、クリップボートに文字列を送ってしゃべらせるという方法があります。
しかし、どうもエラーが起こったり、うまく動作しないケースがあるようです。

そこで、スクリーンリーダーのAPIを利用してしゃべらせられないかと調べてみました。
どうやら、プロデル自体から直接スクリーンリーダーのAPIを呼び出すことはできないようです。
しかし、プロデルには「プラグイン」という機能があり、プラグインを作成することで機能を拡張できるようです。
プラグインはC#等の.NET対応の言語を利用して作成することができます。
C#からなら外部DLLを呼び出せるので、スクリーンリーダーのApiをたたくことができそう。

というわけで、PC-Talkerをしゃべらせるプラグインを作ってみました。
下記からダウンロードしてください。

プロデル用PC-Talkerプラグイン rdr_pctalker.dll

インストール方法は、ダウンロードしたファイルを解凍します。

解凍して表れた「rdr_pctalker.dll」を、プロデルをインストールしたフォルダのなかのPlugins というフォルダ、もしくはプロデルのソースファイルと同じフォルダにおきます。

以上でインストールは完了です。

使い方は、サンプルを付属しているのでそれを見ていただければ分かるかと思います。
基本は下記の2行だけ。

「rdr_pctalker.dll」を利用する
ピーシートーカーが「こんにちは。わたしはピーシートーカーです。」としゃべる

こう書いてやると「こんにちは。わたしはピーシートーカーです。」としゃべります。

ところで、下記のプログラムを実行してみてください。

「rdr_pctalker.dll」を利用する
ピーシートーカーが「こんにちは。わたしはピーシートーカーです。」としゃべる
「終わりました」を表示

こう書くと、「こんにちは。わたしはピーシートーカーです。」と全部しゃべり終わらないうちに、「終わりました」というダイアログが表示されてしまい、読み上げが途中で中断されてしまいます。
そこで、発声終了を待ってから次の処理に移る機能があります。
それを利用したのが次のプログラム。

「rdr_pctalker.dll」を利用する
ピーシートーカーが「こんにちは。わたしはピーシートーカーです。」としゃべる
ピーシートーカーの発生終了を待つ
「終わりました」を表示

このように「ピーシートーカーの発生終了を待つ」と書いてやると、ここで発声が終わるまでプログラムが一時停止します。
そして読み終わってから次の処理に進みます。
ですから、途中で読み上げが中断されてしまうのを防ぐことができます。

今のところ、これだけの機能しかありません!!
「しゃべればいいや」と思って作っただけなので!!

もし追加してほしい機能があればご連絡ください。
お約束はできませんが、できる範囲で対応させていただきます。

ちなみに、日本語プログラミング言語「プロデル」は下記からダウンロードすることができます。
日本語で簡単にプログラムが書けるので、もし興味があればどうぞ。

日本語プログラミング言語「プロデル」

視覚障害者がプロデルを使ってプログラムを作る方法については、『音声ユーザーのための「日本語プログラミング言語・プロデル」入門』が分かりやすく書かれています(私もここで勉強させていただきました)


コメント投稿
次の記事へ >
< 前の記事へ
TOPへ戻る

Powered by
MT4i 3.1a1