麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 課堂 > 小程序 > 正文

微信小程序實現語音識別轉文字功能及遇到的坑

2020-03-21 15:50:01
字體:
來源:轉載
供稿:網友

最近為小程序增加語音識別轉文字的功能,坑路不斷,特此記錄。

微信開發者工具

開發者工具上的錄音文件與移動端格式不同,暫時只可在工具上進行播放調試,無法直接播放或者在客戶端上播放

debug的時候發現,工具上錄音的路徑是http://tmp/xxx.mp3,客戶端上錄音是wxfile://xxx.mp3。 忽悠呢,不是格式不同,是映射路徑不同。

其實做個兼容也不難,每次提示一行文字,很丑。

采樣率與編碼碼率限制

每種采樣率有對應的編碼碼率范圍有效值,設置不合法的采樣率或編碼碼率會導致錄音失敗。詳細看這個
https://developers.weixin.qq.com/miniprogram/dev/api/media/recorder/RecorderManager.start.html

一開始沒有留意,導致錄音不成功。

試過幾次后,采用這樣的配置,感覺錄音識別率和體積之間比較好平衡:

sampleRate: 16000, //采樣率numberOfChannels: 1, //錄音通道數encodeBitRate: 96000, //編碼碼率

單通道基本是必選的。因為asr只支持單通道。frameSize也是可以的,但是要考慮截斷對識別的影響。暫時沒有用上。

錄音優化

因為可能誤按,于是對小于500ms的錄音直接忽略。
另外,松開錄音按鍵后,再延遲一點時間才真正stop錄音。

錄音文件格式

微信錄音文件支持mp3和aac。這2種格式文件都比較小,aac文件體積更小。這對上傳來說是件好事情,速度更快。
但是對語音識別轉文字就不友好了。因為百度、阿里云ASR、訊飛的語音轉文字接口都不支持aac和mp3,通常要求是pcm或者wav格式。

如果微信錄音能提供wav格式,那么就不用服務器做格式轉換了,但是wav格式體積是mp3、aac的5到10倍,至少短期是沒戲了,這也是很多人吐槽的地方。

服務器轉換錄音文件格式

可以用java第三方庫轉換,也可以用Process調用ffmpeg轉換。要注意的是,根據識別API的要求來做轉換。比如阿里云asr的要求是:

支持音頻編碼格式:pcm(無壓縮的pcm文件或wav文件)、opus,16bit采樣位數的單聲道(mono);
支持音頻采樣率:8000Hz、16000Hz;

java ProcessBuilder要使用數組傳參

轉換音視頻,習慣用ffmpeg。安裝完ffmpeg之后,用java新建進程調用。

Process = new ProcessBuilder("ffmpeg -i in.mp3 out.wav").start();

一直提示CreateProcess error。 后來看文檔才發現,要以數組的形式傳入參數。

Process = new ProcessBuilder("ffmpeg", "-y", "-i", "in.mp3", "out.wav").start();

這樣就啟動成功了。

關于java啟動進程,不是本文重點,以后再寫篇文章總結。

阿里云asr sdk使用問題

這個問題困擾了一天時間,回想起來真是吐血。
問題表現是微信錄制的語音很多都識別不了。
最初是直接把錄音mp3文件轉換為pcm文件,本地能播放,但是用阿里云asr sdk卻識別不了。 一開始以為是文件編碼問題。特意查了asr支持的文件格式,用ffprobe檢查,potplayer看屬性,都沒有看出問題。
甚至把啟動ffmpeg進程轉換也改了,用了java的庫去做,還是不行。
后來為了方便測試問題,用asr的restful接口測試錄音文件,都能識別! 似乎是sdk的問題。于是打開官方文檔例子對比。發現用的是sdk 2.x,老鐵啊你復制粘貼過來的代碼竟然少了!欲哭無淚。

// TODO 重要提示:這里是用讀取本地文件的形式模擬實時獲取語音流并發送的,因為read很快,所以這里需要sleep// TODO 如果是真正的實時獲取語音,則無需sleep, 如果是8k采樣率語音,第二個參數改為8000int deltaSleep = getSleepDelta(len, sampleRate);Thread.sleep(deltaSleep);

也少了對sampleRate的設置。

阿里云asr token過期

因為用的是免費版asr,沒有給福報廠充值,因此token一天失效,導致聯調的時候突然報錯。
最后實在受不了,寫了個定時任務每小時更新token。
這,就是beggar VIP

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 一级黄色大片在线观看 | 护士xxxx | 美女91视频 | 国产一级伦理片 | 九草在线 | 亚洲成人在线视频网站 | 成人午夜激情视频 | 91在线视频观看 | 人禽l交免费视频 | 国产精品区一区二区三区 | 欧美精品毛片 | 黄色网址你懂的 | 欧美精品久久久久久久多人混战 | 羞羞的视频 | 韩国美女一区 | 日日鲁夜夜视频热线播放 | 久久久一二三 | 黑人三级毛片 | 亚洲日本欧美 | 粉嫩粉嫩一区二区三区在线播放 | 午夜在线视频一区二区三区 | 黄色毛片视频在线观看 | 免费香蕉成视频成人网 | 欧美一区在线观看视频 | 欧美成人黄色小视频 | 奶子吧naiziba.cc免费午夜片在线观看 | 天天夜天天操 | 国产亚洲自拍一区 | av在线不卡免费 | 密室逃脱第一季免费观看完整在线 | 国产精品剧情一区二区三区 | 久久草草亚洲蜜桃臀 | 久久精品二区 | 欧美成人国产va精品日本一级 | 久久久久久久久国产精品 | 成人不卡一区二区 | 国产一级毛片高清视频 | 国产高潮失禁喷水爽到抽搐视频 | 久久国产精品系列 | 国产成人强伦免费视频网站 | 欧美wwwwww|