NSReeds 説明書
(最終更新:2020/12/16)
■初歩的な使用例
単語登録(add)と音声認識の始動(go)
認識結果受け取り(get)と加工(fix)
単語の登録(add)と音声認識の始動(go)
●NSNSvl.add(登録するグループ, "単語" (,優先度) )
●NSNSvl.go(有効化するグループ@ (,有効化するグループA,...) )
--グループ1にいくつか単語を登録。
NSNSvl.add(1,"リンゴ",100)
NSNSvl.add(1,"ミカン",100)
NSNSvl.add(1,"バナナ",100)
NSNSvl.add(1,"Banana",100)
NSNSvl.add(1,"Banana Juice",100) -->一部の英単語はカタカナ音でも認識される
NSNSvl.add(1,"リンゴ,ジュース",100) -->日本語の文節を明示的に区切る場合は','
NSNSvl.add(1,"(宇宙/ソラ)",100) -->音声入力「ソラ」から"宇宙"が返る
--グループ1を有効化して認識開始。
NSNSvl.go(1)
※優先度を省略時は100。
認識結果受け取り(get)
●NSN.fix(et( ("連語の連結文字") )
--str…結果。認識した節同士を"+"で繋げた文字列、未認識なら""(空文字列)が返る。
--percent…結果の信頼率%(あまりあてにならない)
local str,percent=NSNSvl.get("+")
連結文字列を省略時は、結果の先頭が全角文字なら""、半角文字なら" "と見なす。
認識の中断
●NSNSvl.stop()
音声認識実行中、この関数を呼ばずにメッセージボックスを出すと動作が不安定になる(ウィンドウを操作不能になる)。
check()を用いて自分で無加工の結果を受け取った場合、すぐにstop()を呼ぶこと。
get()/fix()で結果を取得した場合は内部において自動で呼んでいる。
グループの削除(初期化)
●NSNSvl.del(削除するグループ@ (,削除するグループA,...) )
--グループ 1〜4,"hoge" の内容を初期化
NSNSvl.del(1,2,3,4,"hoge")
コード例
--グループ1に単語を登録。
NSNSvl.add(1,"リンゴ",100)
NSNSvl.add(1,"ミカン",100)
NSNSvl.add(1,"バナナ",100)
--グループ1を有効化して認識開始。
local str,ostr,percent=NSNSvl.wait(1)
--[[以下の処理のラッパー関数が↑
NSNSvl.go(1)
--認識待ちループ
local str,ostr,percent
repeat
--str…結果。認識した節同士を"+"で繋げた文字列、未認識なら""(空文字列)が返る。
--percent…認識の信頼率だが、あまりあてにならない。
str,percent=NSNSvl.check()
--曖昧な発音のゆれを考慮して元に戻す処理。
--連結文字列省略時は、
-- @全角ならそのまま繋げる
-- A半角なら半角スペースで繋げる
if(str)then
str,ostr=NSNSvl.fix(str,"+")
end
NSSleep(1)NSDoEvents()
until(str)
--音声認識を休止させる
NSNSvl.stop()
--]]
--読み取った語str
を表示。
alert(
str
..(ostr and " ←("..ostr..")" or "")
.."※信頼度は"..(percent or "??").."%です"
)
ガラスグサに戻る