Re: 関数の連続使用 ( No.1 ) |
- 日時: 2007/10/21 19:42
- 名前: 管理人
- 音声合成の際の最後のポーズ(無音区間)は、わざとはずす仕様になっております。
現在のインターフェースではポーズのみの出力も出来ないので、その方法ではポーズを入れるのは難しいかもしれません。
そこで、例えば、 while (全解析単位) { 解析単位の切り出し 解析単位内の言語処理 AquesTalkDa_PlaySync(言語解析結果の発音文字列); Sleep(任意のポーズ時間) }
のようにするか、 AquesTalkDa_Play()にメッセージを指定することで、発声の完了メッセージを受けて、Sleep処理、次の解析単位を処理するようにしてもよいかと思います。
なお、有償になりますが、常に最後にポーズ区間を付与するようにカスタマイズすることもできますので、必要があればご連絡くださいませ。
|
Re: 関数の連続使用 ( No.2 ) |
- 日時: 2007/10/23 09:43
- 名前: ラッキー
- ラッキーです。お世話になっております。
どうも、色々とありがとうございます。
すみません。単純にwhile(全解析単位){} の中に、Sleep(任意のポーズ長)を入れる 形で実験したのですが、おそらく AquesTalkDa_PlaySyncが非同期の関数の ために、思った結果が得られませんでした。
AquesTalkDa_Play()にメッセージを指定する という方法なのですが、自分で試してみたの ですが、いまいちやり方が悪いようで、うま くできませんでした。
このため、もしも可能でしたら、非常に簡単 な例で良いのですが、AquesTalkDa_Play()に メッセージを指定してそれを受け取る方法の やり方について、簡単なソースをお示し頂け れば非常に幸いです。
または、既にどこかに類例があれば、その URLを教えて頂くだけでも結構なのですが。
お忙しいところ、本当に申し訳ありません。 もしも、可能でしたらよろしくお願い致しま す。
|
Re: 関数の連続使用 ( No.3 ) |
- 日時: 2007/10/24 11:41
- 名前: 管理人
- こんにちは。
おかしいですね。AquesTalkDa_PlaySyncは、同期関数として用意していますので、Sleepで無音区間が作れるはずなのですが・・・
また、メッセージのやりとりは、AquesTalkライブラリのアーカイブに、AqTkAppのサンプルプログラムで使っていますので、この辺りのコードを参照いただければと思います。
|