基于藍(lán)牙hid服務(wù)實(shí)現(xiàn)語(yǔ)音輸入的方法及主機(jī)及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及主機(jī)語(yǔ)音數(shù)據(jù)處理領(lǐng)域,尤其涉及一種藍(lán)牙語(yǔ)音輸入方法,本發(fā)明還涉及一種實(shí)現(xiàn)藍(lán)牙語(yǔ)音輸入的主機(jī)及一種藍(lán)牙語(yǔ)音輸入系統(tǒng)。
【背景技術(shù)】
[0002]BLE:藍(lán)牙低能耗技術(shù),是低成本、短距離、可互操作的魯棒性無(wú)線技術(shù),工作在免許可的2.4GHz ISM射頻頻段。
[0003]HID服務(wù):The Human Interface Device,人性化人機(jī)接口設(shè)備協(xié)議,定義了藍(lán)牙在人機(jī)接口設(shè)備中的協(xié)議、特征和使用規(guī)程。典型的應(yīng)用包括藍(lán)牙鼠標(biāo)、藍(lán)牙鍵盤、藍(lán)牙游戲手柄等。該協(xié)議改編自USB HID Protocol ο
[0004]用戶態(tài):指權(quán)限等級(jí)中的一般級(jí)別,與之相對(duì)的是管理員或者超級(jí)用戶(類Unix系統(tǒng)中,名為“root”或“superuser”等)的特權(quán)級(jí)別。
[0005]隨著現(xiàn)代科技的進(jìn)步和人們生活質(zhì)量的提高,電子產(chǎn)品已經(jīng)融入到人們?nèi)粘I畹姆椒矫婷?。電子產(chǎn)品中,藍(lán)牙的重要應(yīng)用是傳輸語(yǔ)音信息。藍(lán)牙支持64Kbit/s的實(shí)時(shí)語(yǔ)音傳輸和各種速率的數(shù)據(jù)傳輸,語(yǔ)音編碼采用對(duì)數(shù)脈沖編碼調(diào)制(PCM),或連續(xù)可變斜率增量調(diào)制(CVSD)。語(yǔ)音和數(shù)據(jù)可單獨(dú)或同時(shí)傳輸。藍(lán)牙支持的語(yǔ)音鏈路是雙向的。藍(lán)牙標(biāo)準(zhǔn)指明語(yǔ)音應(yīng)通過(guò)SCO鏈路載運(yùn)。數(shù)據(jù)通過(guò)ALC鏈路載運(yùn)。
[0006]傳統(tǒng)的藍(lán)牙語(yǔ)音輸入是基于傳統(tǒng)藍(lán)牙HSP、HFP、A2DP等規(guī)范實(shí)現(xiàn)的。基于傳統(tǒng)藍(lán)牙HSP、HFP、A2DP語(yǔ)音通訊,主要用于藍(lán)牙耳機(jī)、藍(lán)牙音箱等,當(dāng)應(yīng)用在例如藍(lán)牙遙控器產(chǎn)品時(shí),由于遙控器對(duì)電池使用壽命要求較高,對(duì)語(yǔ)音啟動(dòng)時(shí)間要求較快;這時(shí)候傳統(tǒng)藍(lán)牙語(yǔ)音通訊,就會(huì)暴露出功耗高,語(yǔ)音啟動(dòng)時(shí)間不夠快等問題。而現(xiàn)有技術(shù)中,基于HID服務(wù)的藍(lán)牙通訊一般用于數(shù)據(jù)傳輸,如應(yīng)用到移動(dòng)設(shè)備的語(yǔ)音通訊中需要APP專門配備相應(yīng)接口程序才可讀取,兼容性差,用戶體驗(yàn)不好。
【發(fā)明內(nèi)容】
[0007]為了解決上述技術(shù)問題,本發(fā)明的目的是提供一種功耗低、反映快,同時(shí)支持語(yǔ)音信號(hào)傳輸,通用強(qiáng)的語(yǔ)音輸入方法。
[0008]為了解決上述技術(shù)問題,本發(fā)明的目的是提供一種功耗低、反映快,同時(shí)支持語(yǔ)音信號(hào)傳輸,通用強(qiáng)的實(shí)現(xiàn)語(yǔ)音輸入的主機(jī)。
[0009]為了解決上述技術(shù)問題,本發(fā)明的另一個(gè)目的是提供一種功耗低、反映快,同時(shí)支持語(yǔ)音信號(hào)傳輸,通用強(qiáng)的語(yǔ)音輸入系統(tǒng)。
[0010]本發(fā)明所采用的技術(shù)方案是:
基于藍(lán)牙HID服務(wù)實(shí)現(xiàn)主機(jī)語(yǔ)音輸入的方法,其包括步驟:
SI,向主機(jī)操作系統(tǒng)注冊(cè)一個(gè)虛擬語(yǔ)音輸入設(shè)備;
S2,所述虛擬語(yǔ)音輸入設(shè)備通過(guò)操作系統(tǒng)中的藍(lán)牙協(xié)議棧獲取語(yǔ)音數(shù)據(jù);
S3,操作系統(tǒng)上的音頻子系統(tǒng)通過(guò)訪問所述虛擬語(yǔ)音輸入設(shè)備獲取語(yǔ)音數(shù)據(jù)。
[0011]優(yōu)選的,所述語(yǔ)音輸入的方法還包括步驟:
Al,主機(jī)與藍(lán)牙HID設(shè)備配對(duì)連接,并從藍(lán)牙HID設(shè)備中獲取語(yǔ)音數(shù)據(jù);
A2,將語(yǔ)音數(shù)據(jù)存儲(chǔ)到操作系統(tǒng)中的藍(lán)牙協(xié)議棧中。
[0012]優(yōu)選的,所述步驟Al具體包括子步驟:
All,主機(jī)搜索藍(lán)牙HID設(shè)備;
A12,主機(jī)與藍(lán)牙HID設(shè)備配對(duì)連接;
A13,查找已連接的藍(lán)牙HID設(shè)備上的HID服務(wù);
A14,獲取查找到的HID服務(wù)的報(bào)告映射屬性;
A15,從報(bào)告映射屬性中獲取HID數(shù)據(jù)的格式和類型相關(guān)信息;
A16,如發(fā)現(xiàn)HID數(shù)據(jù)中有語(yǔ)音類型,則監(jiān)聽藍(lán)牙HID設(shè)備的HID服務(wù)的報(bào)告屬性; A17,從報(bào)告屬性中獲取藍(lán)牙HID設(shè)備傳送過(guò)來(lái)的語(yǔ)音數(shù)據(jù);
A18,解密獲得的語(yǔ)音數(shù)據(jù)。
[0013]優(yōu)選的,所述藍(lán)牙HID設(shè)備為藍(lán)牙低功耗HID設(shè)備,所述主機(jī)為智能手機(jī)、智能電視機(jī)或平板電腦。
[0014]優(yōu)選的,所述操作系統(tǒng)為Android系統(tǒng)。
[0015]基于藍(lán)牙HID服務(wù)實(shí)現(xiàn)語(yǔ)音輸入的主機(jī),其用于實(shí)施基于藍(lán)牙HID服務(wù)實(shí)現(xiàn)主機(jī)語(yǔ)音輸入的方法,所述主機(jī)包括:
藍(lán)牙驅(qū)動(dòng)模塊,用于接收藍(lán)牙HID數(shù)據(jù);
操作系統(tǒng)庫(kù)服務(wù)模塊,包括藍(lán)牙協(xié)議棧和虛擬語(yǔ)音輸入設(shè)備,所述藍(lán)牙協(xié)議棧用于從藍(lán)牙驅(qū)動(dòng)模塊中獲取并存儲(chǔ)語(yǔ)音數(shù)據(jù),所述虛擬語(yǔ)音輸入設(shè)備用于從藍(lán)牙協(xié)議棧中獲取語(yǔ)音數(shù)據(jù),并將獲取到的語(yǔ)音數(shù)據(jù)傳送到音頻子系統(tǒng)中;
系統(tǒng)架構(gòu)模塊,包括音頻子系統(tǒng),所述音頻子系統(tǒng)用于從虛擬語(yǔ)音輸入設(shè)備中獲取語(yǔ)音數(shù)據(jù),并將獲取到的語(yǔ)音數(shù)據(jù)傳送到引用程序;
應(yīng)用程序,用于從音頻子系統(tǒng)中獲取語(yǔ)音數(shù)據(jù)。
[0016]優(yōu)選的,所述操作系統(tǒng)庫(kù)服務(wù)模塊為Andr1d系統(tǒng)庫(kù)服務(wù)模塊,所述系統(tǒng)架構(gòu)模塊為Andr1d系統(tǒng)架構(gòu)模塊。
[0017]基于藍(lán)牙HID服務(wù)實(shí)現(xiàn)主機(jī)語(yǔ)音輸入的系統(tǒng),其包括基于藍(lán)牙HID服務(wù)實(shí)現(xiàn)語(yǔ)音輸入的主機(jī)和用于發(fā)射藍(lán)牙HID數(shù)據(jù)的藍(lán)牙HID設(shè)備。
[0018]優(yōu)選的,所述藍(lán)牙HID設(shè)備為藍(lán)牙低功耗HID設(shè)備,所述主機(jī)為智能手機(jī)、智能電視機(jī)或平板電腦。
[0019]優(yōu)選的,所述藍(lán)牙HID設(shè)備為遙控器、藍(lán)牙耳機(jī)或游戲手柄。
[0020]本發(fā)明的有益效果是:
本發(fā)明基于低功耗BLE藍(lán)牙HID數(shù)據(jù)通訊,不但功耗低,按鍵反應(yīng)快捷,語(yǔ)音啟動(dòng)速度快,非常適用于但不限于遙控器等人機(jī)交互終端產(chǎn)品,同時(shí)通過(guò)利用虛擬語(yǔ)音輸入設(shè)備讀取HID數(shù)據(jù)流,建立藍(lán)牙協(xié)議棧和操作系統(tǒng)自身音頻子系統(tǒng)的通道,將語(yǔ)音數(shù)據(jù)導(dǎo)入到虛擬的標(biāo)準(zhǔn)語(yǔ)音輸入設(shè)備,任何支持標(biāo)準(zhǔn)語(yǔ)音輸入接口標(biāo)準(zhǔn)的應(yīng)用程序,可以直接從虛擬語(yǔ)音輸入設(shè)備中讀取語(yǔ)音數(shù)據(jù),適用性高,兼容性強(qiáng),從而提高了用戶體驗(yàn)。
[0021 ] 本發(fā)明可廣泛應(yīng)用于各種藍(lán)牙語(yǔ)音通訊系統(tǒng)。
【附圖說(shuō)明】
[0022]下面結(jié)合附圖對(duì)本發(fā)明的【具體實(shí)施方式】作進(jìn)一步說(shuō)明:
圖1是本發(fā)明方法一種實(shí)施例的方法流程圖;
圖2是本發(fā)明系統(tǒng)一種實(shí)施例的系統(tǒng)架構(gòu)框圖。
【具體實(shí)施方式】
[0023]需要說(shuō)明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互組合。
[0024]如圖1所示,基于藍(lán)牙HID服務(wù)實(shí)現(xiàn)主機(jī)語(yǔ)音輸入的方法,其包括步驟:S1,向主機(jī)操作系統(tǒng)注冊(cè)一個(gè)虛擬語(yǔ)音輸入設(shè)備,該虛擬語(yǔ)音輸入設(shè)備是利用軟件搭建的標(biāo)準(zhǔn)輸入設(shè)備,上層應(yīng)用程序可以利用通用的音頻輸入接口讀取虛擬語(yǔ)音輸入設(shè)備的語(yǔ)音數(shù)據(jù);S2,所述虛擬語(yǔ)音輸入設(shè)備通過(guò)操作系統(tǒng)中的藍(lán)牙協(xié)議棧獲取語(yǔ)音數(shù)據(jù);S3,操作系統(tǒng)上的音頻子系統(tǒng)通過(guò)訪問所述虛擬語(yǔ)音輸入設(shè)備獲取語(yǔ)音數(shù)據(jù)。優(yōu)選的,所述語(yǔ)音輸入的方法還包括步驟:
如圖2所示,下面以在主機(jī)中搭載Android4.3系統(tǒng)為例,詳述本發(fā)明方法具體流程。Android4.3系統(tǒng)中,包括Andr1d系統(tǒng)庫(kù)服務(wù)模塊(Android System Libs)和Android系統(tǒng)架構(gòu)模塊(Android Framework), Android4.3系統(tǒng)在Android系統(tǒng)庫(kù)服務(wù)