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

發(fā)表評論
請輸入評論內(nèi)容...
請輸入評論/評論長度6~500個(gè)字
最新活動(dòng)更多
-
即日-9.16點(diǎn)擊進(jìn)入 >> 【限時(shí)福利】TE 2025國際物聯(lián)網(wǎng)展·深圳站
-
10月23日火熱報(bào)名中>> 2025是德科技創(chuàng)新技術(shù)峰會(huì)
-
10月23日立即報(bào)名>> Works With 開發(fā)者大會(huì)深圳站
-
10月24日立即參評>> 【評選】維科杯·OFweek 2025(第十屆)物聯(lián)網(wǎng)行業(yè)年度評選
-
11月27日立即報(bào)名>> 【工程師系列】汽車電子技術(shù)在線大會(huì)
-
12月18日立即報(bào)名>> 【線下會(huì)議】OFweek 2025(第十屆)物聯(lián)網(wǎng)產(chǎn)業(yè)大會(huì)
推薦專題
- 1 先進(jìn)算力新選擇 | 2025華為算力場景發(fā)布會(huì)暨北京xPN伙伴大會(huì)成功舉辦
- 2 人形機(jī)器人,正狂奔在批量交付的曠野
- 3 宇樹機(jī)器人撞人事件的深度剖析:六維力傳感器如何成為人機(jī)安全的關(guān)鍵屏障
- 4 解碼特斯拉新AI芯片戰(zhàn)略 :從Dojo到AI5和AI6推理引擎
- 5 AI版“四萬億刺激”計(jì)劃來了
- 6 2025年8月人工智能投融資觀察
- 7 8 a16z最新AI百強(qiáng)榜:硅谷頂級VC帶你讀懂全球生成式AI賽道最新趨勢
- 9 Manus跑路,大廠掉線,只能靠DeepSeek了
- 10 地平線的野心:1000萬套HSD上車