百度大腦遠(yuǎn)場(chǎng)語(yǔ)音開(kāi)發(fā)套件評(píng)測(cè)—快速上手,超贊語(yǔ)音交互體驗(yàn)
(五)藍(lán)牙連接
輸入命令 :bt_realtek_start 即可啟動(dòng)藍(lán)牙:
打開(kāi)電腦的藍(lán)牙,可以發(fā)現(xiàn)名為realtek_bt的藍(lán)牙設(shè)備,嘗試進(jìn)行配對(duì):
配對(duì)成功后,就可以用藍(lán)牙進(jìn)行音樂(lè)播放等操作了。斷開(kāi)藍(lán)牙連接:
測(cè)試發(fā)現(xiàn)的問(wèn)題:
1、初次打開(kāi)藍(lán)牙播放音頻時(shí),聲音過(guò)大,調(diào)整聲音后,又發(fā)現(xiàn)最大聲音音量有的小了。
2、雖然本套件藍(lán)牙可以一次性連接多個(gè)藍(lán)牙(我嘗試了連接兩個(gè)藍(lán)牙設(shè)備),但是,兩個(gè)連接成功后,當(dāng)用一個(gè)藍(lán)牙設(shè)備播放音樂(lè),然后停止,再用另一個(gè)藍(lán)牙設(shè)備播放音樂(lè)時(shí),發(fā)現(xiàn)播放失敗,只能用之前的那個(gè)藍(lán)牙設(shè)備播放音樂(lè)。
(六)錄音、播放音頻測(cè)試
查看tmp目錄內(nèi)容:cd tmp
進(jìn)行錄音:arecord -D hw:2,0 -c 8 -r 16000 -f S16_LE /tmp/test.wav
結(jié)束錄音后,查看目錄文件信息:
使用 aplay 命令就可以播放錄音文件:aplay test.wav
錄音效果還是不錯(cuò)的。
(七)語(yǔ)音合成測(cè)試
示例程序會(huì)將文本“456hello你好今天天氣不錯(cuò)”傳送給服務(wù)器,由服務(wù)器生成對(duì)應(yīng)的語(yǔ)音,保存為pcm文件,用戶可以進(jìn)行播放體驗(yàn)。進(jìn)入語(yǔ)音合成示例目錄:cd /oem/BDSpeechSDK/sample/tts
執(zhí)行語(yǔ)音合成操作:LD_LIBRARY_PATH=/oem ./online-test
運(yùn)行結(jié)束后,會(huì)在當(dāng)前目錄下生成一個(gè)xxx.pcm,其中xxx是一個(gè)測(cè)試時(shí)的時(shí)間戳.在終端執(zhí)行如下命令體驗(yàn)語(yǔ)音合成效果:aplay -t raw -c 1 -f S16_LE -r 16000 xxx.pcm
(八)交叉編譯
1、下載SDK
將rk3308板子內(nèi)的oem內(nèi)的BDSpeechSDK目錄復(fù)制到虛擬機(jī)內(nèi)。可以進(jìn)行adb pull /oem/BDSpeechSDK指令download下來(lái),隨后將sdk放到虛擬機(jī)。
我這里就直接將整個(gè)/oem 目錄下載放到了“下載”目錄。
2、交叉工具鏈:
rk3308的編譯在標(biāo)準(zhǔn)linux上是編不出來(lái)的。我們這里需要用到交叉編譯工具鏈,這是一個(gè)特殊的編譯器,可以認(rèn)為是在A平臺(tái)編譯出B平臺(tái)才能運(yùn)行的工具包。
我這里將交叉編譯鏈復(fù)制到虛擬機(jī)的桌面上了。
3、按要求構(gòu)建項(xiàng)目工程目錄結(jié)構(gòu)
創(chuàng)建如下的目錄結(jié)構(gòu):
編寫(xiě)(copy) sample代碼
目錄sample/wakeup/src中的e2e_wp_asr_test.cpp中有相應(yīng)的demo代碼,這里我就直接將wakeup/src中的sample代碼拷貝到這里替換main.cpp
這里先不做任何改動(dòng),就照搬就行。目前的第一目的是盡快正確交叉編譯并成功在板子上跑起來(lái)。
編寫(xiě)(copy) Makefile代碼
makefile可以幫助工程快速連接編譯,它能省掉很多功夫。由于本人不是純正的c++開(kāi)發(fā)工程師,所以這里copy了 sample/wakeup/ 中的Makefile代碼:
嘗試編譯:
配置完成后,需要在Makefile所在的目錄執(zhí)行:
上述語(yǔ)句中的 /home/snow/桌面1/rk3308_arm_tool_chain 代表著工具鏈rk3308_arm_tool_chain的根目錄/bin,如果路徑填寫(xiě)錯(cuò)誤,會(huì)出現(xiàn)如下錯(cuò)誤:
make: arm-rockchip-linux-gnueabihf-g++:命令未找到
可以進(jìn)入rk3308_arm_tool_chain 目錄 ,使用pwd命令獲取rk3308_arm_tool_chain 的路徑:
使用正確的路徑,重新編譯:
如果出現(xiàn)上述錯(cuò)誤,說(shuō)明缺少alsa的so庫(kù),我們可以從oem目錄中pull一個(gè)文件下來(lái)。他在/oem目錄下,名為libbd_alsa_audio_client.so。將它復(fù)制到BDSpeechSDK/lib下,這個(gè)目錄專(zhuān)門(mén)放外部依賴(lài)的庫(kù)文件,這個(gè)也放這里吧。
然后再次嘗試編譯,沒(méi)有任何錯(cuò)誤提示了,編譯通過(guò)。
編譯成功,發(fā)現(xiàn)工程目錄下多了一個(gè)main文件,這就是我們編譯好的可執(zhí)行程序了。
將main可執(zhí)行程序復(fù)制到/tmp目錄(tmp目錄在斷電后會(huì)清空)下:adb push ./main /tmp
運(yùn)行程序:
LD_LIBRARY_PATH=/oem:/oem/BDSpeechSDK/lib:/oem/BDSpeechSDK/extern/lib ./main
出現(xiàn)錯(cuò)誤:
error:5, domain:38, desc:Wakeup: dat file invalid., sn:
這里意思是沒(méi)成功載入dat文件。我們看一下代碼。在wakeup_config函數(shù)中,可以看到它配置dat文件的路徑,是../../resources/asr_resource/esis_resource.pkg只要把這個(gè)層級(jí)改成絕對(duì)路徑,或者把路徑改短 ./esis_resource.pkg,并把pkg文件拷貝過(guò)來(lái)即可。
然后重新編譯,adb push到tmp下,還是這個(gè)錯(cuò)誤,那是因?yàn)殡m然改了文件路徑,但是我們還沒(méi)有把 esis_resource.pkg 也push到tmp文件夾里,進(jìn)入 /home/snow/下載/oem/BDSpeechSDK/resources/asr_resource 文件夾,執(zhí)行 adb push ./esis_resource.pkg /tmp
再次執(zhí)行,出現(xiàn)錯(cuò)誤:error:-1, domain:10, desc:alsa_audio_client_open failed, sn: ,
因?yàn)槲覀兊膍ain也依賴(lài)于alsa的服務(wù),所以需要開(kāi)啟alsa服務(wù)
或者可以將上述語(yǔ)句寫(xiě)入 /oem/Rklunch.sh 文件,這個(gè)文件是rk3308板子開(kāi)機(jī)后會(huì)跑的一個(gè)執(zhí)行文件,我們可以把所有需要在開(kāi)機(jī)時(shí)啟動(dòng)的東西,都寫(xiě)在這個(gè)文件里,這樣板子下次就會(huì)幫我們自動(dòng)啟動(dòng)alsa了。
執(zhí)行成功后,再次運(yùn)行main程序:
cd /tmpLD_LIBRARY_PATH=/oem:/oem/BDSpeechSDK/lib:/oem/BDSpeechSDK/extern/lib ./main
執(zhí)行成功。
(九)交叉編譯-語(yǔ)音合成
按照上面的方法,我們可以編譯一下語(yǔ)音合成示例(可以把合成的文字改為自己喜歡的,我這里就改成了“Hello World,今天時(shí)七夕情人節(jié),中國(guó)的傳統(tǒng)節(jié)日!”,有條件的,可以嘗試輸入文本,再合成語(yǔ)音)。
編譯程序:
上述警告可以忽略。把編譯完成的可執(zhí)行文件下載到開(kāi)發(fā)板并運(yùn)行:
出現(xiàn)錯(cuò)誤,仔細(xì)查看源代碼,發(fā)現(xiàn)main 函數(shù)中需要引用配置文件speech_sdk_log.conf,但路徑為 ../../resources/speech_sdk_log.conf
并將speech_sdk_log.conf文件push到/tmp路徑下
重新執(zhí)行:
LD_LIBRARY_PATH=/oem:/oem/BDSpeechSDK/lib:/oem/BDSpeechSDK/extern/lib ./main
執(zhí)行成功,可以看到/tmp目錄多了一個(gè)6832.pcm文件,運(yùn)行命令 aplay -t raw -c 1 -f S16_LE -r 16000 6832.pcm,執(zhí)行后,就能播放女生版的語(yǔ)音內(nèi)容了。

發(fā)表評(píng)論
請(qǐng)輸入評(píng)論內(nèi)容...
請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字
最新活動(dòng)更多
-
即日-6.16立即報(bào)名>> 【在線會(huì)議】Solution Talks |Computex 2025關(guān)鍵趨勢(shì)深讀
-
6月20日立即下載>> 【白皮書(shū)】精準(zhǔn)測(cè)量 安全高效——福祿克光伏行業(yè)解決方案
-
7月3日立即報(bào)名>> 【在線會(huì)議】英飛凌新一代智能照明方案賦能綠色建筑與工業(yè)互聯(lián)
-
7月22-29日立即報(bào)名>> 【線下論壇】第三屆安富利汽車(chē)生態(tài)圈峰會(huì)
-
7.30-8.1火熱報(bào)名中>> 全數(shù)會(huì)2025(第六屆)機(jī)器人及智能工廠展
-
7月31日免費(fèi)預(yù)約>> OFweek 2025具身機(jī)器人動(dòng)力電池技術(shù)應(yīng)用大會(huì)
推薦專(zhuān)題
- 1 AI 眼鏡讓百萬(wàn) APP「集體失業(yè)」?
- 2 大廠紛紛入局,百度、阿里、字節(jié)搶奪Agent話語(yǔ)權(quán)
- 3 深度報(bào)告|中國(guó)AI產(chǎn)業(yè)正在崛起成全球力量,市場(chǎng)潛力和關(guān)鍵挑戰(zhàn)有哪些?
- 4 上海跑出80億超級(jí)獨(dú)角獸:獲上市公司戰(zhàn)投,干人形機(jī)器人
- 5 國(guó)家數(shù)據(jù)局局長(zhǎng)劉烈宏調(diào)研格創(chuàng)東智
- 6 下一代入口之戰(zhàn):大廠為何紛紛押注智能體?
- 7 百億AI芯片訂單,瘋狂傾銷(xiāo)中東?
- 8 Robotaxi新消息密集釋放,量產(chǎn)元年誰(shuí)在領(lǐng)跑?
- 9 格斗大賽出圈!人形機(jī)器人致命短板曝光:頭腦過(guò)于簡(jiǎn)單
- 10 為何全球AI巨頭都在搶?zhuān)縈CP協(xié)議背后的暴富玄機(jī)大公開(kāi)!