一种多媒体数据的播放方法、系统及相关设备与流程

文档序号:11173324阅读:571来源:国知局
一种多媒体数据的播放方法、系统及相关设备与流程

本发明属于通信技术领域,尤其涉及一种多媒体数据的播放方法、系统及相关设备。



背景技术:

智能多媒体系统作为智能家居的一种,往往由多台智能多媒体设备组成,也称为多媒体播放组。这些智能多媒体设备可以通过网络同步被控制执行某项操作,比如同步播放某一歌曲,如果将每一个设备的媒体数据传输看作一条媒体流,那么多个设备之间的同步播放就可以理解为流间同步。

目前,要实现流间同步主要是通过在同步播放前,多个设备之间先进行时间同步,而后主设备在数据包发送给从属设备前在数据包中打包数据包的播放时间,从属设备实时地接收数据包,并匹配数据包的播放时间与系统时间,从而实现同步播放。由于设备需要同时管理设备缓存以及进行同步播放调节,因此会容易造成系统资源消耗较大,影响同步精度的问题。



技术实现要素:

本发明的目的在于提供一种多媒体数据的播放方法、系统及相关设备,旨在解决多个设备同步播放时系统资源消耗较大,影响同步精度的问题。

为解决上述技术问题,本发明实施例提供以下技术方案:

第一方面,本发明提供一种多媒体数据的播放方法,其中包括:

接收需要播放的多媒体数据包,并将所述多媒体数据包缓存至预设的第一缓存空间,所述多媒体数据包包含多媒体数据包的播放时间信息;

对预设的第二缓存空间的存储情况进行检测;

若所述第二缓存空间的存储情况低于预设阈值,则从所述第一缓存空间中调取多媒体数据包并存入第二缓存空间;

当接收到播放指令时,从所述第二缓存空间中获取多媒体数据包,并根据相应播放时间信息对多媒体数据包进行播放。

第二方面,本发明提供一种多媒体数据的播放装置,其中包括:

接收单元,用于接收需要播放的多媒体数据包,并将所述多媒体数据包缓存至预设的第一缓存空间,所述多媒体数据包包含多媒体数据包的播放时间信息;

第一检测单元,用于对预设的第二缓存空间的存储情况进行检测;

调取单元,用于若所述第二缓存空间的存储情况低于预设阈值,则从所述第一缓存空间中调取多媒体数据包并存入第二缓存空间;

播放单元,用于当接收到播放指令时,从所述第二缓存空间中获取多媒体数据包,并根据相应播放时间信息对多媒体数据包进行播放。

第三方面,本发明提供一种终端,其中包括:

存储有可执行程序代码的存储器;

与所述存储器耦合的处理器;

所述处理器调用所述存储器中存储的所述可执行程序代码,执行如第一方面提供的多媒体数据的播放方法。

第四方面,本发明提供一种多媒体数据的播放系统,包括主设备以及多个从属播放设备,其中,所述从属播放设备包括如第二方面提供的多媒体数据的播放装置。

相对于现有技术,本发明实施例,设置有第一缓存空间以及第二缓存空间两个缓存空间,将接收到多媒体数据包缓存至预设的第一缓存空间,其中该多媒体数据包包含播放时间信息;对预设的第二缓存空间的存储情况进行实时检测,若第二缓存空间的存储情况低于预设阈值,则从第一缓存空间中调取多媒体数据包并存入第二缓存空间;当接收到播放指令时,从该第二缓存空间中获取多媒体数据包,并根据相应播放时间信息对多媒体数据包进行播放,由于设置了两个缓存空间,一个用于管理设备缓存,一个用于同步播放调节,有效的降低了系统资源消耗,同时也提高了多个设备同步播放的精度。

附图说明

下面结合附图,通过对本发明的具体实施方式详细描述,将使本发明的技术方案及其它有益效果显而易见。

图1是本发明实施例提供的多媒体数据的播放方法的流程示意图。

图2为本发明实施例提供的多媒体数据的播放系统的场景示意图。

图3为本发明实施例提供的多媒体数据的播放方法的另一流程示意图。

图4为本发明实施例提供的多媒体数据的播放装置的结构示意图。

图5为本发明实施例提供的多媒体数据的播放装置的另一结构示意图。

图6为本发明实施例提供的终端的结构示意图。

具体实施方式

请参照图式,其中相同的组件符号代表相同的组件,本发明的原理是以实施在一适当的运算环境中来举例说明。以下的说明是基于所例示的本发明具体实施例,其不应被视为限制本发明未在此详述的其它具体实施例。

在以下的说明中,本发明的具体实施例将参考由一部或多部计算机所执行的步骤及符号来说明,除非另有述明。因此,这些步骤及操作将有数次提到由计算机执行,本文所指的计算机执行包括了由代表了以一结构化型式中的数据的电子信号的计算机处理单元的操作。此操作转换该数据或将其维持在该计算机的内存系统中的位置处,其可重新配置或另外以本领域测试人员所熟知的方式来改变该计算机的运作。该数据所维持的数据结构为该内存的实体位置,其具有由该数据格式所定义的特定特性。但是,本发明原理以上述文字来说明,其并不代表为一种限制,本领域测试人员将可了解到以下所述的多种步骤及操作亦可实施在硬件当中。

本发明的原理使用许多其它泛用性或特定目的运算、通信环境或组态来进行操作。所熟知的适合用于本发明的运算系统、环境与组态的范例可包括(但不限于)手持电话、个人计算机、服务器、多处理器系统、微电脑为主的系统、主架构型计算机、及分布式运算环境,其中包括了任何的上述系统或装置。

以下将分别进行详细说明。

在本实施例中,将从多媒体数据的播放装置的角度进行描述,该多媒体数据的播放装置具体可以集成在播放系统的从属的播放设备(即从设备)中,如手机、平板电脑、音箱、各类播放器等含有播放模块的设备。

一种多媒体数据的播放方法,包括:接收需要播放的多媒体数据包,并将该多媒体数据包缓存至预设的第一缓存空间,该多媒体数据包包含多媒体数据包的播放时间信息;对预设的第二缓存空间的存储情况进行检测;若该第二缓存空间的存储情况低于预设阈值,则从第一缓存空间中调取多媒体数据包并存入第二缓存空间;当接收到播放指令时,从该第二缓存空间中获取多媒体数据包,并根据相应播放时间信息对多媒体数据包进行播放。

请参阅图1,图1是本发明实施例提供的多媒体数据的播放方法的流程示意图。该方法包括:

在步骤S101中,接收需要播放的多媒体数据包,并将该多媒体数据包缓存至预设的第一缓存空间,该多媒体数据包包含多媒体数据包的播放时间信息。

比如,从设备与主设备建立通信,接收主设备发送的需要播放的多媒体数据包,并将主设备的多媒体数据包缓存至预设的第一缓存空间,其中,该多媒体数据包包含多媒体数据包的播放时间信息。

在某些实施方式中,该多媒体数据包还可以包含多媒体数据包相应的编号信息;基于此,“将该多媒体数据包缓存至预设的第一缓存空间”之后,还可以包括:

(11)对多媒体数据包的编号信息进行检测。

(12)若检测出编号信息发生异常,则向主设备发送重传请求,以使主设备根据该重传请求重新发送相应的多媒体数据包。

比如,在主设备发送需要播放的多媒体数据包之前,还可以将需要播放的多媒体数据及该部分数据的需要被播放的播放时间打包成为数据包,且进行编号,得到包含编号信息的多媒体数据包,并发送给从设备。

可以理解的是,因为网络丢包等原因使得当前多媒体数据包与前一多媒体数据包不连续的时候,可以认为编号信息发生异常,则从设备可以通知主设备重传该多媒体数据包。

在某些实施方式中,从设备“将该多媒体数据包缓存至预设的第一缓存空间”之后,还可以包括:

(13)对第一缓存空间的存储情况进行检测。

(14)若第一缓存空间的存储情况达到预设存储值,则向主设备发送速度调整信息,以使主设备根据该速度调整信息调用相应的传输速度发送多媒体数据包。

比如,从设备可以实时或者在接收到主设备发送多媒体数据包时,对第一缓存空间的存储情况进行检测,当第一缓存空间的存储情况达到预设存储值,则可以通知主设备暂停或减慢发送多媒体数据包。

在步骤S102中,对预设的第二缓存空间的存储情况进行检测。

在步骤S103中,若该第二缓存空间的存储情况低于预设阈值,则从第一缓存空间中调取多媒体数据包并存入第二缓存空间。

可以理解的是,本实施例中,从设备设置有第一缓存空间以及第二缓存空间两个缓存空间。

比如,从设备可以实时或者在接收到主设备发送多媒体数据包时,同时对第二缓存空间的存储情况进行检测,当第二缓存空间的存储情况低于预设阈值,则可以从第一缓存空间中调取多媒体数据包并存入该第二缓存空间。

需要说明的是,本发明实施例中,该第一缓存空间主要匹配网络传输数据以及主设备发送数据的节奏,保证对主设备的控制以及网络状态的波动能快速响应;该第二缓存空间主要匹配同步播放调节的节奏,通过对数据包进行拉伸、压缩等精细调节保证多机播放的流间同步。

此外,容易想到的是,本发明实施例中出现的“第一”、“第二”等仅作为区别举例说明,并未对其执行顺序等构成限定。

在步骤S104中,当接收到播放指令时,从该第二缓存空间中获取多媒体数据包,并根据相应播放时间信息对多媒体数据包进行播放。

比如,当接收到主设备发送的播放指令时,从设备从该第二缓存空间中获取多媒体数据包,并根据多媒体数据包中包含的播放时间信息对多媒体数据包进行播放。

可以理解的是,根据相应播放时间信息对多媒体数据包进行播放的实现方式有很多,在某些实施方式中,“根据相应播放时间信息对多媒体数据包进行播放”可以具体包括:

(a)将获取的多媒体数据包相应的播放时间信息与标准时间进行匹配,得到匹配结果。

(b)根据该匹配结果对多媒体数据包进行播放。

其中,“根据该匹配结果对多媒体数据包进行播放”(即步骤(b)),可以具体包括:

(b1)若匹配结果指示匹配成功,则直接对相应的多媒体数据包进行播放。

(b2)若匹配结果指示匹配不成功,则对该多媒体数据包进行伸缩处理,得到处理后的多媒体数据包,以使多媒体数据包的实际播放时间与标准时间匹配;并对该处理后的多媒体数据包进行播放。

也就是说,当从设备从该第二缓存空间中获取多媒体数据包后,先对播放时间信息进行统一,如果跟标准时间匹配,则可以直接对相应的多媒体数据包进行播放;如果跟标准时间不匹配,则可以先调整为匹配,再对该调整处理后的多媒体数据包进行播放。

其中,调整该多媒体数据包的操作包括拉伸和压缩,以使得处理后的多媒体数据包的播放时间与标准时间匹配。

即,该实施例中,第二缓存空间主要匹配同步播放调节的节奏,通过对多媒体数据包进行拉伸、压缩等精细调节可大大保证了多设备播放的流间同步。

由上述可知,本实施例提供的多媒体数据的播放方法,设置有第一缓存空间以及第二缓存空间两个缓存空间,将接收到多媒体数据包缓存至预设的第一缓存空间,其中该多媒体数据包包含播放时间信息;对预设的第二缓存空间的存储情况进行实时检测,若第二缓存空间的存储情况低于预设阈值,则从第一缓存空间中调取多媒体数据包并存入第二缓存空间;当接收到播放指令时,从该第二缓存空间中获取多媒体数据包,并根据相应播放时间信息对多媒体数据包进行播放,由于设置了两个缓存空间,一个用于管理设备缓存,一个用于同步播放调节,有效的降低了系统资源消耗,同时也提高了多个设备同步播放的精度。

根据上述实施例所描述的方法,以下将举例作进一步详细说明。

首先,对本实施例多媒体数据的播放系统中各播放设备进行简单介绍,如可参考图2,为本实施例提供的多媒体数据的播放系统(可简称播放系统)的场景示意图,包括多个播放设备,该多个播放设备可以包括一个主设备以及多个从属的播放设备(可简称从设备),其中,该播放设备可以具体为手机、音箱或各类播放器,等等。

可以理解的是,本实施例可以通过NTP(Network Time Protocol)或者SNTP(Simple Network Time Protocol)协议,播放系统内各个播放设备的时钟。在同步播放系统内,有一个播放设备负责与控制终端(如智能手机等)通讯,执行来自控制终端的控制命令并转发给播放系统内的其它播放设备,同时该播放设备也会将播放系统和各个播放设备的状态信息返回给控制终端,负责这些工作的播放设备称之为主设备,其它播放设备可称之为从设备。各个从设备周期地执行NTP或SNTP协议,与主设备同步时钟,从而使各个播放设备的时钟基本一致。

另外,在该播放系统内,有一台播放设备负责音频数据的分发,可称之为源设备。源设备从互联网、局域网、本机存储器和外部存储器、或者经模拟数字转换后的模拟音频输入,获得音频数据。源设备将音频数据拆分成一个个数据帧并分发至各个从设备,每个数据帧的播放时间相同。其中源设备和上述主设备,可以是同一台播放设备,也可以是不同的播放设备。

如图2所示,本发明实施例中源设备和主设备为同一台播放设备,其中,该从设备主要用于接收主设备发送的需要播放的多媒体数据包,并将该多媒体数据包缓存至预设的第一缓存空间,其中该多媒体数据包中包含多媒体数据包的播放时间信息;然后,对从设备中预设的第二缓存空间的存储情况进行检测;若检测到第二缓存空间的存储情况低于预设阈值,则从第一缓存空间中调取多媒体数据包并存入第二缓存空间;当接收到主设备或者控制终端发送的播放指令时,从该第二缓存空间中获取多媒体数据包,并根据相应播放时间信息对多媒体数据包进行播放。

主设备主要用于对源数据进行解码,得到需要播放的多媒体数据并发送至从设备,以使从设备将该多媒体数据缓存至预设的第一缓存空间;当接收到控制终端发送的播放指令时,将该播放指令转送至从设备,以使从设备从预设的第二缓存空间中获取多媒体数据包进行播放,等等。

另外,该播放系统还可以包括控制终端(如智能手机等),主要负责与主设备进行通讯,并且,接收主设备反馈的播放系统和各个播放设备的状态信息,等等。

如图2所示,主设备首先可以将需要播放的多媒体数据及该部分数据的需要被播放的播放时间打包成为数据包,且进行编号,得到包含编号信息的多媒体数据包,并通过发送模块发送给从属设备。

以下对从设备的播放流程进行具体分析,可一并参阅图3,图3为本发明实施例提供的多媒体数据的播放方法的另一流程示意图。该方法包括:

在步骤S201中,从设备的接收模块与主设备的发送模块建立通信,接收来自主设备的多媒体数据包。

其中,该多媒体数据包包含有多媒体数据包的播放时间信息以及编号信息。

在步骤S202中,当从设备接收模块接收到多媒体数据包时,从设备缓存控制模块将该多媒体数据包从接收模块取走。

可具体的,当从设备接收模块接收到多媒体数据包时,从设备缓存控制模块立即将该多媒体数据包从接收模块取走,使得接收模块可以准备再次接收多媒体数据包。

可以理解的是,如果接收模块接收到多媒体数据包后,多媒体数据包没有被快速取走,则多媒体数据包积可能会堆压在接收模块,接收模块不能再次接收多媒体数据包,可能导致漏接多媒体数据,甚至影响到主设备的发送模块造成阻塞,影响播放。

在步骤S203中,从设备缓存控制模块将从接收模块取到的多媒体数据包存入第一缓存空间。

在步骤S204中,从设备缓存控制模块检测存入的多媒体数据包编号,以及第一缓存空间的水位情况。

可具体的,缓存控制模块将从接收模块取到的多媒体数据包存入第一缓存空间,并检测多媒体数据包编号,以及第一缓存空间的水位情况。

当多媒体数据包的编号出现异常,即因为网络丢包等原因使得当前多媒体数据包与前一多媒体数据包不连续的时候,缓存控制模块通过接收模块通知主设备重传多媒体数据包。

当第一缓存空间的水位触及上限水位(如预设存储值),缓存控制模块通过接收模块通知主设备暂停或减慢发送多媒体数据包,等待缓存消耗。

可以理解的是,本实施例中,该第一缓存空间主要匹配网络传输数据以及主设备发送多媒体数据包的节奏,保证接收模块对主设备的多媒体数据包发送以及网络状态的波动能快速响应。

在步骤S205中,从设备数据交换模块不断检测第二缓存空间的水位情况,当第二缓存空间的水位情况低于预设阈值时,从第一缓存空间中取出多媒体数据包存入第二缓存空间。

比如,从设备数据交换模块可实时的不断检测第二缓存空间的水位情况,当第二缓存空间中的缓存数据被消耗,如消耗余下值低于预设阈值时,及时从第一缓存空间中取出多媒体数据包存入第二缓存空间。

在步骤S206中,从设备同步播放控制模块从第二缓存空间中取出多媒体数据包。

在步骤S207中,从设备同步播放控制模块获取该多媒体数据包的播放时间信息,与标准时间相比对。

比如,当接收到主设备发送的播放指令时,从设备从该第二缓存空间中获取多媒体数据包,并根据多媒体数据包中包含的播放时间信息与标准时间相比对,根据比对匹配结果,对多媒体数据包进行播放。

其中,若播放时间信息与标准时间匹配,则执行步骤S208,若播放时间信息与标准时间不匹配,则执行步骤S209以及步骤S210。

在步骤S208中,若匹配,则同步播放控制模块将多媒体数据包发送至从设备输出模块播放输出。

在步骤S209中,若不匹配,则同步播放控制模块将多媒体数据包进行拉伸或压缩,以使处理后的多媒体数据包的播放时间信息与标准时间匹配。

在步骤S210中,同步播放控制模块将处理后的多媒体数据包发送至从设备输出模块播放输出。

可具体的,从设备同步播放控制模块从第二缓存空间中取出多媒体数据包,从多媒体数据包中获得该多媒体数据包的播放时间,与标准时间相比对,确定二者匹配时进行播放。

如果数据包播放时间与标准时间不匹配,则同步播放控制模块需要将多媒体数据包进行拉伸或压缩,改变其播放的时间消耗,使其后的多媒体数据包播放时间与标准时间能逐渐匹配。

可以理解的是,本实施例中,该第二缓存空间主要匹配同步播放调节的节奏,因为同步播放调节改变多媒体数据包播的时间消耗,所以对于第二缓存空间的消耗是忽快忽慢的。

由于,现有方案主要是通过在同步播放前先进行时间同步,而后主设备在数据包发送给从设备前在数据包中打包数据包的播放时间,从设备实时地接收数据包,并匹配数据包的播放时间与系统时间来进行同步播放,即缓存空间需同时管理设备缓存以及进行同步播放调节。

而本实施例提供的新的网络流间同步的智能多媒体系统,每一个从设备(当主设备自身也接收媒体数据同步播放时也同时作为从设备)在接收多媒体数据包以及同步播放时,使用两个缓存空间来保证数据缓存以及同步播放调节互不干扰,即从设备按照媒体数据流走向分解为“接收模块→缓存控制模块→第一缓存空间→数据交换模块→第二缓存空间→同步播放控制模块→输出模块”。

其中第一缓存空间主要匹配网络传输数据以及主设备发送数据的节奏,保证对主设备的控制以及网络状态的波动能快速响应;第二缓存空间主要匹配同步播放调节的节奏,通过对数据包进行拉伸、压缩等精细调节保证多设备播放的流间同步。

需要说明的是,具体实施时,以上各个模块可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,在此不作具体限定。

由上述可知,本实施例提供的多媒体数据的播放方法,设置有第一缓存空间以及第二缓存空间两个缓存空间,将接收到多媒体数据包缓存至预设的第一缓存空间,其中该多媒体数据包包含播放时间信息;对预设的第二缓存空间的存储情况进行实时检测,若第二缓存空间的存储情况低于预设阈值,则从第一缓存空间中调取多媒体数据包并存入第二缓存空间;当接收到播放指令时,从该第二缓存空间中获取多媒体数据包,并根据相应播放时间信息对多媒体数据包进行播放,由于设置了两个缓存空间,一个用于管理设备缓存,一个用于同步播放调节,有效的降低了系统资源消耗,同时也提高了多个设备同步播放的精度。可具体的,一、两个缓存分别应对两个功能模块,避免因两个模块运行模式不一样而相互干扰工作节奏,保证同步播放的同步精度;二、某个模块出现错误时,另一个模块可以使用其所对应的缓存保持正常工作,等待错误模块恢复;三、两个缓存空间分离控制,在扩大总缓存量的同时又避免了管理大缓存造成的系统资源消耗过大的问题。

为便于更好的实施本发明实施例提供的多媒体数据的播放方法,本发明实施例还提供一种基于上述多媒体数据的播放方法的装置以及系统。其中名词的含义与上述多媒体数据的播放的方法中相同,具体实现细节可以参考方法实施例中的说明。

请参阅图4,图4为本发明实施例提供的多媒体数据的播放装置的结构示意图,该多媒体数据的播放装置300可以包括:接收单元301、第一检测单元302、调取单元303以及播放单元304。

其中,接收单元301,用于接收需要播放的多媒体数据包,并将该多媒体数据包缓存至预设的第一缓存空间,该多媒体数据包包含多媒体数据包的播放时间信息。

比如,从设备与主设备建立通信,接收主设备发送的需要播放的多媒体数据包,并将主设备的多媒体数据包缓存至预设的第一缓存空间,其中,该多媒体数据包包含多媒体数据包的播放时间信息。

第一检测单元302,用于对预设的第二缓存空间的存储情况进行检测。调取单元303,用于若该第二缓存空间的存储情况低于预设阈值,则从该第一缓存空间中调取多媒体数据包并存入第二缓存空间。

可以理解的是,本实施例中,从设备设置有第一缓存空间以及第二缓存空间两个缓存空间。

比如,从设备可以实时或者在接收到主设备发送多媒体数据包时,同时对第二缓存空间的存储情况进行检测,当第二缓存空间的存储情况低于预设阈值,则可以从第一缓存空间中调取多媒体数据包并存入该第二缓存空间。

需要说明的是,本发明实施例中,该第一缓存空间主要匹配网络传输数据以及主设备发送数据的节奏,保证对主设备的控制以及网络状态的波动能快速响应;该第二缓存空间主要匹配同步播放调节的节奏,通过对数据包进行拉伸、压缩等精细调节保证多机播放的流间同步。

此外,容易想到的是,本发明实施例中出现的“第一”、“第二”等仅作为区别举例说明,并未对其执行顺序等构成限定。

播放单元304,用于当接收到播放指令时,从该第二缓存空间中获取多媒体数据包,并根据相应播放时间信息对多媒体数据包进行播放。

比如,当接收到主设备发送的播放指令时,从设备从该第二缓存空间中获取多媒体数据包,并根据多媒体数据包中包含的播放时间信息对多媒体数据包进行播放。

在某些实施方式中,该多媒体数据包还可以包含多媒体数据包相应的编号信息;请一并参阅图5,图5为本发明实施例提供的多媒体数据的播放装置的另一结构示意图,该多媒体数据的播放装置400还可以包括:

第二检测单元305,用于对多媒体数据包的编号信息进行检测。

第一发送单元306,用于若检测出该编号信息发生异常,则向主设备发送重传请求,以使主设备根据该重传请求重新发送相应的多媒体数据包。

比如,在主设备发送需要播放的多媒体数据包之前,还可以将需要播放的多媒体数据及该部分数据的需要被播放的播放时间打包成为数据包,且进行编号,得到包含编号信息的多媒体数据包,并发送给从设备。

可以理解的是,因为网络丢包等原因使得当前多媒体数据包不与前一多媒体数据包连续的时候,可以认为编号信息发生异常,则从设备可以通知主设备重传该多媒体数据包。

如图5所示,在某些实施方式中,该多媒体数据的播放装置400还可以包括:

第三检测单元307,用于对该第一缓存空间的存储情况进行检测。

第二发送单元308,用于若该第一缓存空间的存储情况达到预设存储值,则向主设备发送速度调整信息,以使该主设备根据该速度调整信息调用相应的传输速度发送多媒体数据包。

比如,从设备可以实时或者在接收到主设备发送多媒体数据包时,对第一缓存空间的存储情况进行检测,当第一缓存空间的存储情况达到预设存储值,则可以通知主设备暂停或减慢发送多媒体数据包。

可以理解的是,播放单元304根据相应播放时间信息对多媒体数据包进行播放的实现方式有很多,在某些实施方式中,该播放单元304可以具体包括:

匹配子单元3041,用于将获取的多媒体数据包相应的播放时间信息与标准时间进行匹配,得到匹配结果。

播放子单元3042,用于根据该匹配结果对多媒体数据包进行播放。

其中,该播放子单元3042,可以具体用于若匹配结果指示匹配成功,则直接对相应的多媒体数据包进行播放;若匹配结果指示匹配不成功,则对该多媒体数据包进行伸缩处理,得到处理后的多媒体数据包,以使多媒体数据包的实际播放时间与标准时间匹配;对该处理后的多媒体数据包进行播放。

也就是说,当从设备从该第二缓存空间中获取多媒体数据包后,先对播放时间信息进行统一,如果跟标准时间匹配,则可以直接对相应的多媒体数据包进行播放;如果跟标准时间不匹配,则可以先调整为匹配,再对该调整处理后的多媒体数据包进行播放。

其中,调整该多媒体数据包的操作包括拉伸和压缩,以使得处理后的多媒体数据包的播放时间与标准时间匹配。

即,该实施例中,第二缓存空间主要匹配同步播放调节的节奏,通过对多媒体数据包进行拉伸、压缩等精细调节可大大保证了多设备播放的流间同步。

具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。

该多媒体数据的播放装置具体可以集成在播放系统的从属的播放设备(即从设备)中,如手机、平板电脑、音箱、各类播放器等含有播放模块的设备。

由上述可知,本实施例提供的多媒体数据的播放装置,设置有第一缓存空间以及第二缓存空间两个缓存空间,将接收到多媒体数据包缓存至预设的第一缓存空间,其中该多媒体数据包包含播放时间信息;对预设的第二缓存空间的存储情况进行实时检测,若第二缓存空间的存储情况低于预设阈值,则从第一缓存空间中调取多媒体数据包并存入第二缓存空间;当接收到播放指令时,从该第二缓存空间中获取多媒体数据包,并根据相应播放时间信息对多媒体数据包进行播放,由于设置了两个缓存空间,一个用于管理设备缓存,一个用于同步播放调节,有效的降低了系统资源消耗,同时也提高了多个设备同步播放的精度。

另外,本发明还提供一种多媒体数据的播放系统,可参考如图2所示的多媒体数据的播放系统,包括主设备以及多个从属的播放设备(简称从设备),其中该从属的播放设备包括如上实施例所提供的任一播放设备的同步播放装置。

比如,从设备主要用于接收主设备发送的需要播放的多媒体数据包,并将该多媒体数据包缓存至预设的第一缓存空间,其中该多媒体数据包中包含多媒体数据包的播放时间信息;然后,对从设备中预设的第二缓存空间的存储情况进行检测;若检测到第二缓存空间的存储情况低于预设阈值,则从第一缓存空间中调取多媒体数据包并存入第二缓存空间;当接收到主设备或者控制终端发送的播放指令时,从该第二缓存空间中获取多媒体数据包,并根据相应播放时间信息对多媒体数据包进行播放。

在某些实施方式中,从设备在将该多媒体数据包缓存至预设的第一缓存空间之后,对多媒体数据包的编号信息进行检测;若检测出该编号信息发生异常,则向主设备发送重传请求,以使主设备根据该重传请求重新发送相应的多媒体数据包。

进一步的,在将该多媒体数据包缓存至预设的第一缓存空间之后,还可以对该第一缓存空间的存储情况进行检测;若该第一缓存空间的存储情况达到预设存储值,则向主设备发送速度调整信息,以使该主设备根据该速度调整信息调用相应的传输速度发送多媒体数据包。

在某些实施方式中,从设备可以将获取的多媒体数据包相应的播放时间信息与标准时间进行匹配,得到匹配结果;根据该匹配结果对多媒体数据包进行播放。

比如,若匹配结果指示匹配成功,则处理器508直接对相应的多媒体数据包进行播放;若匹配结果指示匹配不成功,则处理器508对该多媒体数据包进行伸缩处理,得到处理后的多媒体数据包,以使多媒体数据包的实际播放时间与标准时间匹配;对该处理后的多媒体数据包进行播放。

另外,该系统还包括主设备,主设备主要用于对源数据进行解码,得到需要播放的多媒体数据并发送至从设备,以使从设备将该多媒体数据缓存至预设的第一缓存空间;当接收到控制终端发送的播放指令时,将该播放指令转送至从设备,以使从设备从预设的第二缓存空间中获取多媒体数据包进行播放,等等。

可以理解的是,该多媒体数据的播放装置的结构以及功能实现可以参见上文针对多媒体数据的播放装置的详细描述,此处不再赘述。

本发明还提供一种终端,如平板电脑、手机、音箱等终端,请参阅图6,图6为本发明实施例提供的终端结构示意图。该终端500可以包括射频(RF,Radio Frequency)电路501、包括有一个或一个以上计算机可读存储介质的存储器502、输入单元503、显示单元504、传感器504、音频电路506、无线保真(WiFi,Wireless Fidelity)模块507、包括有一个或者一个以上处理核心的处理器508、以及电源509等部件。本领域技术人员可以理解,图6中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

射频电路501可用于收发信息,或通话过程中信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器508处理;另外,将涉及上行的数据发送给基站。通常,射频电路501包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM,Subscriber Identity Module)卡、收发信机、耦合器、低噪声放大器(LNA,Low Noise Amplifier)、双工器等。此外,射频电路501还可以通过无线通信与网络和其他设备通信。该无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GSM,Global System of Mobile communication)、通用分组无线服务(GPRS,General Packet Radio Service)、码分多址(CDMA,Code Division Multiple Access)、宽带码分多址(WCDMA,Wideband Code Division Multiple Access)、长期演进(LTE,Long Term Evolution)、电子邮件、短消息服务(SMS,Short Messaging Service)等。

存储器502可用于存储应用程序和数据。存储器502存储的应用程序中包含有可执行代码。应用程序可以组成各种功能模块。处理器508通过运行存储在存储器502的应用程序,从而执行各种功能应用以及数据处理。存储器502可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器502可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器502还可以包括存储器控制器,以提供处理器508和输入单元503对存储器502的访问。

输入单元503可用于接收输入的数字、字符信息或用户特征信息(比如指纹),以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例中,输入单元503可包括触敏表面以及其他输入设备。触敏表面,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面上或在触敏表面附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器508,并能接收处理器508发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面。除了触敏表面,输入单元503还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、指纹识别模组、轨迹球、鼠标、操作杆等中的一种或多种。

显示单元504可用于显示由用户输入的信息或提供给用户的信息以及终端的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元504可包括显示面板。可选的,可以采用液晶显示器(LCD,Liquid Crystal Display)、有机发光二极管(OLED,Organic Light-Emitting Diode)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后,传送给处理器508以确定触摸事件的类型,随后处理器508根据触摸事件的类型在显示面板上提供相应的视觉输出。虽然在图6中,触敏表面与显示面板是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显示面板集成而实现输入和输出功能。

终端还可包括至少一种传感器505,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板的亮度,接近传感器可在终端移动到耳边时,关闭显示面板和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

音频电路506可通过扬声器、传声器提供用户与终端之间的音频接口。音频电路506可将接收到的音频数据转换成电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路506接收后转换为音频数据,再将音频数据输出处理器508处理后,经射频电路501以发送给比如另一终端,或者将音频数据输出至存储器502以便进一步处理。音频电路506还可能包括耳塞插孔,以提供外设耳机与终端的通信。

无线保真(WiFi)属于短距离无线传输技术,终端通过无线保真模块507可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图6示出了无线保真模块507,但是可以理解的是,其并不属于终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。

处理器508是终端的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器502内的应用程序,以及调用存储在存储器502内的数据,执行终端的各种功能和处理数据,从而对终端进行整体监控。可选的,处理器508可包括一个或多个处理核心;优选的,处理器508可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器508中。

终端还包括给各个部件供电的电源509(比如电池)。优选的,电源可以通过电源管理系统与处理器508逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源509还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。

尽管图6中未示出,终端还可以包括摄像头、蓝牙模块等,在此不再赘述。

具体在本实施例中,终端中的处理器508会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行代码加载到存储器502中,并由处理器508来运行存储在存储器502中的应用程序,从而实现各种功能:

接收需要播放的多媒体数据包,并将该多媒体数据包缓存至预设的第一缓存空间,该多媒体数据包包含多媒体数据包的播放时间信息;对预设的第二缓存空间的存储情况进行检测;若该第二缓存空间的存储情况低于预设阈值,则从该第一缓存空间中调取多媒体数据包并存入第二缓存空间;当接收到播放指令时,从该第二缓存空间中获取多媒体数据包,并根据相应播放时间信息对多媒体数据包进行播放。

在某些实施方式中,该多媒体数据包还包含多媒体数据包相应的编号信息,处理器508还运行存储在存储器502中的应用程序,从而实现如下功能:

在将该多媒体数据包缓存至预设的第一缓存空间之后,对多媒体数据包的编号信息进行检测;若检测出该编号信息发生异常,则向主设备发送重传请求,以使主设备根据该重传请求重新发送相应的多媒体数据包。

进一步的,在将该多媒体数据包缓存至预设的第一缓存空间之后,还可以对该第一缓存空间的存储情况进行检测;若该第一缓存空间的存储情况达到预设存储值,则向主设备发送速度调整信息,以使该主设备根据该速度调整信息调用相应的传输速度发送多媒体数据包。

在某些实施方式中,处理器508将获取的多媒体数据包相应的播放时间信息与标准时间进行匹配,得到匹配结果;根据该匹配结果对多媒体数据包进行播放。

比如,若匹配结果指示匹配成功,则处理器508直接对相应的多媒体数据包进行播放;若匹配结果指示匹配不成功,则处理器508对该多媒体数据包进行伸缩处理,得到处理后的多媒体数据包,以使多媒体数据包的实际播放时间与标准时间匹配;对该处理后的多媒体数据包进行播放。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对多媒体数据的播放方法的详细描述,此处不再赘述。

本发明实施例提供的该多媒体数据的播放装置,譬如为计算机、平板电脑、具有触摸功能的手机等等,该多媒体数据的播放装置与上文实施例中的多媒体数据的播放方法属于同一构思,在该多媒体数据的播放装置上可以运行该多媒体数据的播放方法实施例中提供的任一方法,其具体实现过程详见该多媒体数据的播放方法实施例,此处不再赘述。

需要说明的是,对本发明该多媒体数据的播放方法而言,本领域普通测试人员可以理解实现本发明实施例该多媒体数据的播放方法的全部或部分流程,是可以通过计算机程序来控制相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,如存储在终端的存储器中,并被该终端内的至少一个处理器执行,在执行过程中可包括如该多媒体数据的播放方法的实施例的流程。其中,该存储介质可为磁碟、光盘、只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)等。

对本发明实施例的该多媒体数据的播放装置而言,其各功能模块可以集成在一个处理芯片中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。该集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中,该存储介质譬如为只读存储器,磁盘或光盘等。

以上对本发明实施例所提供的一种多媒体数据的播放方法、系统及相关设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1