CN106792073B - 跨设备的音视频数据同步播放的方法、播放设备及系统 - Google Patents
跨设备的音视频数据同步播放的方法、播放设备及系统 Download PDFInfo
- Publication number
- CN106792073B CN106792073B CN201611248570.8A CN201611248570A CN106792073B CN 106792073 B CN106792073 B CN 106792073B CN 201611248570 A CN201611248570 A CN 201611248570A CN 106792073 B CN106792073 B CN 106792073B
- Authority
- CN
- China
- Prior art keywords
- playing
- time
- audio
- playing device
- audio data
- 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 61
- 230000004044 response Effects 0.000 claims description 70
- 239000000872 buffer Substances 0.000 claims description 32
- 230000003139 buffering effect Effects 0.000 claims description 4
- 230000001360 synchronised effect Effects 0.000 description 32
- 230000005540 biological transmission Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4307—Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
本发明实施例提供了跨设备的音视频数据同步播放的方法、播放设备及系统,方法包括:第一播放设备获取当前系统播放的音频数据包,记录获取音频数据包时第一播放设备的第一系统时间;第一播放设备确定音频数据包的音频播放时间,将音频数据包和音频播放时间发送给第二播放设备;第二播放设备的当前系统时间与音频播放时间的时间差值的绝对值小于或等于预设阈值时,第二播放设备播放音频数据包;第一播放设备根据视频播放时间播放音频数据包对应的视频图像,实现不同设备的音视频数据同步播放;视频播放时间为第一系统时间与预先确定的播放延迟时间之和,音频播放时间为第一系统时间、播放延迟时间、第一播放设备与第二播放设备的系统时间差值之和。
Description
技术领域
本发明涉及数据处理领域,特别是涉及跨设备的音视频数据同步播放的方法、播放设备及系统。
背景技术
随着信息技术的快速发展,尤其是网络技术、通信技术和多媒体技术的应用普及,用户在大屏幕设备上观看视频日趋流行,因此,相应的多媒体业务,如:视频会议、远程教学以及互联网直播业务等,呈现出成倍增长的趋势。在很多场合下,用户希望可以通过不同的播放设备分别播放视频数据和音频数据,例如,电视机播放视频数据,移动终端播放音频数据。在现有音视频数据同步播放的方法中,通常采用以下两种方式实现音视频数据的同步播放:
1)音视频数据在相同的播放设备中进行同步操作。第一播放设备首先将预先获取到的音频数据和视频图像进行同步,然后将同步后的音频数据包和视频图像进行播放。在采用此方法时,由于第一播放设备与第二播放设备可以采用蓝牙方式进行连接,因此,第一播放设备还可以将同步后的音频数据通过蓝牙方式发送给第二播放设备进行播放。
2)音视频数据在不同的播放设备中进行同步操作。第一播放设备还可以通过预先设置的视频播放器将音频数据包和视频图像进行分离,然后将分离后的音频数据包发送给第二播放设备;第二播放设备将接收到的音频数据包和第一播放设备中保存的视频图像进行同步,最后第一播放设备和第二播放设备同步播放视频图像和音频数据包。
在实现本发明的过程中,发明人发现现有技术中至少存在如下问题:
在现有第一种音视频数据同步播放的方法中,当第一播放设备完成同步的音频数据包和视频图像后,当第一播放设备与第二播放设备之间的距离较大时,由于第一播放设备将音频数据包发送给第二播放设备所用的传输时间会较长,采用现有第一种音视频数据同步播放的方法,无法将已经同步播放的音频数据包和视频图像及时在第二播放设备上进行播放;在现有第二种音视频数据同步播放的方法中,由于第一播放设备将分离后的音频数据发送给第二播放设备进行播放,由第一播放设备根据第二播放设备的音频播放进度同步播放视频数据,也就是说,音频数据和视频数据最终的同步播放是通过第一播放设备和第二播放设备协同完成的。因此,现有技术,在不同设备上实现音视频数据的同步播放会非常复杂。
发明内容
本发明实施例的目的在于提供跨设备的音视频数据同步播放的方法、播放设备及系统,无论第一播放设备与第二播放设备之间的距离远近,都能够实现将音视频数据进行同步播放,并且音视频数据的同步播放的方式相比于现有技术比较简单。具体技术方案如下:
本发明实施例提供了一种跨设备的音视频数据同步播放的方法,所述方法包括:
第一播放设备获取当前系统播放的音频数据包,并记录获取到所述音频数据包时所述第一播放设备的第一系统时间;
所述第一播放设备确定所述音频数据包的音频播放时间,并将所述音频数据包和所述音频播放时间发送给所述第二播放设备;
所述第一播放设备根据视频播放时间播放所述音频数据包对应的视频图像;其中,所述视频播放时间为所述第一系统时间与预先确定的播放延迟时间之和。
在上述实施例中,所述第一播放设备确定所述音频数据包的音频播放时间,包括:
所述第一播放设备确定所述第一播放设备与所述第二播放设备的系统时间的时间差值;
根据所述第一系统时间、所述播放延迟时间以及所述时间差值,确定所述音频数据包的音频播放时间;
所述音频播放时间为所述第一系统时间、所述播放延迟时间以及所述时间差值之和。
在上述实施例中,所述第一播放设备确定所述第一播放设备与所述第二播放设备的系统时间的时间差值,包括:
所述第一播放设备向所述第二播放设备发送请求消息,并记录发送所述请求消息时所述第一播放设备的第一系统时间;
所述第一播放设备接收所述第二播放设备返回的响应消息,并记录接收到所述响应消息时所述第一播放设备的第二系统时间;其中,所述响应消息中携带所述第二播放设备接收到所述请求消息/返回所述响应消息时的第三系统时间;
所述第一播放设备根据所述第一系统时间、所述第二系统时间和所述第三系统时间计算所述时间差值。
在上述实施例中,所述方法还包括:
所述第一播放设备接收所述第二播放设备发送的播放控制命令;其中,所述播放控制命令包括:暂停命令、恢复命令和拖动命令;
所述第一播放设备根据所述播放控制命令对所述视频进行暂停播放、恢复播放、拖动播放进度的控制操作,并向所述第二播放设备返回控制响应。
本发明实施例还公开一种跨设备的音视频数据同步播放的方法,所述方法包括:
所述第二播放设备接收第一播放设备发送的音频数据包和音频数据包对应音频播放时间;
所述第二播放设备将接收到的所述音频数据包按照所述音频数据包对应的音频播放时间顺序缓存到播放缓存队列;
当所述第二播放设备的当前系统时间与所述音频播放时间的时间差值的绝对值小于或等于预设阈值时,所述第二播放设备播放所述音频数据包;其中,所述音频播放时间为所述第一系统时间、所述播放延迟时间、所述第一播放设备与所述第二播放设备的系统时间差值之和。
在上述实施例中,所述方法还包括:
所述第二播放设备向所述第一播放设备发送播放控制命令;其中,所述控制命令包括:暂停命令、恢复命令和拖动命令;
所述第二播放设备接收所述第一播放设备返回的控制响应,并对音频数据包进行相应播放控制。
在上述实施例中,所述方法还包括:
当所述音频播放时间与所述当前系统时间的时间差值大于所述预设阈值时,所述第二播放设备等待播放所述音频数据包;
当所述当前系统时间与所述音频播放时间的时间差值大于所述预设阈值时,所述第二播放设备丢弃所述音频数据包。
本发明实施例还公开一种第一播放设备,所述第一播放设备包括:获取单元、确定单元和视频播放单元;
所述获取单元,用于获取当前系统播放的音频数据包,并记录获取到所述音频数据包时所述第一播放设备的第一系统时间;
所述确定单元,用于确定所述音频数据包的音频播放时间,并将所述音频数据包和所述音频播放时间发送给所述第二播放设备;
所述视频播放单元,用于根据视频播放时间播放所述音频数据包对应的视频图像;其中,所述视频播放时间为所述第一系统时间与预先确定的播放延迟时间之和。
在上述实施例中,所述确定单元具体用于确定所述第一播放设备与所述第二播放设备的系统时间的时间差值;根据所述第一系统时间、所述播放延迟时间以及所述时间差值,确定所述音频数据包的音频播放时间;所述音频播放时间为所述第一系统时间、所述播放延迟时间以及所述时间差值之和。
在上述实施例中,所述确定单元,还用于向所述第二播放设备发送请求消息,并记录发送所述请求消息时所述第一播放设备的系统时间第一系统时间;接收所述第二播放设备返回的响应消息,并记录接收到所述响应消息时所述第一播放设备的第二系统时间;其中,所述响应消息中携带所述第二播放设备接收到所述请求消息/返回所述响应消息时的第三系统时间;根据所述第一系统时间、所述第二系统时间和所述第三系统时间计算所述时间差值。
在上述实施例中,所述音频播放单元,还用于接收所述第二播放设备发送的播放控制命令;其中,所述播放控制命令包括:暂停命令、恢复命令和拖动命令;根据所述播放控制命令对视频图像进行暂停播放、恢复播放、拖动播放进度的控制操作,并向所述第二播放设备返回控制响应。
本发明实施例还公开一种第二播放设备,所述第二播放设备包括:接收单元、缓存单元和音频播放单元;
所述接收单元,用于接收第一播放设备发送的音频数据包;
所述缓存单元,用于按照所述音频数据包对应的音频播放时间顺序缓存到播放缓存队列;
所述音频播放单元,用于当所述第二播放设备的当前系统时间与所述音频播放时间的时间差值的绝对值小于或等于预设阈值时,所述第二播放设备播放所述音频数据包;其中,所述音频播放时间为所述第一系统时间、所述播放延迟时间、所述第一播放设备与所述第二播放设备的系统时间差值之和。
在上述实施例中,所述第二播放设备,还用于向所述第一播放设备发送播放控制命令;其中,所述播放控制命令包括:暂停命令、恢复命令和拖动命令;接收所述第一播放设备返回的控制响应,并对音频数据包进行相应播放控制。
在上述实施例中,所述音频播放单元,还用于当所述音频播放时间与所述当前系统时间的时间差值大于所述预设阈值时,等待播放所述音频数据包;当所述当前系统时间与所述音频播放时间的时间差值大于所述预设阈值时,丢弃所述音频数据包。
本发明实施例还公开一种系统,包括:如上述的第一播放设备,以及上述的第二播放设备。
本发明实施例提供的跨设备的音视频数据同步播放的方法、播放设备及系统,第一播放设备可以先获取当前系统播放的音频数据包,并记录获取到音频数据包时所述第一播放设备的第一系统时间;然后第一播放设备确定音频数据包的音频播放时间,并将音频数据包和音频播放时间发送给第二播放设备;第一播放设备将音频数据包对应的视频图像在视频播放时间进行播放;其中,视频播放时间为第一系统时间与预先确定的播放延迟时间之和;当第二播放设备的当前系统时间与音频播放时间的时间差值的绝对值小于或等于预设阈值时,第二播放设备播放音频数据包。也就是说,在本发明实施例提出的技术方案中,第一播放设备可以根据视频播放时间播放音频数据包对应的视频图像;第二播放设备可以在当前系统时间与音频播放时间的时间差值的绝对值小于或等于预设阈值时播放音频数据包,从而能够实现第一播放设备播放的视频图像和第二播放设备播放的音频数据包同步播放。由此可见,和现有技术相比,本发明实施例提出的跨设备的音视频数据同步播放的方法、播放设备及系统,无论第一播放设备与第二播放设备之间的距离远近,都能够及时实现将音视频数据进行同步播放,并且音视频数据的同步播放的方式相比于现有技术比较简单。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中音视频数据同步播放的第一实现方法流程图;
图2为本发明实施例中确定第一系统时间与第二系统时间的时间差值的实现方法流程图;
图3为本发明实施例中音视频数据同步播放的第二实现方法流程图;
图4为本发明实施例中第一播放设备的组成结构示意图;
图5为本发明实施例中第二播放设备的组成结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的各种实施例中,参见图1,图1为本发明实施例中音视频数据同步播放的第一实现方法流程图。如图1所示,跨设备的音视频数据同步播放的方法可以包括以下步骤:
步骤101、第一播放设备获取当前系统播放的音频数据包,并记录获取到音频数据包时第一播放设备的第一系统时间。
在本发明的具体实施例中,步骤101中第一播放设备获取音频数据包,具体的实现方式一,第一播放设备可以从预先存储的数据库中获取音频数据包;其中,预先存储的数据库可以包括:利用音频转换文字的转换工具,将播放媒体文件的媒体中的音频数据包的音频转换为音频数据包对应的文字,存储该音频数据包对应的文字的数据库。相应的,第一播放设备可以获取数据库中的音频数据包对应的文字,利用文字转换音频的转换工具,获取到音频数据包。
其中,预先存储的数据库还可以包括:通过系统录音得到前音频数据包的音频,存储播放媒体文件的媒体中的音频数据包的音频的数据库。相应的,第一播放设备可以获取数据库中的音频数据包的音频。通过预先存储的数据库预先存储音频数据包的音频或音频数据包对应的文字,减少直接录音所浪费的时间,也可以减少同步播放的系统负载。
具体的实现方式二:第一播放设备还可以先通过系统录音获取音频数据包,并记录获取到音频数据包时第一播放设备的第一系统时间。具体地,第一播放设备可以播放媒体文件的音频数据,同时第一播放设备还可以对通过系统录音获取音频数据,当第一播放设备对音频数据包录音完成时即为第一播放设备获取到音频数据包,第一播放设备在获取到音频数据包之后,还可以记录获取到音频数据包时第一播放设备的第一系统时间。具体地,第一播放设备记录获取到音频数据包时第一播放设备的第一系统时间,可以如下述表1所示:
表1
音频数据包 | 第一系统时间 |
音频数据包1 | 系统时间1 |
音频数据包2 | 系统时间2 |
音频数据包3 | 系统时间3 |
… | … |
音频数据包N | 系统时间N |
上述第一播放设备在录音时,将本地声音输出关闭,这样不处理其他本地声音,只录音当前音频数据包,可以增加录音当前音频数据包的录音效率。
步骤102、第一播放设备确定音频数据包的音频播放时间,并将音频数据包和音频播放时间发送给第二播放设备。
在本发明的具体实施例中,当第一播放设备在获取到音频数据包,并记录完成获取到音频数据包时第一播放设备的第一系统时间之后,第一播放设备可以确定音频数据包的音频播放时间,并将音频数据包和音频播放时间发送给第二播放设备。
上述当第一播放设备在获取到音频数据包,并记录完成获取到音频数据包时第一播放设备的第一系统时间,具体为:
较佳地,在本发明的具体实施例中,第一播放设备可以先确定第一播放设备与所第二播放设备的系统时间的时间差值;然后根据第一系统时间、播放延迟时间以及时间差值,确定音频数据包的音频播放时间;所述音频播放时间为所述第一系统时间、所述播放延迟时间以及所述时间差值之和。
较佳地,在本发明的具体实施例中,当第一播放设备与第二播放设备的系统时间不同步时,第一播放设备根据第一系统时间、播放延迟时间以及预先确定的第一系统时间与第二系统时间的时间差值,确定目标播放时间。具体地,当第一播放设备与第二播放设备的系统时间不同步时,第一播放设备确定的当前音频数据包的目标播放时间,可以如下述表2所示:
表2
当前音频数据包 | 目标播放时间 |
音频数据包1 | 系统时间1+播放延迟时间+时间差值 |
音频数据包2 | 系统时间2+播放延迟时间+时间差值 |
音频数据包3 | 系统时间3+播放延迟时间+时间差值 |
… | … |
音频数据包N | 系统时间N+播放延迟时间+时间差值 |
也就是说,在本发明的具体实施例中,这里当第一播放设备与第二播放设备的系统时间不同步时,第一播放设备确定音频播放时间为ni=mi+ΔT+Δt,其中,该ni为当第一播放设备与第二播放设备的系统时间不同步时,第一播放设备确定音频播放时间,也是发送给第二播放设备的时间戳,该mi为第一播放设备准备通过第一播放设备,远程播放每个音频数据包,与该音频数据包对应的时间,该ΔT为第一播放设备的预设的播放延迟时间,该预设的播放延迟时间可以根据实际需要进行设置,该Δt为第一播放设备的系统时间与第二播放设备的系统时间的时间差。为了应对网络传输延时和可能出现的带宽抖动,上述预设延时ΔT,为了第一播放设备的本地图像和第二播放设备远程音频播放同步,第一播放设备的本地视频图像显示需引入相应的延时。通过第一播放设备的设置本地视频图像延时,来匹配远程第二播放设备音频数据包的播放时间,实现视频图像同步,以实现音频与图像同步播放。
较佳地,在本发明的具体实施例中,第一播放设备在将音频数据包和音频播放时间发送给第二播放设备之前,第一播放设备还可以先将音频数据包进行编码,然后将编码后的音频数据包和音频播放时间发送给第二播放设备。
在本发明的各种实施例中,参见图2,图2为本发明实施例中确定第一播放设备与第二播放设备的系统时间的时间差值的实现方法流程图。如图2所示,确定第一播放设备与第二播放设备的系统时间的时间差值的方法可以包括以下步骤:
步骤201、第一播放设备向第二播放设备发送请求消息,并记录发送请求消息时第一播放设备的第一系统时间。
这里的步骤201,具体为第一播放设备实时向第二播放设备发送请求消息,以提高计算第一播放设备及第二播放设备的时间差值的准确性。
在本发明的具体实施例中,当第一播放设备与第二播放设备的系统时间不同步时,第一播放设备还可以先确定第一播放设备与第二播放设备的系统时间的时间差值。具体地,第一播放设备可以先向第二播放设备发送请求消息,并记录发送请求消息时第一播放设备的第一系统时间。
步骤202、第一播放设备接收第二播放设备返回的响应消息,并记录接收到响应消息时第一播放设备的第二系统时间;其中,响应消息中携带第二播放设备接收到请求消息/返回响应消息时的第三系统时间。
在本发明的具体实施例中,第二播放设备在接收到第一播放设备发送的请求消息之后,向第一播放设备返回响应消息。另外,第二播放设备还可以记录接收到请求消息或者返回响应消息的第三系统时间,第二播放设备向第一播放设备返回的响应消息中可以携带第二播放设备接收到请求消息/返回响应消息时的第三系统时间。
步骤203、第一播放设备根据第一系统时间、第二系统时间和第三系统时间计算时间差值。
在本发明的具体实施例中,第一播放设备在接收到第二播放设备返回的响应消息之后,可以根据第一系统时间、第二系统时间和第三系统时间确定时间差值。具体地,第一播放设备可以根据以下公式计算时间差值:该Δt为第一播放设备的系统时间与第二播放设备的系统时间的时间差值,M1为第一系统时间,M2为第二系统时间,M3为第三系统时间。
根据上述的描述可知,通过上述的步骤201~步骤203,第一播放设备可以通过记录发送请求消息时第一播放设备的第一系统时间、接收到响应消息时第一播放设备的第二系统时间以及响应消息中携带的第二播放设备接收到请求消息/返回响应消息时的第三系统时间,计算第一播放设备和第二播放设备的系统时间的时间差值。
本发明实施例的跨设备的音视频数据同步播放的方法中,步骤201具体为:判断网络状态稳定,第一播放设备向第二播放设备发送请求消息,并记录发送请求消息时第一播放设备的第一系统时间。
可选的,本发明实施例的方案中,第一播放设备通过不断向第二播放设备发送请求估算第一播放设备的系统时间和第二播放设备的系统时间的时间差值:
网络情况越好,估计的越精确。第一播放设备通过多次向第二播放设备发送请求估算第一播放设备的系统时间和第二播放设备的系统时间的时间差值的请求,如果(Mk+12-Mk+11)<(Mk2-Mk1),则说明第二播放设备请求反馈的时间更快,则需要重新更新估算Δt。
If(Mk+12-Mk+11)<(Mk2-Mk1)
其中,k为第k次的发送请求的请求次数,k+1为第k+1次的发送请求的请求次数,第k+1次发送请求在第k次发送请求之后,Mk1为第k次发送请求的第一系统时间,Mk2为第k次发送请求的第二系统时间,Mk3为第k次发送请求的第三系统时间,Mk+11为第k+1次发送请求的第一系统时间,Mk+12为第k+1次发送请求的第二系统时间,Mk+13为第k+1次发送请求的第三系统时间。这种估算方法可以直到估计的第一播放设备的系统时间和第二播放设备的系统时间的时间差值Δt不断收敛,在多次重复时间差值Δt估算后,且时间差值Δt稳定不变时,得到稳定的时间差值Δt,就不需要重复计算,利用该稳定的时间差值Δt,可以提高同步的精准。
上述步骤102中,请求反馈更快,则得到的时间差值,越精准。请求反馈更快可以通过网络状态表征,其中网络状态的参数包括但不限于:小于第一预设值的网络负载,大于第二预设值的网络通信速率。任何可以表示网络状态的参数,均属于本发明实施例的保护范围,在此不一一举例。
步骤103、第一播放设备根据视频播放时间播放音频数据包对应的视频图像;其中,视频播放时间为第一系统时间与预先确定的播放延迟时间之和。
由于第一播放设备有视频播放时间,因此可以按照该视频播放时间进行播放音频数据包对应的视频图像。上述步骤103具体执行过程,可以是第二设备根据音频播放时间播放音频数据,同时第一播放设备根据视频播放时间播放音频数据对应的视频图像。
在本发明的具体实施例中,第一播放设备在将音频数据包和音频播放时间发送给第二播放设备之后,可以将音频数据包对应的视频图像在视频播放时间进行播放;其中,视频播放时间为第一系统时间与预先确定的播放延迟时间之和。具体地,音频数据包对应的视频图像的播放时间,视频图像是由至少一帧视频数据帧组成。可以如下述表3所示:
表3
视频图像 | 音频播放时间 |
视频数据帧1 | 系统时间1+播放延迟时间 |
视频数据帧2 | 系统时间2+播放延迟时间 |
视频数据帧3 | 系统时间3+播放延迟时间 |
… | … |
视频数据帧N | 系统时间N+播放延迟时间 |
较佳地,在本发明的具体实施例中,第二播放设备还可以向第一播放设备发送播放控制命令,其中,播放控制命令可以包括:暂停命令、恢复命令和拖动命令;第一播放设备在接收到第二播放设备发送的播放控制命令之后,根据播放控制命令对当前播放视频进行暂停播放、恢复播放、拖动播放进度的控制操作,并向第二播放设备返回控制响应,其中,控制响应可以包括:暂停响应、恢复响应和拖动响应。
具体地,在本发明的具体实施例中,当第一播放设备接收到第二播放设备发送的播放控制命令为暂停命令时,第一播放设备暂停当前视频播放,预先保存的各个音频数据包,同时第一播放设备可以按照预先设置的各个音频数据包对应的录音时间段,对第一播放设备中静默音频数据中的各个音频数据包进行录音,并确定音频数据包的音频播放时间,然后将音频数据包和音频播放时间发送给第二播放设备。
具体地,在本发明的具体实施例中,当第一播放设备接收到第二播放设备发送的播放控制命令为恢复命令时,第一播放设备恢复播放预先保存的各个音频数据包,同时第一播放设备可以对各个音频数据包进行录音,并确定音频数据包的音频播放时间,然后将音频数据包和音频播放时间发送给第二播放设备。通过第一播放设备录音得到音频数据包,使得与第二播放设备适配非常简单。第一播放设备也可以与多个第二播放设备连接。
具体地,在本发明的具体实施例中,当第一播放设备接收到第二播放设备发送的播放控制命令为拖动命令时,第一播放设备可以先根据拖动命令重新确定音频数据包,然后从重新确定的音频数据包开始播放预先保存的各个音频数据包,同时第一播放设备可以对各个音频数据包进行录音,并确定音频数据包的音频播放时间,然后将音频数据包和音频播放时间发送给第二播放设备。
进一步的,在实际应用中,还会遇到暂停播放、恢复播放和快进快退等操作情景,下面针对在本发明的具体实施例中,步骤101中第一播放设备获取音频数据包,具体的实现方式二进行说明。
具体的,针对暂停播放(pasue)的情景和恢复播放(resume)的场景,第一播放设备会接收到第二播放设备发送的暂停播放命令;在接收到暂停播放命令后暂停播放图像,同时第一播放设备向第二播放设备发送暂停播放下响应。但是此时系统录音还在继续,只是此时录到的音频为静默音频数据,第一播放设备将录音获得的静默音频数据发送给第二播放设备,以使第二播放设备播放该静默音频数据,也就是说在暂停播放期间,第二播放设备播放的是无声的音频数据,以此来保证音频和图像的同步播放。
第一播放设备在接收到第二播放设备发送的恢复播放命令后恢复播放图像,并向第二播放设备发送恢复播放响应,同时恢复向第二播放设备发送正常的音频数据。即,在接收到恢复播放命令后,第一播放设备接着播放暂停前的图像,并且恢复向第二播放设备发送正常的音频数据。
针对快进快退的场景,具体的,第一播放设备接收第二播放设备发送的拖动命令(seek)并完成图像播放的拖动操作后,向第二播放设备发送拖动响应。此时,系统录音会获取拖动操作之后新的音频数据并发送给第二播放设备;可以理解的是,拖动命令可以是快进命令或快退命令,快进命令用于快进播放图像,快退命令用于快退播放图像。
例如,第一播放设备接收到快进命令后,图像播放会跳转到用户快进的时间点播放,并向第二播放设备发送快进响应。此时,系统录音会获取该快进时间点之后播放的音频数据发送给第二播放设备。
当第二播放设备的当前系统时间与音频播放时间的时间差值的绝对值小于或等于预设阈值时,第二播放设备播放音频数据包。也就是说,在本发明实施例提出的技术方案中,第一播放设备可以将音频数据包对应的视频图像在视频播放时间进行播放;第二播放设备可以在当前系统时间与音频播放时间的时间差值的绝对值小于或等于预设阈值时播放音频数据包,从而能够实现第一播放设备播放的视频图像和第二播放设备播放的音频数据包同步播放。
本发明实施例提供的跨设备的音视频数据同步播放的方法,第一播放设备可以先获取音频数据包,并记录获取到音频数据包时第一播放设备的第一系统时间;然后第一播放设备确定音频数据包的音频播放时间,并将音频数据包和音频播放时间发送给第二播放设备;第一播放设备将音频数据包对应的视频图像在视频播放时间进行播放;其中,视频播放时间为第一系统时间与预先确定的播放延迟时间之和;当第二播放设备的当前系统时间与音频播放时间的时间差值的绝对值小于或等于预设阈值时,第二播放设备播放音频数据包。也就是说,在本发明实施例提出的技术方案中,第一播放设备可以将音频数据包对应的视频图像在视频播放时间进行播放;第二播放设备可以在当前系统时间与音频播放时间的时间差值的绝对值小于或等于预设阈值时播放音频数据包,从而能够实现第一播放设备播放的视频图像和第二播放设备播放的音频数据包同步播放。由此可见,和现有技术相比,本发明实施例提出的跨设备的音视频数据同步播放的方法,无论第一播放设备与第二播放设备之间的距离远近,都能够实现将音视频数据进行同步播放,而且无需增加额外的硬件设备;并且,实现起来简单方便,便于普及,适用范围更广。
在本发明的各种实施例中,参见图3,图3为本发明实施例中音视频数据同步播放的第二实现方法流程图。如图3所示,跨设备的音视频数据同步播放的方法可以包括以下步骤:
步骤301、第二播放设备接收第一播放设备发送的音频数据包和音频数据包对应音频播放时间。
第二播放设备在播放缓存队列中获取音频数据包。
较佳地,在本发明的具体实施例中,第二播放设备在播放缓存队列中获取音频数据包之前,第二播放设备可以接收第一播放设备发送的音频数据包以及音频数据包的音频播放时间。
在本发明的具体实施例中,在第二播放设备在播放缓存队列中获取音频数据包之前,方法还包括:
第二播放设备向第一播放设备发送请求,该请求至少包括:第二播放设备的唯一标识地址及端口信息,用于请求第一播放设备的音频数据包,并与该第一播放设备建立连接;该第二播放设备的唯一标识地址包括但不限:IMEI(International Mobile EquipmentIdentification Number,国际移动设备识别码)MAC地址,出厂序列号,入网编号中的一种或多种,能够实现标识第二播放设备的任何标识,均属于本发明实施例的保护范围。该端口信息包括但不限,入网端口或连接端口,能够建立与第一播放设备连接的端口,均属于本发明实施例的保护范围。
针对该请求,第二播放设备可以建立存储数据库,该数据库可以存储针对该请求第一播放设备返回的数据。这样方便存储及计算。
较佳地,在本发明的具体实施例中,第二播放设备在接收到第一播放设备发送的音频数据包以及音频数据包的音频播放时间之后,可以先判断播放播放缓存队列中全部音频数据包的数量是否小于预设数量;当播放缓存队列中全部音频数据包的数量小于预设数量时,第二播放设备将音频数据包保存到播放缓存队列中,并保存音频数据包和音频播放时间的对应关系;当播放缓存队列中全部音频数据包的数量大于或等于预设数量时,第二播放设备可以丢弃音频数据包。
上述具体实施例考虑到播放缓存队列需要更新,播放缓存队列中的音频数据包也在变化,因此在播放播放缓存队列中全部音频数据包的数量是否小于预设数量时,说明播放缓存队列还可以缓存音频数据包,保证能够及时补给音频数据包,及时缓存其他音频数据包;在全部音频数据包的数量大于或等于预设数量时,说明受到播放缓存队列的限制,播放缓存队列已经被占用,播放缓存队列没法进行缓存,此时可以丢弃音频数据包。这样避免出现在播放缓存队列目前没有缓存空间,该待缓存的音频数据包一直等待缓存的情况,影响音频数据包的及时缓存处理。当然这样只是处理全部音频数据包的数量大于或等于预设数量的一种方式,也可以通过将待缓存的音频数据包发送给能够缓存的其他设备的播放缓存队列进行缓存,利用本发明实施例的跨设备的音视频数据同步播放的方法进行执行,在此不做限定。
步骤302、第二播放设备将接收到的音频数据包按照音频数据包对应的音频播放时间顺序缓存到播放缓存队列。
第二播放设备根据预先保存的音频数据包和音频播放时间的对应关系,确定音频数据包的音频播放时间。
在本发明的具体实施例中,第二播放设备在缓存队列中获取到音频数据包之后,可以根据预先保存的音频数据包和音频播放时间的对应关系,确定音频数据包的音频播放时间。具体地,当第一播放设备与第二播放设备的系统时间不同步时,第二播放设备可以根据表2所示的音频数据包与音频播放时间的对应关系,确定音频数据包的音频播放时间。
步骤303、当第二播放设备的当前系统时间与音频播放时间的时间差值的绝对值小于或等于预设阈值时,第二播放设备播放音频数据包;其中,音频播放时间为第一系统时间、播放延迟时间、第一播放设备与第二播放设备的系统时间差值之和。
上述步骤303具体执行过程,可以是当第二播放设备的当前系统时间与音频播放时间的时间差值的绝对值小于或等于预设阈值时,第二播放设备播放音频数据包,同时第一播放设备根据视频播放时间播放音频数据包对应的视频图像。
在本发明的具体实施例中,第二播放设备在获取到音频数据包以及音频数据包的音频播放时间之后,可以先判断第二播放设备的当前系统时间与音频播放时间的时间差值的绝对值是否小于或等于预设阈值;当第二播放设备的当前系统时间与音频播放时间的时间差值的绝对值小于或等于预设阈值时,第二播放设备播放音频数据包;当音频播放时间与当前系统时间的时间差值大于预设阈值时,第二播放设备等待播放音频数据包;当该当前系统时间与音频播放时间的时间差值大于预设阈值时,第二播放设备丢弃音频数据包。
具体的,上述的预设阈值为第二播放设备通过Audio的采样率和编码帧长,计算每个PCM(Pulse Code Modulation,脉冲编码调制)包(也就是采用的PCM格式的音频数据包)得到的数值;
这里的预设阈值为其中,该q为预设阈值,该α为采样率,该β为编码帧长。
再根据第二播放设备接收到的第一播放设备发送的音频数据包,按照每个音频数据包的时间戳,播放音频数据包。这里的时间戳为ni=mi+ΔT+Δt;
如果abs(n-ni)≤q,则播放当前音频数据;
如果(ni-n)>q,则未到播放时间,等待播放;
如果(ni-n)<q,则已经过了播放时间时,丢弃音频数据包;其中,该n为第二播放设备的当前系统时间,该i为第i个时间戳,也就是音频数据包对应的音频播放时间。
较佳地,在本发明的具体实施例中,第二播放设备在根据当前系统时间和音频播放时间播放音频数据包之前,第二播放设备可以先将音频数据包进行解码;然后第二播放设备播放解码后的音频数据包。
较佳地,在本发明的具体实施例中,第二播放设备还可以向第一播放设备发送播放控制命令,其中,播放控制命令可以包括:暂停命令、恢复命令和拖动命令;然后第二播放设备接收第一播放设备返回的控制响应,其中,控制响应可以包括:暂停响应、恢复响应和拖动响应。
较佳地,在本发明的具体实施例中,当第二播放设备在接收到暂停响应之后,可以将第一播放设备发送的静默音频数据包保存在播放缓存队列的队首;当第二播放设备在接收到恢复响应之后,播放缓存队列中的音频数据包对应音频播放时间延迟暂停的时间,然后再将此后第一播放设备发送的正常音频数据包保存在播放缓存队列的队尾;当第二播放设备在接收到拖动响应之后,可以先清空播放缓存队列,重置播放统计时间,第二播放设备重新缓存PCM数据包和对应的音频播放时间到播放缓存队列中等待播放。
进一步的,以系统录音的音频获取方式为例,对进行播放控制的同步方法进行说明。针对暂停播放(pasue)的情景和恢复播放(resume)的场景,第一播放设备会接收到第二播放设备发送的暂停播放命令;在接收到暂停播放命令后暂停播放图像,同时第一播放设备向第二播放设备发送暂停播放下响应。但是此时系统录音还在继续,只是此时录到的音频为静默音频数据,第一播放设备将录音获得的静默音频数据发送给第二播放设备,以使第二播放设备播放该静默音频数据,也就是说在暂停播放期间,第二播放设备播放的是无声的音频数据,以此来保证音频和图像的同步播放。
第一播放设备在接收到第二播放设备发送的恢复播放命令后恢复播放图像,并向第二播放设备发送恢复播放响应,同时恢复向第二播放设备发送正常的音频数据。即,在接收到恢复播放命令后,第一播放设备接着播放暂停前的图像,并且恢复向第二播放设备发送正常的音频数据。
针对快进快退的拖动场景,具体的,第一播放设备接收第二播放设备发送的拖动命令(seek)并完成图像播放的拖动操作后,向第二播放设备发送拖动响应。此时,系统录音会获取拖动操作之后新的音频数据并发送给第二播放设备;可以理解的是,拖动命令可以是快进命令或快退命令,快进命令用于快进播放图像,快退命令用于快退播放图像。
本发明实施例提供的跨设备的音视频数据同步播放的方法,第一播放设备可以先获取音频数据包,并记录获取到音频数据包时第一播放设备的第一系统时间;然后第一播放设备确定音频数据包的音频播放时间,并将音频数据包和音频播放时间发送给第二播放设备;第一播放设备将音频数据包对应的视频图像在视频播放时间进行播放;其中,视频播放时间为第一系统时间与预先确定的播放延迟时间之和;当第二播放设备的当前系统时间与音频播放时间的时间差值的绝对值小于或等于预设阈值时,第二播放设备播放音频数据包。也就是说,在本发明实施例提出的技术方案中,第一播放设备可以将音频数据包对应的视频图像在视频播放时间进行播放;第二播放设备可以在当前系统时间与音频播放时间的时间差值的绝对值小于或等于预设阈值时播放音频数据包,从而能够实现第一播放设备播放的视频图像和第二播放设备播放的音频数据包同步播放。由此可见,无论第一播放设备与第二播放设备之间的距离远近,都能够及时实现将音视频数据进行同步播放,并且音视频数据的同步播放的方式相比于现有技术比较简单,而且无需增加额外的硬件设备;并且,实现起来简单方便,便于普及,适用范围更广。
在本发明的各种实施例中,参见图4,图4为本发明实施例中第一播放设备的组成结构示意图,第一播放设备包括:获取单元401、确定单元402和视频播放单元403;
获取单元401,用于获取当前系统播放的音频数据包,并记录获取到音频数据包时第一播放设备的第一系统时间;
确定单元402,用于确定音频数据包的音频播放时间,并将音频数据包和音频播放时间发送给第二播放设备;
视频播放单元403,用于根据视频播放时间播放音频数据包对应的视频图像;其中,视频播放时间为第一系统时间与预先确定的播放延迟时间之和。
进一步的,确定单元402具体用于根据视频播放时间播放音频数据包对应的视频图像;其中,视频播放时间为第一系统时间与预先确定的播放延迟时间之和。
进一步的,确定单元402,还用于向第二播放设备发送请求消息,并记录发送请求消息时第一播放设备的第一系统时间;接收第二播放设备返回的响应消息,并记录接收到响应消息时第一播放设备的第二系统时间;其中,响应消息中携带第二播放设备接收到请求消息/返回响应消息时的第三系统时间;根据第一系统时间、第二系统时间和第三系统时间计算时间差值。
进一步的,视频播放单元403,还用于接收第二播放设备发送的播放控制命令;其中,播放控制命令包括:暂停命令、恢复命令和拖动命令;根据播放控制命令对视频图像进行暂停播放、恢复播放、拖动播放进度的控制操作,并向第二播放设备返回控制响应。
上述第一播放设备可以优选的应用于电视端设备。
需要说明的是,本发明实施例的装置是应用上述跨设备的音视频数据同步播放的方法的第一播放设备,则上述音视频数据同步播放的方法的所有实施例均适用于该第一播放设备,且均能达到相同或相似的有益效果。
在本发明的各种实施例中,参见图5,图5为本发明实施例中第二播放设备的组成结构示意图,第二播放设备包括:接收单元501、缓存单元502和音频播放单元503;
接收单元501,用于接收第一播放设备发送的音频数据包;
缓存单元502,用于按照音频数据包对应的音频播放时间顺序缓存到播放缓存队列;
音频播放单元503,用于当第二播放设备的当前系统时间与音频播放时间的时间差值的绝对值小于或等于预设阈值时,第二播放设备播放音频数据包;其中,音频播放时间为第一系统时间、播放延迟时间、第一播放设备与第二播放设备的系统时间差值之和。
进一步的,第二播放设备,还用于向第一播放设备发送播放控制命令;其中,播放控制命令包括:暂停命令、恢复命令和拖动命令;接收第一播放设备返回的控制响应,并对音频数据包进行相应播放控制。
进一步的,第二播放单元,还用于当音频播放时间与当前系统时间的时间差值大于预设阈值时,等待播放音频数据包;当该当前系统时间与音频播放时间的时间差值大于预设阈值时,丢弃音频数据包。
本发明实施例提供的音视频数据同步播放的设备,第一播放设备可以先获取音频数据包,并记录获取到音频数据包时第一播放设备的第一系统时间;然后第一播放设备确定音频数据包的音频播放时间,并将音频数据包和音频播放时间发送给第二播放设备;第一播放设备将音频数据包对应的视频图像在视频播放时间进行播放;其中,视频播放时间为第一系统时间与预先确定的播放延迟时间之和;当第二播放设备的当前系统时间与音频播放时间的时间差值的绝对值小于或等于预设阈值时,第二播放设备播放音频数据包。也就是说,在本发明实施例提出的技术方案中,第一播放设备可以将音频数据包对应的视频图像在视频播放时间进行播放;第二播放设备可以在当前系统时间与音频播放时间的时间差值的绝对值小于或等于预设阈值时播放音频数据包,从而能够实现第一播放设备播放的视频图像和第二播放设备播放的音频数据包同步播放。由此可见,无论第一播放设备与第二播放设备之间的距离远近,都能够及时实现将音视频数据进行同步播放,并且音视频数据的同步播放的方式相比于现有技术比较简单,而且无需增加额外的硬件设备;并且,实现起来简单方便,便于普及,适用范围更广。
需要说明的是,本发明实施例的装置是应用上述跨设备的音视频数据同步播放的方法的第二播放设备,则上述音视频数据同步播放的方法的所有实施例均适用于该第二播放设备,且均能达到相同或相似的有益效果。
上述第二播放设备可以优选的应用于移动终端。比如,手机、掌上电脑等。方便用户操作。将音频数据包回传至移动终端,利用移动终端的扩展性,方便增加第一播放设备进行音频数据包播放的设备,移动终端可以实现播放音频数据包,方便用户操作及使用。
需要说明的是,本发明实施例的系统是应用上述跨设备的音视频数据同步播放的装置的第二播放设备及第一播放设备,则上述音视频数据同步播放的装置的所有实施例均适用于该第二播放设备及第一播放设备,且均能达到相同或相似的有益效果。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (11)
1.一种跨设备的音视频数据同步播放的方法,其特征在于,所述方法包括:
第一播放设备获取当前系统播放的音频数据包,并记录获取到所述音频数据包时所述第一播放设备的第一系统时间;
所述第一播放设备确定所述音频数据包的音频播放时间,并将所述音频数据包和所述音频播放时间发送给第二播放设备;
所述第一播放设备根据视频播放时间播放所述音频数据包对应的视频图像;其中,所述视频播放时间为所述第一系统时间与预先确定的播放延迟时间之和,其中,
所述第一播放设备确定所述音频数据包的音频播放时间,包括:所述第一播放设备确定所述第一播放设备与所述第二播放设备的系统时间的时间差值;根据所述第一系统时间、所述播放延迟时间以及所述时间差值,确定所述音频数据包的音频播放时间;所述音频播放时间为所述第一系统时间、播放延迟时间以及所述时间差值之和;其中,
所述第一播放设备确定所述第一播放设备与所述第二播放设备的系统时间的时间差值,包括:所述第一播放设备向所述第二播放设备发送请求消息,并记录发送所述请求消息时所述第一播放设备的第一系统时间;所述第一播放设备接收所述第二播放设备返回的响应消息,并记录接收到所述响应消息时所述第一播放设备的第二系统时间;其中,所述响应消息中携带所述第二播放设备接收到所述请求消息/返回所述响应消息时的第三系统时间;所述第一播放设备根据所述发送所述请求消息时所述第一播放设备的第一系统时间、所述第二系统时间和所述第三系统时间计算所述时间差值。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述第一播放设备接收所述第二播放设备发送的播放控制命令;其中,所述播放控制命令包括:暂停命令、恢复命令和拖动命令;
所述第一播放设备根据所述播放控制命令对所述视频图像进行暂停播放、恢复播放、拖动播放进度的控制操作,并向所述第二播放设备返回控制响应。
3.一种跨设备的音视频数据同步播放的方法,其特征在于,所述方法包括:
第二播放设备接收第一播放设备发送的音频数据包和音频数据包对应音频播放时间;
所述第二播放设备将接收到的所述音频数据包按照所述音频数据包对应的音频播放时间顺序缓存到播放缓存队列;
当所述第二播放设备的当前系统时间与所述音频播放时间的时间差值的绝对值小于或等于预设阈值时,所述第二播放设备播放所述音频数据包;其中,所述音频播放时间为第一系统时间、预先确定的播放延迟时间、所述第一播放设备与所述第二播放设备的系统时间差值之和,所述第一系统时间为获取到所述音频数据包时所述第一播放设备的系统时间,其中,
所述第一播放设备与所述第二播放设备的系统时间差值通过如下步骤确定的:由所述第一播放设备向所述第二播放设备发送请求消息,并记录发送所述请求消息时所述第一播放设备的第一系统时间;由所述第一播放设备接收所述第二播放设备返回的响应消息,并记录接收到所述响应消息时所述第一播放设备的第二系统时间;其中,所述响应消息中携带所述第二播放设备接收到所述请求消息/返回所述响应消息时的第三系统时间;由所述第一播放设备根据所述发送所述请求消息时所述第一播放设备的第一系统时间、所述第二系统时间和所述第三系统时间计算所述时间差值,由所述第一播放设备根据视频播放时间播放所述音频数据包对应的视频图像,其中,所述视频播放时间为所述第一系统时间与预先确定的播放延迟时间之和。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
所述第二播放设备向所述第一播放设备发送播放控制命令;其中,所述控制命令包括:暂停命令、恢复命令和拖动命令;
所述第二播放设备接收所述第一播放设备返回的控制响应,并对音频数据包进行相应播放控制。
5.根据权利要求3或4所述的方法,其特征在于,所述方法还包括:
当所述音频播放时间与所述当前系统时间的时间差值大于所述预设阈值时,所述第二播放设备等待播放所述音频数据包;
当所述当前系统时间与所述音频播放时间的时间差值大于所述预设阈值时,所述第二播放设备丢弃所述音频数据包。
6.一种第一播放设备,其特征在于,所述第一播放设备包括:获取单元、确定单元和视频播放单元;
所述获取单元,用于获取当前系统播放的音频数据包,并记录获取到所述音频数据包时所述第一播放设备的第一系统时间;
所述确定单元,用于确定所述音频数据包的音频播放时间,并将所述音频数据包和所述音频播放时间发送给第二播放设备;
所述视频播放单元,用于根据视频播放时间播放所述音频数据包对应的视频图像;其中,所述视频播放时间为所述第一系统时间与预先确定的播放延迟时间之和,其中,
所述确定单元具体用于确定所述第一播放设备与所述第二播放设备的系统时间的时间差值;根据所述第一系统时间、所述播放延迟时间以及所述时间差值,确定所述音频数据包的音频播放时间;所述音频播放时间为所述第一系统时间、所述播放延迟时间以及所述时间差值之和;
所述确定单元,还用于向所述第二播放设备发送请求消息,并记录发送所述请求消息时所述第一播放设备的第一系统时间;接收所述第二播放设备返回的响应消息,并记录接收到所述响应消息时所述第一播放设备的第二系统时间;其中,所述响应消息中携带所述第二播放设备接收到所述请求消息/返回所述响应消息时的第三系统时间;根据所述发送所述请求消息时所述第一播放设备的第一系统时间、所述第二系统时间和所述第三系统时间计算所述时间差值。
7.根据权利要求6所述的第一播放设备,其特征在于,所述音频播放单元,还用于接收所述第二播放设备发送的播放控制命令;其中,所述播放控制命令包括:暂停命令、恢复命令和拖动命令;根据所述播放控制命令对视频图像进行暂停播放、恢复播放、拖动播放进度的控制操作,并向所述第二播放设备返回控制响应。
8.一种第二播放设备,其特征在于,所述第二播放设备包括:接收单元、缓存单元和音频播放单元;
所述接收单元,用于接收第一播放设备发送的音频数据包和音频数据包对应音频播放时间;
所述缓存单元,用于按照所述音频数据包对应的音频播放时间顺序缓存到播放缓存队列;
所述音频播放单元,用于当所述第二播放设备的当前系统时间与所述音频播放时间的时间差值的绝对值小于或等于预设阈值时,所述第二播放设备播放所述音频数据包;其中,所述音频播放时间为第一系统时间、预先确定的播放延迟时间、所述第一播放设备与所述第二播放设备的系统时间差值之和,所述第一系统时间为获取到所述音频数据包时所述第一播放设备的系统时间,其中,
所述第一播放设备与所述第二播放设备的系统时间差值通过如下步骤确定的:由所述第一播放设备向所述第二播放设备发送请求消息,并记录发送所述请求消息时所述第一播放设备的第一系统时间;由所述第一播放设备接收所述第二播放设备返回的响应消息,并记录接收到所述响应消息时所述第一播放设备的第二系统时间;其中,所述响应消息中携带所述第二播放设备接收到所述请求消息/返回所述响应消息时的第三系统时间;由所述第一播放设备根据所述发送所述请求消息时所述第一播放设备的第一系统时间、所述第二系统时间和所述第三系统时间计算所述时间差值,由所述第一播放设备根据视频播放时间播放所述音频数据包对应的视频图像,其中,所述视频播放时间为所述第一系统时间与预先确定的播放延迟时间之和。
9.根据权利要求8所述的第二播放设备,其特征在于,所述第二播放设备,还用于向所述第一播放设备发送播放控制命令;其中,所述播放控制命令包括:暂停命令、恢复命令和拖动命令;接收所述第一播放设备返回的控制响应,并对音频数据包进行相应播放控制。
10.根据权利要求8或9所述的第二播放设备,其特征在于,所述音频播放单元,还用于当所述音频播放时间与所述当前系统时间的时间差值大于所述预设阈值时,等待播放所述音频数据包;当所述当前系统时间与所述音频播放时间的时间差值大于所述预设阈值时,丢弃所述音频数据包。
11.一种系统,其特征在于,包括:如权利要求6或7所述的第一播放设备,以及如权利要求8至10任一项所述的第二播放设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611248570.8A CN106792073B (zh) | 2016-12-29 | 2016-12-29 | 跨设备的音视频数据同步播放的方法、播放设备及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611248570.8A CN106792073B (zh) | 2016-12-29 | 2016-12-29 | 跨设备的音视频数据同步播放的方法、播放设备及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106792073A CN106792073A (zh) | 2017-05-31 |
CN106792073B true CN106792073B (zh) | 2019-09-17 |
Family
ID=58927630
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611248570.8A Active CN106792073B (zh) | 2016-12-29 | 2016-12-29 | 跨设备的音视频数据同步播放的方法、播放设备及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106792073B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108111997B (zh) * | 2017-12-15 | 2020-12-08 | 珠海市杰理科技股份有限公司 | 蓝牙设备音频同步方法和系统 |
CN108540830A (zh) * | 2018-04-13 | 2018-09-14 | 青岛海信电器股份有限公司 | 一种多播放设备同步播放方法、系统及终端 |
CN109600665B (zh) * | 2018-08-01 | 2020-06-19 | 北京微播视界科技有限公司 | 用于处理数据的方法和装置 |
CN109600564B (zh) * | 2018-08-01 | 2020-06-02 | 北京微播视界科技有限公司 | 用于确定时间戳的方法和装置 |
CN109168059B (zh) * | 2018-10-17 | 2021-06-18 | 上海赛连信息科技有限公司 | 一种在不同设备上分别播放音频与视频的唇音同步方法 |
US11190836B2 (en) | 2018-12-20 | 2021-11-30 | Hisense Visual Technology Co., Ltd. | Audio playing and transmitting methods and apparatuses |
CN111352605A (zh) * | 2018-12-20 | 2020-06-30 | 海信视像科技股份有限公司 | 一种音频播放、发送的方法及装置 |
EP3902271A4 (en) * | 2018-12-20 | 2022-10-26 | Hisense Visual Technology Co., Ltd. | AUDIO REPRODUCTION AND TRANSMISSION METHOD AND APPARATUS |
CN110312159B (zh) * | 2019-05-24 | 2022-03-11 | 深圳市朗强科技有限公司 | 一种信号接收装置、流媒体传输系统及流媒体传输方法 |
CN110430457B (zh) * | 2019-07-25 | 2021-09-10 | 北京奇艺世纪科技有限公司 | 异端音视频播放方法、装置及音视频播放系统 |
CN110545454A (zh) * | 2019-08-27 | 2019-12-06 | 北京奇艺世纪科技有限公司 | 一种数据同步播放方法及装置 |
CN111586152B (zh) * | 2020-04-30 | 2023-06-02 | 北京小米移动软件有限公司 | 蓝牙传输数据的播放方法及装置、蓝牙传输数据的发送方法及装置 |
CN114827696B (zh) * | 2021-01-29 | 2023-06-27 | 华为技术有限公司 | 一种跨设备的音视频数据同步播放的方法和电子设备 |
CN114173172B (zh) * | 2021-12-09 | 2023-07-25 | 深圳创维数字技术有限公司 | 数据处理方法、装置、终端设备以及存储介质 |
CN114554270A (zh) * | 2022-02-28 | 2022-05-27 | 维沃移动通信有限公司 | 音视频播放方法及其装置 |
CN115942021B (zh) * | 2023-02-17 | 2023-06-27 | 央广新媒体文化传媒(北京)有限公司 | 音视频流同步播放方法、装置、电子设备及存储介质 |
CN116112722B (zh) * | 2023-02-17 | 2023-06-27 | 央广新媒体文化传媒(北京)有限公司 | 音频播放方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060065436A (ko) * | 2004-12-10 | 2006-06-14 | 한국전자통신연구원 | 디지털 멀티미디어 방송 수신 장치에서의 오디오 및 비디오동기화 방법 및 장치 |
EP1860866A1 (en) * | 2006-05-26 | 2007-11-28 | British Telecommunications Public Limited Company | Audio-visual reception |
CN104837046A (zh) * | 2015-01-08 | 2015-08-12 | 腾讯科技(北京)有限公司 | 多媒体文件的处理方法和装置 |
CN105847926A (zh) * | 2016-03-31 | 2016-08-10 | 乐视控股(北京)有限公司 | 一种多媒体数据的同步播放方法及装置 |
CN105959786A (zh) * | 2016-04-28 | 2016-09-21 | 乐视控股(北京)有限公司 | 音视频播放的方法和装置 |
-
2016
- 2016-12-29 CN CN201611248570.8A patent/CN106792073B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060065436A (ko) * | 2004-12-10 | 2006-06-14 | 한국전자통신연구원 | 디지털 멀티미디어 방송 수신 장치에서의 오디오 및 비디오동기화 방법 및 장치 |
EP1860866A1 (en) * | 2006-05-26 | 2007-11-28 | British Telecommunications Public Limited Company | Audio-visual reception |
CN104837046A (zh) * | 2015-01-08 | 2015-08-12 | 腾讯科技(北京)有限公司 | 多媒体文件的处理方法和装置 |
CN105847926A (zh) * | 2016-03-31 | 2016-08-10 | 乐视控股(北京)有限公司 | 一种多媒体数据的同步播放方法及装置 |
CN105959786A (zh) * | 2016-04-28 | 2016-09-21 | 乐视控股(北京)有限公司 | 音视频播放的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN106792073A (zh) | 2017-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106792073B (zh) | 跨设备的音视频数据同步播放的方法、播放设备及系统 | |
CN106686438B (zh) | 一种跨设备的音频图像同步播放的方法、装置及系统 | |
JP7120997B2 (ja) | オーディオとビデオのマルチモード同期レンダリング | |
JP5894220B2 (ja) | プログレッシブ再生を含む映像分配システム | |
US9635335B2 (en) | System and methods for recording a compressed video and audio stream | |
EP3968647A1 (en) | Media stream transmission method and system | |
CN107819809B (zh) | 对内容进行同步操作的方法及装置 | |
US8244897B2 (en) | Content reproduction apparatus, content reproduction method, and program | |
EP2413564B1 (en) | Method and apparatus for transmitting and receiving streaming data based on RTSP sessions | |
US11005975B2 (en) | Rapid optimization of media stream bitrate | |
TW200820777A (en) | System and method of audio/video streaming | |
JP2008503926A (ja) | ネットワークを介したメディアの対話型制御のための方法及びシステム | |
US20190373296A1 (en) | Content streaming system and method | |
CN110519627A (zh) | 一种音频数据的同步方法和装置 | |
CN113727185A (zh) | 视频帧播放方法及系统 | |
CN104581340A (zh) | 客户端、流媒体数据接收方法和流媒体数据传输系统 | |
US20120117265A1 (en) | Method and communication system for implementing stream services, and relevant device | |
WO2015018119A1 (zh) | 一种多媒体文件生成的方法及多媒体设备 | |
CN108810575B (zh) | 一种发送目标视频的方法和装置 | |
CN101459852A (zh) | 预测视频业务发生时延的方法和装置 | |
TWI523511B (zh) | Variable bit rate video panning method | |
JP2009077108A (ja) | 受信装置、受信方法およびコンピュータプログラム | |
CN109587513B (zh) | 一种音视频文件的读取方法和系统 | |
KR100621313B1 (ko) | 데이터 버퍼링 장치 및 방법 | |
WO2005002231A1 (ja) | 映像編集装置 |
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 |