CN110545454A - 一种数据同步播放方法及装置 - Google Patents
一种数据同步播放方法及装置 Download PDFInfo
- Publication number
- CN110545454A CN110545454A CN201910795500.1A CN201910795500A CN110545454A CN 110545454 A CN110545454 A CN 110545454A CN 201910795500 A CN201910795500 A CN 201910795500A CN 110545454 A CN110545454 A CN 110545454A
- Authority
- CN
- China
- Prior art keywords
- time
- output
- screen projection
- playing
- video
- 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.)
- Pending
Links
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/41—Structure of client; Structure of client peripherals
- H04N21/4104—Peripherals receiving signals from specially adapted client devices
- H04N21/4122—Peripherals receiving signals from specially adapted client devices additional display device, e.g. video projector
-
- 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/41—Structure of client; Structure of client peripherals
- H04N21/4104—Peripherals receiving signals from specially adapted client devices
- H04N21/4126—The peripheral being portable, e.g. PDAs or mobile phones
-
- 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)
Abstract
本发明实施例提供了一种数据同步播放方法及装置,涉及多媒体数据处理技术领域,其中,上述方法包括:确定投屏设备向显示设备输出待播放视频中视频数据的输出时延,获得期望投屏设备输出视频数据的期望输出时刻,计算期望输出时刻与输出时延的和,作为视频数据的实际输出时刻,并在实际输出时刻向显示设备输出视频数据,指示显示设备在实际输出时刻播放视频数据,将时间信息发送到移动设备,指示移动设备根据时间信息得到实际播放时刻、并在移动设备得到待播放视频中音频数据的情况下在实际播放时刻播放音频数据。由此可见,应用本发明实施例提供的方案,可以实现移动设备端音频数据与显示设备端视频数据同步播放。
Description
技术领域
本发明涉及多媒体数据处理技术领域,特别是涉及一种数据同步播放方法及装置。
背景技术
在利用投屏设备播放视频时,投屏设备可以与显示设备通信连接,由显示设备播放上述投屏设备要播放的视频。
现有技术中,投屏设备获取多媒体数据后,将多媒体数据传输到显示设备,显示设备同步播放多媒体数据中包含的视频数据和音频数据。由于多数显示设备不便于或者不能连接耳机,通常以公开播放的方式播放音频数据,这样显示设备在播放音频数据时会给设备周围不想收听音频数据的人带来干扰。
因此,现在亟需一种能够使得多媒体数据中包含的视频数据在显示设备、音频数据在能够外接耳机的移动设备同步播放的方案。
发明内容
本发明实施例的目的在于提供一种数据同步播放方法及装置,以实现移动设备端音频数据与显示设备端视频数据同步播放。具体技术方案如下:
第一方面,本发明实施例提供了一种数据同步播放方法,应用于投屏设备,所述方法包括:
确定所述投屏设备向显示设备输出待播放视频中视频数据的输出时延,其中,所述输出时延的值大于或等于各个移动设备对应传输时间中的最大值,所述传输时间为:数据从所述投屏设备传输到移动设备所需要的时间;
获得期望所述投屏设备输出所述视频数据的期望输出时刻;
计算所述期望输出时刻与输出时延的和,作为所述视频数据的实际输出时刻,并在所述实际输出时刻向所述显示设备输出所述视频数据,指示所述显示设备在所述实际输出时刻播放所述视频数据;
将时间信息发送到移动设备,指示所述移动设备根据所述时间信息得到实际播放时刻、并在所述移动设备得到所述待播放视频中音频数据的情况下在所述实际播放时刻播放所述音频数据,其中,所述时间信息为实际播放时刻或原始时刻,所述原始时刻包括输出时延和期望输出时刻,所述实际播放时刻为期望输出时刻、输出时延与系统时间差的和,所述系统时间差为:移动设备的系统时间相对于所述投屏设备的系统时间之差。
本发明的一个实施例中,所述确定所述投屏设备向显示设备输出待播放视频中视频数据的输出时延,包括:
通过以下表达式确定所述输出时延Tvd:
Tvd=ceil(Ts+c*floor(Ts/c))
其中,c表示预设的参数,Ts表示各个移动设备对应传输时间中值最大的传输时间,floor表示向下取整运算,ceil表示向上取整运算。
本发明的一个实施例中,在所述时间信息为实际播放时刻的情况下,所述将所述时间信息发送到移动设备,包括:
获得所述系统时间差;
计算所述期望输出时刻、系统时间差和输出时延的和,得到实际播放时刻;
将计算得到的实际播放时刻作为时间信息发送到所述移动设备。
本发明的一个实施例中,所述将所述时间信息发送到移动设备,指示所述移动设备根据所述时间信息得到实际播放时刻、并在所述移动设备得到所述待播放视频中音频数据的情况下在所述实际播放时刻播放所述音频数据,包括:
将所述待播放视频的音频数据和时间信息发送到移动设备,指示所述移动设备根据所述时间信息得到实际播放时刻、并在所述实际播放时刻播放所接收到的音频数据。
本发明的一个实施例中,所述将所述时间信息发送到移动设备,指示所述移动设备根据所述时间信息得到实际播放时刻、并在所述移动设备得到所述待播放视频中音频数据的情况下在所述实际播放时刻播放所述音频数据,包括:
将所述时间信息发送到移动设备,指示所述移动设备从服务端获得所述待播放视频的音频数据、根据所述时间信息得到实际播放时刻、并在所述实际播放时刻播放所获得的音频数据。
本发明的一个实施例中,所述方法还包括:
通过以下方式检测是否需要获得传输时间,若需要,则获得传输时间,并判断所述传输时间是否大于所述输出时延,若大于,执行所述确定所述投屏设备向显示设备输出待播放视频中视频数据的输出时延的步骤:
检测是否存在新的移动设备与所述投屏设备建立了连接,若为是,则判定需要获得传输时间;
和/或
检测是否存在网络抖动,若为是,则判定需要获得传输时间。
第二方面,本发明实施例提供了一种数据同步播放方法,应用于移动设备,所述方法包括:
接收投屏设备发送的时间信息,并获得待播放视频中的音频数据,其中,所述时间信息为实际播放时刻或原始时刻,所述原始时刻包括输出时延和期望输出时刻,所述期望输出时刻为期望投屏设备输出待播放视频中视频数据的时刻,所述输出时延为投屏设备延迟向显示设备输出所述视频数据的时间值,所述实际播放时刻为期望输出时刻、输出时延与系统时间差的和,所述系统时间差为所述移动设备的系统时间相对于所述投屏设备的系统时间的差值;
依据所述时间信息得到所述音频数据的实际播放时刻;
在所述实际播放时刻播放所述音频数据。
本发明的一个实施例中,所述依据所述时间信息得到所述待播放视频中音频数据的实际播放时刻,包括:
在所述时间信息为原始时刻的情况下,获得所述系统时间差,计算所述输出时延、系统时间差和期望输出时刻的和,得到所述音频数据的实际播放时刻。
本发明的一个实施例中,所述获得所述音频数据,包括:
获得所述投屏设备发送的音频数据;或
从服务端获得所述待播放视频的音频数据。
第三方面,本发明实施例提供了一种数据同步播放方法,应用于显示设备,所述方法包括:
接收投屏设备在实际输出时刻输出的待播放视频中的视频数据,其中,所述实际输出时刻为:期望输出时刻与输出时延的和,所述期望输出时刻为:期望所述投屏设备输出所述视频数据的时刻,所述输出时延的值大于或等于各个移动设备对应传输时间中的最大值,所述传输时间为:数据从所述投屏设备传输到所述移动设备所需的时间;
播放所述视频数据。
第四方面,本发明实施例提供了一种数据同步播放系统,所述系统包括投屏设备、移动设备与显示设备,其中:
所述投屏设备,用于确定所述投屏设备向所述显示设备输出待播放视频中视频数据的输出时延,其中,所述输出时延的值大于或等于各个移动设备对应传输时间中的最大值,所述传输时间为:数据从所述投屏设备传输到移动设备所需要的时间;
所述投屏设备,还用于获得期望所述投屏设备输出所述视频数据的期望输出时刻,计算所述期望输出时刻与输出时延的和,作为所述视频数据的实际输出时刻,并在所述实际输出时刻向所述显示设备输出所述视频数据;
所述显示设备,用于接收并播放所述视频数据;
所述投屏设备,还用于将时间信息发送到所述移动设备,其中,所述时间信息为实际播放时刻或原始时刻,所述原始时刻包括输出时延和期望输出时刻,所述实际播放时刻为期望输出时刻、输出时延与系统时间差的和,所述系统时间差为:移动设备的系统时间相对于所述投屏设备的系统时间之差;
所述移动设备,用于接收所述时间信息,并获得所述待播放视频中的音频数据;
所述移动设备,还用于依据所述时间信息得到所述音频数据的实际播放时刻,并在所述实际播放时刻播放所述音频数据。
第五方面,本发明实施例提供了一种数据同步播放装置,应用于投屏设备,所述装置包括:
时延确定模块,用于确定所述投屏设备向显示设备输出待播放视频中视频数据的输出时延,其中,所述输出时延的值大于或等于各个移动设备对应传输时间中的最大值,所述传输时间为:数据从所述投屏设备传输到移动设备所需要的时间;
期望时刻获得模块,用于获得期望所述投屏设备输出所述视频数据的期望输出时刻;
视频数据输出模块,用于计算所述期望输出时刻与输出时延的和,作为所述视频数据的实际输出时刻,并在所述实际输出时刻向所述显示设备输出所述视频数据,指示所述显示设备在所述实际输出时刻播放所述视频数据;
信息发送模块,用于将时间信息发送到移动设备,指示所述移动设备根据所述时间信息得到实际播放时刻、并在所述移动设备得到所述待播放视频中音频数据的情况下在所述实际播放时刻播放所述音频数据,其中,所述时间信息为实际播放时刻或原始时刻,所述原始时刻包括输出时延和期望输出时刻,所述实际播放时刻为期望输出时刻、输出时延与系统时间差的和,所述系统时间差为:移动设备的系统时间相对于所述投屏设备的系统时间之差。
本发明的一个实施例中,所述时延确定模块,具体用于:
通过以下表达式确定所述输出时延Tvd:
Tvd=ceil(Ts+c*floor(Ts/c))
其中,c表示预设的参数,Ts表示各个移动设备对应传输时间中值最大的传输时间,floor表示向下取整运算,ceil表示向上取整运算。
本发明的一个实施例中,在所述时间信息为实际播放时刻的情况下,所述信息发送模块,具体用于:
获得所述系统时间差;
计算所述期望输出时刻、系统时间差和输出时延的和,得到实际播放时刻;
将计算得到的实际播放时刻作为时间信息发送到所述移动设备。
本发明的一个实施例中,所述信息发送模块,具体用于:
将所述待播放视频的音频数据和时间信息发送到移动设备,指示所述移动设备根据所述时间信息得到实际播放时刻、并在所述实际播放时刻播放所接收到的音频数据。
本发明的一个实施例中,所述信息发送模块,具体用于:
将所述时间信息发送到移动设备,指示所述移动设备从服务端获得所述待播放视频的音频数据、根据所述时间信息得到实际播放时刻、并在所述实际播放时刻播放所获得的音频数据。
本发明的一个实施例中,所述装置还包括:
时延检测模块,用于通过以下方式检测是否需要获得传输时间,若需要,则获得传输时间,并判断所述传输时间是否大于所述输出时延,若大于,执行所述确定所述投屏设备向显示设备输出待播放视频中视频数据的输出时延的步骤:
检测是否存在新的移动设备与所述投屏设备建立了连接,若为是,则判定需要获得传输时间;
和/或
检测是否存在网络抖动,若为是,则判定需要获得传输时间。
第六方面,本发明实施例提供了一种数据同步播放装置,应用于移动设备,所述装置包括:
信息接收模块,用于接收投屏设备发送的时间信息,并获得待播放视频中的音频数据,其中,所述时间信息为实际播放时刻或原始时刻,所述原始时刻包括输出时延和期望输出时刻,所述期望输出时刻为期望投屏设备输出待播放视频中视频数据的时刻,所述输出时延为投屏设备延迟向显示设备输出所述视频数据的时间值,所述实际播放时刻为期望输出时刻、输出时延与系统时间差的和,所述系统时间差为所述移动设备的系统时间相对于所述投屏设备的系统时间的差值;
播放时刻获得模块,用于依据所述时间信息得到所述音频数据的实际播放时刻;
音频数据播放模块,用于在所述实际播放时刻播放所述音频数据。
本发明的一个实施例中,所述播放时刻获得模块,具体用于:
在所述时间信息为原始时刻的情况下,获得所述系统时间差,计算所述输出时延、系统时间差和期望输出时刻的和,得到所述音频数据的实际播放时刻。
本发明的一个实施例中,所述信息接收模块,具体用于:
接收投屏设备发送的时间信息,获得所述投屏设备发送的音频数据或从服务端获得所述待播放视频的音频数据。
第七方面,本发明实施例提供了一种数据同步播放装置,应用于显示设备,所述装置包括:
视频数据接收模块,用于接收投屏设备在实际输出时刻输出的待播放视频中的视频数据,其中,所述实际输出时刻为:期望输出时刻与输出时延的和,所述期望输出时刻为:期望所述投屏设备输出所述视频数据的时刻,所述输出时延的值大于或等于各个移动设备对应传输时间中的最大值,所述传输时间为:数据从所述投屏设备传输到所述移动设备所需的时间;
视频数据播放模块,用于播放所述视频数据。
第八方面,本发明实施例提供了一种投屏设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第一方面任一所述的方法步骤。
第九方面,本发明实施例提供了一种移动设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第二方面任一所述的方法步骤。
第十方面,本发明实施例提供了一种显示设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第三方面中所述的方法步骤。
第十一方面,本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一第一方面所述的方法。
第十二方面,本发明实施例还提供了另一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一第二方面所述的方法。
第十三方面,本发明实施例还提供了又一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第三方面所述的方法。
由以上可见,应用本发明实施例提供的方案进行数据同步播放时,考虑到数据从投屏设备传输到移动设备需要传输时间,因此首先确定不小于传输时间的值作为输出时延,以期望输出时刻与输出时延的和作为投屏设备输出待播放视频中视频数据的实际输出时刻,再将时间信息发送到移动设备,指示移动设备根据时间信息得到待播放视频中音频数据的实际播放时刻,并且移动设备在得到音频数据的情况下、在实际播放时刻播放音频数据。由于本方案中显示设备播放视频数据的时刻与投屏设备输出视频数据的时刻一致,而音频数据的实际播放时刻通过计算移动设备与投屏设备之间系统时间差、输出时延与期望输出时刻的和得到,可以保持音频数据在移动设备端播放的时刻相对于投屏设备输出视频数据的时刻一致,进而使得显示设备播放视频数据的时刻与移动设备播放音频数据的时刻保持一致。
由此可见,应用本发明实施例提供的方案,可以实现移动设备端音频数据与显示设备端视频数据同步播放。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的第一种数据同步播放方法的流程示意图;
图2为本发明实施例提供的第二种数据同步播放方法的流程示意图;
图3为本发明实施例提供的第三种数据同步播放方法的流程示意图;
图4为本发明实施例提供的第四种数据同步播放方法的流程示意图;
图5为本发明实施例提供的一种数据同步播放系统的结构示意图;
图6为本发明实施例提供的第一种数据同步播放装置的结构示意图;
图7为本发明实施例提供的第二种数据同步播放装置的结构示意图;
图8为本发明实施例提供的第三种数据同步播放装置的结构示意图;
图9为本发明实施例提供的一种投屏设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种数据同步播放方法及装置,以下分别进行详细说明。
参见图1,图1为本发明实施例提供的一种数据同步播放方法的流程示意图。上述方法应用于投屏设备,其中,投屏设备为可以将多媒体数据投放到显示设备的设备,例如,上述投屏设备可以是电视盒子等。上述显示设备为显示多媒体数据的设备,例如,可以是电视、投影仪、电脑显示器等。上述方法包括如下步骤101-104:
步骤101,确定投屏设备向显示设备输出待播放视频中视频数据的输出时延。
其中,输出时延的值大于或等于各个移动设备对应传输时间中的最大值,传输时间为:数据从投屏设备传输到移动设备所需要的时间。上述移动设备可以是手机、平板电脑等。
可以认为上述数据是投屏设备与移动设备之间通信数据的一种统称。例如,上述数据可以是多媒体数据、报文、控制命令等。另外,上述数据并不是本发明实施例中显示设备和移动设备同步播放的视频数据和音频数据对应的多媒体数据。
本发明的一个实施例中,各个移动设备对应的传输时间可以是以投屏设备与移动设备之间发送报文的形式计算得到。具体的,投屏设备向移动设备发送一个报文,获得第一发送时间,移动设备接收到报文之后,获得第一接收时间,移动设备再向投屏设备发送上述报文的响应报文,获得第二发送时间,投屏设备接收到移动设备发送的报文,并获得第二接收时间。利用上述第一发送时间、第一接收时间、第二发送时间、第二接收时间,投屏设备可以根据以下公式计算出数据从投屏设备传输到移动设备的传输时间:
Ts=Tj2-Tf1-(Tf2-Tj1)
其中,上述Ts表示传输时间,Tf1表示第一发送时间,Tj1表示第一接收时间,Tf2表示第二发送时间,Tj2表示第二接收时间。
例如,假设Tf1为第123ms时刻,Tj1为第450ms时刻,Tf2为第456ms时刻,Tj2为第240ms时刻,则数据从投屏设备传输到移动设备的传输时间Ts为:
本发明的一个实施例中,可以通过以下表达式确定输出时延Tvd:
Tvd=ceil(Ts+c*floor(Ts/c))
其中,c表示预设的参数,Ts表示各个移动设备对应传输时间中值最大的传输时间,floor表示向下取整运算,ceil表示向上取整运算。
假设,上述c的取值可以是0.5。在这种情况下,若Ts的值为0.055s,则根据上述公式可以计算得到输出时延Tvd:
Tvd=ceil(0.055s+0.5*floor(0.055s/0.5))=1s
除了上述情况外,上述c的取值还可以是其他数值,例如0.2、0.3、1等。
在投屏设备与多个移动设备通信连接的情况下,投屏设备与每台移动设备之间的传输时间可能是不一致的,但是为了保证所有连接的移动设备都能实现同步播放音频数据,所以投屏设备输出视频数据的输出时延是一致的。同样的,在产生网络抖动的情况下,投屏设备与移动设备之间的传输时间也会发生改变,因此上述输出时延应该满足在传输时间发生浮动的情况下依然大于传输时间。应用上述实施例提供的表达式确定出的输出时延,既能在一定范围内满足输出时延的变化,又不至于输出时延的值太大影响用户体验。
本发明的另一个实施例中,可以预先设定一组输出时延序列,在序列中确定大于或等于传输时间中最大值的最小输出时延。
例如,预先设定的输出时延序列为:
1s,2s,4s,6s,8s,10s
假如计算得到的传输时间为300ms,则上述序列中大于300ms的最小输出时延为1s,因此,可以选择1s作为输出时延。假如计算得到的传输时间为1500ms,则上述序列中大于300ms的最小输出时延为2s,因此,可以选择2s作为输出时延。
步骤102,获得期望投屏设备输出视频数据的期望输出时刻。
其中,上述期望输出时刻可以是投屏设备接收到的指令所指示的播放视频数据的时刻,也可以是预先设定的视频数据的播放时刻。
步骤103,计算期望输出时刻与输出时延的和,作为视频数据的实际输出时刻,并在实际输出时刻向显示设备输出视频数据,指示显示设备在实际输出时刻播放视频数据。
例如,假设期望输出时刻为第0s时刻,输出时延为1s,则视频数据的实际输出时刻为第1s时刻,投屏设备将会在第1s的时刻向显示设备输出视频数据。
本发明的一个实施例中,可以将投屏设备与显示设备通过数据线进行通信连接,也就是投屏设备与显示设备之间的连接方式为有线连接方式,这样由于投屏设备和显示设备之间的传输距离不会太远,通过数据线传输数据时可以忽略视频数据的传输时间,因此可以认为显示设备播放视频数据的时刻与投屏设备输出视频数据的时刻一致。
步骤104,将时间信息发送到移动设备,指示移动设备根据时间信息得到实际播放时刻、并在移动设备得到待播放视频中音频数据的情况下在实际播放时刻播放音频数据。
其中,时间信息为实际播放时刻或原始时刻,原始时刻包括输出时延和期望输出时刻,实际播放时刻为期望输出时刻、输出时延与系统时间差的和,系统时间差为:移动设备的系统时间相对于投屏设备的系统时间之差。
本发明的一个实施例中,可以直接将期望输出时刻和输出时延作为时间信息,将时间信息发送到移动设备。应用本发明实施例提供的方案,无需在投屏设备端计算音频数据的实际播放时刻,而只需要将期望输出时刻和输出时延发送到移动设备,由移动设备获得相对于投屏设备的系统时间差,移动设备再由上述期望输出时刻、输出时延和系统时间差计算得到音频数据的实际播放时刻,并且在实际播放时刻播放音频数据。
本发明的一个实施例中,还可以由投屏设备获得上述系统时间差,计算期望输出时刻、系统时间差和输出时延的和,得到实际播放时刻,将计算得到的实际播放时刻作为时间信息发送到移动设备。
对于系统时间差,本发明的一个实施例中,可以是以移动设备与投屏设备之间发送报文的形式计算系统时间差。具体的,移动设备向投屏设备发送一个报文,获得第三送时间,投屏设备接收到报文之后,获得第三接收时间,投屏设备再向移动设备发送报文,获得第四发送时间,移动设备接收到投屏设备发送的报文,并获得第四接收时间。利用上述第三发送时间、第三接收时间、第四发送时间、第四接收时间,投屏设备可以根据以下公式计算出移动设备相对于投屏设备的系统时间差:
其中,上述Δt表示系统时间差,Tf3表示第三发送时间,Tj3表示第三接收时间,Tf4表示第四发送时间,Tj4表示第四接收时间。
例如,假设Tf3为第460ms时刻,Tj3为第254ms时刻,Tf4为第259ms时刻,Tj4为第577ms时刻,则系统时间差Δt为:
本发明的一个实施例中,上述音频数据的实际播放时刻可以由以下表达式计算得到:
Tsj=Tqw+Δt+Tvd
其中,上述Tqw表示期望输出时刻,Δt表示系统时间差,Tvd表示输出时延。
应用上述实施例提供的方案,在投屏设备上计算得到音频数据的实际播放时间后,以实际播放时间作为上述时间信息,将计算得到的时间信息发送到移动设备,移动设备无需再次进行计算,直接在实际播放时刻播放音频数据。
本发明的一个实施例中,可以由投屏设备将待播放视频中的音频数据和时间信息发送到移动设备,指示移动设备在实际播放时刻播放音频数据。
其中,投屏设备可以将音频数据和时间信息分别发送到移动设备,也可以将音频数据和时间信息打包发送到移动设备。具体的,投屏设备端可以生成包含音频数据和时间戳的数据包,其中,上述时间戳为计算得到的实际播放时刻,并将生成的数据包发送到移动设备。
这样移动设备仅仅需要接收投屏设备发送的音频数据和时间信息,并在实际播放时刻播放音频数据,可以节省移动设备端的资源。
本发明的一个实施例中,可以由投屏设备将时间信息发送到移动设备,而音频数据则由移动设备从服务端获得。
具体的,服务端中存储有待播放视频的视频数据和音频数据,本实施例中移动设备直接从服务端获得上述音频数据,而无需接收投屏设备发送的音频数据,这样可以节省投屏设备的网络资源,保证投屏设备能够稳定地获得并输出视频数据、发送时间信息。
由以上可见,应用本发明实施例提供的方案进行数据同步播放时,考虑到数据从投屏设备传输到移动设备需要传输时间,因此首先确定不小于传输时间的值作为输出时延,以期望输出时刻与输出时延的和作为投屏设备输出待播放视频中视频数据的实际输出时刻,再将时间信息发送到移动设备,指示移动设备根据时间信息得到待播放视频中音频数据的实际播放时刻,并且移动设备在得到音频数据的情况下、在实际播放时刻播放音频数据。由于本方案中显示设备播放视频数据的时刻与投屏设备输出视频数据的时刻一致,而音频数据的实际播放时刻通过计算移动设备与投屏设备之间系统时间差、输出时延与期望输出时刻的和得到,可以保持音频数据在移动设备端播放的时刻相对于投屏设备输出视频数据的时刻一致,进而使得显示设备播放视频数据的时刻与移动设备播放音频数据的时刻保持一致。
如图2所示,本发明的一个实施例中,上述数据同步播放方法还包括如下步骤105-步骤106。
步骤105:检测是否需要获得新的传输时间。
本发明的一个实施例中,可以检测是否存在新的移动设备与投屏设备建立了连接;若为是,则判定需要获得新的传输时间。
由于新的移动设备与投屏设备建立连接后,会产生新的传输时间,为了保证与投屏设备连接的所有移动设备都能实现音频数据的同步播放,需要获得新的传输时间,并判断新的传输时间与输出时延的大小关系,依据确定出的输出时延计算视频数据的实际输出时刻和音频数据的实际播放时刻。
本发明的另一个实施例中,可以检测是否存在网络抖动;若为是,则判定需要获得新的传输时间。
由于网络抖动会导致数据从投屏设备传输到移动设备的传输时间发生改变,为了保证网络抖动情况下移动设备也能实现音频数据的同步播放,需要获得新的传输时间,并判断新的传输时间与输出时延的大小关系,依据确定出的输出时延计算视频数据的实际输出时刻和音频数据的实际播放时刻。
步骤106:在需要获得新的传输时间的情况下,获得新的传输时间,并判断新的传输时间是否大于输出时延,在新的传输时间大于输出时延的情况下,返回执行上述步骤101。
本发明的一个实施例中,在新的移动设备加入连接的情况下,可以是以投屏设备与新的移动设备之间发送报文的形式计算数据从投屏设备传输到新的移动设备的传输时间。
本发明的一个实施例中,在发生网络抖动的情况下,可以是以投屏设备与移动设备之间发送报文的形式计算数据从投屏设备传输到移动设备的传输时间。
在新的传输时间不大于输出时延的情况下,应用当前的输出时延可以满足音频数据与视频数据的同步播放,因此输出时延保持不变。
在新的传输时间大于输出时延的情况下,说明当时输出时延不足以使得移动设备端音频数据的播放时间与投屏设备端的视频输出时间保持同步,需要依据新的传输时间确定输出时延的值,并根据输出时延计算视频数据的输出时刻和音频数据的播放时刻。
应用上述实施例提供的方案确定出的输出时延,可以满足输出时延大于数据从投屏设备传输到所有移动设备的传输时间,并使得输出时延可以对抗网络抖动带来的传输时间浮动。
如图3所示,本发明实施例还提供了第二种数据同步播放方法,应用于移动设备,包括如下步骤301-步骤303。
步骤301,接收投屏设备发送的时间信息,并获得待播放视频中的音频数据。
其中,时间信息为实际播放时刻或原始时刻,原始时刻包括输出时延和期望输出时刻,期望输出时刻为期望投屏设备输出待播放视频中视频数据的时刻,输出时延为投屏设备延迟向显示设备输出视频数据的时间值,实际播放时刻为期望输出时刻、输出时延与系统时间差的和,系统时间差为移动设备的系统时间相对于投屏设备的系统时间的差值。
本发明的一个实施例中,获得音频数据时,可以获得投屏设备发送的待播放视频中的音频数据,也可以从服务端获得待播放视频中的音频数据。
步骤302,依据时间信息得到音频数据的实际播放时刻。
本发明的一个实施例中,在时间信息为实际播放时刻的情况下,移动设备根据时间信息可以直接得到音频数据的实际播放时刻。
本发明的另一个实施例中,在时间信息为原始时刻的情况下,移动设备可以首先获得系统时间差,然后计算原始时刻中期望输出时刻、输出时延和系统时间差的和,从而得到音频数据的实际播放时刻。其中,上述系统时间差的获得方法同步骤104中系统时间差的获得方法相同,在此不作赘述。
步骤303,在实际播放时刻播放音频数据。
需要说明的是,上述步骤301中获得音频数据步骤的执行顺序与接收时间信息步骤的执行顺序并不存在必然联系,可以先获得音频数据,再接收时间信息,也可以先接收时间信息,再获得音频数据,二者也可以同时执行,也可以在步骤302之后再执行获得音频数据步骤。本发明并不对此进行限定。
由此可见,应用上述实施例提供的数据同步播放方案,移动设备在计算音频数据的实际播放时刻中,将投屏设备的输出时延和相对于投屏设备的系统时间差考虑了进去,可以保持音频数据在移动设备端播放的时刻相对于投屏设备输出视频数据的时刻一致,进而使得显示设备播放视频数据的时刻与移动设备播放音频数据的时刻同步。
如图4所示,本发明实施例还提供了第三种数据同步播放方法,应用于显示设备,包括如下步骤401-步骤402。
步骤401,接收投屏设备在实际输出时刻输出的待播放视频中的视频数据。
其中,实际输出时刻为:期望输出时刻与输出时延的和,期望输出时刻为:期望投屏设备输出视频数据的时刻,输出时延的值大于或等于各个移动设备对应传输时间中的最大值,传输时间为:数据从投屏设备传输到所述移动设备所需的时间;
步骤402,播放视频数据。
如图5所示,本发明的实施例提供了一种数据同步播放系统,所述系统包括投屏设备、移动设备与显示设备,其中:
所述投屏设备,用于确定所述投屏设备向所述显示设备输出待播放视频中视频数据的输出时延,其中,所述输出时延的值大于或等于各个移动设备对应传输时间中的最大值,所述传输时间为:数据从所述投屏设备传输到移动设备所需要的时间;
所述投屏设备,还用于获得期望所述投屏设备输出所述视频数据的期望输出时刻,计算所述期望输出时刻与输出时延的和,作为所述视频数据的实际输出时刻,并在所述实际输出时刻向所述显示设备输出所述视频数据;
所述显示设备,用于接收并播放所述视频数据;
所述投屏设备,还用于将时间信息发送到所述移动设备,其中,所述时间信息为实际播放时刻或原始时刻,所述原始时刻包括输出时延和期望输出时刻,所述实际播放时刻为期望输出时刻、输出时延与系统时间差的和,所述系统时间差为:移动设备的系统时间相对于所述投屏设备的系统时间之差;
所述移动设备,用于接收所述时间信息,并获得所述待播放视频中的音频数据;
所述移动设备,还用于依据所述时间信息得到所述音频数据的实际播放时刻,并在所述实际播放时刻播放所述音频数据。
由以上可见,应用本发明实施例提供的方案进行数据同步播放时,考虑到数据从投屏设备传输到移动设备需要传输时间,因此首先确定不小于传输时间的值作为输出时延,以期望输出时刻与输出时延的和作为投屏设备输出待播放视频中视频数据的实际输出时刻,再将时间信息发送到移动设备,指示移动设备根据时间信息得到待播放视频中音频数据的实际播放时刻,并且移动设备在得到音频数据的情况下、在实际播放时刻播放音频数据。由于本方案中显示设备播放视频数据的时刻与投屏设备输出视频数据的时刻一致,而音频数据的实际播放时刻通过计算移动设备与投屏设备之间系统时间差、输出时延与期望输出时刻的和得到,可以保持音频数据在移动设备端播放的时刻相对于投屏设备输出视频数据的时刻一致,进而使得显示设备播放视频数据的时刻与移动设备播放音频数据的时刻保持一致。
如图6所示,本发明实施例提供了一种数据同步播放装置,应用于投屏设备,所述装置包括:
时延确定模块601,用于确定所述投屏设备向显示设备输出待播放视频中视频数据的输出时延,其中,所述输出时延的值大于或等于各个移动设备对应传输时间中的最大值,所述传输时间为:数据从所述投屏设备传输到移动设备所需要的时间;
期望时刻获得模块602,用于获得期望所述投屏设备输出所述视频数据的期望输出时刻;
视频数据输出模块603,用于计算所述期望输出时刻与输出时延的和,作为所述视频数据的实际输出时刻,并在所述实际输出时刻向所述显示设备输出所述视频数据,指示所述显示设备在所述实际输出时刻播放所述视频数据;
信息发送模块604,用于将时间信息发送到移动设备,指示所述移动设备根据所述时间信息得到实际播放时刻、并在所述移动设备得到所述待播放视频中音频数据的情况下在所述实际播放时刻播放所述音频数据,其中,所述时间信息为实际播放时刻或原始时刻,所述原始时刻包括输出时延和期望输出时刻,所述实际播放时刻为期望输出时刻、输出时延与系统时间差的和,所述系统时间差为:移动设备的系统时间相对于所述投屏设备的系统时间之差。
本发明的一个实施例中,所述时延确定模块601,具体用于:
通过以下表达式确定所述输出时延Tvd:
Tvd=ceil(Ts+c*floor(Ts/c))
其中,c表示预设的参数,Ts表示各个移动设备对应传输时间中值最大的传输时间,floor表示向下取整运算,ceil表示向上取整运算。
本发明的一个实施例中,在所述时间信息为实际播放时刻的情况下,所述信息发送模块604,具体用于:
获得所述系统时间差;
计算所述期望输出时刻、系统时间差和输出时延的和,得到实际播放时刻;
将计算得到的实际播放时刻作为时间信息发送到所述移动设备。
本发明的一个实施例中,所述信息发送模块604,具体用于:
将所述待播放视频的音频数据和时间信息发送到移动设备,指示所述移动设备根据所述时间信息得到实际播放时刻、并在所述实际播放时刻播放所接收到的音频数据。
本发明的一个实施例中,所述信息发送模块604,具体用于:
将所述时间信息发送到移动设备,指示所述移动设备从服务端获得所述待播放视频的音频数据、根据所述时间信息得到实际播放时刻、并在所述实际播放时刻播放所获得的音频数据。
本发明的一个实施例中,所述装置还包括:
时延检测模块,用于通过以下方式检测是否需要获得传输时间,若需要,则获得传输时间,并判断所述传输时间是否大于所述输出时延,若大于,执行所述确定所述投屏设备向显示设备输出待播放视频中视频数据的输出时延的步骤:
检测是否存在新的移动设备与所述投屏设备建立了连接,若为是,则判定需要获得传输时间;和/或
检测是否存在网络抖动,若为是,则判定需要获得传输时间。
如图7所示,本发明实施例提供了一种数据同步播放装置,应用于移动设备,所述装置包括:
信息接收模块701,用于接收投屏设备发送的时间信息,并获得待播放视频中的音频数据,其中,所述时间信息为实际播放时刻或原始时刻,所述原始时刻包括输出时延和期望输出时刻,所述期望输出时刻为期望投屏设备输出待播放视频中视频数据的时刻,所述输出时延为投屏设备延迟向显示设备输出所述视频数据的时间值,所述实际播放时刻为期望输出时刻、输出时延与系统时间差的和,所述系统时间差为所述移动设备的系统时间相对于所述投屏设备的系统时间的差值;
播放时刻获得模块702,用于依据所述时间信息得到所述音频数据的实际播放时刻;
音频数据播放模块703,用于在所述实际播放时刻播放所述音频数据。
本发明的一个实施例中,所述播放时刻获得模块702,具体用于:
在所述时间信息为原始时刻的情况下,获得所述系统时间差,计算所述输出时延、系统时间差和期望输出时刻的和,得到所述音频数据的实际播放时刻。
本发明的一个实施例中,所述信息接收模块701,具体用于:接收投屏设备发送的时间信息,获得所述投屏设备发送的音频数据或从服务端获得所述待播放视频的音频数据。
如图8所示,本发明实施例提供了一种数据同步播放装置,应用于显示设备,所述装置包括:
视频数据接收模块801,用于接收投屏设备在实际输出时刻输出的待播放视频中的视频数据,其中,所述实际输出时刻为:期望输出时刻与输出时延的和,所述期望输出时刻为:期望所述投屏设备输出所述视频数据的时刻,所述输出时延的值大于或等于各个移动设备对应传输时间中的最大值,所述传输时间为:数据从所述投屏设备传输到所述移动设备所需的时间;
视频数据播放模块802,用于播放所述视频数据。
本发明实施例还提供了一种投屏设备,如图9所示,包括处理器901、通信接口902、存储器903和通信总线904,其中,处理器901,通信接口902,存储器903通过通信总线904完成相互间的通信,
存储器903,用于存放计算机程序;
处理器901,用于执行存储器903上所存放的程序时,实现本发明实施例提供的应用于投屏设备的数据同步播放方法。
本发明实施例还提供了一种移动设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信,
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现本发明实施例提供的应用于移动设备的数据同步播放方法。
本发明实施例还提供了一种显示设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信,
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现本发明实施例提供的应用于显示设备的数据同步播放方法。
上述投屏设备、移动设备、显示设备提到的通信总线可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(ExtendedIndustry Standard Architecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述投屏设备、移动设备、显示设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一数据同步播放方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一数据同步播放方法。
可见,应用上述实施例提供的投屏设备、移动设备、显示设备进行数据同步播放时、执行上述实施例提供的计算机可读存储介质中存储的计算机程序进行数据同步播放时以及在计算机上运行上述实施例提供的计算机程序产品而进行数据同步播放时,考虑到数据从投屏设备传输到移动设备需要传输时间,因此首先确定不小于传输时间的值作为输出时延,以期望输出时刻与输出时延的和作为投屏设备输出待播放视频中视频数据的实际输出时刻,再将时间信息发送到移动设备,指示移动设备根据时间信息得到待播放视频中音频数据的实际播放时刻,并且移动设备在得到音频数据的情况下、在实际播放时刻播放音频数据。由于本方案中显示设备播放视频数据的时刻与投屏设备输出视频数据的时刻一致,而音频数据的实际播放时刻通过计算移动设备与投屏设备之间系统时间差、输出时延与期望输出时刻的和得到,可以保持音频数据在移动设备端播放的时刻相对于投屏设备输出视频数据的时刻一致,进而使得显示设备播放视频数据的时刻与移动设备播放音频数据的时刻保持一致。
由此可见,应用上述实施例提供的方案,可以实现移动设备端音频数据与显示设备端视频数据同步播放。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘SolidState Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例、装置实施例、投屏设备实施例、移动设备实施例、显示设备实施例、计算机可读存储介质实施例以及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (24)
1.一种数据同步播放方法,其特征在于,应用于投屏设备,所述方法包括:
确定所述投屏设备向显示设备输出待播放视频中视频数据的输出时延,其中,所述输出时延的值大于或等于各个移动设备对应传输时间中的最大值,所述传输时间为:数据从所述投屏设备传输到移动设备所需要的时间;
获得期望所述投屏设备输出所述视频数据的期望输出时刻;
计算所述期望输出时刻与输出时延的和,作为所述视频数据的实际输出时刻,并在所述实际输出时刻向所述显示设备输出所述视频数据,指示所述显示设备在所述实际输出时刻播放所述视频数据;
将时间信息发送到移动设备,指示所述移动设备根据所述时间信息得到实际播放时刻、并在所述移动设备得到所述待播放视频中音频数据的情况下在所述实际播放时刻播放所述音频数据,其中,所述时间信息为实际播放时刻或原始时刻,所述原始时刻包括输出时延和期望输出时刻,所述实际播放时刻为期望输出时刻、输出时延与系统时间差的和,所述系统时间差为:移动设备的系统时间相对于所述投屏设备的系统时间之差。
2.根据权利要求1所述的方法,其特征在于,所述确定所述投屏设备向显示设备输出待播放视频中视频数据的输出时延,包括:
通过以下表达式确定所述输出时延Tvd:
Tvd=ceil(Ts+c*floor(Ts/c))
其中,c表示预设的参数,Ts表示各个移动设备对应传输时间中值最大的传输时间,floor表示向下取整运算,ceil表示向上取整运算。
3.根据权利要求1或2所述的方法,其特征在于,在所述时间信息为实际播放时刻的情况下,所述将所述时间信息发送到移动设备,包括:
获得所述系统时间差;
计算所述期望输出时刻、系统时间差和输出时延的和,得到实际播放时刻;
将计算得到的实际播放时刻作为时间信息发送到所述移动设备。
4.根据权利要求1或2所述的方法,其特征在于,所述将所述时间信息发送到移动设备,指示所述移动设备根据所述时间信息得到实际播放时刻、并在所述移动设备得到所述待播放视频中音频数据的情况下在所述实际播放时刻播放所述音频数据,包括:
将所述待播放视频的音频数据和时间信息发送到移动设备,指示所述移动设备根据所述时间信息得到实际播放时刻、并在所述实际播放时刻播放所接收到的音频数据。
5.根据权利要求1或2所述的方法,其特征在于,所述将所述时间信息发送到移动设备,指示所述移动设备根据所述时间信息得到实际播放时刻、并在所述移动设备得到所述待播放视频中音频数据的情况下在所述实际播放时刻播放所述音频数据,包括:
将所述时间信息发送到移动设备,指示所述移动设备从服务端获得所述待播放视频的音频数据、根据所述时间信息得到实际播放时刻、并在所述实际播放时刻播放所获得的音频数据。
6.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
通过以下方式检测是否需要获得传输时间,若需要,则获得传输时间,并判断所述传输时间是否大于所述输出时延,若大于,执行所述确定所述投屏设备向显示设备输出待播放视频中视频数据的输出时延的步骤:
检测是否存在新的移动设备与所述投屏设备建立了连接,若为是,则判定需要获得传输时间;
和/或
检测是否存在网络抖动,若为是,则判定需要获得传输时间。
7.一种数据同步播放方法,其特征在于,应用于移动设备,所述方法包括:
接收投屏设备发送的时间信息,并获得待播放视频中的音频数据,其中,所述时间信息为实际播放时刻或原始时刻,所述原始时刻包括输出时延和期望输出时刻,所述期望输出时刻为期望投屏设备输出待播放视频中视频数据的时刻,所述输出时延为投屏设备延迟向显示设备输出所述视频数据的时间值,所述实际播放时刻为期望输出时刻、输出时延与系统时间差的和,所述系统时间差为所述移动设备的系统时间相对于所述投屏设备的系统时间的差值;
依据所述时间信息得到所述音频数据的实际播放时刻;
在所述实际播放时刻播放所述音频数据。
8.根据权利要求7所述的方法,其特征在于,所述依据所述时间信息得到所述待播放视频中音频数据的实际播放时刻,包括:
在所述时间信息为原始时刻的情况下,获得所述系统时间差,计算所述输出时延、系统时间差和期望输出时刻的和,得到所述音频数据的实际播放时刻。
9.根据权利要求7或8所述的方法,其特征在于,所述获得所述音频数据,包括:
获得所述投屏设备发送的音频数据;或
从服务端获得所述待播放视频的音频数据。
10.一种数据同步播放方法,其特征在于,应用于显示设备,所述方法包括:
接收投屏设备在实际输出时刻输出的待播放视频中的视频数据,其中,所述实际输出时刻为:期望输出时刻与输出时延的和,所述期望输出时刻为:期望所述投屏设备输出所述视频数据的时刻,所述输出时延的值大于或等于各个移动设备对应传输时间中的最大值,所述传输时间为:数据从所述投屏设备传输到所述移动设备所需的时间;
播放所述视频数据。
11.一种数据同步播放系统,其特征在于,所述系统包括投屏设备、移动设备与显示设备,其中:
所述投屏设备,用于确定所述投屏设备向所述显示设备输出待播放视频中视频数据的输出时延,其中,所述输出时延的值大于或等于各个移动设备对应传输时间中的最大值,所述传输时间为:数据从所述投屏设备传输到移动设备所需要的时间;
所述投屏设备,还用于获得期望所述投屏设备输出所述视频数据的期望输出时刻,计算所述期望输出时刻与输出时延的和,作为所述视频数据的实际输出时刻,并在所述实际输出时刻向所述显示设备输出所述视频数据;
所述显示设备,用于接收并播放所述视频数据;
所述投屏设备,还用于将时间信息发送到所述移动设备,其中,所述时间信息为实际播放时刻或原始时刻,所述原始时刻包括输出时延和期望输出时刻,所述实际播放时刻为期望输出时刻、输出时延与系统时间差的和,所述系统时间差为:移动设备的系统时间相对于所述投屏设备的系统时间之差;
所述移动设备,用于接收所述时间信息,并获得所述待播放视频中的音频数据;
所述移动设备,还用于依据所述时间信息得到所述音频数据的实际播放时刻,并在所述实际播放时刻播放所述音频数据。
12.一种数据同步播放装置,其特征在于,应用于投屏设备,所述装置包括:
时延确定模块,用于确定所述投屏设备向显示设备输出待播放视频中视频数据的输出时延,其中,所述输出时延的值大于或等于各个移动设备对应传输时间中的最大值,所述传输时间为:数据从所述投屏设备传输到移动设备所需要的时间;
期望时刻获得模块,用于获得期望所述投屏设备输出所述视频数据的期望输出时刻;
视频数据输出模块,用于计算所述期望输出时刻与输出时延的和,作为所述视频数据的实际输出时刻,并在所述实际输出时刻向所述显示设备输出所述视频数据,指示所述显示设备在所述实际输出时刻播放所述视频数据;
信息发送模块,用于将时间信息发送到移动设备,指示所述移动设备根据所述时间信息得到实际播放时刻、并在所述移动设备得到所述待播放视频中音频数据的情况下在所述实际播放时刻播放所述音频数据,其中,所述时间信息为实际播放时刻或原始时刻,所述原始时刻包括输出时延和期望输出时刻,所述实际播放时刻为期望输出时刻、输出时延与系统时间差的和,所述系统时间差为:移动设备的系统时间相对于所述投屏设备的系统时间之差。
13.根据权利要求12所述的装置,其特征在于,所述时延确定模块,具体用于:
通过以下表达式确定所述输出时延Tvd:
Tvd=ceil(Ts+c*floor(Ts/c))
其中,c表示预设的参数,Ts表示各个移动设备对应传输时间中值最大的传输时间,floor表示向下取整运算,ceil表示向上取整运算。
14.根据权利要求12或13所述的装置,其特征在于,在所述时间信息为实际播放时刻的情况下,所述信息发送模块,具体用于:
获得所述系统时间差;
计算所述期望输出时刻、系统时间差和输出时延的和,得到实际播放时刻;
将计算得到的实际播放时刻作为时间信息发送到所述移动设备。
15.根据权利要求12或13所述的装置,其特征在于,所述信息发送模块,具体用于:
将所述待播放视频的音频数据和时间信息发送到移动设备,指示所述移动设备根据所述时间信息得到实际播放时刻、并在所述实际播放时刻播放所接收到的音频数据。
16.根据权利要求12或13所述的装置,其特征在于,所述信息发送模块,具体用于:
将所述时间信息发送到移动设备,指示所述移动设备从服务端获得所述待播放视频的音频数据、根据所述时间信息得到实际播放时刻、并在所述实际播放时刻播放所获得的音频数据。
17.根据权利要求12或13所述的装置,其特征在于,所述装置还包括:
时延检测模块,用于通过以下方式检测是否需要获得传输时间,若需要,则获得传输时间,并判断所述传输时间是否大于所述输出时延,若大于,执行所述确定所述投屏设备向显示设备输出待播放视频中视频数据的输出时延的步骤:
检测是否存在新的移动设备与所述投屏设备建立了连接,若为是,则判定需要获得传输时间;
和/或
检测是否存在网络抖动,若为是,则判定需要获得传输时间。
18.一种数据同步播放装置,其特征在于,应用于移动设备,所述装置包括:
信息接收模块,用于接收投屏设备发送的时间信息,并获得待播放视频中的音频数据,其中,所述时间信息为实际播放时刻或原始时刻,所述原始时刻包括输出时延和期望输出时刻,所述期望输出时刻为期望投屏设备输出待播放视频中视频数据的时刻,所述输出时延为投屏设备延迟向显示设备输出所述视频数据的时间值,所述实际播放时刻为期望输出时刻、输出时延与系统时间差的和,所述系统时间差为所述移动设备的系统时间相对于所述投屏设备的系统时间的差值;
播放时刻获得模块,用于依据所述时间信息得到所述音频数据的实际播放时刻;
音频数据播放模块,用于在所述实际播放时刻播放所述音频数据。
19.根据权利要求18所述的装置,其特征在于,所述播放时刻获得模块,具体用于:
在所述时间信息为原始时刻的情况下,获得所述系统时间差,计算所述输出时延、系统时间差和期望输出时刻的和,得到所述音频数据的实际播放时刻。
20.根据权利要求18或19所述的装置,其特征在于,所述信息接收模块,具体用于:
接收投屏设备发送的时间信息,获得所述投屏设备发送的音频数据或从服务端获得所述待播放视频的音频数据。
21.一种数据同步播放装置,其特征在于,应用于显示设备,所述装置包括:
视频数据接收模块,用于接收投屏设备在实际输出时刻输出的待播放视频中的视频数据,其中,所述实际输出时刻为:期望输出时刻与输出时延的和,所述期望输出时刻为:期望所述投屏设备输出所述视频数据的时刻,所述输出时延的值大于或等于各个移动设备对应传输时间中的最大值,所述传输时间为:数据从所述投屏设备传输到所述移动设备所需的时间;
视频数据播放模块,用于播放所述视频数据。
22.一种投屏设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-6任一所述的方法步骤。
23.一种移动设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求7-9任一所述的方法步骤。
24.一种显示设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求10中所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910795500.1A CN110545454A (zh) | 2019-08-27 | 2019-08-27 | 一种数据同步播放方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910795500.1A CN110545454A (zh) | 2019-08-27 | 2019-08-27 | 一种数据同步播放方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110545454A true CN110545454A (zh) | 2019-12-06 |
Family
ID=68712100
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910795500.1A Pending CN110545454A (zh) | 2019-08-27 | 2019-08-27 | 一种数据同步播放方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110545454A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112261318A (zh) * | 2020-09-14 | 2021-01-22 | 西安万像电子科技有限公司 | 一种多分屏视频同步方法及装置 |
WO2022126334A1 (zh) * | 2020-12-14 | 2022-06-23 | 华为技术有限公司 | 一种无线投屏的方法、源端设备和目的端设备 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090091655A1 (en) * | 2007-10-08 | 2009-04-09 | Motorola, Inc. | Synchronizing remote audio with fixed video |
CN103905881A (zh) * | 2014-03-13 | 2014-07-02 | 北京奇艺世纪科技有限公司 | 一种视频数据和音频数据同步播放的方法、装置和设备 |
CN103905879A (zh) * | 2014-03-13 | 2014-07-02 | 北京奇艺世纪科技有限公司 | 一种视频数据和音频数据同步播放的方法、装置和设备 |
CN104244027A (zh) * | 2014-09-30 | 2014-12-24 | 上海斐讯数据通信技术有限公司 | 音/视频数据实时传输并共享播放进程的控制方法及系统 |
US20150208161A1 (en) * | 2012-08-28 | 2015-07-23 | Koninklijke Philips N.V. | Audio forwarding device and corresponding method |
CN105847926A (zh) * | 2016-03-31 | 2016-08-10 | 乐视控股(北京)有限公司 | 一种多媒体数据的同步播放方法及装置 |
CN106612445A (zh) * | 2015-10-21 | 2017-05-03 | 中国移动通信集团公司 | 一种无线同屏音频通道的控制方法、发送设备及接受设备 |
CN106686438A (zh) * | 2016-12-29 | 2017-05-17 | 北京奇艺世纪科技有限公司 | 一种跨设备的音频图像同步播放的方法、装置及系统 |
CN106792055A (zh) * | 2016-12-28 | 2017-05-31 | 福建星网视易信息系统有限公司 | 实时投屏方法、设备及系统 |
CN106792073A (zh) * | 2016-12-29 | 2017-05-31 | 北京奇艺世纪科技有限公司 | 跨设备的音视频数据同步播放的方法、播放设备及系统 |
CN108377406A (zh) * | 2018-04-24 | 2018-08-07 | 青岛海信电器股份有限公司 | 一种调整音画同步的方法及装置 |
CN207854083U (zh) * | 2018-01-02 | 2018-09-11 | 深圳市客所思电子科技有限公司 | 传屏装置 |
CN108683934A (zh) * | 2018-06-08 | 2018-10-19 | 四川乐望崇智科技有限公司 | 同步附带音频的手机投屏方法 |
CN109257641A (zh) * | 2018-09-05 | 2019-01-22 | 福建星网智慧科技股份有限公司 | 无线传屏中音频与视频同步方法及系统 |
CN110062268A (zh) * | 2019-04-19 | 2019-07-26 | 北京那镁克科技有限公司 | 一种音视频同屏播放的发送和接收处理方法及装置 |
-
2019
- 2019-08-27 CN CN201910795500.1A patent/CN110545454A/zh active Pending
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090091655A1 (en) * | 2007-10-08 | 2009-04-09 | Motorola, Inc. | Synchronizing remote audio with fixed video |
US20150208161A1 (en) * | 2012-08-28 | 2015-07-23 | Koninklijke Philips N.V. | Audio forwarding device and corresponding method |
CN103905881A (zh) * | 2014-03-13 | 2014-07-02 | 北京奇艺世纪科技有限公司 | 一种视频数据和音频数据同步播放的方法、装置和设备 |
CN103905879A (zh) * | 2014-03-13 | 2014-07-02 | 北京奇艺世纪科技有限公司 | 一种视频数据和音频数据同步播放的方法、装置和设备 |
CN104244027A (zh) * | 2014-09-30 | 2014-12-24 | 上海斐讯数据通信技术有限公司 | 音/视频数据实时传输并共享播放进程的控制方法及系统 |
CN106612445A (zh) * | 2015-10-21 | 2017-05-03 | 中国移动通信集团公司 | 一种无线同屏音频通道的控制方法、发送设备及接受设备 |
CN105847926A (zh) * | 2016-03-31 | 2016-08-10 | 乐视控股(北京)有限公司 | 一种多媒体数据的同步播放方法及装置 |
CN106792055A (zh) * | 2016-12-28 | 2017-05-31 | 福建星网视易信息系统有限公司 | 实时投屏方法、设备及系统 |
CN106686438A (zh) * | 2016-12-29 | 2017-05-17 | 北京奇艺世纪科技有限公司 | 一种跨设备的音频图像同步播放的方法、装置及系统 |
CN106792073A (zh) * | 2016-12-29 | 2017-05-31 | 北京奇艺世纪科技有限公司 | 跨设备的音视频数据同步播放的方法、播放设备及系统 |
CN207854083U (zh) * | 2018-01-02 | 2018-09-11 | 深圳市客所思电子科技有限公司 | 传屏装置 |
CN108377406A (zh) * | 2018-04-24 | 2018-08-07 | 青岛海信电器股份有限公司 | 一种调整音画同步的方法及装置 |
CN108683934A (zh) * | 2018-06-08 | 2018-10-19 | 四川乐望崇智科技有限公司 | 同步附带音频的手机投屏方法 |
CN109257641A (zh) * | 2018-09-05 | 2019-01-22 | 福建星网智慧科技股份有限公司 | 无线传屏中音频与视频同步方法及系统 |
CN110062268A (zh) * | 2019-04-19 | 2019-07-26 | 北京那镁克科技有限公司 | 一种音视频同屏播放的发送和接收处理方法及装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112261318A (zh) * | 2020-09-14 | 2021-01-22 | 西安万像电子科技有限公司 | 一种多分屏视频同步方法及装置 |
WO2022126334A1 (zh) * | 2020-12-14 | 2022-06-23 | 华为技术有限公司 | 一种无线投屏的方法、源端设备和目的端设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6626440B2 (ja) | マルチメディアファイルを再生するための方法及び装置 | |
CN109379613B (zh) | 音视频同步调整方法、电视、计算机可读存储介质及系统 | |
CN108124172B (zh) | 云投影的方法、装置及系统 | |
CN110830823B (zh) | 播放进度修正方法、装置、电子设备及可读存储介质 | |
WO2015058623A1 (zh) | 一种多媒体数据共享方法和系统、及电子设备 | |
CN112188277B (zh) | 投屏控制方法、装置、电子设备和计算机程序介质 | |
US20170094410A1 (en) | Speaker parameter configuration method and mobile terminal | |
JP7467644B2 (ja) | メッセージ処理方法、装置及び電子機器 | |
CN112331202B (zh) | 一种语音投屏方法及装置、电子设备和计算机可读存储介质 | |
JP2019050554A (ja) | 音声サービスを提供するための方法および装置 | |
CN110545454A (zh) | 一种数据同步播放方法及装置 | |
CN111694757B (zh) | 应用程序的测试方法、装置、电子设备及计算机可读存储介质 | |
US20170048586A1 (en) | Methods and apparatuses for operating and playing a channel of a smart tv set | |
CN111093159A (zh) | 一种消息推送方法、装置、服务器及计算机可读存储介质 | |
CN108289232B (zh) | 一种播放设备的控制方法、终端设备及存储介质 | |
CN108401168B (zh) | 一种冲突解决方法、装置、设备及存储介质 | |
TWI724507B (zh) | 語音處理方法和裝置 | |
CN110875955B (zh) | 自组织呈现网络中的设备管理 | |
CN110020264B (zh) | 一种无效超链接的确定方法及装置 | |
CN110096250B (zh) | 一种音频数据处理方法、装置、电子设备及存储介质 | |
CN108882004B (zh) | 视频录制方法、装置、设备及存储介质 | |
WO2017113528A1 (zh) | 一种智能家居设备匹配的方法、装置、设备以及系统 | |
JP2018512105A (ja) | サービスデータプッシング方法、装置、およびシステム | |
CN107872727B (zh) | 媒体播放控制方法、媒体播放控制装置及电子终端 | |
CN115567949A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191206 |