本發(fā)明涉及藍牙低能耗技術(shù)應(yīng)用領(lǐng)域,特別涉及一種基于軟件app的藍牙設(shè)備語音交互方法及系統(tǒng)。
背景技術(shù):
隨著社會的發(fā)展及語音技術(shù)的提高,遠場語音交互越來越來廣泛應(yīng)用,藍牙在語音方面的方便和靈活性受到了大家的特別關(guān)注。用戶非常期望能夠通過藍牙設(shè)備的語音來實現(xiàn)日常中的交互,免去了用戶需要用手進行操作的麻煩,這樣可以徹底的解放出他們的雙手,是同時藍牙設(shè)備又能具備互聯(lián)網(wǎng)功能,云端可以管理對應(yīng)帳戶下的藍牙設(shè)備。舉個例,用戶只要對藍牙設(shè)備講出某項要求,例如想要聽歌、查天氣或是欲撥打電話等,系統(tǒng)便會依據(jù)使用者的語音信號,采取對應(yīng)的動作。然而,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題:
市場上已經(jīng)有不少手機語音助手的產(chǎn)品,如siri、svoice、googleassistant及靈犀等,在與藍牙設(shè)備交互方面,都需要手動操作,點擊進入語音助手,再點擊時,不管怎樣就直接退出語音助手,操作過程死板且無法連續(xù)操作。
目前藍牙語音交互的模式基本上需要物理按鍵的協(xié)助完成語音交互,以藍牙車載系統(tǒng)為例,撥號、接聽,導(dǎo)航都是需要通過按鍵或觸摸屏來操作,這種操作方式雖然能保證其功能正常使用,但便捷性和安全度低。例如,當(dāng)人在駕車時,通過按鈕操控車載系統(tǒng)會造成注意力分散,難以應(yīng)對路面特殊情況,造成行車安全隱患。
此外,現(xiàn)有的藍牙設(shè)備的語音交互中,語音識別錯誤率高,對語音內(nèi)容的響應(yīng)形式較為單一,導(dǎo)致用戶使用上的困擾和抱怨。
中國發(fā)明專利申請cn201410511154公開了一種通過藍牙耳機與移動終端進行語音交互的方法及系統(tǒng)。然而,申請人發(fā)現(xiàn),專利申請cn201410511154的方法存在以下不足之處:
1)、上述方法每次操作都需要觸發(fā)按鍵操作;
2)、上述方法沒有專業(yè)的云端服務(wù)器支撐,不支持智能家居的控制,獲取的內(nèi)容有限。
綜上所述,現(xiàn)有的藍牙設(shè)備人機語音交互模式使用起來非常不便,每次一問一答,都需要用戶干預(yù),操作繁瑣,人機交互方式也很不自然,內(nèi)容也有限,用戶體驗度較差。
技術(shù)實現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問題是:提供一種基于軟件app的藍牙設(shè)備語音交互方法及系統(tǒng),能克服舊式三種方法的弊端,是目前液化氣罐液位檢測等行業(yè)廣泛應(yīng)用的趨勢。
為解決上述技術(shù)問題,本發(fā)明提供一種基于軟件app的藍牙設(shè)備語音交互方法及系統(tǒng),包括手機、數(shù)據(jù)分析處理軟件app、藍牙通信模塊、藍牙設(shè)備、云端服務(wù)器、網(wǎng)絡(luò)模塊和音頻模塊。其中手機上安裝數(shù)據(jù)分析處理軟件app;其中藍牙通信模塊設(shè)在藍牙設(shè)備上,其中數(shù)據(jù)分析處理軟件app和藍牙設(shè)備分別設(shè)有音頻模塊;其中數(shù)據(jù)分析處理軟件app和云端服務(wù)器分別設(shè)有網(wǎng)絡(luò)模塊;其中手機通過數(shù)據(jù)分析處理軟件app的音頻模塊與藍牙設(shè)備的音頻模塊建立音頻連接;其中手機通過數(shù)據(jù)分析處理軟件app的網(wǎng)絡(luò)模塊與云端服務(wù)器的網(wǎng)絡(luò)模塊建立連接;其中藍牙設(shè)備為藍牙音箱、藍牙車載等負載有藍牙設(shè)備的裝置。
進一步優(yōu)化,藍牙設(shè)備通知手機的數(shù)據(jù)分析處理軟件app當(dāng)前采樣頻率,手機的數(shù)據(jù)分析處理軟件app根據(jù)收到的采樣頻率上報云端服務(wù)器;
進一步優(yōu)化,藍牙音箱根據(jù)當(dāng)前的實際采樣頻率通過自定義的at指令按約定好的格式發(fā)給手機的數(shù)據(jù)分析處理軟件app,手機的數(shù)據(jù)分析處理軟件app根據(jù)約定的格式解析at指令,獲得采樣頻率,并通過http接口,將實際采樣頻率發(fā)給云端服務(wù)器;
進一步優(yōu)化,藍牙音箱的固件預(yù)設(shè)了一小組喚醒指令,當(dāng)藍牙音箱與手機連接成功后,本地語音識別功能就會啟動,藍牙音箱一直處于監(jiān)聽狀態(tài),一旦解析到與預(yù)置的指令一致,喚醒手機的數(shù)據(jù)分析處理軟件app的語音交互系統(tǒng)。數(shù)據(jù)分析處理軟件app啟動錄音并同步把語音上傳云端服務(wù)器;云端服務(wù)器根據(jù)采樣頻率解析語音數(shù)據(jù),并執(zhí)行語音中的指令;數(shù)據(jù)分析處理軟件app通過藍牙設(shè)備播報云端服務(wù)器回復(fù);若數(shù)據(jù)分析處理軟件app與藍牙設(shè)備之前交互的空閑時間超過預(yù)設(shè)置閥值,手機的數(shù)據(jù)分析處理軟件app關(guān)閉、云端服務(wù)器及藍牙設(shè)備的語音交互;等待下一輪語音交互;
進一步優(yōu)化,基于軟件app的藍牙設(shè)備語音交互方法及系統(tǒng)的工作步驟:
a、手機通過數(shù)據(jù)分析處理軟件app的音頻模塊與藍牙設(shè)備的音頻模塊建立音頻連接;
b、藍牙設(shè)備向數(shù)據(jù)分析處理軟件app上報采樣頻率;
c、手機的數(shù)據(jù)分析處理軟件app通過網(wǎng)絡(luò)模塊向云端服務(wù)器的網(wǎng)絡(luò)模塊上報采樣頻率;
d、藍牙設(shè)備監(jiān)聽喚醒語音交互指令;
e、喚醒手機的數(shù)據(jù)分析處理軟件app的語音交互;
f、手機的數(shù)據(jù)分析處理軟件app通過網(wǎng)絡(luò)模塊向云端服務(wù)器上傳語音數(shù)據(jù);
g、云端服務(wù)器根據(jù)采樣頻率解析錄音,并執(zhí)行語音中的指令;
h、手機的數(shù)據(jù)分析處理軟件app通過藍牙設(shè)備播報云端服務(wù)器回復(fù);
i、手機的數(shù)據(jù)分析處理軟件app語音交互空閑超時,斷開語音交互;
j、手機的數(shù)據(jù)分析處理軟件app語音斷開語音數(shù)據(jù)上傳通道;
k、等待下一輪語音交互。
采用了上述技術(shù)方案后,本發(fā)明的有益效果是:
相對于現(xiàn)有的技術(shù)方案,本發(fā)明提供一種智能、靈活的藍牙設(shè)備語音交互方法及系統(tǒng),解決現(xiàn)有相關(guān)技術(shù)中的操作不便,識別準(zhǔn)確率不高,內(nèi)容單一的技術(shù)問題,使藍牙設(shè)備操作更具人性化,大大的增加了語音交互的使用便捷性。使得用戶在使用藍牙設(shè)備時不需按物理按鍵即可進行語音交互,并通過實時的語音對話交互減少語音操作上的錯誤率,依托豐富的云端資源,使得藍牙設(shè)備更加靈活和智能化,大大提高用戶的體驗。
附圖說明
圖1是基于軟件app的藍牙設(shè)備語音交互方法及系統(tǒng)工作模塊圖
圖2是基于軟件app的藍牙設(shè)備語音交互方法及系統(tǒng)工作流程圖
具體實施方式
下面結(jié)合附圖1至附圖2和具體實施例對本發(fā)明進行詳細描述,但不作為對本發(fā)明的限定。
如附圖1至附圖2所示,一種基于軟件app的藍牙設(shè)備語音交互方法及系統(tǒng),包括手機、數(shù)據(jù)分析處理軟件app、藍牙通信模塊、藍牙設(shè)備、云端服務(wù)器、網(wǎng)絡(luò)模塊和音頻模塊。其中手機上安裝數(shù)據(jù)分析處理軟件app;其中藍牙通信模塊設(shè)在藍牙設(shè)備上,其中數(shù)據(jù)分析處理軟件app和藍牙設(shè)備分別設(shè)有音頻模塊;其中數(shù)據(jù)分析處理軟件app和云端服務(wù)器分別設(shè)有網(wǎng)絡(luò)模塊;其中手機通過數(shù)據(jù)分析處理軟件app的音頻模塊與藍牙設(shè)備的音頻模塊建立音頻連接;其中手機通過數(shù)據(jù)分析處理軟件app的網(wǎng)絡(luò)模塊與云端服務(wù)器的網(wǎng)絡(luò)模塊建立連接;其中藍牙設(shè)備為藍牙音箱、藍牙車載等負載有藍牙設(shè)備的裝置。藍牙設(shè)備通知手機的數(shù)據(jù)分析處理軟件app當(dāng)前采樣頻率,手機的數(shù)據(jù)分析處理軟件app根據(jù)收到的采樣頻率上報云端服務(wù)器;藍牙音箱根據(jù)當(dāng)前的實際采樣頻率通過自定義的at指令按約定好的格式發(fā)給手機的數(shù)據(jù)分析處理軟件app,手機的數(shù)據(jù)分析處理軟件app根據(jù)約定的格式解析at指令,獲得采樣頻率,并通過http接口,將實際采樣頻率發(fā)給云端服務(wù)器;藍牙音箱的固件預(yù)設(shè)了一小組喚醒指令,當(dāng)藍牙音箱與手機連接成功后,本地語音識別功能就會啟動,藍牙音箱一直處于監(jiān)聽狀態(tài),一旦解析到與預(yù)置的指令一致,喚醒手機的數(shù)據(jù)分析處理軟件app的語音交互系統(tǒng)。數(shù)據(jù)分析處理軟件app啟動錄音并同步把語音上傳云端服務(wù)器;云端服務(wù)器根據(jù)采樣頻率解析語音數(shù)據(jù),并執(zhí)行語音中的指令;數(shù)據(jù)分析處理軟件app通過藍牙設(shè)備播報云端服務(wù)器回復(fù);若數(shù)據(jù)分析處理軟件app與藍牙設(shè)備之前交互的空閑時間超過預(yù)設(shè)置閥值,手機的數(shù)據(jù)分析處理軟件app關(guān)閉、云端服務(wù)器及藍牙設(shè)備的語音交互;等待下一輪語音交互;
基于軟件app的藍牙設(shè)備語音交互方法及系統(tǒng)的工作步驟:
a、手機通過數(shù)據(jù)分析處理軟件app的音頻模塊與藍牙設(shè)備的音頻模塊建立音頻連接;
b、藍牙設(shè)備向數(shù)據(jù)分析處理軟件app上報采樣頻率;
c、手機的數(shù)據(jù)分析處理軟件app通過網(wǎng)絡(luò)模塊向云端服務(wù)器的網(wǎng)絡(luò)模塊上報采樣頻率;
d、藍牙設(shè)備監(jiān)聽喚醒語音交互指令;
e、喚醒手機的數(shù)據(jù)分析處理軟件app的語音交互;
f、手機的數(shù)據(jù)分析處理軟件app通過網(wǎng)絡(luò)模塊向云端服務(wù)器上傳語音數(shù)據(jù);
g、云端服務(wù)器根據(jù)采樣頻率解析錄音,并執(zhí)行語音中的指令;
h、手機的數(shù)據(jù)分析處理軟件app通過藍牙設(shè)備播報云端服務(wù)器回復(fù);
i、手機的數(shù)據(jù)分析處理軟件app語音交互空閑超時,斷開語音交互;
j、手機的數(shù)據(jù)分析處理軟件
app語音斷開語音數(shù)據(jù)上傳通道;
k、等待下一輪語音交互。
請參閱圖2,為本發(fā)明實施例提供的一種基于軟件app的藍牙設(shè)備語音交互方法及系統(tǒng)的實現(xiàn)流程,其主要包括以下步驟:
s101手機與藍牙音箱建立音頻連接;
在本發(fā)明實施例中,所述藍牙設(shè)備可以為藍牙音箱或者藍牙車載等,通過智能手機的系統(tǒng)藍牙模塊打開藍牙,搜索藍牙設(shè)備,并建立連接后,可實現(xiàn)手機與藍牙設(shè)備的語音及指令交互。
s102藍牙音箱上報采樣頻率;
s103手機的數(shù)據(jù)分析處理軟件app上報采樣頻率;
在本發(fā)明實施例中,由于不同的手機與不同的藍牙設(shè)備連接決定了語音的采樣頻率會不同,藍牙音箱根據(jù)當(dāng)前的實際采樣頻率通過自定義的at指令按約定好的格式發(fā)給手機的數(shù)據(jù)分析處理軟件app,手機的數(shù)據(jù)分析處理軟件app根據(jù)約定的格式解析at指令,獲得采樣頻率,并通過http接口,將實際采樣頻率發(fā)給云端服務(wù)器。實現(xiàn)如下:
app注冊自定義at指令廣播
stringaction_vendor_at="android.bluetooth.headset.action.vendor_specific_headset_event";
intentfilterintentfilter=newintentfilter();
intentfilter.addaction(action_vendor_at);
registerreceiver(mfonddeviereceiver,intentfilter);
app接收廣播:
@override
publicvoidonreceive(contextcontext,intentintent){
stringaction=intent.getaction();
if(action.equals(action_vendor_at)){
bundleextras=intent.getextras();
stringstr=(string)extras.get(bluetoothheadset.extra_vendor_specific_headset_event_cmd);
object[]str3=(object[])extras.get(bluetoothheadset.extra_vendor_specific_headset_event_args);
mresult.settext("at"+str+"="+(integer)str3[0]);
}
}
app解析自定義at指令:
at+cevent=1或2(1為8khz采樣頻率,2為16khz采樣頻率)
s104藍牙音箱監(jiān)聽喚醒語音交互指令;
在本發(fā)明實施例中,喚醒信號用于啟動系統(tǒng)進入語音交互過程,藍牙音箱的固件預(yù)設(shè)了一小組喚醒指令,它可以在嘈雜的環(huán)境中使用,如“xinxin”,“xiaoxin”等,當(dāng)藍牙音箱與手機連接成功后,本地語音識別功能就會啟動,藍牙音箱一直處于監(jiān)聽狀態(tài),一旦解析到與預(yù)置的指令一致,喚醒手機app的語音交互系統(tǒng)。應(yīng)用場景:當(dāng)用戶回到家,對著家里的藍牙音箱說,“xiaoxin,打開燈,或打開空調(diào)”,音箱解析到喚醒指令,并把后面的語音通過藍牙傳給app。
s105喚醒手機的數(shù)據(jù)分析處理軟件app的語音交互;
在本發(fā)明實施例中,喚醒信號用于啟動系統(tǒng)進入語音交互過程,收到藍牙設(shè)備端的喚醒指令后,手機的數(shù)據(jù)分析處理軟件app開啟錄音功能,錄音代碼如下:
mrecorder=newmediarecorder();
mrecorder.setaudiosource(mediarecorder.audiosource.default);
mrecorder.setoutputformat(mediarecorder.outputformat.three_gpp);
mrecorder.setoutputfile(mfilename);
mrecorder.setaudioencoder(mediarecorder.audioencoder.aac);
mrecorder.setaudiosamplingrate(msamplingrate);
try{
mrecorder.prepare();
}catch(exceptione){
//todo:handleexception
log.i(tag,"prepare()failed!");
}
其中mrecorder.setaudiosamplingrate(msamplingrate)根據(jù)自定義at指令上報的采樣頻設(shè)置錄音采樣頻率。
s106手機的數(shù)據(jù)分析處理軟件app上傳語音數(shù)據(jù);
在本發(fā)明實施例中,為了改善語音交互時的用戶體驗,整個與云端服務(wù)器的交互采用邊錄邊傳,邊下載邊播放處理的機制來提高交互速度。代碼如下:
speechmanager.getinstance().initrecparams(2000,3000,5,200,5000);
參數(shù)說明:
第一個參數(shù),設(shè)置錄音中句子之間的最長停頓時間
第二個參數(shù),用于設(shè)置最短錄音時間,引擎開始時,用戶在該時間內(nèi)不說話,則會自動關(guān)閉引擎,識別結(jié)果為errorcode.nothing
第三個參數(shù),設(shè)置語音閾值,音量高于改值的幀將被認為語音幀
第四個參數(shù),設(shè)置獲取錄音音量的最短時間間隔,防止錄音音量回調(diào)過于頻繁影響客戶端對音量的展示邏輯
第五個參數(shù),最大刻錄時間
啟動語音數(shù)據(jù)上傳
speechmanager.getinstance().startspeechservice(alinkparams);
s107云端解析語音數(shù)據(jù),并作出回復(fù);
在本發(fā)明實施例中,云端服務(wù)器擁有強大的計算能力,可快速執(zhí)行語音識別轉(zhuǎn)換,保持較高的語音識別準(zhǔn)確率,同時擁有豐富的網(wǎng)絡(luò)資源,可向用戶口提供多樣的內(nèi)容服務(wù)。執(zhí)行時根據(jù)用戶需要,可以提供智能家居設(shè)備控制、音頻(音樂、有聲書等)播放、天氣、及即時資訊播報等功能,云端服務(wù)器收到app上傳的語音信息后,立即進行語音識別及語義解析,并根據(jù)語音中的指令作出回應(yīng),也可以通過語音便能向在線的機器人或智能家居的發(fā)出控制控指令,根據(jù)設(shè)備端的執(zhí)行情況回復(fù)手機的數(shù)據(jù)分析處理軟件app。
s108手機的數(shù)據(jù)分析處理軟件app通過藍牙音箱播報云端服務(wù)器回復(fù);
在本發(fā)明實施例中,云端服務(wù)器將用戶的指令執(zhí)行情況回復(fù)手機的數(shù)據(jù)分析處理軟件app,手機app通過藍牙音箱播放回復(fù),如播放音頻資源、天氣情況等,播放結(jié)束,進入等待新的語音輸入,當(dāng)然手機app在播放的過程中可接收藍牙音箱新一輪的對話,則手機的數(shù)據(jù)分析處理軟件app會停止當(dāng)前播報。
s109手機的數(shù)據(jù)分析處理軟件app語音交互空閑超時,斷開語音交互;
s110手機的數(shù)據(jù)分析處理軟件app語音斷開語音數(shù)據(jù)上傳通道;
在本發(fā)明實施例中,考慮到資源的充分利用,當(dāng)藍牙音箱與手機的數(shù)據(jù)分析處理軟件app的交互空閑時間超過預(yù)置的值,就會斷開語音交互通道,關(guān)閉手機的數(shù)據(jù)分析處理軟件app的錄音功能,同時,手機的數(shù)據(jù)分析處理軟件app也斷開與云端服務(wù)器語音上傳通道。等待下一輪藍牙音箱端喚醒交互指令,也可以隨時進行另一個指令操作。
由技術(shù)常識可知,本技術(shù)方案可以通過其它的不脫離其精神實質(zhì)或必要特征的實施方案來實現(xiàn)。因此,上述公開的實施方案,就各方面而言,都只是舉例說明,并不是僅有的。所有在本發(fā)明范圍內(nèi)或在等同于本發(fā)明的范圍內(nèi)的改變均被本發(fā)明包含。