這次給大家介紹的是基于SensorTile物聯(lián)網(wǎng)開發(fā)套件,DIY制作一個無線麥克風(fēng)。
先上效果圖:
說明:
圖中的效果是SensorTile錄音,通過BLE傳輸?shù)绞謾C(jī)實(shí)時播出,可以開始和停止,聲音請自行腦補(bǔ)。前面講的幾個例子都是基于例程中FeatureListActivity類的,這樣小型的修改是可以的,但是如果要做一個大型項(xiàng)目那就行不通了。
這次就以無線麥克風(fēng)為例給大家介紹如何新建一個Activity,關(guān)于語音播放的詳細(xì)的介紹可以參考附件內(nèi)容中關(guān)于簡單的語言交互(3)--錄音,播放,存儲介紹。
1. 燒錄BM2固件,使用BlueMS獲取BlueVoice的LICENSE。
2. 打開ST提供的例程,新建AudioActivity.java文件extends AppCompatActivity implements View.OnClickListener。
3. 在AndroidManifest.xml中注冊該Activity:
4. 新建activity_audio.xml的布局文件,里面放置兩個按鈕:
5. 在AudioActivity中寫好啟動接口:
6. 寫好FeatureListener,用來處理接收的數(shù)據(jù):
7. 在AudioActivity類中的onCreate中讀取和保存狀態(tài),綁定布局文件,初始化mNode 和mAudioTrack如下:
8. 在onStart中注冊前面的mAudioListener,使能FeatureAudioADPCM類和FeatureAudioADPCMSync類,開啟播放。
9. 后退函數(shù)onBackPressed:
10. 退出函數(shù)onStop,停止播放,注銷語音類:
11. 按鈕響應(yīng)函數(shù)onClick,播放按鈕就是onStart中的內(nèi)容,停止按鈕就是onStop中的內(nèi)容:
12. 啟動該AudioActivity:
可以直接從ScanActivity中啟動,也可以從其他類中啟動,本例從FeatureListActivity中的按鈕中啟動。
好啦,現(xiàn)在全部工作就完成了,后期可以在此基礎(chǔ)上進(jìn)行語音識別,大家敬請期待。