一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

双无线音频通信控制方法、装置、设备和系统与流程

2022-02-24 19:11:32 来源:中国专利 TAG:


1.本发明涉及蓝牙音频通信技术领域,尤其涉及一种双无线音频通信控制方法、装置、设备和系统。


背景技术:

2.在双无线音频通信的应用中,如双无线蓝牙耳机、双无线蓝牙音箱等场景,由于标准蓝牙网络通信存在带宽利用率低、通信延时大和协议消耗多等问题,使得标准蓝牙网络通信不满足双无线音频的应用需求。
3.双无线音频,即包括三个蓝牙设备,其中一个为蓝牙音源设备(如手机、笔记本电脑等),和两个同时播放的蓝牙设备(如蓝牙双耳机、双音箱等),而通常将与蓝牙音源设备连接的蓝牙播放设备称为蓝牙主设备,与蓝牙主设备连接的蓝牙播放设备称为蓝牙从设备。现有的双无线音频应用,蓝牙的性能问题是首要考虑的,因为在用户角度看,在播放歌曲过程中经常出现卡顿,这在听感和体验感受上是难以接受的,但由于在双无线音频的场景中,环境变化、人体对信号的干扰及两个耳机与手机之间位置变化的关系都会对蓝牙的性能造成影响,所以并不能单纯地把蓝牙一对一的性能提高即可,而接收灵敏度和发射功率等手段也不能无限地提高。因此从带宽利用和通信路径方面进行优化是一种更有效、更明显地提高双无线音频通信质量和节省功耗的手段。
4.而带宽利用和通信路径方面的优化可以在通信中节省更多的带宽进行数据重发,提高数据包在单位时间上传输的成功率,从而达到提高通信质量和节省功耗的目的,解决双无线音频在环境变化、人体对信号的干扰及两个耳机与手机之间位置变化而出现的蓝牙性能下降的问题,更好地减少播放卡顿等影响用户体验感受的问题。
5.传统的技术方案是:
6.双无线蓝牙音频应用中,通常会采用监听的机制进行音频数据的通信。蓝牙音源设备(例如source设备)与蓝牙播放设备之一连接通信,此蓝牙播放设备为蓝牙主设备(例如tws master设备),蓝牙主设备(例如tws master设备)把与蓝牙音源设备(例如source设备)的通信信息发送给蓝牙从设备(例如tws slave设备),用于监听蓝牙音源设备(例如source设备)发出的音频数据包,达到双无线蓝牙设备同时接收音频数据包的需求。请参考图1,为现有技术中的一种双无线音频通信网络结构示意图,蓝牙主设备(例如tws master设备)与蓝牙音源设备(例如source设备)连接建立通信链路link_1,用于传输音频数据包,蓝牙主设备(例如tws master设备)与蓝牙从设备(例如tws slave设备)连接建立通信链路link_2,用于蓝牙主设备(例如tws master设备)把link_1链路信息发送给蓝牙从设备(例如tws slave设备),从而建立监听链路link_3,蓝牙从设备(例如tws slave设备)通过额外的私有方式把监听蓝牙音源设备(例如source设备)的音频数据包接收情况通知蓝牙主设备(例如tws master设备),以启动蓝牙音源设备(例如source设备)重发机制等操作。此方案优化了双无线蓝牙设备接收数据的带宽利用率,而留出更多的带宽进行重发等方式提高通信质量和节省功耗。但此机制存在一个问题,当蓝牙播放设备(例如tws设备)佩戴在人身
上,在与蓝牙音源设备(例如source设备)的一些角度上由于人体的隔断而出现蓝牙播放设备(例如tws设备)中的一个接收性能严重下降,容易出现卡顿,影响用户体验。
7.有些双无线蓝牙音频设备会在监听的基础上加入转发机制,来提高双无线播放设备与音源设备之间的通信质量。由于双无线播放设备对于接收音源设备数据包的通信情况不同,存在一个播放设备正确接收数据包,而另一个播放设备接收出错。此时则可通过正确接收数据包的设备转发数据的方式,从不同的通信路径传输数据包以减轻干扰问题和增强信号质量,以达到更好的通信效果。此方案亦如图1所示建立连接,但不同的是链路link_2不仅仅是传输监听链路信息,还会把蓝牙从设备(例如tws slave设备)监听不到或者错误的音频数据包通过链路link_2进行转发。请参考图2,为现有技术中的一种双无线音频通信时序示意图,音源设备(例如source设备)将音频数据包2-1发送到蓝牙主设备(例如tws master设备)和蓝牙从设备(例如tws slave设备),出现了图2中一个设备正确接收(如标记2-10所示),一个收错(如标记2-20所示)的情况,蓝牙主设备(例如tws master设备)由于正确接收而请求新的数据包2-2。经过一段数据的接收后启动转发机制,但在启动转发机制的过程中,需要浪费无线带宽进行转发机制信息2-11的沟通交流,以确定在哪里开始转发通信及哪些数据包需要转发,且转发方向通常会只有一个方向,即蓝牙主设备(例如tws master设备)转发给蓝牙从设备(例如tws slave设备),在蓝牙主设备(例如tws master设备)接收音源设备(例如source设备)的音频数据包变差时还需要主从切换来保证转发的有效性,且转发数据包2-12是以时槽为单位进行收发,在长距离、信号差等通信质量不高的场景下,这种带宽的浪费会雪上加霜,且需要大量的缓存以维持转发机制,造成音频延时大及卡顿现象,影响用户体验。同样地,也存在纯转发机制,如图2中去除了2-20的监听功能,即通过双无线播放设备中的一个为中心,接收来自音源设备的音频数据2-1,转发至另一无线播放设备2-11,这种转发机制尽管忽略通信质量等问题,也会由于空中传输的数据量是原来的两倍,存在严重的带宽问题,并且需要大量的缓存以维持转发机制,同样造成音频延时大及卡顿现象,影响用户体验。
8.传统的技术方案存在以下弊端:
9.在双无线音频的场景中,纯监听方案存在因环境变化、人体对信号的干扰及两个耳机与手机之间位置变化导致蓝牙性能下降的问题,出现一边耳机经常接收出错甚至一直接收不到音频数据包而出现播放卡顿等现象,影响用户体验感受的问题。
10.需要浪费无线带宽和大量的缓存以维持转发机制,并且当前方案一般需要确定一边为转发数据方,一边为转发接收方,当转发数据方接收不到音频数据则无法进行转发操作,需要等待接收成功音频数据或者主从切换后由另一边耳机做为转发数据方才能继续进行下去,存在严重的带宽问题和缓存问题,造成音频延时大及卡顿现象,影响用户体验。
11.因此,如何及时发现丢包,以便及时转发音频数据包成为亟待解决的技术问题。


技术实现要素:

12.基于上述现状,本发明的主要目的在于提供一种双无线音频通信控制方法、装置、设备和系统,以及时发现丢包,以便及时转发音频数据包。
13.为实现上述目的,本发明采用的技术方案如下:
14.第一方面,本发明实施例公开了一种双无线音频通信控制方法,用于控制蓝牙主
设备和蓝牙从设备,蓝牙主设备和蓝牙从设备能够与音源设备建立双无线音频通信网络,双无线音频通信网络包括蓝牙主设备与音源设备之间数据交互的第一链路,蓝牙主设备与蓝牙从设备之间数据交互的第二链路,以及蓝牙从设备监听音源设备的第三链路;双无线音频通信控制方法包括:
15.步骤s100,在第一链路的发送时隙,控制蓝牙主设备通过第一链路接收音源设备发送的音频数据包,蓝牙从设备通过第三链路监听音频数据包;
16.步骤s200,判断蓝牙主设备是否接收到音频数据包;如果蓝牙主设备接收到音频数据包,则执行步骤s300;
17.步骤s300,在蓝牙主设备完成音频数据包接收后的第一预设时间间隔内,控制蓝牙主设备开启第一接收窗口,以接收蓝牙从设备发送的第一确认附加包,第一确认附加包表示蓝牙从设备监听到音频数据包;
18.步骤s400,当蓝牙主设备在第一接收窗口没有接收到第一确认附加包时,控制蓝牙主设备以音源设备重发音频数据包的镜像频点向蓝牙从设备转发音频数据包;
19.步骤s500,控制蓝牙从设备拉大预设接收频宽,选择接收音源设备重发的音频数据包和/或蓝牙主设备转发的音频数据包。
20.可选地,在步骤s200中,如果蓝牙主设备没有接收到音频数据包,则依次执行步骤s310、步骤s320和步骤s330;
21.步骤s310,在第一链路的接收时隙到来之后的第二预设时间间隔使蓝牙主设备开启第二接收窗口,以接收蓝牙从设备发送的第二确认附加包,第二确认附加包表示蓝牙从设备监听到音频数据包;
22.步骤s320,当蓝牙主设备在第二接收窗口接收到第二确认附加包时,向蓝牙从设备发送转发数据请求附加包;
23.步骤s330,在第一链路的下一发送时隙到来时,控制蓝牙主设备接收音源设备重发的音频数据包和/或蓝牙从设备转发的音频数据包。
24.可选地,在步骤s330之前还包括:
25.步骤s321,驱使蓝牙从设备监听蓝牙主设备发送给音源设备的标准应答包的信息;
26.步骤s322,判断蓝牙从设备是否监听到标准应答包;如果蓝牙从设备没有监听到标准应答包,则执行步骤s323;
27.步骤s323,驱使蓝牙从设备通过第二链路向蓝牙主设备转发音频数据包。
28.可选地,在步骤s321中,标准应答包的信息为标准应答包的同步头。
29.可选地,步骤s320包括:在第一链路的接收时隙到来之后的第三预设时间间隔向蓝牙从设备发送转发数据请求附加包;期间,控制蓝牙从设备在第三预设时间间隔到来时开启接收转发数据请求附加包的接收窗口。
30.可选地,在步骤s310中,蓝牙主设备开启第二接收窗口包括:以第二链路的跳频节奏开启第二接收窗口。
31.可选地,第一预设时间间隔的起始点为完成音频数据包接收之时;
32.第二预设时间间隔的起始点为按标准协议,第一链路的接收时隙到来之时,且第二预设时间间隔的终止点位于第一链路的接收时隙之内。
33.可选地,在步骤s100之后,还包括:
34.当蓝牙主设备没有接收到音频数据包时,控制蓝牙主设备进入idle状态,以等待启动通信时隙的触发事件;或者,
35.当蓝牙从设备没有监听到音频数据包时,控制蓝牙从设备进入idle状态,以等待启动通信时隙的触发事件;
36.其中,idle状态为保持与双无线音频通信网络中另外两个设备的连接状态,且未执行数据的收发操作。
37.可选地,步骤s500包括:
38.驱动蓝牙从设备在预设接收频宽范围内,同时接收音源设备重发的音频数据包和蓝牙主设备转发的音频数据包。
39.可选地,步骤s500包括:
40.步骤s510,比较蓝牙从设备与音源设备之间的通信性能和蓝牙从设备与蓝牙主设备之间的通信性能;
41.步骤s520,从音源设备和蓝牙主设备二者之间选择接收通信性能较佳的一者发送的音频数据包。
42.可选地,步骤s510包括:
43.分别接收音源设备重发数据包的包头数据和蓝牙主设备转发数据包的包头数据;
44.比较接收重发数据包的包头数据和转发数据包的包头数据的信号强度来确定通信性能。
45.第二方面,本发明实施例公开了一种双无线音频通信控制装置,用于控制蓝牙主设备和蓝牙从设备,蓝牙主设备和蓝牙从设备能够与音源设备建立双无线音频通信网络,双无线音频通信网络包括蓝牙主设备与音源设备之间数据交互的第一链路,蓝牙主设备与蓝牙从设备之间数据交互的第二链路,以及蓝牙从设备监听音源设备的第三链路,双无线音频通信控制装置包括:
46.音频数据包接收模块,用于在第一链路的发送时隙,控制蓝牙主设备通过第一链路接收音源设备发送的音频数据包,蓝牙从设备通过第三链路监听音频数据包;
47.数据接收判断模块,用于判断蓝牙主设备是否接收到音频数据包;如果蓝牙主设备接收到音频数据包,则执行第一窗口开启模块;
48.第一窗口开启模块,用于在蓝牙主设备完成音频数据包接收后的第一预设时间间隔内,控制蓝牙主设备开启第一接收窗口,以接收蓝牙从设备发送的第一确认附加包,第一确认附加包表示蓝牙从设备监听到音频数据包;
49.数据转发模块,用于当蓝牙主设备在第一接收窗口没有接收到第一确认附加包时,控制蓝牙主设备以音源设备重发音频数据包的镜像频点向蓝牙从设备转发音频数据包;
50.第一选择接收模块,用于控制蓝牙从设备拉大预设接收频宽,选择接收音源设备重发的音频数据包和/或蓝牙主设备转发的音频数据包。
51.可选地,在数据接收判断模块中,如果蓝牙主设备没有接收到音频数据包,则依次执行:
52.第二窗口开启模块,用于在第一链路的接收时隙到来之后的第二预设时间间隔使
蓝牙主设备开启第二接收窗口,以接收蓝牙从设备发送的第二确认附加包,第二确认附加包表示蓝牙从设备监听到音频数据包;
53.转发请求模块,用于当蓝牙主设备在第二接收窗口接收到第二确认附加包时,向蓝牙从设备发送转发数据请求附加包;
54.第二选择接收模块,用于在第一链路的下一发送时隙到来时,控制蓝牙主设备接收音源设备重发的音频数据包和/或蓝牙从设备转发的音频数据包。
55.可选地,还包括:
56.应答监听模块,用于驱使蓝牙从设备监听蓝牙主设备发送给音源设备的标准应答包的信息;
57.应答判断模块,用于判断蓝牙从设备是否监听到标准应答包;
58.转发模块,用于如果应答判断模块判断出蓝牙从设备没有监听到标准应答包,驱使蓝牙从设备通过第二链路向蓝牙主设备转发音频数据包。
59.可选地,在应答监听模块中,标准应答包的信息为标准应答包的同步头;
60.可选地,转发请求模块包括:
61.在第一链路的接收时隙到来之后的第三预设时间间隔向蓝牙从设备发送转发数据请求附加包;期间,控制蓝牙从设备在第三预设时间间隔到来时开启接收转发数据请求附加包的接收窗口。
62.可选地,在第二窗口开启模块中,蓝牙主设备开启第二接收窗口包括:以第二链路的跳频节奏开启第二接收窗口。
63.可选地,第一预设时间间隔的起始点为完成音频数据包接收之时;
64.第二预设时间间隔的起始点为按标准协议,第一链路的接收时隙到来之时,且第二预设时间间隔的终止点位于第一链路的接收时隙之内。
65.可选地,还包括:
66.idle状态控制模块,用于当蓝牙主设备没有接收到音频数据包时,控制蓝牙主设备进入idle状态,以等待启动通信时隙的触发事件;或者,
67.当蓝牙从设备没有监听到音频数据包时,控制蓝牙从设备进入idle状态,以等待启动通信时隙的触发事件;
68.其中,idle状态为保持与双无线音频通信网络中另外两个设备的连接状态,且未执行数据的收发操作。
69.可选地,第一选择接收模块包括:
70.驱动蓝牙从设备在预设接收频宽范围内,同时接收音源设备重发的音频数据包和蓝牙主设备转发的音频数据包。
71.可选地,第一选择接收模块包括:
72.性能比较单元,用于比较蓝牙从设备与音源设备之间的通信性能和蓝牙从设备与蓝牙主设备之间的通信性能;
73.选择单元,用于从音源设备和蓝牙主设备二者之间选择接收通信性能较佳的一者发送的音频数据包。
74.可选地,性能比较单元具体用于:
75.分别接收音源设备重发数据包的包头数据和蓝牙从设备转发数据包的包头数据;
76.比较接收重发数据包的包头数据和转发数据包的包头数据的信号强度来确定通信性能。
77.第三方面,本发明实施例公开了一种蓝牙播放设备,包括:
78.处理器,用于实现第一方面公开的方法。
79.第四方面,本发明实施例公开了一种音频信号处理系统,包括:第一蓝牙播放设备和第二蓝牙播放设备;第一蓝牙播放设备和第二蓝牙播放设备为一对音频播放设备对,
80.第一蓝牙播放设备具有上述第二方面公开的装置;
81.第二蓝牙播放设备具有上述第二方面公开的装置。
82.可选地,还包括:
83.音源设备,用于向第一蓝牙播放设备和第二蓝牙播放设备提供音频数据。
84.第五方面,本发明实施例公开了一种计算机可读存储介质,其上存储有计算机程序,存储介质中存储的计算机程序用于被执行实现上述第一方面公开的方法。
85.第六方面,本发明实施例公开了一种音频设备的芯片,其上具有集成电路,集成电路被设计成用于实现上述第一方面公开的方法。
86.【有益效果】
87.依据本发明实施例公开的一种双无线音频通信控制方法、装置、设备和系统,在第一链路的发送时隙,驱使蓝牙主设备通过第一链路接收音源设备发送的音频数据包,蓝牙从设备通过第三链路监听音频数据包;如果蓝牙主设备接收到音频数据包,则在蓝牙主设备完成音频数据包接收后的第一预设时间间隔使蓝牙主设备开启第一接收窗口,以接收蓝牙从设备发送的第一确认附加包,第一确认附加包表示蓝牙从设备监听到音频数据包;当蓝牙主设备在第一接收窗口没有接收到第一确认附加包时,以音源设备重发音频数据包的镜像频点向蓝牙从设备转发音频数据包;控制蓝牙从设备拉大预设接收频宽,选择接收音源设备重发的音频数据包和/或蓝牙主设备转发的音频数据包,也就是,在蓝牙主设备没有接收到第一确认附加包的时候,及时发现了丢包现象,及时以音源设备重发音频数据包的镜像频点转发音频数据包,并且蓝牙从设备拉大预设接收频宽,可以同时接收接收音源设备重发的音频数据包和/或蓝牙主设备转发的音频数据包,音源设备和蓝牙主设备在空间上的位置不同,因此,可以获得较优的空间分集增益,减小了环境、人体等因素所带来的信号质量差的影响,通过在其他链路中转发的方式来避免单一链路干扰后的通信问题,改善双蓝牙播放设备的通信质量,改善了用户体验。
88.本发明的其他有益效果,将在具体实施方式中通过具体技术特征和技术方案的介绍来阐述,本领域技术人员通过这些技术特征和技术方案的介绍,应能理解所述技术特征和技术方案带来的有益技术效果。
附图说明
89.以下将参照附图对根据本发明实施例进行描述。图中:
90.图1为现有技术中的一种双无线音频通信网络结构示意图;
91.图2为现有技术中的一种双无线音频通信时序示意图;
92.图3为本实施例公开的一种双无线音频通信网络结构示意图;
93.图4为本实施例公开的一种双无线音频通信控制方法流程图;
94.图5为本实施例公开的一种双无线音频通信方法示例时序示意图;
95.图6为本实施例公开的一种双无线音频通信控制方法另一时序示例示意图;
96.图7为本实施例公开的一种双无线音频通信控制方法又一时序示例示意图;
97.图8为本实施例公开的一种双无线音频通信控制装置结构示意图;
98.图9为本实施例公开的一种音频信号处理系统结构示意图。
具体实施方式
99.为了及时发现丢包,以便及时转发音频数据包,本发明实施例公开了一种双无线音频通信控制方法,请参考图3,为本实施例公开的一种双无线音频通信网络结构示意图,本实施例公开的双无线音频通信网络由音源设备1、蓝牙主设备2和蓝牙从设备3构成,蓝牙主设备2和蓝牙从设备3能够与音源设备1建立双无线音频通信网络,其中,双无线音频通信网络的通信链路包括蓝牙主设备2与音源设备1之间数据交互的第一链路link_1,蓝牙主设备2与蓝牙从设备3之间数据交互的第二链路link_2,以及蓝牙从设备3监听音源设备1的第三链路link_3。请参考图4,为本实施例公开的一种双无线音频通信控制方法流程图,该双无线音频通信控制方法用于控制蓝牙主设备2和蓝牙从设备3,本实施例公开的双无线音频通信控制方法包括:步骤s100、步骤s200、步骤s300、步骤s400和步骤s300,其中:
100.步骤s100,在第一链路link_1的发送时隙,控制蓝牙主设备通过第一链路link_1接收音源设备发送的音频数据包,蓝牙从设备通过第三链路link_3监听音频数据包。请参考图3,在数据传输之前可以分如下几步建立通信连接,以便进行音频数据交互:
101.第一步,建立双无线蓝牙音频网络,蓝牙主设备2(例如真无线主耳机)与音源设备1(例如手机)建立连接,创建用于传递音频数据的通信链路link_1链路。蓝牙主设备2(例如真无线主耳机)与蓝牙从设备3(例如真无线从耳机)建立连接,创建用于蓝牙主、从设备间信息交换的通信链路link_2链路。
102.第二步,通过link_2链路,蓝牙主设备2(例如真无线主耳机)把link_1链路通信建立的信息发送给蓝牙从设备3(例如真无线从耳机),蓝牙从设备3(例如真无线从耳机)用此链路信息创建监听链路link_3链路,用于蓝牙从设备3(例如真无线从耳机)监听接收link_1链路通信的音频数据包,完成图1所示网络拓扑结构。同时初始化后续所用变量标志relay_flag、rxdata_ok、rxpkt_okflag为0。
103.第三步,由于蓝牙协议是半双工通信,存在双向的数据交换,根据图3所示的网络拓扑结构,定义与音源设备1(例如手机)连接的设备为蓝牙主设备2(例如真无线主耳机),监听设备为蓝牙从设备3(例如真无线从耳机)。每个设备在连接音源设备1(例如手机)和监听音源设备1(例如手机)之前都可能是蓝牙主设备2(例如真无线主耳机)或者蓝牙从设备3(例如真无线从耳机)。
104.第四步,音源设备、蓝牙主、从设备处于idle状态时进入即不发送也不接收的状态,等待通信时隙启动而退出idle状态。蓝牙通信协议规定了以网络主设备(例如手机)为蓝牙时钟为网络时钟,时隙625us为单位的通信时隙间隔,且以网络主设备蓝牙时钟的偶时隙为网络通信发送时隙,奇时隙为网络通信接收时隙,而每个时隙的开始位置为时隙启动点,当时隙启动点到来时设备退出idle状态进入通信状态。
105.第五步,判断当前启动的时刻是否为通信链路link_1链路的发送时隙,否则为接
收时隙。
106.本实施例中,所称第一链路link_1的发送时隙为,以link_1中的音源设备1(例如手机)为基准来确定当前时隙是发送时隙还是接收时隙,具体地,按标准规定,偶时隙为网络通信link_1的发送时隙,奇时隙为网络通信link_1的接收时隙。
107.因为音频数据包的收发操作发生在link_1链路的发送时隙,所以在当前情况下需先判断标志relay_flag是否为1,即是否需要启动转发流程,若不用转发,则设置标志位rxdata_ok为0,表示清除之前接收数据包的状态,并通过link_1链路开始接收音源设备1发送的音频数据包。
108.步骤s200,判断蓝牙主设备是否接收到音频数据包。在具体实施过程中,可以通过例如校验的方式来确定是否接收到音频数据包,本实施例中,如果蓝牙主设备2接收到音频数据包,则执行步骤s300。
109.步骤s300,在蓝牙主设备完成音频数据包接收后的第一预设时间间隔内,控制蓝牙主设备开启第一接收窗口。请参考图5,为本实施例公开的一种双无线音频通信方法示例时序示意图,音源设备1向蓝牙主设备2发送音频数据包5-1,蓝牙从设备3监听该音频数据包5-1,蓝牙主设备2在前一次接收当中接收正确了音源设备1的音频数据包(如图5中标记5-10所示),蓝牙主设备2在完成接收前次音频数据包5-1后的第一预设时间间隔开启第一接收窗口5-11,以便于接收蓝牙从设备3发送的第一确认附加包,本实施例中,第一确认附加包表示蓝牙从设备3监听到音频数据包;请参考图5,音源设备1向蓝牙主设备2发送音频数据包5-2,蓝牙从设备3监听该音频数据包5-2,蓝牙主设备2在前一次接收当中接收正确了音源设备1的音频数据包(如图5中标记5-20所示),蓝牙主设备2在完成接收前次音频数据包5-2后的第一预设时间间隔开启第一接收窗口5-14,以便于接收蓝牙从设备3发送的第一确认附加包。
110.步骤s400,当蓝牙主设备在第一接收窗口没有接收到第一确认附加包时,控制蓝牙主设备以音源设备重发音频数据包的镜像频点向蓝牙从设备转发音频数据包。请参考图5,蓝牙主设备2在前一次接收当中接收正确了音源设备1的音频数据包5-10,但在第一接收窗口位置5-11或其它位置没有收到蓝牙从设备3发出的表示监听成功的附加包,则蓝牙主设备2认为蓝牙从设备3并没有监听到音频数据包,随即会把relay_flag标志置1,所以蓝牙主设备2在标记为5-13的发送时隙转发在标记为5-10位置接收到的音频数据包5-1。本实施例中,以音源设备重发音频数据包的镜像频点转发音频数据包,具体地,转发音频数据包所用的频点发生在link_1链路计算出来跳频f mhz(如图5中5-2重发音频数据包所用的频点,即例如中频 1.5mhz)的镜像频点位置(如镜像(f-3)mhz频点,即中频-1.5mhz),由此,蓝牙从设备3在5-22位置接收音频数据包时,可以拉大接收频宽,从而可以同时接收音频数据包5-2和音频数据包5-13。
111.步骤s500,控制蓝牙从设备拉大预设接收频宽,选择接收音源设备重发的音频数据包和/或蓝牙主设备转发的音频数据包。本实施例中,请参考图5,拉大蓝牙从设备3的接收频宽,即中频
±
1.5m频率下都接收下来,蓝牙从设备3就可以同时接收音源设备1重发音频数据包5-2和蓝牙主设备2转发的音频数据包5-13。
112.在一种实施例中,可以驱动蓝牙从设备3在预设接收频宽范围内,同时接收音源设备重发的音频数据包5-2和蓝牙主设备转发的音频数据包5-13。缓存音频数据包5-2和音频
数据包5-13,而后对音频数据包5-2和音频数据包5-13进行调制,得到前次的音频数据包5-1。
113.在另一种实施例中,步骤s500包括:步骤s510,比较蓝牙从设备与音源设备之间的通信性能和蓝牙从设备与蓝牙主设备之间的通信性能。步骤s520,从音源设备和蓝牙主设备二者之间选择接收通信性能较佳的一者发送的音频数据包。
114.具体地,由于音源设备与蓝牙主设备的位置不同,因此,与蓝牙从设备通信的信号强度也不同,本实施例中,通过比较通信性能,可以确定蓝牙从设备与音源设备、蓝牙主设备之间的通信性能强弱关系。
115.为了减少数据接收量,减少带宽的浪费,在可选的实施例中,分别接收音源设备重发数据包的包头数据和蓝牙主设备转发数据包的包头数据;比较接收重发数据包的包头数据和转发数据包的包头数据的信号强度来确定通信性能。也就是,蓝牙从设备3在标记5-22时隙接收数据包时就会在数据包头决定是接收音源设备的音频数据包的信号好,还是接收蓝牙主设备转发的音频数据包的信号更好,而选择后续数据包其他内容是从哪边接收音频数据包。此方式可以节省转发时所带来的带宽消耗。
116.在可选的实施例中,在步骤s200中,如果蓝牙主设备没有接收到音频数据包,则依次执行步骤s310、步骤s320和步骤s330,具体地:
117.步骤s310,在第一链路link_1的接收时隙到来之后的第二预设时间间隔使蓝牙主设备开启第二接收窗口。本实施例中,通过开启第二接收窗口,可以接收蓝牙从设备发送的第二确认附加包,所称第二确认附加包表示蓝牙从设备监听到音频数据包。本实施例中,如果蓝牙主设备没有接收到音频数据包,可以置标志位rxdata_ok为0,表示蓝牙主设备在之前的link_1链路发送时隙上没有接收到音频数据包,极端情况是蓝牙主设备连音源设备发出的包同步头都没收到,此时这个数据包的类型和长度都不知道,蓝牙设备根本不知道附加包应该在哪里进行收发第一确认附加包。请参考图6,为本实施例公开的一种双无线音频通信控制方法另一时序示例示意图,音源设备发出音频数据包6-1,蓝牙主设备没有收到该音频数据包(如图6中标记6-10所示),蓝牙从设备监听到该音频数据包(如图6中标记6-20所示)。对于蓝牙主设备而言,音源设备发出的数据包有可能是1个时隙、3个时隙或者5个时隙的长度,在第一确认附加包收发位置(图6中标记6-21所示)蓝牙从设备发出第一确认附加包,蓝牙主设备就无法对应了,所以本实施例提出了一个新的附加包位置及跳频方式去解决这种情况。蓝牙主设备在接收时隙到来之后的第二预设时间间隔位置以link_2链路的跳频节奏打开接收第二确认附加包的接收窗口,用以接收蓝牙从设备在link_1接收时隙启动位置算起的第二预设时间间隔时刻发送的第二确认附加包。
118.为了避免蓝牙从设备进行链路切换,在可选的实施例中,在步骤s310中,蓝牙主设备开启第二接收窗口包括:以第二链路link_2的跳频节奏开启第二接收窗口。由此,可以使得蓝牙主设备能够通过第二链路link_2来接收第二确认附加包。
119.步骤s320,当蓝牙主设备在第二接收窗口接收到第二确认附加包时,向蓝牙从设备发送转发数据请求附加包。如图6所示,蓝牙从设备正确监听到了音频数据包(图6中标记6-20)后,蓝牙从设备首先在第一确认附加包位置(如标记6-21位置)发出第一确认附加包,而蓝牙主设备不知道该音频数据包的大小,因此,蓝牙主设备无法确认在何时开启第一接收窗口,也就无法接收到第一确认附加包;随后,蓝牙从设备在第一链路link_1的接收时隙
到来之后的第二预设时间间隔位置(如标记6-23所示)以link_2链路跳频方式发出第二确认附加包,而与此同时,蓝牙主设备以link_2链路的跳频方式开启了第二接收窗口,因此,蓝牙主设备可以接收到第二确认附加包(如标记6-11);最后,蓝牙主设备在link_1链路的接收时隙启动位置算起的第二预设时间间隔时刻发送转发数据请求附加包relay_req,如图6-12位置发出转发数据请求附加包,发送请求附加包后返回idle状态,等待下一时隙启动。
120.需要说明的是,期间,蓝牙从设备在发送完第二确认附加包后,在link_1链路的接收时隙启动位置算起的第二预设时间间隔时刻打开接收转发数据请求附加包的接收窗口,即图6中标记6-24位置,接收来自蓝牙主设备发出的转发数据请求附加包。若接收到了转发数据请求附加包,蓝牙从设备则设置relay_flag为1,用于下一个link_1链路的发送时隙转发音频数据包。如图6中标记6-24位置接收到了转发数据请求附加包后,蓝牙从设备在下一个link_1链路的发送时隙位置(如图6中标记6-25所示)转发音频数据包。若接收不到转发数据请求附加包,则返回idle状态。
121.步骤s330,在第一链路link_1的下一发送时隙到来时,控制蓝牙主设备接收音源设备重发的音频数据包和/或蓝牙从设备转发的音频数据包。请参考图6,音源设备重发音频数据包6-2,期间,蓝牙从设备转发音频数据包6-25,蓝牙主设备接收音频数据包(如标记6-13所示),具体地,与蓝牙从设备接收蓝牙主设备转发音频数据包类似,具体可参见上述实施例的描述,在此不再赘述。
122.为了使得蓝牙主、从设备的收发窗口对齐,在可选的实施例中,在第一链路link_1的接收时隙到来之后的第三预设时间间隔向蓝牙从设备发送转发数据请求附加包;期间,控制蓝牙从设备在第三预设时间间隔到来时开启接收转发数据请求附加包的接收窗口。也就是,在link_1链路的接收时隙启动位置算起的第三预设时间间隔时刻打开接收转发数据请求附加包relay_req的收发窗口,从而,使得在蓝牙从设备能够及时接收到蓝牙主设备发送的转发数据请求附加包relay_req,以便于及时转发前次音频数据包。
123.为了避免误判蓝牙主设备没有接收到音频数据包导致的重发/转发带宽浪费,在可选的实施例中,蓝牙从设备可以监听蓝牙主设备发送给音源设备的标准应答包的信息。具体地,在步骤s330之前还包括:
124.步骤s321,驱使蓝牙从设备监听蓝牙主设备发送给音源设备的标准应答包的信息;步骤s322,判断蓝牙从设备是否监听到标准应答包;如果蓝牙从设备没有监听到标准应答包,则执行步骤s323;步骤s323,驱使蓝牙从设备通过第二链路link_2向蓝牙主设备转发音频数据包。
125.按标准协议,蓝牙主设备在接收到音源设备发送的音频数据包后,蓝牙主设备会应答音源设备,本实施例中,蓝牙从设备监听蓝牙主设备发送给音源设备的标准应答包的信息。请参考图6,在link_1的发送时隙结束后,蓝牙从设备监听蓝牙主设备发送给音源设备的标准应答包的信息(如图6标记6-22所示),由于蓝牙主设备没有接收到音频数据包,因此,蓝牙主设备不会发出标准应答包,也就是,蓝牙从设备没有监听到标准应答包(如图6标记6-22所示),此时,可以确定蓝牙主设备没有接收到前次音频数据包,因此,可以驱使蓝牙从设备通过第二链路link_2向蓝牙主设备转发音频数据包(如标记6-25所示)。
126.为了减少数据的监听量,减少不必要的带宽浪费,在可选的实施例中,在步骤s321
中,标准应答包的信息为标准应答包的同步头(syncword)。也就是,蓝牙从设备只需监听蓝牙主设备的应答包(ack)里的同步头(syncword)信息,当监听到同步头(syncword)信息时,即可确认蓝牙主设备接收到了前次音频数据包,否则,即可确认蓝牙主设备没有接收到前次音频数据包。相对于监听整个应答包(ack),本实施例无需接收整个应答包(ack),因此,会使得监听的门限值更低,并且,通过该同步头信息亦可确认蓝牙主设备是否接收到前次音频数据包。
127.在可选的实施例中,第一预设时间间隔的起始点为完成音频数据包接收之时;第二预设时间间隔的起始点为按标准协议,第一链路link_1的接收时隙到来之时,且第二预设时间间隔的终止点位于第一链路link_1的接收时隙之内。可见,第一预设时间间隔的位置是固定的,基于前次音频数据包的长度而动态变化,而第二预设时间间隔的位置是固定的,且蓝牙主从设备都能够知道第二预设时间间隔的位置,因此,即便当蓝牙主设备存在丢包不清楚前次音频数据包的具体长度时,但蓝牙主设备可以知道第二预设时间间隔的位置,因此,可以在第二预设时间间隔到来时接收蓝牙从设备的发送的第二确认附加包;并且,第二预设时间间隔的终止点位于第一链路link_1的接收时隙之内,从而,使得蓝牙主从设备在进行数据交互时,并不影响音源设备的通信操作,也就是,在该时隙,音源设备不会发送音频数据包,从而避免了丢失音源设备数据包的情形。
128.在可选的实施例中,在步骤s100之后,还包括:当蓝牙主设备没有接收到音频数据包时,控制蓝牙主设备进入idle状态,以等待启动通信时隙的触发事件;或者,当蓝牙从设备没有监听到音频数据包时,控制蓝牙从设备进入idle状态,以等待启动通信时隙的触发事件;idle状态为保持与双无线音频通信网络中另外两个设备的连接状态,且未执行数据的收发操作。蓝牙主、从设备设备进入idle状态后,保持连接状态,当相应的收发窗口到来时,开始进行收发操作,从而减少了数据收发的延时。
129.请参考图7,为本实施例公开的一种双无线音频通信控制方法又一时序示例示意图,如图7所示,音源设备1发送音频数据包7-1,蓝牙主设备2设备和蓝牙从设备3设备不能正确接收到音频数据包7-1(如标记7-10、标记7-20所示),则当前时隙结束返回idle状态;若能正确接收音频数据包,则设置标志rxdata_ok为1,表示正确接收到音频数据包,如图7所示,音源设备1发送音频数据包7-2,蓝牙主设备2和蓝牙从设备3均能正确接收7-12和7-22,则一直接收数据包。
130.蓝牙从设备3接收正确音频数据包,设置标志位rxpkt_okflag为1,以表示正确接收到数据包,后续需要发送第一确认附加包,在数据包完成后第一预设时间间隔位置发送第一确认附加包,如图7所示当正确接收到音频数据包7-22后,将会在7-23位置发送第一确认附加包。而蓝牙主设备2设备接收正确音频数据包,此时设置rxpkt_okflag为0,并在数据包完成后延时第一预设时间间隔位置打开接收第一确认附加包的接收窗口(如图7-13位置)。在此接收窗口若接收第一确认附加包,则设置rxpkt_okflag为1,用于下一接收时隙应答音源设备1(如标记7-14所示),否则返回idle状态。蓝牙从设备3在蓝牙主设备2应答音源设备1的位置,也会监听蓝牙主设备2的应答信息(如标记7-24所示)。
131.本实施例还公开了一种双无线音频通信控制装置,请参考图8,为本实施例公开的一种双无线音频通信控制装置结构示意图,该双无线音频通信控制装置用于控制蓝牙主设备和蓝牙从设备,蓝牙主设备和蓝牙从设备能够与音源设备建立双无线音频通信网络,双
无线音频通信网络包括蓝牙主设备与音源设备之间数据交互的第一链路link_1,蓝牙主设备与蓝牙从设备之间数据交互的第二链路link_2,蓝牙从设备监听音源设备的第三链路link_3,双无线音频通信控制装置包括:音频数据包接收模块100、数据接收判断模块200、第一窗口开启模块300、数据转发模块400和第一选择接收模块500,其中:
132.音频数据包接收模块100,用于在第一链路link_1的发送时隙,控制蓝牙主设备通过第一链路link_1接收音源设备发送的音频数据包,蓝牙从设备通过第三链路link_3监听音频数据包;
133.数据接收判断模块200,用于判断蓝牙主设备是否接收到音频数据包;如果蓝牙主设备接收到音频数据包,则执行第一窗口开启模块300;
134.第一窗口开启模块300,用于在蓝牙主设备完成音频数据包接收后的第一预设时间间隔内,控制蓝牙主设备开启第一接收窗口,以接收蓝牙从设备发送的第一确认附加包,第一确认附加包表示蓝牙从设备监听到音频数据包;
135.数据转发模块400,用于当蓝牙主设备在第一接收窗口没有接收到第一确认附加包时,控制蓝牙主设备以音源设备重发音频数据包的镜像频点向蓝牙从设备转发音频数据包;
136.第一选择接收模块500,用于控制蓝牙从设备拉大预设接收频宽,选择接收音源设备重发的音频数据包和/或蓝牙主设备转发的音频数据包。
137.可选地,在数据接收判断模块200中,如果蓝牙主设备没有接收到音频数据包,则依次执行:
138.第二窗口开启模块,用于在第一链路link_1的接收时隙到来之后的第二预设时间间隔使蓝牙主设备开启第二接收窗口,以接收蓝牙从设备发送的第二确认附加包,第二确认附加包表示蓝牙从设备监听到音频数据包;
139.转发请求模块,用于当蓝牙主设备在第二接收窗口接收到第二确认附加包时,向蓝牙从设备发送转发数据请求附加包;
140.第二选择接收模块,用于在第一链路link_1的下一发送时隙到来时,控制蓝牙主设备接收音源设备重发的音频数据包和/或蓝牙从设备转发的音频数据包。
141.可选地,还包括:
142.应答监听模块,用于驱使蓝牙从设备监听蓝牙主设备发送给音源设备的标准应答包的信息;
143.应答判断模块,用于判断蓝牙从设备是否监听到标准应答包;
144.转发模块,用于如果应答判断模块判断出蓝牙从设备没有监听到标准应答包,驱使蓝牙从设备通过第二链路link_2向蓝牙主设备转发音频数据包。
145.可选地,在应答监听模块中,标准应答包的信息为标准应答包的同步头;
146.可选地,转发请求模块包括:
147.在第一链路link_1的接收时隙到来之后的第三预设时间间隔向蓝牙从设备发送转发数据请求附加包;期间,控制蓝牙从设备在第三预设时间间隔到来时开启接收转发数据请求附加包的接收窗口。
148.可选地,在第二窗口开启模块中,蓝牙主设备开启第二接收窗口包括:以第二链路link_2的跳频节奏开启第二接收窗口。
149.可选地,第一预设时间间隔的起始点为完成音频数据包接收之时;
150.第二预设时间间隔的起始点为按标准协议,第一链路link_1的接收时隙到来之时,且第二预设时间间隔的终止点位于第一链路link_1的接收时隙之内。
151.可选地,还包括:
152.idle状态控制模块,用于当蓝牙主设备没有接收到音频数据包时,控制蓝牙主设备进入idle状态,以等待启动通信时隙的触发事件;或者,
153.当蓝牙从设备没有监听到音频数据包时,控制蓝牙从设备进入idle状态,以等待启动通信时隙的触发事件;idle状态为保持与双无线音频通信网络中另外两个设备的连接状态,且未执行数据的收发操作。
154.可选地,第一选择接收模块500包括:
155.驱动蓝牙从设备在预设接收频宽范围内,同时接收音源设备重发的音频数据包和蓝牙主设备转发的音频数据包。
156.可选地,第一选择接收模块500包括:
157.性能比较单元,用于比较蓝牙从设备与音源设备之间的通信性能和蓝牙从设备与蓝牙主设备之间的通信性能;
158.选择单元,用于从音源设备和蓝牙主设备二者之间选择接收通信性能较佳的一者发送的音频数据包。
159.可选地,性能比较单元具体用于:
160.分别接收音源设备重发数据包的包头数据和蓝牙从设备转发数据包的包头数据;
161.比较接收重发数据包的包头数据和转发数据包的包头数据的信号强度来确定通信性能。
162.本实施例还公开了一种蓝牙播放设备,包括:
163.处理器,用于实现上述实施例公开的方法。
164.本实施例还公开了一种音频信号处理系统,请参考图9,为本实施例公开的一种音频信号处理系统结构示意图,该音频信号处理系统包括:第一蓝牙播放设备21和第二蓝牙播放设备22;第一蓝牙播放设备21和第二蓝牙播放设备22为一对音频播放设备对,其中,第一蓝牙播放设备21和第二蓝牙播放设备22可以是一对真无线耳机,也可以是一对蓝牙音箱,或者其它的能够构成对的音频播放设备。本实施例中,第一蓝牙播放设备21具有上述实施例公开的装置;第二蓝牙播放设备22具有上述实施例公开的装置。
165.可选地,还包括:音源设备20,用于向第一蓝牙播放设备21和第二蓝牙播放设备22提供音频数据。音源设备20为具有蓝牙通信功能和音频发送功能的设备,可以是例如手机、笔记本、平板电脑、音/视频播放器等。
166.本实施例还公开了一种计算机可读存储介质,其上存储有计算机程序,存储介质中存储的计算机程序用于被执行实现上述实施例公开的方法。
167.本实施例还公开了一种音频设备的芯片,其上具有集成电路,集成电路被设计成用于实现上述实施例公开的方法。
168.依据本发明实施例公开的一种双无线音频通信控制方法、装置、设备和系统,在第一链路的发送时隙,驱使蓝牙主设备通过第一链路接收音源设备发送的音频数据包,蓝牙从设备通过第三链路监听音频数据包;如果蓝牙主设备接收到音频数据包,则在蓝牙主设
备完成音频数据包接收后的第一预设时间间隔使蓝牙主设备开启第一接收窗口,以接收蓝牙从设备发送的第一确认附加包,第一确认附加包表示蓝牙从设备监听到音频数据包;当蓝牙主设备在第一接收窗口没有接收到第一确认附加包时,以音源设备重发音频数据包的镜像频点向蓝牙从设备转发音频数据包;控制蓝牙从设备拉大预设接收频宽,选择接收音源设备重发的音频数据包和/或蓝牙主设备转发的音频数据包,也就是,在蓝牙主设备没有接收到第一确认附加包的时候,及时发现了丢包现象,及时以音源设备重发音频数据包的镜像频点转发音频数据包,并且蓝牙从设备拉大预设接收频宽,可以同时接收接收音源设备重发的音频数据包和/或蓝牙主设备转发的音频数据包,音源设备和蓝牙主设备在空间上的位置不同,因此,可以获得较优的空间分集增益,减小了环境、人体等因素所带来的信号质量差的影响,通过在其他链路中转发的方式来避免单一链路干扰后的通信问题,改善双蓝牙播放设备的通信质量,改善了用户体验。
169.需要说明的是,本发明中采用步骤编号(字母或数字编号)来指代某些具体的方法步骤,仅仅是出于描述方便和简洁的目的,而绝不是用字母或数字来限制这些方法步骤的顺序。本领域的技术人员能够明了,相关方法步骤的顺序,应由技术本身决定,不应因步骤编号的存在而被不适当地限制。
170.本领域的技术人员能够理解的是,在不冲突的前提下,上述各优选方案可以自由地组合、叠加。
171.应当理解,上述的实施方式仅是示例性的,而非限制性的,在不偏离本发明的基本原理的情况下,本领域的技术人员可以针对上述细节做出的各种明显的或等同的修改或替换,都将包含于本发明的权利要求范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献