UE4 集成讯飞听写插件
搞了幾天,有些坑記錄一下。
3個方面的知識需要學習
1、制作UE4插件
2、引入第三方庫
3、訊飛聽寫的api
?一看是參考?https://blog.csdn.net/u012793104/article/details/78067937
http://doc.xfyun.cn/msc_windows/%E8%AF%AD%E9%9F%B3%E5%90%AC%E5%86%99.html
API:http://mscdoc.xfyun.cn/windows/api/iFlytekMSCReferenceManual/qisr_8h.html?
?
整個插件架構:錄音 ->識別(訊飛語音聽寫,即上圖架構)->本地轉碼 以顯示
?主要需要了解的API: ?QISRSessionBegin ?需要你更改自己的參數,可以按照下載的案例改
QISRAudioWrite: 搞懂這個才能明白整個訊飛識別功能的機制
開發過程主要的問題表現為打印信息有時并不是中文,而是未轉換的拼接字符串
所以好好看了看 下載的案例,和API 經過不斷調試才發現就是json的問題
之前的代碼 都是拼接所有 從?QISRGetResult獲得的結果,然后最后一步轉換,所以出現問題了.
?比如錄入"床前明月光"
{"sn":1,
"ls":false,
"bg":0,
"ed":0,
"ws":
[
{"bg":1,"cw":[{"sc":0.0,"w":"床"}]},
{"bg":1,"cw":[{"sc":0.0,"w":"前"}]},
{"bg":1,"cw":[{"sc":0.0,"w":"明"}]},
{"bg":1,"cw":[{"sc":0.0,"w":"月光"}]}
]
}
{"sn":2,"ls":true,"bg":0,"ed":0,
"ws":
[{"bg":0,"cw":[{"sc":0.0,"w":"。"}]}]
}
如果結果為上面,則無法轉換json以致原樣輸出,因為這是直接將兩個json對象拼接了。
{"sn":1,
"ls":false,
"bg":0,
"ed":0,
"ws":
[
{"bg":1,"cw":[{"sc":0.0,"w":"床"}]},
{"bg":1,"cw":[{"sc":0.0,"w":"前"}]},
{"bg":1,"cw":[{"sc":0.0,"w":"明"}]},
{"bg":1,"cw":[{"sc":0.0,"w":"月光"}]}
]
}
這種情況就會成功輸出中文。
所以問題是 我獲得的結果有時被加了一個句號,我想著應該是語法的緣故。
所以我換了一個方法,先解析再拼接 解決了問題。
?----
ps:測試要時刻注意麥克風是否正常·,別搞自己
下載地址:
github:https://github.com/huzhongyidihao/XFPlugin
?
轉載于:https://www.cnblogs.com/yuedongdeguangzi/p/9196957.html
總結
以上是生活随笔為你收集整理的UE4 集成讯飞听写插件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python搜索word关键字_Pyth
- 下一篇: 微信内置浏览器不支持下载文件的解决方案