CN112105005B - 一种控制蓝牙设备播放的方法及装置 - Google Patents
一种控制蓝牙设备播放的方法及装置 Download PDFInfo
- Publication number
- CN112105005B CN112105005B CN201910817818.5A CN201910817818A CN112105005B CN 112105005 B CN112105005 B CN 112105005B CN 201910817818 A CN201910817818 A CN 201910817818A CN 112105005 B CN112105005 B CN 112105005B
- Authority
- CN
- China
- Prior art keywords
- bluetooth
- playing time
- time
- predicted
- playing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 230000001360 synchronised effect Effects 0.000 claims abstract description 143
- 230000002159 abnormal effect Effects 0.000 claims description 51
- 238000012545 processing Methods 0.000 claims description 9
- 238000012544 monitoring process Methods 0.000 claims description 8
- 238000003860 storage Methods 0.000 claims description 6
- 238000004891 communication Methods 0.000 abstract description 10
- 238000010586 diagram Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B19/00—Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
- G11B19/02—Control of operating function, e.g. switching from recording to reproducing
- G11B19/027—Remotely controlled
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/16—Storage of analogue signals in digital stores using an arrangement comprising analogue/digital [A/D] converters, digital memories and digital/analogue [D/A] converters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0644—External master-clock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W56/00—Synchronisation arrangements
- H04W56/001—Synchronization between nodes
- H04W56/0015—Synchronization between nodes one node acting as a reference for the others
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Automation & Control Theory (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明涉及通信技术领域,公开了一种控制蓝牙设备播放的方法及装置,用于解决现有的蓝牙设备初始同步播放实时性和适应性差的问题,该方法包括:至少两个蓝牙设备同步接收音源设备发送的音频数据,每个蓝牙设备确定基准蓝牙时间,并基于该基准蓝牙时间确定第一预测播放时间,每个蓝牙设备根据第一预测播放时间确定同步播放时间,并按照同步播放时间播放音频数据。这样,在各个蓝牙设备不交互同步播放时间的前提下,可以根据第一预测播放时间确定同步播放时间,进而保证蓝牙设备播放的实时性与同步性。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种控制蓝牙设备播放的方法及装置。
背景技术
随着科学技术的发展,人们越来越喜欢使用蓝牙设备播放终端设备上的音乐,例如,使用蓝牙耳机播放手机上的音乐;又例如,使用蓝牙音箱播放电脑上的音乐。在现有技术中,提供了音频流转发方案使得主从设备都能够获取音频数据。
其中,音频流转发方案记载如下:
首先,在真正无线立体声(True Wireless Stereo,TWS)蓝牙设备中选择一个蓝牙设备作为发起者(以下简称主机),另一个蓝牙设备作为接收者(以下简称副机);
其次,主机接收并播放终端设备发送的音频数据,以及生成约定播放时间,并将约定播放时间与终端设备发送的音频数据,一同转发至副机中;
最后,主副机按照约定播放时间中记录的时间点,同时播放音频。
上述同步播放的方法,由于需要主设备约定播放时间,再将约定播放时间和音频数据发给从设备,这样初始同步播放的实时性较弱,且对于不通过主设备进行音频流转发的方案,如蓝牙监听方案或蓝牙广播方案等适用性差。有鉴于此,需要设计一种新的控制蓝牙设备播放的方法,以克服上述缺陷。
发明内容
本申请实施例提供一种控制蓝牙设备播放的方法及装置,用以解决现有的蓝牙设备初始同步播放实时性和适应性差的问题。
第一方面,本申请实施例提供的具体技术方案如下:一种控制蓝牙设备播放的方法,包括:
至少两个蓝牙设备同步接收音源设备发送的音频数据;
蓝牙设备为所述至少两个蓝牙设备中的任一个,所述蓝牙设备执行以下操作:
确定基准蓝牙时间,并基于所述基准蓝牙时间,确定第一预测播放时间;
根据所述第一预测播放时间确定同步播放时间,并按照所述同步播放时间播放音频数据。
可选的,至少两个蓝牙设备同步接收音源设备发送的音频数据,包括:
在所述至少两个蓝牙设备中,一个蓝牙设备与所述音源设备建立蓝牙连接,并接收所述音源设备发送的所述音频数据,其他蓝牙设备通过预设的第一蓝牙链路,同步接收所述音源设备发送的所述音频数据,其中,当所述至少两个蓝牙设备为两个时,一个蓝牙设备通过与所述音源设备建立第一蓝牙连接接收所述音频数据,另一个蓝牙设备通过监听所述第一蓝牙连接或与所述音源设备建立第二蓝牙连接来同步接收所述音频数据;或者,
所述至少两个蓝牙设备同步接收由所述音源设备蓝牙广播的所述音频数据。
可选的,确定基准蓝牙时间,包括:
将所述蓝牙设备同步接收到所述音频数据的蓝牙时钟,确定为所述基准蓝牙时间;和/或,
所述基于所述基准蓝牙时间,确定第一预测播放时间包括:所述蓝牙设备获取预设的第一偏移时间,并将所述基准蓝牙时间与所述第一偏移时间之和,确定为所述第一预测播放时间。
可选的,根据所述第一预测播放时间确定同步播放时间,包括:
将所述第一预测播放时间确定为所述同步播放时间;或者,
基于所述第一预测播放时间,判断自身是否具备预设的正常播放条件,
且判断是否接收到其他蓝牙设备的异常反馈,并生成判断结果,根据所述判断结果确定所述同步播放时间。
可选的,基于所述第一预测播放时间,判断自身是否具备预设的正常播放条件,包括:
所述蓝牙设备判断自身当前的预备播放时间是否未超过所述第一预测播放时间;
若是,则判定所述蓝牙设备具备正常播放条件;
否则,判定所述蓝牙设备不具备正常播放条件。
可选的,是否接收到其他蓝牙设备的异常反馈,包括:
所述蓝牙设备若接收到至少一个其他蓝牙设备发送的自身的第二预测播放时间,则确定收到所述其他蓝牙设备的异常反馈;
否则,确定未接收所述其他蓝牙设备的异常反馈。
可选的,所述至少两个蓝牙设备之间存在第二蓝牙链路。
可选的,根据所述判断结果确定所述同步播放时间,包括:
当自身具备正常播放条件,且未收到所述其他蓝牙设备的异常反馈时,将所述第一预测播放时间确定为所述同步播放时间;或者,
当自身具备正常播放条件,且收到所述其他蓝牙设备的异常反馈时,根据所述异常反馈确定出所述同步播放时间;或者,
当自身不具备预设的正常播放条件时,确定自身的第二预测播放时间,并将所述第二预测播放时间发送至所述其他蓝牙设备,且未接收到所述其他蓝牙设备的异常反馈,则将所述第二预测播放时间确定为所述同步播放时间;或者,当自身不具备预设的正常播放条件时,确定自身的第二预测播放时间,并将所述第二预测播放时间发送至所述其他蓝牙设备,且接收到所述其他蓝牙设备的异常反馈,则根据所述第二预测播放时间和所述异常反馈确定出所述同步播放时间;或者,
当所述至少两个蓝牙设备为两个时,若自身不具备预设的正常播放条件,且在当前的所述预备播放时间之前接收到另一个蓝牙设备发送的第二预测播放时间,且所述另一个蓝牙设备发送的第二预测播放时间在当前的所述预备播放时间之后,则自身不生成第二预测播放时间,而是将收到的另一个蓝牙设备发送的第二预测播放时间确定为所述同步播放时间。
可选的,根据所述异常反馈确定出所述同步播放时间,包括:
所述蓝牙设备从接收到的所有第二预测播放时间中,选择最大的第二预测播放时间,作为所述同步播放时间;或者,
当所述至少两个蓝牙设备为两个时,所述蓝牙设备接收到另一个蓝牙设备发送的第二预测播放时间,并将所述第二预测播放时间作为所述同步播放时间。
可选的,当自身不具备预设的正常播放条件时,确定自身的第二预测播放时间,包括:
所述蓝牙设备将所述当前的预备播放时间与预设的第二偏移时间之和,确定为所述第二预测播放时间,其中所述第二预测播放时间大于当前的预备播放时间;或者,
所述蓝牙设备将所述第一预测播放时间与预设的第三偏移时间之和,确定为所述第二预测播放时间,其中所述第二预测播放时间大于当前的预备播放时间;或者,
所述蓝牙设备将所述基准蓝牙时间与预设的第四偏移时间之和,确定为所述第二预测播放时间,其中所述第二预测播放时间大于当前的预备播放时间。
可选的,根据所述第二预测播放时间和所述异常反馈确定出所述同步播放时间,包括:
所述蓝牙设备从自身的所述第二预测播放时间和收到的第二预测播放时间中,选择最大的第二预测播放时间作为同步播放时间;或者,
当所述至少两个蓝牙设备为两个时,所述蓝牙设备将接收到的另一个蓝牙设备发送的第二预测播放时间,与自身的所述第二预测播放时间之中取值较大的一方,确定为所述同步播放时间。
第二方面,本申请实施例提供了一种控制蓝牙设备播放的装置,包括至少两个同步接收音源设备发送的音频数据的蓝牙设备,其中任一所述蓝牙设备包括:
收发单元,用于同步接收所述音源设备发送的音频数据;
确定单元,用于确定基准蓝牙时间,并基于所述基准蓝牙时间,确定第一预测播放时间,根据所述第一预测播放时间确定同步播放时间;
播放单元,用于按照所述同步播放时间播放所述音频数据。
可选的,同步接收音源设备发送的音频数据,所述收发单元用于:
与所述音源设备建立蓝牙连接,并接收所述音源设备发送的所述音频数据;其他蓝牙设备通过预设的第一蓝牙链路,同步接收所述音源设备发送的所述音频数据,其中,当所述至少两个蓝牙设备为两个时,通过与所述音源设备建立第一蓝牙连接接收所述音频数据;另一个蓝牙设备通过监听所述第一蓝牙连接或与所述音源设备建立第二蓝牙连接来同步接收所述音频数据;或者,
同步接收由所述音源设备蓝牙广播的所述音频数据。
可选的,确定基准蓝牙时间,所述确定单元用于:
将同步接收到所述音频数据的蓝牙时钟,确定为所述基准蓝牙时间;和/或
所述基于所述基准蓝牙时间,确定第一预测播放时间,所述确定单元用于:获取预设的第一偏移时间,并将所述基准蓝牙时间与所述第一偏移时间之和,确定为所述第一预测播放时间。
可选的,根据所述第一预测播放时间确定同步播放时间,所述确定单元用于:
将所述第一预测播放时间确定为所述同步播放时间;或者,
基于所述第一预测播放时间,判断自身是否具备预设的正常播放条件,且判断是否接收到其他蓝牙设备的异常反馈,并生成判断结果,根据所述判断结果确定所述同步播放时间;
基于所述第一预测播放时间,判断自身是否具备预设的正常播放条件,所述确定单元用于:
判断自身当前的预备播放时间是否未超过所述第一预测播放时间;
若是,则判定具备正常播放条件;
否则,判定不具备正常播放条件。
可选的,是否接收到其他蓝牙设备的异常反馈,所述确定单元用于:
所述至少两个蓝牙设备之间存在第二蓝牙链路,若通过所述第二蓝牙链路,接收到至少一个其他蓝牙设备发送的自身的第二预测播放时间,则确定收到所述其他蓝牙设备的异常反馈;
否则,确定未接收所述其他蓝牙设备的异常反馈。
可选的,根据所述判断结果确定所述同步播放时间,所述确定单元用于:
当自身具备正常播放条件,且未收到所述其他蓝牙设备的异常反馈时,将所述第一预测播放时间确定为所述同步播放时间;或者,
当自身具备正常播放条件,且收到所述其他蓝牙设备的异常反馈时,根据所述异常反馈确定出所述同步播放时间;或者,
当自身不具备预设的正常播放条件时,确定自身的第二预测播放时间,并将所述第二预测播放时间发送至所述其他蓝牙设备,且未接收到所述其他蓝牙设备的异常反馈,则将所述第二预测播放时间确定为所述同步播放时间;或者,当自身不具备预设的正常播放条件时,确定自身的第二预测播放时间,并将所述第二预测播放时间发送至所述其他蓝牙设备,且接收到所述其他蓝牙设备的异常反馈,则根据所述第二预测播放时间和所述异常反馈确定出所述同步播放时间;或者,
当所述至少两个蓝牙设备为两个时,若自身不具备预设的正常播放条件,且在当前的所述预备播放时间之前接收到另一个蓝牙设备发送的第二预测播放时间,且所述另一个蓝牙设备发送的第二预测播放时间在当前的所述预备播放时间之后,则自身不生成第二预测播放时间,而是将收到的另一个蓝牙设备发送的第二预测播放时间确定为所述同步播放时间。
可选的,根据所述异常反馈确定出所述同步播放时间,所述确定单元用于:
所述蓝牙设备从接收到的所有第二预测播放时间中,选择最大的第二预测播放时间,作为所述同步播放时间;或者,
当所述至少两个蓝牙设备为两个时,所述蓝牙设备接收到另一个蓝牙设备发送的第二预测播放时间,并将所述第二预测播放时间作为所述同步播放时间;或者,
当自身不具备预设的正常播放条件时,确定自身的第二预测播放时间,所述确定单元用于:
将所述当前的预备播放时间与预设的第二偏移时间之和,确定为所述第二预测播放时间,其中所述第二预测播放时间大于当前的预备播放时间;或者,将所述第一预测播放时间与预设的第三偏移时间之和,确定为所述第二预测播放时间,其中所述第二预测播放时间大于当前的预备播放时间;或者,
将所述基准蓝牙时间与预设的第四偏移时间之和,确定为所述第二预测播放时间,其中所述第二预测播放时间大于当前的预备播放时间;或者,
根据所述第二预测播放时间和所述异常反馈确定出所述同步播放时间,所述确定单元用于:
从自身的所述第二预测播放时间和收到的第二预测播放时间中,选择最大的第二预测播放时间作为同步播放时间;或者,
当所述至少两个蓝牙设备为两个时,将接收到的另一个蓝牙设备发送的第二预测播放时间,与自身的所述第二预测播放时间之中取值较大的一方,确定为所述同步播放时间。
第三方面,本申请实施例提供了一种蓝牙设备,包括:,
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行以上任一项所述的方法。
第四方面,本申请实施例提供了一种存储介质,包括计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行以上任一项所述的方法。
本发明有益效果如下:
本发明实施例中,至少两个蓝牙设备同步接收音源设备发送的音频数据,每个蓝牙设备确定基准蓝牙时间,并基于该基准蓝牙时间确定第一预测播放时间,每个蓝牙设备根据第一预测播放时间确定同步播放时间,并按照同步播放时间播放音频数据。这样,可以在各个蓝牙设备不交互的前提下,根据第一预测播放时间确定同步播放时间,进而保证蓝牙设备播放的实时性与同步性。
附图说明
图1为本发明实施例提供的一种控制蓝牙设备播放的流程示意图;
图2为本发明实施例提供的一种控制蓝牙设备播放装置的结构示意图;
图3为本发明实施例提供的一种蓝牙设备的结构示意图。
具体实施方式
针对两个或两个以上蓝牙设备在初始播放时,容易出现播放不同步与实时性差的问题,本申请实施例提供了一种新的技术方案,该方案包括,至少两个蓝牙设备同步接收音源设备发送的音频数据,每个蓝牙设备确定基准蓝牙时间,并基于该基准蓝牙时间确定第一预测播放时间,每个蓝牙设备根据第一预测播放时间确定同步播放时间,并按照同步播放时间播放音频数据。
需要说明的是,本申请中的实施例、实施方式及其技术特征在不冲突的情况下可以相互组合,实施例中的具体步骤仅为举例不做限制,在不冲突的情况下,可以调整。
如图1所示,控制蓝牙设备进行初始播放的过程具体如下:
S101:至少两个蓝牙设备同步接收音源设备发送的音频数据。
在本申请实施例中,至少两个蓝牙设备可采用以下两种方式之一,来接收音源设备发送的音频数据,具体的:
一种方式是,在至少两个蓝牙设备中,一个蓝牙设备与音源设备建立蓝牙连接,并接收音源设备发送的音频数据,其他蓝牙设备通过预设的第一蓝牙链路,同步接收音源设备发送的所述音频数据。
其中,蓝牙链路可以是基于蓝牙连接的蓝牙通信链路,也可以是基于无线连接的蓝牙通信链路。例如,基于蓝牙监听技术的蓝牙通信链路,蓝牙监听技术类似于蓝牙规范中安全部分提到的侦听(eavesdropping),通过获取被监听蓝牙链路的蓝牙时钟等通信信息,实现同步监听某个蓝牙设备与音源设备之间蓝牙链路的数据传输,以使得监听的蓝牙设备与该某个蓝牙设备同步从该音源设备获取音频数据,由于各家的设计可能因为蓝牙硬件设计等的不同存在差异,因此,本申请不限定具体的实现方式。
当为两个蓝牙设备时,一个蓝牙设备通过与音源设备建立第一蓝牙连接,并基于第一蓝牙连接接收音频数据,另一个蓝牙设备通过监听第一蓝牙连接,或者与音源设备建立第二蓝牙连接的方式,来同步接收音频数据。
另一种方式是,至少两个蓝牙设备接收由音源设备蓝牙广播的音频数据。蓝牙广播可以是基于无连接从属广播(Connectionless Slave Broadcast,CSB)协议的蓝牙广播,也可以是基于蓝牙低功耗(Bluetooth Low Energy,BLE)协议的蓝牙广播,当然也可以是在CSB协议或者BLE协议的基础上,进行修改调整后的蓝牙广播。由于蓝牙广播一般不限定接收设备的数量,因此对于两个以上的蓝牙设备的同步播放,也具有良好的适用性。
需要说明的是,本申请实施例中所提及的蓝牙设备指的是具有蓝牙连接的播放设备,如蓝牙耳机、蓝牙音箱等;本申请实施例中所提及的音频数据可以是音乐,也可以是视频、文字转语音等需要同步播放的数据,以上均属于本申请的等同保护范围。
S102:各个蓝牙设备确定基准蓝牙时间,并基于该基准蓝牙时间,确定第一预测播放时间。
在本申请实施例中,蓝牙设备可以采用多种方式确定基准蓝牙时间,但为了保证各个蓝牙设备所确定的基准蓝牙时间相同,以及保证确定基准蓝牙时间的实时性,在本申请实施例中优先采用下述方式,让各个蓝牙设备确定出统一的基准蓝牙时间:
各个蓝牙设备将同步接收到音频数据的蓝牙时钟,确定为基准蓝牙时间。这里的音频数据一般是指,各个蓝牙设备首次同步接收到的音频数据。
处于同一蓝牙匹克网的各个蓝牙设备,会将各自的蓝牙时钟调整为统一的蓝牙时钟,正常情况下,各个蓝牙设备是同时接收到音源设备发送的音频数据的,这样,各个蓝牙设备接收到该音频数据时的蓝牙时钟是同一时刻,也就是说,各个蓝牙设备所确定的基准蓝牙时间是相同的。
以一个蓝牙设备为例,一个蓝牙设备基于基准蓝牙时间,确定第一预测播放时间的过程具体如下:
首先,该蓝牙设备获取预设的第一偏移时间。
其中,第一偏移时间是指蓝牙设备自接收到音频数据到预测开始播放音频数据的预期播放准备时间。若第一偏移时间设置过大,会出现蓝牙设备中缓存的音频数据过多,以及蓝牙设备播放延时过大的情况,影响蓝牙设备播放的实时性;若第一偏移时间设置过小,可能蓝牙设备还未准备好播放音频数据,导致蓝牙设备播放异常,影响蓝牙设备播放的稳定性,因此,为了兼顾蓝牙设备播放的实时性与稳定性,经过多次调试,将设置一个恰当的时间值作为第一偏移时间。
然后,根据基准蓝牙时间和第一偏移时间确定出第一预测播放时间;
优选地,该蓝牙设备将基准蓝牙时间与第一偏移时间之和,确定为第一预测播放时间。
例如,蓝牙耳机接收到音频数据时的基准蓝牙时间是700ms,预设的第一偏移时间是300ms,则确定出的第一预测播放时间是1000ms。
由于各个蓝牙设备所确定的基准蓝牙时间是同一蓝牙时钟,以及各个蓝牙设备获取同一个第一偏移时间,进而各个蓝牙设备所确定的第一预测播放时间也是同一时间,由此保证了各个蓝牙设备按照第一预测播放时间播放音频数据时的同步性与实时性。除此之外,还可以基于基准蓝牙时间和其他计算公式,去计算得到第一预测播放时间,均在本申请的保护范围。例如,在基准蓝牙时间的基础上,乘以一个预设值,乘积结果为第一预测播放时间。
S103:各个蓝牙设备根据第一预测播放时间,确定同步播放时间。
需要说明的是,同步播放时间是指各个蓝牙设备初始同步播放的时间。具体地,在根据第一预测播放时间,确定同步播放时间时至少可分为以下两种情况:
第一种情况:直接将第一预测播放时间确定为同步播放时间。
通常会设置一个合适的第一偏移时间,使得各个蓝牙设备有充分的预备播放时间,因此各个蓝牙设备无需先判断自身是否具备正常播放条件,而是直接将第一预测播放时间确定为同步播放时间,进而保证各个蓝牙设备实现同步播放音频数据的功能。该情况相比现有技术实时性更好,可以快速启动同步播放。
第二种情况:各个蓝牙设备基于第一预测播放时间,判断自身是否具备预设的正常播放条件,且判断是否接收到其他蓝牙设备的异常反馈,并生成判断结果,根据该判断结果确定同步播放时间。
在第二种情况下,各个蓝牙设备均需要基于第一预测播放时间,判断自身是否具备正常播放条件。以一个蓝牙设备为例,该蓝牙设备判断自身当前的预备播放时间,是否未超过第一预测播放时间,若是,则判定该蓝牙设备具备正常播放条件;否则,判定该蓝牙设备不具备正常播放条件。需要说明的是,当前的预备播放时间是指蓝牙设备对收到的音频数据进行解包等处理后达到播放条件的时间点,因为不同的蓝牙设备在进行上述处理上可能存在差异,从而导致各蓝牙设备的当前的预备播放时间存在差别。
例如,第一预测播放时间是1000ms,蓝牙耳机A当前的预备播放时间是700ms,蓝牙耳机B当前的预备播放时间是500ms,两个蓝牙耳机当前的预备播放时间均小于1000ms,则判定两个蓝牙耳机均具备正常播放条件。
又例如,第一预测播放时间是1000ms,蓝牙耳机A当前的预备播放时间是700ms,蓝牙耳机B当前的预备播放时间是1200ms,蓝牙耳机A的当前预备播放时间小于1000ms,蓝牙耳机B当前的预备播放时间大于1000ms,则判定蓝牙耳机A具备正常播放条件,而蓝牙耳机B不具备正常播放条件。
同时,若接收到至少一个其他蓝牙设备发送的自身的第二预测播放时间,则确定收到其他蓝牙设备的异常反馈;否则,确定未接收其他蓝牙设备的异常反馈。
需要说明的是,各个蓝牙设备之间存在第二蓝牙链路,所述蓝牙设备通过第二蓝牙链路接收其他蓝牙设备的异常反馈,所述第二蓝牙链路可以是基于蓝牙连接的通信链路,可以是基于蓝牙无连接的通信链路。
因此,在第二种情况下,还可细分为以下四类情形:
情形Ⅰ:当自身具备正常播放条件,且未收到其他蓝牙设备的异常反馈时,将第一预测播放时间确定为同步播放时间。
例如,第一预测播放时间是1000ms,蓝牙音箱A当前的预备播放时间是400ms,蓝牙音箱B当前的预备播放时间是500ms,两个蓝牙音箱当前的预备播放时间均小于1000ms,则判定两个蓝牙音箱均具备正常播放条件,因此,两个设备自身均具备正常播放条件,从而不会反馈异常也不会收到对方反馈的异常,两个蓝牙音箱确定同步播放时间为1000ms。
情形Ⅱ:当自身具备正常播放条件,且收到其他蓝牙设备的异常反馈时,根据异常反馈确定出同步播放时间。
进一步地,当接收到其他蓝牙设备自身的第二预测播放时间时,该蓝牙设备从收到的所有第二预测播放时间中,选择最大的第二预测播放时间作为同步播放时间;
或者,当所述至少两个蓝牙设备为两个时,蓝牙设备接收到另一个蓝牙设备发送的第二预测播放时间,并将所述第二预测播放时间的作为同步播放时间。
例如,第一预测播放时间是1000ms,蓝牙音箱A具备正常播放条件,而且收到了蓝牙音箱B发送的第二预测播放时间1200ms,则蓝牙音箱A将同步播放时间确定为1200ms,两个蓝牙音箱会在1200ms时同时播放音频数据。
情形Ⅲ:当自身不具备预设的正常播放条件时,确定自身的第二预测播放时间,并将第二预测播放时间发送至其他蓝牙设备,且未接收到其他蓝牙设备的异常反馈,则将第二预测播放时间确定为同步播放时间。
关于如何确定第二预测播放时间,有以下多种方式,具体地:
方式一,蓝牙设备将当前的预备播放时间与预设的第二偏移时间之和,确定为第二预测播放时间。由于预备播放时间必须在蓝牙设备准备完成后才能确定,也就是说在到达预备播放时间时生成第二预测播放时间是最可靠的,否则可能无法保障第二预测播放时间大于当前预备播放时间。
方式二,蓝牙设备将第一预测播放时间与预设的第三偏移时间之和,确定为第二预测播放时间,其中第二预测播放时间大于当前的预备播放时间。因为各蓝牙设备都生成了一个相同的第一预测播放时间,且该第一预测播放时间比当前的预备播放时间小,因此基于第一预测播放时间,生成第二预测播放时间,以使该第二预测播放时间大于当前的预备播放时间。
方式三,所述蓝牙设备将所述基准蓝牙时间与预设的第四偏移时间之和,确定为第二预测播放时间,其中第二预测播放时间大于当前的预备播放时间。
需要说明的是,第二偏移时间、第三偏移时间及第四偏移时间可以是预设增量,也可以是计算获取的新的增量。每个蓝牙设备其自身的第二偏移时间、第三偏移时间、第四偏移时间可能与其他蓝牙设备的第二偏移时间、第三偏移时间、第四偏移时间是不同的。
下面通过举例进一步说明,假设一个蓝牙设备(以下简称为蓝牙耳机C)不具备正常播放条件,而另一个蓝牙设备(以下简称为蓝牙耳机D)具备正常播放条件,那么,两个蓝牙耳机协商确定同步播放时间的过程具体如下:
A1、蓝牙耳机C在当前的预备播放时间800ms上添加第二偏移时间300ms,生成第二预测播放时间1100ms。
A2、蓝牙耳机C将第二预测播放时间发送至蓝牙耳机D中;
A3、蓝牙耳机D将第二预测播放时间,作为同步播放时间。
情形Ⅳ:自身不具备预设的正常播放条件时,确定第二预测播放时间,并将第二预测播放时间发送至其他蓝牙设备,且接收到其他蓝牙设备的异常反馈,则根据第二预测播放时间和异常反馈确定出同步播放时间。
进一步地,蓝牙设备从自身的第二预测播放时间和收到的第二预测播放时间中,选择最大的第二预测播放时间作为同步播放时间;
或者,当至少两个蓝牙设备为两个时,蓝牙设备将接收到的另一个蓝牙设备发送的第二预测播放时间,与自身的第二预测播放时间之中取值较大的一方,确定为所述同步播放时间。
假设蓝牙耳机C不具备正常播放条件,蓝牙耳机D也不具备正常播放条件,那么,两个蓝牙耳机协商确定同步播放时间的过程具体如下:
B1、蓝牙耳机C和蓝牙耳机D分别生成第二预测播放时间;
B2、蓝牙耳机C和蓝牙耳机D将自身的第二预测播放时间发送给对方;
B3、各个蓝牙耳机将自身的第二预测播放时间,与接收到的对方的第二预测播放时间之中取值较大的一方,确定为同步播放时间;
B4、同时按照该同步播放时间播放音频。
即使两个蓝牙耳机同一时刻接收到音频数据,但是受解码速度等因素的影响,两个蓝牙耳机被判定为不具备正常播放条件的时刻可能是不同的,以及两个蓝牙耳机所选取的增量也可能是不同的,最终导致两个蓝牙耳机自身的第二预测播放时间可能是不同的。
例如,蓝牙耳机C当前的蓝牙时钟为1100ms,蓝牙耳机D当前的蓝牙时钟为1200ms,预设增量均为600ms,这样,蓝牙耳机C自身的第二预测播放时间为1700ms,蓝牙耳机D自身的第二预测播放时间为1800ms;
经过比较,蓝牙耳机C所确定的同步播放时间为1800ms,蓝牙耳机D所确定的同步播放时间也为1800ms,因此,蓝牙耳机C、D协商出的同步播放时间为1800ms。
又例如,蓝牙耳机C当前的蓝牙时钟为1100ms,预设增量为300ms;蓝牙耳机D当前的蓝牙时钟为1200ms,预设增量为400ms,这样,蓝牙耳机C自身的第二预测播放时间是1400ms,蓝牙耳机D自身的第二预测播放时间是1600ms;
经过比较,蓝牙耳机C所确定的同步播放时间为1600ms,蓝牙耳机D所确定的同步播放时间也为1600ms,因此,蓝牙耳机C、D协商出同步在蓝牙时钟对应1600ms时进行同步播放。
进一步地,在情形Ⅳ中,当至少两个蓝牙设备为两个时,若自身不具备预设的正常播放条件,且在当前的预备播放时间之前接收到另一个蓝牙设备发送的第二预测播放时间,且所述另一个蓝牙设备发送的第二预测播放时间在当前的所述预备播放时间之后,则自身不生成第二预测播放时间,而是将收到的另一个蓝牙设备发送的第二预测播放时间确定为所述同步播放时间。
下面通过举例进一步说明,假设确定的第一预测播放时间是1000ms,在蓝牙耳机A到达当前的预备播放时间1100ms时,由于1100ms已超过1000ms,则生成自身的第二预测播放时间为1400ms,并发送给蓝牙设备B。
假设蓝牙耳机B在1200ms时接收到蓝牙耳机A的第二预测播放时间1400ms,当蓝牙耳机B当前的预备播放时间1300ms到达时,可以判断1300ms小于1400ms,因此,蓝牙耳机B将1400ms作为同步播放时间。
而蓝牙耳机A因为没有收到蓝牙耳机B反馈的第二预测播放时间,因此将自身的第二预测播放时间1400ms作为同步播放时间,从而实现二者的同步开始播放。该方法可以减少蓝牙耳机B生成和发送自身的第二预测播放的操作。
在第二种情况下,各个蓝牙设备之间一开始不需要通过握手交互的方式来传递同步播放时间,只要各个蓝牙设备独立地判定自身具备正常播放条件时,直接按照第一预测播放时间,同步播放音频数据,这样在保障了实时性和同步性的基础上,对蓝牙广播等接收设备间不交互的应用场景更友好。若至少一个蓝牙设备出现异常播放的情况,各个蓝牙设备间将进行协商,重新确定新的同步播放时间,考虑到了异常情况下的处理,进一步保障了设备同步播放的可靠性。
S104:各个蓝牙设备按照同步播放时间,播放音频数据。
具体的,各个蓝牙设备分别执行上述步骤101-步骤103,可以直接将第一预测播放时间确定为同步播放时间,也可以在确定各个蓝牙设备均具备正常播放条件时,将第一预测播放时间确定为同步播放时间;否则,各个蓝牙设备将进行协商,重新确定同步播放时间,并按照同步播放时间,开始同步播放音频数据。这样,多个蓝牙设备在不交互同步播放时间的前提下,保证了播放同步性与实时性;又可以在此基础上增加交互模式,保障在第一预测播放时间不满足需求的情况下,能够通过交互协商来确定新的同步播放时间。
基于同一发明构思,本发明实施例中,提供一种控制蓝牙设备播放的装置,参阅图2所示,包括至少两个同步接收音源设备发送的音频数据的蓝牙设备,任一所述蓝牙设备包括:
收发单元201,用于同步接收所述音源设备发送的音频数据;
确定单元202,用于确定基准蓝牙时间,并基于所述基准蓝牙时间,确定第一预测播放时间,根据所述第一预测播放时间确定同步播放时间;
播放单元203,用于按照所述同步播放时间播放所述音频数据。
可选的,同步接收音源设备发送的音频数据,所述收发单元201用于:
与所述音源设备建立蓝牙连接,并接收所述音源设备发送的所述音频数据,其他蓝牙设备通过预设的第一蓝牙链路,同步接收所述音源设备发送的所述音频数据,其中,当所述至少两个蓝牙设备为两个时,通过与所述音源设备建立第一蓝牙连接接收所述音频数据,另一个蓝牙设备通过监听所述第一蓝牙连接或与所述音源设备建立第二蓝牙连接来同步接收所述音频数据;或者,
接收由所述音源设备蓝牙广播的所述音频数据。
可选的,确定基准蓝牙时间,所述确定单元202用于:
将同步接收到所述音频数据的蓝牙时钟,确定为所述基准蓝牙时间;和/或,
所述基于所述基准蓝牙时间,确定第一预测播放时间,所述确定单元202用于:获取预设的第一偏移时间,并将所述基准蓝牙时间与所述第一偏移时间之和,确定为所述第一预测播放时间。
可选的,根据所述第一预测播放时间确定同步播放时间,所述确定单元202用于:
将所述第一预测播放时间确定为所述同步播放时间;或者,
基于所述第一预测播放时间,判断自身是否具备预设的正常播放条件,且判断是否接收到其他蓝牙设备的异常反馈,并生成判断结果,根据所述判断结果确定所述同步播放时间;
基于所述第一预测播放时间,判断自身是否具备预设的正常播放条件,所述确定单元202用于:
判断自身当前的预备播放时间是否未超过所述第一预测播放时间;
若是,则判定具备正常播放条件;
否则,判定不具备正常播放条件。
可选的,是否接收到其他蓝牙设备的异常反馈,所述确定单元202用于:
所述至少两个蓝牙设备之间存在第二蓝牙链路,若通过所述第二蓝牙链路,接收到至少一个其他蓝牙设备发送的自身的第二预测播放时间,则确定收到所述其他蓝牙设备的异常反馈;
否则,确定未接收所述其他蓝牙设备的异常反馈。
可选的,根据所述判断结果确定所述同步播放时间,所述确定单元202用于:
当自身具备正常播放条件,且未收到所述其他蓝牙设备的异常反馈时,将所述第一预测播放时间确定为所述同步播放时间;或者,
当自身具备正常播放条件,且收到所述其他蓝牙设备的异常反馈时,根据所述异常反馈确定出所述同步播放时间;或者,
当自身不具备预设的正常播放条件时,确定自身的第二预测播放时间,并将所述第二预测播放时间发送至所述其他蓝牙设备,且未接收到所述其他蓝牙设备的异常反馈,则将所述第二预测播放时间确定为所述同步播放时间;或者,当自身不具备预设的正常播放条件时,确定自身的第二预测播放时间,并将所述第二预测播放时间发送至所述其他蓝牙设备,且接收到所述其他蓝牙设备的异常反馈,则根据所述第二预测播放时间和所述异常反馈确定出所述同步播放时间;或者,
当所述至少两个蓝牙设备为两个时,若自身不具备预设的正常播放条件,且在当前的所述预备播放时间之前接收到另一个蓝牙设备发送的第二预测播放时间,且所述另一个蓝牙设备发送的第二预测播放时间在当前的所述预备播放时间之后,则自身不生成第二预测播放时间,而是将收到的另一个蓝牙设备发送的第二预测播放时间确定为所述同步播放时间。
可选的,根据所述异常反馈确定出所述同步播放时间,所述确定单元202用于:
所述蓝牙设备从接收到的所有第二预测播放时间中,选择最大的第二预测播放时间,作为所述同步播放时间;或者,
当所述至少两个蓝牙设备为两个时,所述蓝牙设备接收到另一个蓝牙设备发送的第二预测播放时间,并将所述第二预测播放时间作为所述同步播放时间;或者,
当自身不具备预设的正常播放条件时,确定自身的第二预测播放时间,所述确定单元202用于:
将所述当前的预备播放时间与预设的第二偏移时间之和,确定为所述第二预测播放时间,其中所述第二预测播放时间大于当前的预备播放时间;或者,将所述第一预测播放时间与预设的第三偏移时间之和,确定为所述第二预测播放时间,其中所述第二预测播放时间大于当前的预备播放时间;或者,
将所述基准蓝牙时间与预设的第四偏移时间之和,确定为所述第二预测播放时间,其中所述第二预测播放时间大于当前的预备播放时间;或者,
根据所述第二预测播放时间和所述异常反馈确定出所述同步播放时间,所述确定单元202用于:
从自身的所述第二预测播放时间和收到的第二预测播放时间中,选择最大的第二预测播放时间作为同步播放时间;或者,
当所述至少两个蓝牙设备为两个时,将接收到的另一个蓝牙设备发送的第二预测播放时间,与自身的所述第二预测播放时间之中取值较大的一方,确定为所述同步播放时间。
基于同一发明构思,本发明实施例中,提供一种蓝牙设备,参阅图3所示,至少包括存储器301和处理器302,其中,存储器301和处理器302通过通信总线完成相互间的通信;
存储器301,用于存储程序指令;
处理器302,用于执行前述实施例中的任一项方法步骤,包括但不限于:
确定基准蓝牙时间,并基于所述基准蓝牙时间,确定第一预测播放时间;
根据所述第一预测播放时间确定同步播放时间,并按照所述同步播放时间播放所述音频数据。
基于同一发明构思,本发明实施例中,提供一种存储介质,包括计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行前述实施例中的任一项方法步骤,至少包括以下操作:
至少两个蓝牙设备同步接收音源设备发送的音频数据;
蓝牙设备为所述至少两个蓝牙设备中的任一个,所述蓝牙设备执行以下操作:
确定基准蓝牙时间,并基于所述基准蓝牙时间,确定第一预测播放时间;
根据所述第一预测播放时间确定同步播放时间,并按照所述同步播放时间播放所述音频数据。
综上所述,本申请实施例中,至少两个蓝牙设备同步接收音源设备发送的音频数据,每个蓝牙设备确定基准蓝牙时间,并基于该基准蓝牙时间确定第一预测播放时间,每个蓝牙设备根据第一预测播放时间确定同步播放时间,并按照同步播放时间播放音频数据。
在本申请实施例中,各个蓝牙设备可以不再区分为主设备与从设备,不需要主设备将音频数据与包含同时播放该音频数据的同步播放时间转发到从设备上,而是采用监听技术或者蓝牙广播技术,使得各个蓝牙设备同时接收到音频数据,保证了蓝牙设备接收数据的实时性。正常情况下,由于各个蓝牙设备是同时接收到音源设备发送的音频数据的,因此,各个蓝牙设备所确定的基准蓝牙时间为同一个蓝牙时钟,基于同一基准蓝牙时间确定出相同的第一预测播放时间;这样,在各个蓝牙设备不交互同步信息的前提下,每个蓝牙耳机可以根据第一预测播放时间,确定最终的同步播放时间,并按照同步播放时间,同时播放音频数据,进而保证蓝牙设备播放的实时性与同步性。进一步的,为了保障第一预测播放时间不满足某些蓝牙设备播放条件时引发的播放不正常问题,可以在此基础上再增加一个协商机制,从而既保障了初始播放的实时性,又保证了初始播放的同步性,因此效果更好。当然还可以在进行了一轮协商后进一步协商等,但都是在本发明的基础上进行的,因此属于本发明的保护范围。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (17)
1.一种控制蓝牙设备播放的方法,其特征在于,包括:
至少两个蓝牙设备同步接收音源设备发送的音频数据;
蓝牙设备为所述至少两个蓝牙设备中的任一个,所述蓝牙设备执行以下操作:
确定基准蓝牙时间,并基于所述基准蓝牙时间,确定第一预测播放时间;
当所述蓝牙设备自身当前的预备播放时间未超过所述第一预测播放时间,且未收到其他蓝牙设备发送的第二预测播放时间时,将所述第一预测播放时间作为同步播放时间;
当所述蓝牙设备自身当前的预备播放时间未超过所述第一预测播放时间,且接收到所述其他蓝牙设备发送的第二预测播放时间时,从收到的所有第二预测播放时间中,选择最大的第二预测播放时间作为所述同步播放时间;
当所述蓝牙设备自身当前的预备播放时间超过所述第一预测播放时间时,确定自身的第二预测播放时间,并将所述第二预测播放时间发送至所述其他蓝牙设备中,在未收到所述其他蓝牙设备发送自身的第二预测播放时间时,将所述蓝牙设备自身的第二预测播放时间作为所述同步播放时间;
当所述蓝牙设备自身当前的预备播放时间超过所述第一预测播放时间时,确定自身的第二预测播放时间,并将所述第二预测播放时间发送至所述其他蓝牙设备中,在收到所述其他蓝牙设备发送自身的第二预测播放时间时,根据所述蓝牙设备自身的第二预测播放时间与所述其他蓝牙设备自身的第二预测播放时间,确定所述同步播放时间;其中,所述当前的预备播放时间是所述蓝牙设备对接收的所述音频数据进行处理后,达到正常播放条件的时间点,所述至少两个蓝牙设备各自的预备播放时间是不同的;
按照所述同步播放时间播放音频数据。
2.如权利要求1所述的方法,其特征在于,至少两个蓝牙设备同步接收音源设备发送的音频数据,包括:
在所述至少两个蓝牙设备中,一个蓝牙设备与所述音源设备建立蓝牙连接,并接收所述音源设备发送的所述音频数据,其他蓝牙设备通过预设的第一蓝牙链路,同步接收所述音源设备发送的所述音频数据,其中,当所述至少两个蓝牙设备为两个时,一个蓝牙设备通过与所述音源设备建立第一蓝牙连接接收所述音频数据,另一个蓝牙设备通过监听所述第一蓝牙连接或与所述音源设备建立第二蓝牙连接来同步接收所述音频数据;或者,
所述至少两个蓝牙设备同步接收由所述音源设备蓝牙广播的所述音频数据。
3.如权利要求1所述的方法,其特征在于,所述确定基准蓝牙时间,包括:
将所述蓝牙设备同步接收到所述音频数据对应的蓝牙时钟,确定为所述基准蓝牙时间;和/或,
所述基于所述基准蓝牙时间,确定第一预测播放时间包括:所述蓝牙设备获取预设的第一偏移时间,并将所述基准蓝牙时间与所述第一偏移时间之和,确定为所述第一预测播放时间。
4.如权利要求1-3任一项所述的方法,其特征在于,所述至少两个蓝牙设备之间存在第二蓝牙链路。
5.如权利要求1所述的方法,其特征在于,还通过执行以下操作,确定所述同步播放时间:
当所述至少两个蓝牙设备为两个时,若自身不具备预设的正常播放条件,且在当前的所述预备播放时间之前接收到另一个蓝牙设备发送的第二预测播放时间,且所述另一个蓝牙设备发送的第二预测播放时间在当前的所述预备播放时间之后,则自身不生成第二预测播放时间,而是将收到的另一个蓝牙设备发送的第二预测播放时间确定为所述同步播放时间。
6.如权利要求5所述的方法,其特征在于,根据异常反馈确定出所述同步播放时间,包括:
当所述至少两个蓝牙设备为两个时,所述蓝牙设备接收到另一个蓝牙设备发送的第二预测播放时间,并将所述第二预测播放时间作为所述同步播放时间。
7.如权利要求5所述的方法,其特征在于,当所述蓝牙设备自身当前的预备播放时间超过所述第一预测播放时间时,确定自身的第二预测播放时间,包括:
所述蓝牙设备将所述当前的预备播放时间与预设的第二偏移时间之和,确定为所述第二预测播放时间,其中所述第二预测播放时间大于当前的预备播放时间;或者,
所述蓝牙设备将所述第一预测播放时间与预设的第三偏移时间之和,确定为所述第二预测播放时间,其中所述第二预测播放时间大于当前的预备播放时间;或者,
所述蓝牙设备将所述基准蓝牙时间与预设的第四偏移时间之和,确定为所述第二预测播放时间,其中所述第二预测播放时间大于当前的预备播放时间。
8.如权利要求1所述的方法,其特征在于,根据所述蓝牙设备自身的第二预测播放时间与所述其他蓝牙设备自身的第二预测播放时间,确定所述同步播放时间,包括:
所述蓝牙设备从自身的所述第二预测播放时间和收到的第二预测播放时间中,选择最大的第二预测播放时间作为同步播放时间;或者,
当所述至少两个蓝牙设备为两个时,所述蓝牙设备将接收到的另一个蓝牙设备发送的第二预测播放时间,与自身的所述第二预测播放时间之中取值较大的一方,确定为所述同步播放时间。
9.一种控制蓝牙设备播放的装置,其特征在于,包括至少两个同步接收音源设备发送的音频数据的蓝牙设备,其中任一所述蓝牙设备包括:
收发单元,用于同步接收所述音源设备发送的音频数据;
确定单元,用于确定基准蓝牙时间,并基于所述基准蓝牙时间,确定第一预测播放时间;
当所述蓝牙设备自身当前的预备播放时间未超过所述第一预测播放时间,且未收到其他蓝牙设备发送的第二预测播放时间时,将所述第一预测播放时间作为同步播放时间;
当所述蓝牙设备自身当前的预备播放时间未超过所述第一预测播放时间,且接收到所述其他蓝牙设备发送的第二预测播放时间时,从收到的所有第二预测播放时间中,选择最大的第二预测播放时间作为所述同步播放时间;
当所述蓝牙设备自身当前的预备播放时间超过所述第一预测播放时间时,确定自身的第二预测播放时间,并将所述第二预测播放时间发送至所述其他蓝牙设备中,在未收到所述其他蓝牙设备发送自身的第二预测播放时间时,将所述蓝牙设备自身的第二预测播放时间作为所述同步播放时间;
当所述蓝牙设备自身当前的预备播放时间超过所述第一预测播放时间时,确定自身的第二预测播放时间,并将所述第二预测播放时间发送至所述其他蓝牙设备中,在收到所述其他蓝牙设备发送自身的第二预测播放时间时,根据所述蓝牙设备自身的第二预测播放时间与所述其他蓝牙设备自身的第二预测播放时间,确定所述同步播放时间;其中,所述当前的预备播放时间是所述蓝牙设备对接收的所述音频数据进行处理后,达到正常播放条件的时间点,所述至少两个蓝牙设备各自的预备播放时间是不同的;
播放单元,用于按照所述同步播放时间播放所述音频数据。
10.如权利要求9所述的装置,其特征在于,所述收发单元用于:
与所述音源设备建立蓝牙连接,并接收所述音源设备发送的所述音频数据;其他蓝牙设备通过预设的第一蓝牙链路,同步接收所述音源设备发送的所述音频数据,其中,当所述至少两个蓝牙设备为两个时,通过与所述音源设备建立第一蓝牙连接接收所述音频数据;另一个蓝牙设备通过监听所述第一蓝牙连接或与所述音源设备建立第二蓝牙连接来同步接收所述音频数据;或者,
同步接收由所述音源设备蓝牙广播的所述音频数据。
11.如权利要求9所述的装置,其特征在于,所述确定单元用于:
将同步接收到所述音频数据的蓝牙时钟,确定为所述基准蓝牙时间;和/或,
所述基于所述基准蓝牙时间,确定第一预测播放时间,所述确定单元用于:获取预设的第一偏移时间,并将所述基准蓝牙时间与所述第一偏移时间之和,确定为所述第一预测播放时间。
12.如权利要求9所述的装置,其特征在于,所述确定单元还用于:
当所述至少两个蓝牙设备为两个时,若自身不具备预设的正常播放条件,且在当前的所述预备播放时间之前接收到另一个蓝牙设备发送的第二预测播放时间,且所述另一个蓝牙设备发送的第二预测播放时间在当前的所述预备播放时间之后,则自身不生成第二预测播放时间,而是将收到的另一个蓝牙设备发送的第二预测播放时间确定为所述同步播放时间。
13.如权利要求12所述的装置,其特征在于,所述确定单元用于:
当所述至少两个蓝牙设备为两个时,所述蓝牙设备接收到另一个蓝牙设备发送的第二预测播放时间,并将所述第二预测播放时间作为所述同步播放时间。
14.如权利要求13所述的装置,其特征在于,所述确定单元用于:
将所述当前的预备播放时间与预设的第二偏移时间之和,确定为所述第二预测播放时间,其中所述第二预测播放时间大于当前的预备播放时间;或者,
将所述第一预测播放时间与预设的第三偏移时间之和,确定为所述第二预测播放时间,其中所述第二预测播放时间大于当前的预备播放时间;或者,
将所述基准蓝牙时间与预设的第四偏移时间之和,确定为所述第二预测播放时间,其中所述第二预测播放时间大于当前的预备播放时间。
15.如权利要求13所述的装置,其特征在于,所述确定单元用于:
从自身的所述第二预测播放时间和收到的第二预测播放时间中,选择最大的第二预测播放时间作为同步播放时间;或者,
当所述至少两个蓝牙设备为两个时,将接收到的另一个蓝牙设备发送的第二预测播放时间,与自身的所述第二预测播放时间之中取值较大的一方,确定为所述同步播放时间。
16.一种蓝牙设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行权利要求1~8任一项所述的方法。
17.一种存储介质,其特征在于,包括计算机可读指令,当计算机读取并执行所述计算机可读指令时,使得计算机执行如权利要求1~8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910817818.5A CN112105005B (zh) | 2019-08-30 | 2019-08-30 | 一种控制蓝牙设备播放的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910817818.5A CN112105005B (zh) | 2019-08-30 | 2019-08-30 | 一种控制蓝牙设备播放的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112105005A CN112105005A (zh) | 2020-12-18 |
CN112105005B true CN112105005B (zh) | 2024-05-03 |
Family
ID=73749390
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910817818.5A Active CN112105005B (zh) | 2019-08-30 | 2019-08-30 | 一种控制蓝牙设备播放的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112105005B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112888062B (zh) * | 2021-03-16 | 2023-01-31 | 芯原微电子(成都)有限公司 | 数据同步方法、装置、电子设备及计算机可读存储介质 |
CN113194528B (zh) | 2021-03-18 | 2023-01-31 | 深圳市汇顶科技股份有限公司 | 同步控制方法、芯片、电子设备及存储介质 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1489356A (zh) * | 2002-09-06 | 2004-04-14 | ������ʣ�ŷ�ޣ��ɷ�����˾ | 媒体数据包的同步播放 |
CN103905878A (zh) * | 2014-03-13 | 2014-07-02 | 北京奇艺世纪科技有限公司 | 一种视频数据和音频数据同步播放的方法、装置和设备 |
CN105306110A (zh) * | 2015-09-18 | 2016-02-03 | 深圳市冠旭电子有限公司 | 一种实现音乐同步播放的方法及系统 |
CN105515750A (zh) * | 2014-10-20 | 2016-04-20 | 中兴通讯股份有限公司 | 一种基于蓝牙通信的时间同步方法及装置 |
CN106411448A (zh) * | 2016-10-08 | 2017-02-15 | 广东欧珀移动通信有限公司 | 播放控制方法、装置及终端 |
CN106448714A (zh) * | 2016-10-08 | 2017-02-22 | 广东欧珀移动通信有限公司 | 一种播放设备的同步播放方法、装置及系统 |
CN106686438A (zh) * | 2016-12-29 | 2017-05-17 | 北京奇艺世纪科技有限公司 | 一种跨设备的音频图像同步播放的方法、装置及系统 |
CN107040848A (zh) * | 2017-03-07 | 2017-08-11 | 建荣半导体(深圳)有限公司 | Avdtp协议的同步参数传输方法、装置及设备 |
CN107040874A (zh) * | 2017-03-07 | 2017-08-11 | 建荣半导体(深圳)有限公司 | 蓝牙数据同步操作的方法、装置及蓝牙设备 |
CN107333339A (zh) * | 2017-05-16 | 2017-11-07 | 恒玄科技(上海)有限公司 | 一种双无线耳机之间的音频数据传输方法及双无线耳机 |
CN108111997A (zh) * | 2017-12-15 | 2018-06-01 | 珠海市杰理科技股份有限公司 | 蓝牙设备音频同步方法和系统 |
US10009862B1 (en) * | 2017-09-06 | 2018-06-26 | Texas Instruments Incorporated | Bluetooth media device time synchronization |
CN108337595A (zh) * | 2018-06-19 | 2018-07-27 | 恒玄科技(上海)有限公司 | 蓝牙耳机实现精准同步播放的方法 |
US10200803B1 (en) * | 2018-01-23 | 2019-02-05 | Bestechnic (Shanghai) Co., Ltd. | Synchronization of wireless headphones |
-
2019
- 2019-08-30 CN CN201910817818.5A patent/CN112105005B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1489356A (zh) * | 2002-09-06 | 2004-04-14 | ������ʣ�ŷ�ޣ��ɷ�����˾ | 媒体数据包的同步播放 |
CN103905878A (zh) * | 2014-03-13 | 2014-07-02 | 北京奇艺世纪科技有限公司 | 一种视频数据和音频数据同步播放的方法、装置和设备 |
CN105515750A (zh) * | 2014-10-20 | 2016-04-20 | 中兴通讯股份有限公司 | 一种基于蓝牙通信的时间同步方法及装置 |
CN105306110A (zh) * | 2015-09-18 | 2016-02-03 | 深圳市冠旭电子有限公司 | 一种实现音乐同步播放的方法及系统 |
CN106411448A (zh) * | 2016-10-08 | 2017-02-15 | 广东欧珀移动通信有限公司 | 播放控制方法、装置及终端 |
CN106448714A (zh) * | 2016-10-08 | 2017-02-22 | 广东欧珀移动通信有限公司 | 一种播放设备的同步播放方法、装置及系统 |
CN106686438A (zh) * | 2016-12-29 | 2017-05-17 | 北京奇艺世纪科技有限公司 | 一种跨设备的音频图像同步播放的方法、装置及系统 |
CN107040848A (zh) * | 2017-03-07 | 2017-08-11 | 建荣半导体(深圳)有限公司 | Avdtp协议的同步参数传输方法、装置及设备 |
CN107040874A (zh) * | 2017-03-07 | 2017-08-11 | 建荣半导体(深圳)有限公司 | 蓝牙数据同步操作的方法、装置及蓝牙设备 |
CN107333339A (zh) * | 2017-05-16 | 2017-11-07 | 恒玄科技(上海)有限公司 | 一种双无线耳机之间的音频数据传输方法及双无线耳机 |
US10009862B1 (en) * | 2017-09-06 | 2018-06-26 | Texas Instruments Incorporated | Bluetooth media device time synchronization |
CN108111997A (zh) * | 2017-12-15 | 2018-06-01 | 珠海市杰理科技股份有限公司 | 蓝牙设备音频同步方法和系统 |
US10200803B1 (en) * | 2018-01-23 | 2019-02-05 | Bestechnic (Shanghai) Co., Ltd. | Synchronization of wireless headphones |
CN108337595A (zh) * | 2018-06-19 | 2018-07-27 | 恒玄科技(上海)有限公司 | 蓝牙耳机实现精准同步播放的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112105005A (zh) | 2020-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110519742A (zh) | 一种音频同步播放方法、装置及tws蓝牙耳机 | |
WO2014166243A1 (zh) | 一种多终端多声道独立播放方法及装置 | |
CN112055349B (zh) | 一种无线通信方法及蓝牙设备 | |
CN107040874A (zh) | 蓝牙数据同步操作的方法、装置及蓝牙设备 | |
CN103957218A (zh) | 共享媒体播放的方法和系统 | |
CN112105005B (zh) | 一种控制蓝牙设备播放的方法及装置 | |
CN104834623A (zh) | 音频播放方法及装置 | |
CN107040848A (zh) | Avdtp协议的同步参数传输方法、装置及设备 | |
WO2021161096A1 (en) | Switching between multiple earbud architectures | |
CN111049709B (zh) | 一种基于蓝牙的互联音箱控制方法、设备及存储介质 | |
CN112565876B (zh) | 投屏方法、装置、设备、系统及存储介质 | |
US11129119B2 (en) | Data synchronization method, device and storage medium | |
US20220256314A1 (en) | Method, apparatus and computer program for broadcast discovery service in wireless communication system, and recording medium therefor | |
CN108650592B (zh) | 一种实现颈带式环绕立体声的方法及立体声控制系统 | |
CN104427381A (zh) | 播放方法及装置 | |
WO2015154460A1 (zh) | 音频数据的录音方法及装置 | |
CN113015106B (zh) | 广播组网的立体声播放方法、装置和电子设备 | |
JP2012209880A (ja) | 通信装置及び通信システム | |
CN115314494A (zh) | 一种多设备协同工作方法和装置 | |
CN113407147A (zh) | 音频播放方法、装置、设备及存储介质 | |
CN111093179A (zh) | 无线通信方法、装置和系统 | |
WO2020062861A1 (zh) | 一种蓝牙音箱语音播放控制的方法及装置 | |
KR101469084B1 (ko) | 외부 출력 기기의 연결 상태를 이용한 컨텐츠 제공 방법 및 이를 위한 장치 | |
WO2022168499A1 (ja) | 送信装置、受信装置、および通信システム | |
WO2022183950A1 (zh) | 音频传输方法及系统、芯片及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |