本發(fā)明屬于藍(lán)牙通信技術(shù)領(lǐng)域,尤其涉及一種avdtp協(xié)議的同步參數(shù)傳輸方法、裝置及設(shè)備。
背景技術(shù):
藍(lán)牙耳機(jī)由于其技術(shù)成熟、傳輸容量大、輻射量低、無線使用自由方便、便攜等優(yōu)點(diǎn),被人們廣泛地使用。尤其是主副藍(lán)牙耳機(jī)的出現(xiàn),使得藍(lán)牙耳機(jī)的應(yīng)用不在局限于單人使用場(chǎng)景,更加可以擴(kuò)展至多人同時(shí)使用的場(chǎng)景。
現(xiàn)有主副藍(lán)牙耳機(jī)在播放過程中,主耳機(jī)播放的音樂需要與副耳機(jī)播放的音樂進(jìn)行同步。若無音頻同步,則會(huì)出現(xiàn)主耳機(jī)和副耳機(jī)聽到的聲音有延遲。根據(jù)哈斯效應(yīng)對(duì)人們分辨延遲的進(jìn)行一些描述,當(dāng)延遲聲與先導(dǎo)聲的時(shí)間差小于17ms時(shí),人耳不會(huì)感覺到是兩個(gè)聲音,當(dāng)時(shí)間差達(dá)到25~50ms時(shí),延遲聲能被聽到但不能與先導(dǎo)聲分開,只有當(dāng)超過50ms時(shí),人們才能把兩個(gè)聲音分開?,F(xiàn)有主副藍(lán)牙耳機(jī)存在延遲聲與先導(dǎo)聲的時(shí)間差存在ms級(jí)延時(shí),嚴(yán)重時(shí)會(huì)超過50ms,延遲帶來了不好的用戶體驗(yàn)。為解決播放聲音不同步的問題,主藍(lán)牙設(shè)備傳送給副藍(lán)牙設(shè)備的每個(gè)數(shù)據(jù)包中均帶有同步時(shí)鐘,主藍(lán)牙設(shè)備和副藍(lán)牙設(shè)備以該同步時(shí)鐘為基準(zhǔn)對(duì)數(shù)據(jù)包進(jìn)行操作,然而每個(gè)數(shù)據(jù)包的增加的同步時(shí)鐘勢(shì)必增加了主、副藍(lán)牙設(shè)備的數(shù)據(jù)處理壓力和數(shù)據(jù)傳輸壓力,如何組織音頻同步時(shí)鐘將可以簡(jiǎn)化通信,和帶來更高效率的同步處理是亟待解決的問題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供了一種avdtp協(xié)議的同步參數(shù)傳輸方法、裝置及設(shè)備,旨在解決現(xiàn)有主副藍(lán)牙耳機(jī)由于每個(gè)數(shù)據(jù)包的增加的同步時(shí)鐘,數(shù)據(jù)處理和數(shù)據(jù)傳輸壓力加大的問題。
第一方面,提供一種avdtp協(xié)議的同步參數(shù)傳輸方法,所述方法包括:
在藍(lán)牙通信過程中,接收來自數(shù)據(jù)輸出設(shè)備的avdtp數(shù)據(jù)包,所述avdtp數(shù)據(jù)包包括音視頻數(shù)據(jù)包,所述音視頻數(shù)據(jù)包包括包頭部分和音頻數(shù)據(jù)包;
獲取本地藍(lán)牙的基準(zhǔn)時(shí)鐘作為同步參數(shù);
將所述包頭部分中包括的時(shí)間戳替換為所述同步參數(shù);
轉(zhuǎn)發(fā)替換后的avdtp數(shù)據(jù)包。
優(yōu)選的,所述方法還包括:
等待并判斷所述同步參數(shù)是否到達(dá);
如果所述同步參數(shù)到達(dá),播放所述音頻數(shù)據(jù)包。
優(yōu)選的,所述同步時(shí)鐘以u(píng)s為單位。
第二方面,提供一種avdtp協(xié)議的同步參數(shù)傳輸裝置,所述裝置包括:
數(shù)據(jù)接收單元,用于在藍(lán)牙通信過程中,接收來自外部藍(lán)牙設(shè)備的avdtp數(shù)據(jù)包,所述avdtp數(shù)據(jù)包包括音視頻數(shù)據(jù)包,所述音視頻數(shù)據(jù)包包括包頭部分和音頻數(shù)據(jù)包;
時(shí)鐘判斷單元,用于判斷所述包頭部分是否包括同步時(shí)鐘;
時(shí)鐘等待單元,用于如果所述包頭部分包括同步時(shí)鐘,轉(zhuǎn)發(fā)所述avdtp數(shù)據(jù)包,并等待所述同步時(shí)鐘到達(dá);
數(shù)據(jù)播放單元,用于到達(dá)所述同步時(shí)鐘時(shí),播放所述音頻數(shù)據(jù)包。
優(yōu)選的,所述裝置還包括:
參數(shù)等待單元,用于等待并判斷所述同步參數(shù)是否到達(dá);
數(shù)據(jù)播放單元,用于如果所述同步參數(shù)到達(dá),播放所述音頻數(shù)據(jù)包。
優(yōu)選的,所述同步時(shí)鐘以u(píng)s為單位。
第三方面,提供一種藍(lán)牙設(shè)備,所述藍(lán)牙設(shè)備包括藍(lán)牙通信模組、存儲(chǔ)器以及耦合至所述藍(lán)牙通信模組和存儲(chǔ)器的處理器,所述存儲(chǔ)器存儲(chǔ)有可被所述處理器執(zhí)行的指令程序,所述處理器執(zhí)行所述指令程序,通過分時(shí)復(fù)用所述藍(lán)牙通信模組以使所述藍(lán)牙設(shè)備執(zhí)行如上所述的avdtp協(xié)議的同步參數(shù)傳輸方法。
在本發(fā)明實(shí)施例,在藍(lán)牙通信過程中,接收來自數(shù)據(jù)輸出設(shè)備的avdtp數(shù)據(jù)包,所述avdtp數(shù)據(jù)包包括音視頻數(shù)據(jù)包,所述音視頻數(shù)據(jù)包包括包頭部分和音頻數(shù)據(jù)包;獲取本地藍(lán)牙的基準(zhǔn)時(shí)鐘作為同步參數(shù);將所述包頭部分中包括的時(shí)間戳替換為所述同步參數(shù);轉(zhuǎn)發(fā)替換后的avdtp數(shù)據(jù)包。本發(fā)明,主藍(lán)牙設(shè)備在不改變現(xiàn)有藍(lán)牙數(shù)據(jù)格式和長(zhǎng)度的情況下僅用同步參數(shù)替換原來數(shù)據(jù)包中的時(shí)間戳,不會(huì)增加數(shù)據(jù)傳輸?shù)墓ぷ髁浚瓿闪送絽?shù)傳輸以便于音頻同步。
附圖說明
圖1是本發(fā)明實(shí)施例一提供的avdtp協(xié)議的同步參數(shù)傳輸系統(tǒng)的結(jié)構(gòu)框圖;
圖2是本發(fā)明實(shí)施例一提供的avdtp數(shù)據(jù)包的格式示意圖;
圖3是本發(fā)明實(shí)施例一提供的替換后avdtp數(shù)據(jù)包的格式示意圖;
圖4是本發(fā)明實(shí)施例二提供的avdtp協(xié)議的同步參數(shù)傳輸方法的流程圖;
圖5是本發(fā)明實(shí)施例三提供的avdtp協(xié)議的同步參數(shù)傳輸裝置的結(jié)構(gòu)框圖;
圖6是本發(fā)明實(shí)施例四提供的藍(lán)牙設(shè)備的結(jié)構(gòu)框圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
以下結(jié)合具體實(shí)施例對(duì)本發(fā)明的實(shí)現(xiàn)進(jìn)行詳細(xì)描述:
需要說明的是,在藍(lán)牙(bluetooth)中,藍(lán)牙設(shè)備不需要實(shí)現(xiàn)全部的藍(lán)牙規(guī)范。為了支持不同的藍(lán)牙設(shè)備之間的兼容,在藍(lán)牙規(guī)范中定義了一些應(yīng)用層協(xié)議(profile),其用以定義藍(lán)牙設(shè)備之間如何實(shí)現(xiàn)一種連接或者應(yīng)用。
其中,a2dp(advencedaudiodistributionprofile藍(lán)牙音頻傳輸模型協(xié)定)屬于上述的藍(lán)牙協(xié)議profile中的一個(gè)子集。a2dp是專門為使用藍(lán)牙傳送立體聲音頻而制定。在兩個(gè)藍(lán)牙設(shè)備均支持該規(guī)范的情況下,即可使用藍(lán)牙傳送立體聲音頻。
藍(lán)牙是一個(gè)點(diǎn)對(duì)點(diǎn)或者點(diǎn)對(duì)多點(diǎn)的拓?fù)浣Y(jié)構(gòu),但是其之間的交互均基于一個(gè)物理信道。其中,點(diǎn)對(duì)多點(diǎn)可以共享一個(gè)物理信道。在基于同一個(gè)物理信道的微微網(wǎng)(piconet)中,硬件設(shè)備可以擔(dān)任主設(shè)備(master)或者從設(shè)備(slave)的角色,具體的設(shè)備角色可以由設(shè)備任意選擇,用以實(shí)現(xiàn)對(duì)應(yīng)的控制功能(一個(gè)微微網(wǎng)中只能存在一個(gè)主設(shè)備)。當(dāng)然,不同的微微網(wǎng)之間是可以存在交叉的,即一個(gè)微微網(wǎng)中的從設(shè)備可以作為另一個(gè)微微網(wǎng)中的主設(shè)備。
以下實(shí)施例中所述數(shù)據(jù)輸出設(shè)備包括手機(jī)、平板、筆記本、藍(lán)牙音響、藍(lán)牙m(xù)p3、cd機(jī)或者其它智能/非智能終端設(shè)備,主藍(lán)牙設(shè)備包括主藍(lán)牙耳機(jī)、副藍(lán)牙設(shè)備包括副藍(lán)牙耳機(jī)。
實(shí)施例一
圖1示出了本發(fā)明實(shí)施例一提供的avdtp協(xié)議的同步參數(shù)傳輸系統(tǒng)的具體結(jié)構(gòu)框圖,為了便于說明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。在本實(shí)施例中,該avdtp協(xié)議的同步參數(shù)傳輸系統(tǒng)包括數(shù)據(jù)輸出設(shè)備11、主藍(lán)牙設(shè)備12和至少一個(gè)副藍(lán)牙設(shè)備13,主藍(lán)牙設(shè)備12與副藍(lán)牙設(shè)備13可以完全相同藍(lán)牙設(shè)備,只是數(shù)據(jù)輸出設(shè)備11與主藍(lán)牙設(shè)備12、主藍(lán)牙設(shè)備12與所有副藍(lán)牙設(shè)備13進(jìn)行藍(lán)牙連接通信,主藍(lán)牙設(shè)備12通過藍(lán)牙通信模組,以藍(lán)牙廣播的方式轉(zhuǎn)發(fā)數(shù)據(jù)輸出設(shè)備11的源數(shù)據(jù)到至少一個(gè)副藍(lán)牙設(shè)備13,主藍(lán)牙設(shè)備12的藍(lán)牙通信模組分時(shí)進(jìn)行所有副藍(lán)牙設(shè)備13的狀態(tài)接收,具體的,所述主藍(lán)牙設(shè)備12用于在藍(lán)牙通信過程中,接收來自數(shù)據(jù)輸出設(shè)備的avdtp數(shù)據(jù)包,如圖2所示,所述avdtp數(shù)據(jù)包包括音視頻數(shù)據(jù)包,所述音視頻數(shù)據(jù)包包括包頭部分和音頻數(shù)據(jù)包(sbc包);獲取本地藍(lán)牙的基準(zhǔn)時(shí)鐘作為同步參數(shù);將所述包頭部分中包括的時(shí)間戳替換為所述同步參數(shù),;轉(zhuǎn)發(fā)替換后的avdtp數(shù)據(jù)包,替換后的avdtp數(shù)據(jù)包如圖3所示。所述同步參數(shù)的長(zhǎng)度小于等于時(shí)間戳的長(zhǎng)度,所述時(shí)間戳的長(zhǎng)度等于32bit。之后,所述主藍(lán)牙設(shè)備12還用于等待并判斷所述同步參數(shù)是否到達(dá);如果所述同步參數(shù)到達(dá),播放所述音頻數(shù)據(jù)包。同時(shí),副藍(lán)牙設(shè)備13接收來自主藍(lán)牙設(shè)備12的avdtp數(shù)據(jù)包;獲取所述包頭部分的同步參數(shù);等待并判斷所述同步參數(shù)是否到達(dá);如果所述同步參數(shù)到達(dá),播放所述音頻數(shù)據(jù)包。
優(yōu)選的,所述同步時(shí)鐘以u(píng)s為單位。
本實(shí)施例,主藍(lán)牙設(shè)備在不改變現(xiàn)有藍(lán)牙數(shù)據(jù)格式和長(zhǎng)度的情況下僅用同步參數(shù)替換原來數(shù)據(jù)包中的時(shí)間戳,不會(huì)增加數(shù)據(jù)傳輸?shù)墓ぷ髁?,?shí)現(xiàn)了音頻同步。
實(shí)施例二
圖4示出了本發(fā)明實(shí)施例二提供的avdtp協(xié)議的同步參數(shù)傳輸方法的實(shí)現(xiàn)流程,詳述如下:
在步驟s401中,在藍(lán)牙通信過程中,接收來自數(shù)據(jù)輸出設(shè)備的avdtp數(shù)據(jù)包,所述avdtp數(shù)據(jù)包包括音視頻數(shù)據(jù)包,所述音視頻數(shù)據(jù)包包括包頭部分和音頻數(shù)據(jù)包。
在本實(shí)施例中,如圖2所示,所述avdtp數(shù)據(jù)包具體結(jié)構(gòu),其包括音視頻數(shù)據(jù)包,所述音視頻數(shù)據(jù)包包括包頭部分和音頻數(shù)據(jù)包(sbc包)。
在步驟s402中,獲取本地藍(lán)牙的基準(zhǔn)時(shí)鐘作為同步參數(shù)。
在本實(shí)施例中,所述基準(zhǔn)時(shí)鐘以u(píng)s為單位的時(shí)鐘。
在步驟s403中,將所述包頭部分中包括的時(shí)間戳替換為所述同步參數(shù)。
在本實(shí)施例中,替換后
在步驟s404中,轉(zhuǎn)發(fā)替換后的avdtp數(shù)據(jù)包。
優(yōu)選的,在步驟s204之后,所述方法還包括:
等待并判斷所述同步參數(shù)是否到達(dá);
如果所述同步參數(shù)到達(dá),播放所述音頻數(shù)據(jù)包。
本實(shí)施例,主藍(lán)牙設(shè)備在不改變現(xiàn)有藍(lán)牙數(shù)據(jù)格式和長(zhǎng)度的情況下僅用同步參數(shù)替換原來數(shù)據(jù)包中的時(shí)間戳,不會(huì)增加數(shù)據(jù)傳輸?shù)墓ぷ髁浚瑢?shí)現(xiàn)了音頻同步。
實(shí)施例三
圖5示出了本發(fā)明實(shí)施例二提供的avdtp協(xié)議的同步參數(shù)傳輸裝置的具體結(jié)構(gòu)框圖,為了便于說明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。在本實(shí)施例中,該avdtp協(xié)議的同步參數(shù)傳輸裝置包括:數(shù)據(jù)接收單元51、參數(shù)獲取單元52、參數(shù)替換單元53、數(shù)據(jù)發(fā)送單元54、參數(shù)等待單元和數(shù)據(jù)播放單元。
其中,數(shù)據(jù)接收單元51,用于在藍(lán)牙通信過程中,接收來自數(shù)據(jù)輸出設(shè)備的avdtp數(shù)據(jù)包,所述avdtp數(shù)據(jù)包包括音視頻數(shù)據(jù)包,所述音視頻數(shù)據(jù)包包括包頭部分和音頻數(shù)據(jù)包;
參數(shù)獲取單元52,用于獲取本地藍(lán)牙的基準(zhǔn)時(shí)鐘作為同步參數(shù);
參數(shù)替換單元53,用于將所述包頭部分中包括的時(shí)間戳替換為所述同步參數(shù);
數(shù)據(jù)發(fā)送單元54,用于轉(zhuǎn)發(fā)替換后的avdtp數(shù)據(jù)包。
優(yōu)選的,所述裝置還包括:
參數(shù)等待單元,用于等待并判斷所述同步參數(shù)是否到達(dá);
數(shù)據(jù)播放單元,用于如果所述同步參數(shù)到達(dá),播放所述音頻數(shù)據(jù)包。
優(yōu)選的,所述同步時(shí)鐘以u(píng)s為單位。
本發(fā)明實(shí)施例提供的avdtp協(xié)議的同步參數(shù)傳輸裝置可以應(yīng)用在前述對(duì)應(yīng)方法實(shí)施例二中,詳情參見上述實(shí)施例二的描述,在此不再贅述。
實(shí)施例四
圖6示出了本發(fā)明實(shí)施例四提供的藍(lán)牙設(shè)備的具體結(jié)構(gòu)框圖,為了便于說明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。在本實(shí)施例中,該藍(lán)牙設(shè)備包括藍(lán)牙通信模組61、存儲(chǔ)器62以及耦合至所述藍(lán)牙通信模組61和存儲(chǔ)器62的處理器63,所述存儲(chǔ)器62存儲(chǔ)有可被所述處理器63執(zhí)行的指令程序,所述處理器63執(zhí)行所述指令程序,通過分時(shí)復(fù)用所述藍(lán)牙通信模組61以使所述藍(lán)牙設(shè)備執(zhí)行實(shí)施例二所述的avdtp協(xié)議的同步參數(shù)傳輸方法。
值得注意的是,本領(lǐng)域普通技術(shù)人員可以理解:實(shí)現(xiàn)上述方法實(shí)施例的步驟或部分步驟可以通過程序指令相關(guān)的硬件來完成,前述的程序可以存儲(chǔ)于計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),執(zhí)行包括上述方法實(shí)施例的步驟,而前述的存儲(chǔ)介質(zhì)包括:rom、ram、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。