HrpSimpleTester
ファイル音声認識ライブラリHrp
のサンプルプログラム(HrpSimpleTester
)の実行方法について説明します。HrpSimpleTester
は、コンソール上で動作し、音声ファイルをテキストに書き起こしできます。
注記
- 実行にはマイページに表示されている自分の
APPKEY
を設定する必要があります
注意
- 利用した音声認識に応じて利用料金が発生しますのでご注意ください
準備
入手方法にしたがってソースコードを取得します。ローカルマシンの任意のディレクトリに配置します。
コマンドラインインタフェース
Usage: HrpSimpleTester <url> <audioFileName> <codec> <grammarFileNames> [<authorization>]
引数
引数 | 説明 |
---|---|
url | エンドポイント |
audioFileName | 音声ファイルパス |
codec | コーデック |
grammarFileNames | グラマーファイル名 |
authorization | APPKEY |
実行例
各プログラミング言語のディレクトリに、run.sh
やrun.bat
ファイルがあります。これらを実行することで、以下の引数でサンプルプログラムを実行できます。
引数 | 値 | 説明 |
---|---|---|
url | https://acp-api.amivoice.com/v1/recognize | ログ保存ありのHTTPインタフェースのエンドポイント |
audioFileName | ../../audio/test.wav | サンプルプログラムに同梱している音声ファイル |
codec | 16K | 音声フォーマット |
grammarFileNames | -a-general | 会話_汎用エンジンの接続エンジン名 |
authorization | APPKEY | マイページに表示される APPKEY を指定してください |
スクリプトrun
の実行
Windowsの場合
各<プログラミング言語>フォルダ直下にある run.bat をダブルクリックすることで、そのフォルダをカレントディレクトリとして実行することができます。 実行すると、APPKEY の入力を促されます。
ターミナルから実行する際は、 Hrp/<プログラミング言語>
をカレントディレクトリとして以下を実行してください。
run.bat
Linuxの場合
実行する際は、 Hrp/<プログラミング言語>
をカレントディレクトリとしてください。
chmod +x run.sh
./run.sh
APPKEYの入力
実行するとAPPKEYの入力を求められますので、マイページに表示されている APPKEY
や、ワンタイムAPPKEYを取得して入力してください。
Please enter AppKey:
実行結果
プログラム言語ごとのスクリプトrunの処理がエコーされて表示されます。以下はPythonの例です。
+ export PYTHONPATH=src
+ PYTHONPATH=src
+ export SSL_CERT_FILE=../../curl-ca-bundle.crt
+ SSL_CERT_FILE=../../curl-ca-bundle.crt
+ python HrpSimpleTester.py https://acp-api.amivoice.com/v1/recognize ../../audio/test.wav 16K -a-general {APPKEY}
数秒待つと、プログラム言語によらず以下のような結果が得られます。
{"results":[{"tokens":[{"written":"\u30a2\u30c9\u30d0\u30f3\u30b9\u30c8\u30fb\u30e1\u30c7\u30a3\u30a2","confidence":1.00,"starttime":506,"endtime":1578,"spoken":"\u3042\u3069\u3070\u3093\u3059\u3068\u3081\u3067\u3043\u3042"},{"written":"\u306f","confidence":1.00,"starttime":1578,"endtime":1930,"spoken":"\u306f"},{"written":"\u3001","confidence":0.35,"starttime":1930,"endtime":2026,"spoken":"_"},{"written":"\u4eba","confidence":0.82,"starttime":2026,"endtime":2314,"spoken":"\u3072\u3068"},{"written":"\u3068","confidence":1.00,"starttime":2314,"endtime":2426,"spoken":"\u3068"},{"written":"\u6a5f\u68b0","confidence":1.00,"starttime":2426,"endtime":2826,"spoken":"\u304d\u304b\u3044"},{"written":"\u3068","confidence":1.00,"starttime":2826,"endtime":2938,"spoken":"\u3068"},{"written":"\u306e","confidence":0.97,"starttime":2938,"endtime":3082,"spoken":"\u306e"},{"written":"\u81ea\u7136","confidence":1.00,"starttime":3082,"endtime":3434,"spoken":"\u3057\u305c\u3093"},{"written":"\u306a","confidence":1.00,"starttime":3434,"endtime":3530,"spoken":"\u306a"},{"written":"\u30b3\u30df\u30e5\u30cb\u30b1\u30fc\u30b7\u30e7\u30f3","confidence":1.00,"starttime":3530,"endtime":4362,"spoken":"\u3053\u307f\u3085\u306b\u3051\u30fc\u3057\u3087\u3093"},{"written":"\u3092","confidence":1.00,"starttime":4362,"endtime":4442,"spoken":"\u3092"},{"written":"\u5b9f\u73fe","confidence":1.00,"starttime":4442,"endtime":4922,"spoken":"\u3058\u3064\u3052\u3093"},{"written":"\u3057","confidence":1.00,"starttime":4922,"endtime":5306,"spoken":"\u3057"},{"written":"\u3001","confidence":0.63,"starttime":5306,"endtime":5626,"spoken":"_"},{"written":"\u8c4a\u304b","confidence":1.00,"starttime":5626,"endtime":5994,"spoken":"\u3086\u305f\u304b"},{"written":"\u306a","confidence":1.00,"starttime":5994,"endtime":6090,"spoken":"\u306a"},{"written":"\u672a\u6765","confidence":1.00,"starttime":6090,"endtime":6490,"spoken":"\u307f\u3089\u3044"},{"written":"\u3092","confidence":1.00,"starttime":6490,"endtime":6570,"spoken":"\u3092"},{"written":"\u5275\u9020","confidence":0.96,"starttime":6570,"endtime":7050,"spoken":"\u305d\u3046\u305e\u3046"},{"written":"\u3057\u3066","confidence":1.00,"starttime":7050,"endtime":7226,"spoken":"\u3057\u3066"},{"written":"\u3044\u304f","confidence":1.00,"starttime":7226,"endtime":7418,"spoken":"\u3044\u304f"},{"written":"\u3053\u3068","confidence":0.96,"starttime":7418,"endtime":7674,"spoken":"\u3053\u3068"},{"written":"\u3092","confidence":1.00,"starttime":7674,"endtime":7722,"spoken":"\u3092"},{"written":"\u76ee\u6307\u3057","confidence":0.78,"starttime":7722,"endtime":8090,"spoken":"\u3081\u3056\u3057"},{"written":"\u307e\u3059","confidence":0.79,"starttime":8090,"endtime":8538,"spoken":"\u307e\u3059"},{"written":"\u3002","confidence":0.94,"starttime":8538,"endtime":8746,"spoken":"_"}],"confidence":0.981,"starttime":250,"endtime":8746,"tags":[],"rulename":"","text":"\u30a2\u30c9\u30d0\u30f3\u30b9\u30c8\u30fb\u30e1\u30c7\u30a3\u30a2\u306f\u3001\u4eba\u3068\u6a5f\u68b0\u3068\u306e\u81ea\u7136\u306a\u30b3\u30df\u30e5\u30cb\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u73fe\u3057\u3001\u8c4a\u304b\u306a\u672a\u6765\u3092\u5275\u9020\u3057\u3066\u3044\u304f\u3053\u3068\u3092\u76ee\u6307\u3057\u307e\u3059\u3002"}],"utteranceid":"20240720/10/0190cdc4655b0a30300594c8_20240720_103158","text":"\u30a2\u30c9\u30d0\u30f3\u30b9\u30c8\u30fb\u30e1\u30c7\u30a3\u30a2\u306f\u3001\u4eba\u3068\u6a5f\u68b0\u3068\u306e\u81ea\u7136\u306a\u30b3\u30df\u30e5\u30cb\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u73fe\u3057\u3001\u8c4a\u304b\u306a\u672a\u6765\u3092\u5275\u9020\u3057\u3066\u3044\u304f\u3053\u3068\u3092\u76ee\u6307\u3057\u307e\u3059\u3002","code":"","message":""}
-> アドバンスト・メディアは、人と機械との自然なコミュニケーションを実現し、豊かな未来を創造していくことを目指します。
1行目はAPIからのそのままの応答です。JSONフォーマットです。2行目の"->"以降に、text
フィールドの音声認識した結果のテキストを出色しています。結果の取り扱いについては音声認識の結果フォーマットを参照してください。