VB.NetでAquesTalkを呼び出す

株式会社アクエストのページで AquesTalkという音声合成ライブラリを見つけ、さらにググッていくと、N.Yamazakiさんのblogに.Netからの呼び出し方法(c#)が記述されていた。
非営利の利用はフリーとのことなので 以下の手順でVBからAquesTalkを呼び出してみた。
0)
ダウンロードのページからAquesTalk Winをダウンロード。
1)Visual Studio 2008を起動。
2)新規にVBのWindowsフォームプロジェクトを作成。
3)フォームにテキストボックスとボタンを1つづつ貼り付ける。
4)コードペインで次のコードを入力
Public Class Form1
    Private Declare Function AquesTalkDa_PlaySync Lib “AquesTalkDa” _
      (ByVal pstrKoe As String, ByVal pintSpeed As Integer)  As Integer

    Private Sub Button1_Click _
      (ByVal sender As System.Object, ByVal e As System.EventArgs) _
        Handles Button1.Click
        Dim str As String = TextBox1.Text
        Dim intRet As Integer = AquesTalkDa_PlaySync(str, 100)
    End Sub
End Class

5)プロジェクトをビルド
6)生成されたExeと同じフォルダに ダウンロードしたAquesTalk.dllをコピー
7)テキストボックスに かな表記音声記号列
 ほ’んじつわ/せーてんなり、これわ/て’すとです。
 と入力 
8)ボタンをクリック
 これで 「本日は晴天なり。これはテストです。」と読み上げた。

フリーで使えるエンジンとしては、音質は十分(実は以前実験したドキュメントトーカでもこのエンジンを使っていた)
ただし、AquesTalkは、辞書がバンドルされていないため、入力文字列は、かな表記音声記号列で指定しなければならない。バッチ的には音声合成ASPサービスのページで取得でき 静的なガイダンスを実装するには十分だが、リアルタイムでこの文字列を取得するには 別途辞書を実装するか 正式に音声合成ASPサービスを受ける必要があり 簡単に実験できるものではないことがわかった。

スポンサーリンク
Rectangle大広告
Rectangle大広告

シェアする

  • このエントリーをはてなブックマークに追加

フォローする