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