您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“小程序開發之語音搜索的示例分析”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“小程序開發之語音搜索的示例分析”這篇文章吧。
直接調用微信小程序錄音接口,然后上傳到服務器,百度語音的接口是識別不了這種格式的文件,那么問題來了
一、如何轉碼?ffmpeg?
二、如何在PHP中使用?
本文將要解決這兩個問題。
用到的第三方工具:
1、百度語音
2、silk文件格式轉換
一、轉碼silk文件格式
傳送門在此:github.com/kn007/silk-v3-decoder
需要注意的是:
1、首先要安裝- ffmpeg,具體安裝方法請自行百度,如果要轉碼成MP3格式,請記得啟用libmp3lame 即 --enable-libmp3lame
2、如果在使用silk-v3-decoder 過程中提示轉碼失敗,請自行添加ffmpeg到環境變量或者修改converter.sh,如下所示,建議后者,因為通過PHP執行shell腳本是不讀環境變量的
二、如何在PHP中使用
有了上面的神器之后,媽媽再也不用擔心語音識別問題了。
目前采用thinkPHP 5作為服務端系統,在小程序端把音頻文件上傳到后臺,TP5已有文件上傳功能的封裝,具體上傳代碼不細說;
我們只需要讀取上傳的文件,通過shell命令進行轉碼,然后把轉碼后的文件發送給百度語音接口即可得到語音識別結果。
需要注意如下幾點:
1、其中php執行轉碼的代碼如下
$real_file即為轉碼后的音頻文件的絕對地址,建議轉換成WAV格式,amr格式轉換不成功,原因未知。
2、調用百度語音接口格式設置
需要設置音頻格式為WAV,碼率為16000或者8000,如圖所示:
三、總結
小程序語音接口和公眾號的語音接口不一樣,公眾號語音接口返回的是amr格式,小程序的是silk格式,是Skype開源的一個網絡音頻格式,通過傳送門中的工具即可轉碼,轉碼工具先是轉成pcm格式文件,然后轉成指定格式,其實pcm這種格式百度語音已經可以識別,有需要的童鞋可以修改converter.sh腳本。
以上是“小程序開發之語音搜索的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。