網(wǎng)上前篇一律的微信小程序語音識別博客,在小程序api更新之后讓莘莘學(xué)子看的一頭霧水,這里只敘述前端的工作內(nèi)容,以下是微信小程序語音識別、合成如何實(shí)現(xiàn)
先敘述下原理:
利用微信小程序api,錄音結(jié)束后返回mp3文件;
使用方法請看:https://developers.weixin.qq.com/miniprogram/dev/api/getRecorderManager.html
錄音轉(zhuǎn)換成文件的格式只有兩種:acc mp3,所以網(wǎng)上老api返回的是silk格式的都是過時的。
切記:
微信開發(fā)者工具拿到的MP3連接是不可用的,只有在真機(jī)上調(diào)試返回的是本地文件的路徑,這個路徑指向錄音的mp3文件,是可以用的。
如此輕松的拿到mp3文件了,很簡單吧~
接下來我們將利用百度語音識別合成api:http://ai.baidu.com/docs#/ASR-API/top
這里配置微信小程序錄音api
配置后start的值為:
{ numberOfChannels: 1, sampleRate:16000, format: 'mp3', frameSize: 50 }
這樣錄音后取到的mp3文件是百度語音想要的。
方式一 :是不是要問了百度語音識別不支持mp3格式啊,這就是java后臺的事了,網(wǎng)上java mp3轉(zhuǎn)pcm格式的博客數(shù)不勝數(shù),讓你的java后臺去看百度語音api獲取token順便將轉(zhuǎn)換后的pcm格式給轉(zhuǎn)換成文字傳給前臺吧。
是不是百度一大堆的配置和前端沒有關(guān)系了~
松了一口氣~好強(qiáng)的前端當(dāng)然可以拿到后臺傳輸過來的pcm文件地址再去調(diào)百度api。
選擇方式一跳過方式二,直接看再續(xù)。
方式二 :如果前端要去做的話,請看api詳解
地址:http://ai.baidu.com/docs#/ASR-API/top
再續(xù): 這樣錄音后的mp3文件就被轉(zhuǎn)換成了文字。如果想要語音播放的功能,請繼續(xù)往下看~很簡單
微信小程序api:
wx.createInnerAudioContext(),地址:https://developers.weixin.qq.com/miniprogram/dev/api/createInnerAudioContext.html
看參數(shù);
這里要的是src即是MP3的鏈接啊,我只拿到后臺穿過來的文字啊。
對,百度語音合成API,不去百度官網(wǎng)看了,太簡單了,奉上:
https://tsn.baidu.com/text2audio?tok=xxxx&cuid=867905025778863&ctp=1&spd=6&lan=zh&tex=xxxx; tok:百度語音token, ?。ǐ@取請看額外篇) text:你想要播報的文字。 這是一個完整的mp3鏈接,調(diào)用微信小程序api可直接播放。 額外:百度token的獲?。?
/*百度語音合成獲取token*/ export let getBaiDuToken=()=>{ return new Promise((resolve)=>{ wx.request({ url: 'https://openapi.baidu.com/oauth/2.0/token?grant_type=client_credentials&client_id=xxxxxxxx&client_secret=xxxxxxxxxx', method:'GET', success: function(r){ resolve(r); }, fail(res){ wx.showToast({ title:"百度語音合成獲取token接口錯誤", icon:'none' }); } }) }); };
這里的client_id和client_secret是注冊百度語音識別平臺在控制臺中創(chuàng)建應(yīng)用獲取的。
KESION 科汛軟件
KESION 科汛軟件是國內(nèi)領(lǐng)先的在線教育軟件及私域社交電商軟件服務(wù)提供商,長期專注于為企業(yè)提供在線教育軟件及社交電商SaaS平臺解決方案。
公司核心產(chǎn)品云開店SaaS社交電商服務(wù)平臺、在線教育SaaS服務(wù)平臺、教育企業(yè)數(shù)字化SaaS云平臺、企微營銷助手、私有化獨(dú)立部署品牌網(wǎng)校和在線教育咨詢等。KESION 不斷通過技術(shù)創(chuàng)新,提供產(chǎn)品和服務(wù),助力企業(yè)向數(shù)字化轉(zhuǎn)型,通過科技驅(qū)動商業(yè)革新,讓商業(yè)變得更智慧!
實(shí)現(xiàn)小程序canvas拖拽功能這篇文章,下面小編從如何實(shí)現(xiàn),到需解決的問題,以及如何縮放拖拽來一一解答。...
對于小程序頂部及頭部的自定義,也就是小程序頁面的導(dǎo)航欄自定義,我們要如何做呢,下面為大家解答。...