こんばんは。
また、ご迷惑をおかけします。
パソコンにしゃべらせる方法を教えてください。
自分でも調べてみようとここを検索しましたが、
MSAgentの機能が見当たらないので断念していました。
よろしくお願いします。
とりあえずSAPI(Speech API) 5で調べてみるといいのでは?
あとは"Microsoft Speech Platform"でしょうか。
通りすがりさん、ありがとうございます。
ネットでしたようなのを見つけました。
20年近くDelphi しか使ってないので、他の言語がわかりません。
時間ができたら、試してみたいと思います。
Delphiに変換するにはどうしたらいいのか、もしも分かれば教えてください。
よろしくお願いします。
下記のコードをhoge.jsで保存してダブルクリック:
var tts = WScript.CreateObject("SAPI.SpVoice");
tts.Speak("Hello world! おはよう! Konnichiwa!");
このようなのは「音声合成」とかいいます.
あるいは「読み上げ」とかですね.
マイクロソフト以外にもいろいあると思いますよ.
昔,ヘルプだかマニュアルを音声付きにしようと思っていろいろやったことがあります.
「初音ミク」というのもありますけどね (^^;
>Delphiに変換するにはどうしたらいいのか、もしも分かれば教えてください。
このようなのは VBScript と言います.
ネットで検索すれば結構ヒット,いや少ないかな.Delphi のは.
implementation
uses
ComObj;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
tts : OleVariant;
begin
tts := CreateOleObject('SAPI.SpVoice');
tts.Speak('Hello world! おはよう! Konnichiwa!');
end;
もちろん,日本語は無視されます.
Mr.XRAYさん、ありがとうございました。
ローマ字で’Ohyoo’としたら、’おはよう’としゃべりました。
長年の夢だったので、思わず、拍手してしまいました。
ありがとうございました。
こんばんは。
Mr.XRAYさん
何年前だったか忘れましたが、音声合成の方法を調べはじめたとき、
最初に貴方のHPを見させていただきました。
その時は見つけることができませんでしたが、あるのしょうか??
無いのなら、是非乗せて頂きたいのですが。
私も私の後継者も新しいことを始めるときは、最初に利用させていただいています。
よろしくお願いします。
また、「単位」をうまく発音させることができません。
やはり日本語版が必要かと思い始めています。
その時は、また、よろしくお願いします。
> その時は見つけることができませんでしたが、あるのしょうか??
> 無いのなら、是非乗せて頂きたいのですが。
> 私も私の後継者も新しいことを始めるときは、最初に利用させていただいています。
後継者がいるような立場の方で、しかも、20年近くDelphi をお使いの方なら、
あえて、Mr.XRAYさん にお願いするより、AS さん自身で、調べて
ウェブサイト等で情報発信されてはいかがでしょうか?
igyさん、おはようございます。
以前もここで同じようなことを言われましたが、
自分で調べるというのは、私には無理だと思います、もう年ですから。
私が若いころはプログラマーは30過ぎたらだめとか言われてました。
Delphiと皆さんのお蔭で、この年でも何とか新しい機能を追加できていますが、
この間の2件の凡ミスみたいな質問をさせていただきました。
本当に恥ずかしいのですが、それが実態です。
日本語版の音声合成を導入するために、いろいろ調べる必要があります。
例えば、Xrayさんに教えて頂いた、
ComObj; OleVariant; CreateOleObject;
等は、どうやってnetで検索できますか??
ヒントを頂ければ、嬉しいです。
igyさんは私よりは若いと思いますが、何歳くらいですか??
私は、若いころはアセンブラでプログラムしていました。
はっきり言って60歳代後半です。
よろしくお願いします。
今回の質問と、前回の質問から、
AS さんは、
・会社を経営されていて、後継者もいる。
・業務として、プログラムを開発されている。
・音声合成(読み上げ)の機能をプログラムに組み込みたい。
と想像しました。(実際は、違うところもあると思いますが。)
で、「ASさん自身で、調べましょう」という趣旨の書き込みをしたら、
> 以前もここで同じようなことを言われましたが、
> 自分で調べるというのは、私には無理だと思います、もう年ですから。
とのことですので、AS さん自身で調べることができない場合、
後継者(あるいは従業員)に、業務として調べてもらうのが、正しい気がします。
Mr.XRAYさん に時間をかけて、調べてもらう・・つまり、タダ働きをお願いするのは、違う気がするのです。
> 日本語版の音声合成を導入するために、いろいろ調べる必要があります。
> 例えば、Xrayさんに教えて頂いた、
> ComObj; OleVariant; CreateOleObject;
> 等は、どうやってnetで検索できますか??
> ヒントを頂ければ、嬉しいです。
質問の意図が、よくわからないのですが、
Google等の検索エンジンで、検索をすればよいかと思います。
もし、無理な場合は、やはり後継者(あるいは従業員)に調べてもらうのが良いかと思います。
昔「AquesTalk」を使ったことがあります。ロボット的な発音ですが。
詳しくは下記参照
https://www.petitmonte.com/bbs/answers?question_id=7085
市販のソフトの「詠太」を遠隔操作させて「読み上げ」させるのが
一番自然な発音でした。
TSさん、ありがとうございます。
後で、詳しく見てみます。
igyさん、私の常識では後継者というと農業の跡継ぎのことですよ。
私は、プログラムを引き継いで開発を続けてくれる人という意味で使いました。
会社とか滅相もないです。
以前も書きましたが、私はパソコンができた極初期より、一つのテーマで40年間
プログラムしてきました。
そのプログラムを引き継いで開発を続けていってくれる人ができたのですが、
プログラムの専門家ではなく、別の職業を持っています。大学も出ていません。
彼は、夜、趣味で開発を続けているんですよ。
私は、TurboPascalの時から変数管理のたやすさが気に入って使っていますが、
人気では、いまいち他の言語に負けているような気がします。
XrayさんのHPがDelphiの普及に役立つと思って、お願いしています。
「タダで使う」などとは思ってこともありませんよ。
今後も、年寄の呆けた質問が出るかと思いますが、
よろしくお願いします。
こんにちは,Mr.XRAY です.
これは AS さんへのレスということではなく,
このスレッドを読んで,音声合成に興味を持った方への紹介です.
どの程度まで可能なのかを確認できるリンクの一部です.
音声合成,マルチメディアの技術は日々進歩しています.
https://www.youtube.com/watch?v=oHOJD7XRuwY
https://www.youtube.com/watch?v=MgpI-2XV91c
以下は「t2v player」を Google の検索エンジンで検索した結果です.
各々の記事,あるいはその記事の中のリンクをクリックすると,
いろいろな動画を観ることかできます.
https://www.google.co.jp/search?num=50&biw=1759&bih=937&noj=1&source=hp&q=t2v+player&oq=T2v+
これらのソフトの機能を自アプリで使用するにはいろいろな方法があります.
音声をファイルとして保存して利用する.
ActiveX として利用する (可能であれば).
タイプライブラリが提供されていればそれを利用する.
コマンドラインがサポートされていればそれを使用する.
SDK が提供されていればそれを利用する.
Delphi 用の SDK がなければ Delphi 用に書き換える.
SDK は多くの場合,C, C++ 用です.
コマンドライン専用の音声合成エンジンもあります.
音声合成でネットを検索すると多くの情報があります.
楽しんでください.
# 私のサイトでは,マルチメディア関係の記事を掲載する予定はありません.
# また,掲載をお願い,あるいは依頼されて記事を掲載することもありません.
# 皆さんから頂いた情報を記事として掲載しているのはあります.
# (記事中にお前は掲載していませんが)
比較的新しいのです.
バーチャル女子アナ「沢村碧」、ソニーが提供開始 原稿を自動読み上げ - ITmedia NEWS
http://www.itmedia.co.jp/news/articles/1708/03/news108.html#l_am_aba.jpg
>>Delphiに変換するにはどうしたらいいのか、もしも分かれば教えてください。
>
>このようなのは VBScript と言います.
ゴメンなさい.間違いがありました.訂正します.
AS さんが提示したコード内の WScript というのは,
WSH (Windows Script Host) のスクリプトという意味です.
WSH はテキストで記述したスクリプトが実行可能な機能のことをいいます.
VBS (VBScrip) は WSH で使用可能なスクリプトの 1 つです.
例えば AS さんが提示された以下のコードをそのまま,例えば TestVoice.js という名前で保存します.
(空白行を削除しています.あっても構いません)
var tts = WScript.CreateObject("SAPI.SpVoice");
tts.Speak("Hello world! おはよう! Konnichiwa!");
この WSH を Delphi で実行するには例えば以下のようにします.
この方法であれば,Delphi のコードに移植しなくてもネット上の WSH のコードが利用できます.
implementation
uses
ShellAPI;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
ShellExecute(Handle,'', 'WScript.exe', 'TestVoice.js', nil, SW_HIDE);
end;
拡張子の .js は JavaScript として解釈されてしまいますので,
ShellExecute の第 3 引数を WScript.exe にします.
VBS のコードを実行する場合は ShellExecute の第 3 引数に VBS のファイル名を指定して,
第 4 引数は nil で構いません.
ものはついでですので.
既にレスのある Microsoft Speech Platform ですが,以下に詳しい説明があります.
サンプルのコードは同じく WSH (JScript) です.
Delphi のコードに変換して実行する方法,拡張子を .js にして保存して,
そのファイルを Delphi で実行する方法も,これまでのレスを参考にしてください.
[Windowsの音声合成エンジンの比較]
http://mahoro-ba.net/e1872.html
といったところも参考になるかも知れません.
ネットで検索すると多くの情報があります.
Mr.X-RAYさん、ありがとうございます。
後で調べてみます。
以前教えて方法で、自分のプログラムに組み込みましたが、
起動するたびに挨拶されるとうるさいので、切っていました。
英語単語を覚えるためにあるソフトを使っていましたが、
発音が有料なので、自分で作ったら安いぞと思って作りました。
そしたら、日本語も発音するし、英語もといいこと尽くしです。
ただ、英語の発音がおかしいと家族に言われてしまいます。
このソフトは本当に英語専用かと思って、来ました。
ツイート | ![]() |