AVDTP协议的同步参数传输方法、装置及设备
技术领域
本发明属于蓝牙通信技术领域,尤其涉及一种AVDTP协议的同步参数传输方法、装置及设备。
背景技术
蓝牙耳机由于其技术成熟、传输容量大、辐射量低、无线使用自由方便、便携等优点,被人们广泛地使用。尤其是主副蓝牙耳机的出现,使得蓝牙耳机的应用不在局限于单人使用场景,更加可以扩展至多人同时使用的场景。
现有主副蓝牙耳机在播放过程中,主耳机播放的音乐需要与副耳机播放的音乐进行同步。若无音频同步,则会出现主耳机和副耳机听到的声音有延迟。根据哈斯效应对人们分辨延迟的进行一些描述,当延迟声与先导声的时间差小于17 ms时,人耳不会感觉到是两个声音,当时间差达到25~50 ms时,延迟声能被听到但不能与先导声分开,只有当超过50ms时,人们才能把两个声音分开。现有主副蓝牙耳机存在延迟声与先导声的时间差存在ms级延时,严重时会超过50ms,延迟带来了不好的用户体验。为解决播放声音不同步的问题,主蓝牙设备传送给副蓝牙设备的每个数据包中均带有同步时钟,主蓝牙设备和副蓝牙设备以该同步时钟为基准对数据包进行操作,然而每个数据包的增加的同步时钟势必增加了主、副蓝牙设备的数据处理压力和数据传输压力,如何组织音频同步时钟将可以简化通信,和带来更高效率的同步处理是亟待解决的问题。
发明内容
本发明实施例提供了一种AVDTP协议的同步参数传输方法、装置及设备,旨在解决现有主副蓝牙耳机由于每个数据包的增加的同步时钟,数据处理和数据传输压力加大的问题。
第一方面,提供一种AVDTP协议的同步参数传输方法,所述方法包括:
在蓝牙通信过程中,接收来自数据输出设备的AVDTP数据包,所述AVDTP数据包包括音视频数据包,所述音视频数据包包括包头部分和音频数据包;
获取本地蓝牙的基准时钟作为同步参数;
将所述包头部分中包括的时间戳替换为所述同步参数;
转发替换后的AVDTP数据包。
优选的,所述方法还包括:
等待并判断所述同步参数是否到达;
如果所述同步参数到达,播放所述音频数据包。
优选的,所述同步时钟以us为单位。
第二方面,提供一种AVDTP协议的同步参数传输装置,所述装置包括:
数据接收单元,用于在蓝牙通信过程中,接收来自外部蓝牙设备的AVDTP数据包,所述AVDTP数据包包括音视频数据包,所述音视频数据包包括包头部分和音频数据包;
时钟判断单元,用于判断所述包头部分是否包括同步时钟;
时钟等待单元,用于如果所述包头部分包括同步时钟,转发所述AVDTP数据包,并等待所述同步时钟到达;
数据播放单元,用于到达所述同步时钟时,播放所述音频数据包。
优选的,所述装置还包括:
参数等待单元,用于等待并判断所述同步参数是否到达;
数据播放单元,用于如果所述同步参数到达,播放所述音频数据包。
优选的,所述同步时钟以us为单位。
第三方面,提供一种蓝牙设备,所述蓝牙设备包括蓝牙通信模组、存储器以及耦合至所述蓝牙通信模组和存储器的处理器,所述存储器存储有可被所述处理器执行的指令程序,所述处理器执行所述指令程序,通过分时复用所述蓝牙通信模组以使所述蓝牙设备执行如上所述的AVDTP协议的同步参数传输方法。
在本发明实施例,在蓝牙通信过程中,接收来自数据输出设备的AVDTP数据包,所述AVDTP数据包包括音视频数据包,所述音视频数据包包括包头部分和音频数据包;获取本地蓝牙的基准时钟作为同步参数;将所述包头部分中包括的时间戳替换为所述同步参数;转发替换后的AVDTP数据包。本发明,主蓝牙设备在不改变现有蓝牙数据格式和长度的情况下仅用同步参数替换原来数据包中的时间戳,不会增加数据传输的工作量,完成了同步参数传输以便于音频同步。
附图说明
图1是本发明实施例一提供的AVDTP协议的同步参数传输系统的结构框图;
图2是本发明实施例一提供的AVDTP 数据包的格式示意图;
图3是本发明实施例一提供的替换后AVDTP 数据包的格式示意图;
图4是本发明实施例二提供的AVDTP协议的同步参数传输方法的流程图;
图5是本发明实施例三提供的AVDTP协议的同步参数传输装置的结构框图;
图6是本发明实施例四提供的蓝牙设备的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
以下结合具体实施例对本发明的实现进行详细描述:
需要说明的是,在蓝牙(Bluetooth)中,蓝牙设备不需要实现全部的蓝牙规范。为了支持不同的蓝牙设备之间的兼容,在蓝牙规范中定义了一些应用层协议(profile),其用以定义蓝牙设备之间如何实现一种连接或者应用。
其中,A2DP(Advenced Audio Distribution Profile蓝牙音频传输模型协定)属于上述的蓝牙协议profile中的一个子集。A2DP是专门为使用蓝牙传送立体声音频而制定。在两个蓝牙设备均支持该规范的情况下,即可使用蓝牙传送立体声音频。
蓝牙是一个点对点或者点对多点的拓扑结构,但是其之间的交互均基于一个物理信道。其中,点对多点可以共享一个物理信道。在基于同一个物理信道的微微网(piconet)中,硬件设备可以担任主设备(master)或者从设备(slave)的角色,具体的设备角色可以由设备任意选择,用以实现对应的控制功能(一个微微网中只能存在一个主设备)。当然,不同的微微网之间是可以存在交叉的,即一个微微网中的从设备可以作为另一个微微网中的主设备。
以下实施例中所述数据输出设备包括手机、平板、笔记本、蓝牙音响、蓝牙MP3、CD机或者其它智能/非智能终端设备,主蓝牙设备包括主蓝牙耳机、副蓝牙设备包括副蓝牙耳机。
实施例一
图1示出了本发明实施例一提供的AVDTP协议的同步参数传输系统的具体结构框图,为了便于说明,仅示出了与本发明实施例相关的部分。在本实施例中,该AVDTP协议的同步参数传输系统包括数据输出设备11、主蓝牙设备12和至少一个副蓝牙设备13,主蓝牙设备12与副蓝牙设备13可以完全相同蓝牙设备,只是数据输出设备11与主蓝牙设备12、主蓝牙设备12与所有副蓝牙设备13进行蓝牙连接通信,主蓝牙设备12通过蓝牙通信模组,以蓝牙广播的方式转发数据输出设备11的源数据到至少一个副蓝牙设备13,主蓝牙设备12的蓝牙通信模组分时进行所有副蓝牙设备13的状态接收,具体的,所述主蓝牙设备12用于在蓝牙通信过程中,接收来自数据输出设备的AVDTP数据包,如图2所示,所述AVDTP数据包包括音视频数据包,所述音视频数据包包括包头部分和音频数据包(SBC包);获取本地蓝牙的基准时钟作为同步参数;将所述包头部分中包括的时间戳替换为所述同步参数,;转发替换后的AVDTP数据包, 替换后的AVDTP数据包如图3所示。所述同步参数的长度小于等于时间戳的长度,所述时间戳的长度等于32bit。之后,所述主蓝牙设备12还用于等待并判断所述同步参数是否到达;如果所述同步参数到达,播放所述音频数据包。同时,副蓝牙设备13接收来自主蓝牙设备12的AVDTP数据包;获取所述包头部分的同步参数;等待并判断所述同步参数是否到达;如果所述同步参数到达,播放所述音频数据包。
优选的,所述同步时钟以us为单位。
本实施例,主蓝牙设备在不改变现有蓝牙数据格式和长度的情况下仅用同步参数替换原来数据包中的时间戳,不会增加数据传输的工作量,实现了音频同步。
实施例二
图4示出了本发明实施例二提供的AVDTP协议的同步参数传输方法的实现流程,详述如下:
在步骤S401中,在蓝牙通信过程中,接收来自数据输出设备的AVDTP数据包,所述AVDTP数据包包括音视频数据包,所述音视频数据包包括包头部分和音频数据包。
在本实施例中,如图2所示,所述AVDTP数据包具体结构,其包括音视频数据包,所述音视频数据包包括包头部分和音频数据包(SBC包)。
在步骤S402中,获取本地蓝牙的基准时钟作为同步参数。
在本实施例中,所述基准时钟以us为单位的时钟。
在步骤S403中,将所述包头部分中包括的时间戳替换为所述同步参数。
在本实施例中,替换后
在步骤S404中,转发替换后的AVDTP数据包。
优选的,在步骤S204之后,所述方法还包括:
等待并判断所述同步参数是否到达;
如果所述同步参数到达,播放所述音频数据包。
本实施例,主蓝牙设备在不改变现有蓝牙数据格式和长度的情况下仅用同步参数替换原来数据包中的时间戳,不会增加数据传输的工作量,实现了音频同步。
实施例三
图5示出了本发明实施例二提供的AVDTP协议的同步参数传输装置的具体结构框图,为了便于说明,仅示出了与本发明实施例相关的部分。在本实施例中,该AVDTP协议的同步参数传输装置包括:数据接收单元51、参数获取单元52、参数替换单元53、数据发送单元54、参数等待单元和数据播放单元。
其中,数据接收单元51,用于在蓝牙通信过程中,接收来自数据输出设备的AVDTP数据包,所述AVDTP数据包包括音视频数据包,所述音视频数据包包括包头部分和音频数据包;
参数获取单元52,用于获取本地蓝牙的基准时钟作为同步参数;
参数替换单元53,用于将所述包头部分中包括的时间戳替换为所述同步参数;
数据发送单元54,用于转发替换后的AVDTP数据包。
优选的,所述装置还包括:
参数等待单元,用于等待并判断所述同步参数是否到达;
数据播放单元,用于如果所述同步参数到达,播放所述音频数据包。
优选的,所述同步时钟以us为单位。
本发明实施例提供的AVDTP协议的同步参数传输装置可以应用在前述对应方法实施例二中,详情参见上述实施例二的描述,在此不再赘述。
实施例四
图6示出了本发明实施例四提供的蓝牙设备的具体结构框图,为了便于说明,仅示出了与本发明实施例相关的部分。在本实施例中,该蓝牙设备包括蓝牙通信模组61、存储器62以及耦合至所述蓝牙通信模组61和存储器62的处理器63,所述存储器62存储有可被所述处理器63执行的指令程序,所述处理器63执行所述指令程序,通过分时复用所述蓝牙通信模组61以使所述蓝牙设备执行实施例二所述的AVDTP协议的同步参数传输方法。
值得注意的是,本领域普通技术人员可以理解:实现上述方法实施例的步骤或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤,而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。