一种数据处理方法及电子设备转让专利

申请号 : CN201210211267.6

文献号 : CN103517084B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 高山途高锋

申请人 : 联想(北京)有限公司

摘要 :

本发明公开了一种数据处理方法及电子设备。所述数据处理方法包括:获得第一数据包;基于该第一数据包,确定数据流中所包含的节目信息和/或媒体流类型;显示该节目信息和/或所述媒体流类型;获得第一节目信息和/或第一媒体流类型;下载第二数据包的包头,获得包头信息;当该包头信息满足该第一节目信息和/或第一媒体流类型时,下载该包头对应的包体;当该包头信息不满足该第一节目信息和/或该第一媒体流类型时,不下载该包头所对应的包体。与现有技术中下载数据流所包含的所有数据包相比,本方案仅仅下载用户所选择媒体内容对应的数据包,以降低数据下载量,达到了降低下载媒体内容时所带来的带宽浪费,以及降低播放延迟的目的。

权利要求 :

1.一种数据处理方法,其特征在于,适用于一电子设备,所述电子设备能够接收一数据流,所述数据流由多个数据包组成,所述多个数据包中的每一数据包包括包头和包体,所述方法包括:获得所述数据流中的第一数据包;

基于所述第一数据包,确定所述数据流中所包含的节目信息和/或媒体流类型;

显示所述节目信息和/或所述媒体流类型;

获得第一节目信息和/或第一媒体流类型,所述第一节目信息和/或所述第一媒体流类型为从所述节目信息和/或所述媒体流类型中通过用户选择所确定的;

下载第二数据包的包头,获得包头信息;

当所述包头信息满足所述第一节目信息和/或所述第一媒体流类型时,下载所述包头所对应的包体;

当所述包头信息不满足所述第一节目信息和/或所述第一媒体流类型时,不下载所述包头所对应的包体。

2.根据权利要求1所述的方法,其特征在于,获得所述数据流中的第一数据包,具体为:下载所述数据流中一数据包的包头;

当所下载的包头不为第一数据包的包头时,舍弃所述包头,并继续下载下一数据包的包头,其中,所述第一数据包的包头携带有第一数据包标识信息;

当所下载的包头为第一数据包的包头时,下载所述第一数据包的包头对应包体,从而下载得到所述第一数据包。

3.根据权利要求1所述的方法,其特征在于,所述方法还包括:将所下载的第二数据包的包体进行整合处理并播放。

4.根据权利要求1所述的方法,其特征在于,所述方法还包括:当接收到用户重新选择所述节目信息和/或所述媒体流类型的指令时,显示所述节目信息和/或所述媒体流类型,获得用户从所述节目信息和/或所述媒体流类型中重新选择的第一节目信息和/或第一媒体流类型。

5.根据权利要求1所述的方法,其特征在于,所述媒体流类型包括:中文语音流、英文语音流、至少一种分辨率的视频流;

所述节目信息包括:

至少一个卫星频道的电视节目。

6.根据权利要求1所述的方法,其特征在于,满足所述第一节目信息和/或所述第一媒体流类型的第二数据包所需要的带宽大于不满足所述第一节目信息和/或所述第一媒体流类型的第二数据包所需要的带宽。

7.一种电子设备,其特征在于,所述电子设备能够接收一数据流,所述数据流由多个数据包组成,所述多个数据包中的每一数据包包括包头和包体;所述电子设备包括:第一数据包获得模块,用于获得所述数据流中的第一数据包;

可选类型确定模块,用于基于所述第一数据包,确定所述数据流中所包含的节目信息和/或媒体流类型;

显示模块,用于显示所述节目信息和/或所述媒体流类型;

已选类型获得模块,用于获得第一节目信息和/或第一媒体流类型,所述第一节目信息和/或所述第一媒体流类型为从所述节目信息和/或所述媒体流类型中通过用户选择所确定的;

第二数据包下载模块,用于下载第二数据包的包头,获得包头信息;

处理模块,用于当所述包头信息满足所述第一节目信息和/或所述第一媒体流类型时,下载所述包头所对应的包体;当所述包头信息不满足所述第一节目信息和/或所述第一媒体流类型时,不下载所述包头所对应的包体。

8.根据权利要求7所述的电子设备,其特征在于,所述第一数据包获得模块,具体用于:下载所述数据流中一数据包的包头;

当所下载的包头不为第一数据包的包头时,舍弃所述包头,并继续下载下一数据包的包头,其中,所述第一数据包的包头携带有第一数据包标识信息;

当所下载的包头为第一数据包的包头时,下载所述第一数据包的包头对应包体,从而下载得到所述第一数据包。

9.根据权利要求7所述的电子设备,其特征在于,所述电子设备还包括:整合播放模块,用于将所下载的第二数据包的包体进行整合处理并播放。

10.根据权利要求7所述的电子设备,其特征在于,所述电子设备还包括:重置指令处理模块,用于接收用户重新选择所述节目信息和/或所述媒体流类型的指令,并在接收到所述指令时,触发显示模块。

说明书 :

一种数据处理方法及电子设备

技术领域

[0001] 本发明涉及电子设备技术领域,特别是涉及一种数据处理方法及电子设备。

背景技术

[0002] 随着科学技术飞速的发展,各种电子产品不断的丰富并方便了大众生活。例如:人们可以利用手机、笔记本等电子设备随时网上在线观看或收听自己感兴趣的视频、音频或卫星电视节目等流媒体内容。
[0003] 流媒体播放领域中,流媒体内容的传输载体可以为MPEG2-TS流等数据流。其中,每一此类数据流可以包括不同节目和/或媒体流,例如:一个MPEG2-TS流可以包括不同语种的语音流、不同分辨率的视频流或不同卫星频道的电视节目。但是,现有技术中,每一此类数据流所包含的所有节目和媒体流都需要被传输,而在接收端接收之后仅仅播放用户所选择的节目和/或媒体流,而用户未选择的节目和/或媒体流将直接被抛弃,这无疑浪费了大量的带宽来下载用户不需要的媒体内容,同时,也增加了播放的延迟。

发明内容

[0004] 为解决上述技术问题,本发明实施例提供了一种数据处理方法及电子设备,以降低下载媒体内容时所带来的带宽浪费,以及播放延迟,技术方案如下:
[0005] 一种数据处理方法,适用于一电子设备,所述电子设备能够接收一数据流,所述数据流由多个数据包组成,所述多个数据包中的每一数据包包括包头和包体,所述方法包括:
[0006] 获得所述数据流中的第一数据包;
[0007] 基于所述第一数据包,确定所述数据流中所包含的节目信息和/或媒体流类型;
[0008] 显示所述节目信息和/或所述媒体流类型;
[0009] 获得第一节目信息和/或第一媒体流类型,所述第一节目信息和/或所述第一媒体流类型为从所述节目信息和/或所述媒体流类型中通过用户选择所确定的;
[0010] 下载第二数据包的包头,获得包头信息;
[0011] 当所述包头信息满足所述第一节目信息和/或所述第一媒体流类型时,下载所述包头所对应的包体;
[0012] 当所述包头信息不满足所述第一节目信息和/或所述第一媒体流类型时,不下载所述包头所对应的包体。
[0013] 其中,获得所述数据流中的第一数据包,具体为:
[0014] 下载所述数据流中一数据包的包头;
[0015] 当所下载的包头不为第一数据包的包头时,舍弃所述包头,并继续下载下一数据包的包头,其中,所述第一数据包的包头携带有第一数据包标识信息;
[0016] 当所下载的包头为第一数据包的包头时,下载所述第一数据包的包头对应包体,从而下载得到所述第一数据包。
[0017] 其中,所述方法还包括:将所下载的第二数据包的包体进行整合处理并播放。
[0018] 其中,所述方法还包括:当接收到用户重新选择所述节目信息和/或所述媒体流类型的指令时,显示所述节目信息和/或所述媒体流类型,获得用户从所述节目信息和/或所述媒体流类型中重新选择的第一节目信息和/或第一媒体流类型。
[0019] 其中,所述媒体流类型包括:
[0020] 中文语音流、英文语音流、至少一种分辨率的视频流;
[0021] 所述节目信息包括:
[0022] 至少一个卫星频道的电视节目。
[0023] 其中,满足所述第一节目信息和/或所述第一媒体流类型的第二数据包所需要的带宽大于不满足所述第一节目信息和/或所述第一媒体流类型的第二数据包所需要的带宽。
[0024] 相应的,本发明实施例还提供一种电子设备,所述电子设备能够接收一数据流,所述数据流由多个数据包组成,所述多个数据包中的每一数据包包括包头和包体;所述电子设备包括:
[0025] 第一数据包获得模块,用于获得所述数据流中的第一数据包;
[0026] 可选类型确定模块,用于基于所述第一数据包,确定所述数据流中所包含的节目信息和/或媒体流类型;
[0027] 显示模块,用于显示所述节目信息和/或所述媒体流类型;
[0028] 已选类型获得模块,用于获得第一节目信息和/或第一媒体流类型,所述第一节目信息和/或所述第一媒体流类型为从所述节目信息和/或所述媒体流类型中通过用户选择所确定的;
[0029] 第二数据包下载模块,用于下载第二数据包的包头,获得包头信息;
[0030] 处理模块,用于当所述包头信息满足所述第一节目信息和/或所述第一媒体流类型时,下载所述包头所对应的包体;当所述包头信息不满足所述第一节目信息和/或所述第一媒体流类型时,不下载所述包头所对应的包体。
[0031] 其中,所述第一数据包获得模块,具体用于:
[0032] 下载所述数据流中一数据包的包头;
[0033] 当所下载的包头不为第一数据包的包头时,舍弃所述包头,并继续下载下一数据包的包头,其中,所述第一数据包的包头携带有第一数据包标识信息;
[0034] 当所下载的包头为第一数据包的包头时,下载所述第一数据包的包头对应包体,从而下载得到所述第一数据包。
[0035] 其中,所述电子设备还包括:
[0036] 整合播放模块,用于将所下载的第二数据包的包体进行整合处理并播放。
[0037] 其中,所述电子设备还包括:
[0038] 重置指令处理模块,用于接收用户重新选择所述节目信息和/或所述媒体流类型的指令,并在接收到所述指令时,触发显示模块。
[0039] 本发明实施例所提供的技术方案中,一数据流由多个数据包组成,且每一数据包包括包头和包体,根据第一数据包携带该数据流所包含所有节目信息和/或媒体流类型的特点,首先获取第一数据包,以确定出该数据流中所包含的节目信息和/或媒体流类型,进而指示用户选择所需的第一节目信息和/或第一媒体流类型;在下载第二数据包的过程中,首先下载第二数据包的包头,当判断出该包头满足用户选择的第一节目信息和/或第一媒体流类型时,继续下载该包头对应的包体,否则,舍弃该包头对应的包体,继续下载下一第二数据包。可见,与现有技术中下载数据流所包含的所有数据包相比,本方案仅仅下载用户所选择媒体内容对应的数据包,以降低数据下载量,达到了降低下载媒体内容时所带来的带宽浪费,以及降低播放延迟的目的。

附图说明

[0040] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0041] 图1为本发明实施例所提供的一种数据处理方法的第一种流程图;
[0042] 图2为本发明实施例所提供的一种数据处理方法的第二种流程图;
[0043] 图3为本发明实施例所提供的一种数据处理方法的第三种流程图;
[0044] 图4为本发明实施例所提供的一种电子设备的结构示意图。

具体实施方式

[0045] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0046] 为了实现降低下载媒体内容时所带来的带宽浪费,以及降低播放延迟,本发明实施例提供了一种数据处理方法及电子设备。
[0047] 下面首先对本发明实施例所提供的一种数据处理方法进行介绍。
[0048] 需要说明的是,本发明实施例所提供的数据处理方法适用于一电子设备,该电子设备能够接收一数据流,该数据流由多个数据包组成,该多个数据包中每一数据包包括包头和包体,且多个数据包中包括第一数据包和第二数据包;其中,第一数据包的包头携带有第一数据包标识信息,包体携带有该数据流所包含的所有的节目信息和/或媒体流类型;第二数据包的包头表明该第二数据包所携带的节目信息和/或媒体流类型,包体携带相应节目内容和/或媒体流内容。在实际应用中,该电子设备可以为能够接收此类数据流的手机、笔记本、平板电脑等设备;同时,该数据流可以为MPEG2-TS流,当然并不局限于MPEG2-TS流,只要数据流组成形式满足上述即可。
[0049] 可以理解的是,“第一数据包”的“第一”以及“第二数据包”的“第二”仅仅是数据包类型上的区分,其并不代表数据流中数据包的传输顺序;同时,在数据流传输过程中第一数据包按照特定周期被发送。
[0050] 如图1所示,一种数据处理方法,可以包括:
[0051] S101,电子设备获得第一数据包;
[0052] 在用户需要利用一电子设备观看或收听媒体内容时,服务器端将传输承载该媒体内容的一数据流,由于该数据流包含多种的节目和/媒体流,而用户可能需要多种的节目和/媒体流所对应的一部分媒体内容,因此,该电子设备首先需要获得该数据流的第一数据包,以进行后续确定用户所需要的节目信息和/或媒体流类型的过程。
[0053] 其中,所述获得第一数据包,具体可以为:
[0054] 下载所述数据流中一数据包的包头;
[0055] 当所下载的包头不为第一数据包的包头时,舍弃该包头,并继续下载下一数据包的包头,其中,该第一数据包的包头携带有第一数据包标识信息;
[0056] 当所下载的包头为第一数据包的包头时,下载该第一数据包的包头对应包体,以此下载到所述第一数据包。
[0057] 可以理解的是,该第一数据包按照特定的周期被传输,因此,在该电子设备所获得的第一个数据包不为第一数据包的情况下,可以在数据流后续传输过程中获取到该第一数据包,进行后续的处理步骤。
[0058] S102,基于所述第一数据包,确定所述数据流中所包含的节目信息和/或媒体流类型;
[0059] 其中,所述媒体流类型包括:
[0060] 中文语音流、英文语音流、至少一种分辨率的视频流;
[0061] 所述节目信息包括:
[0062] 至少一个卫星频道的电视节目。
[0063] 例如:对于一电影而言,承载该电影的数据流中所包含的媒体流类型可以为:至少一种分辨率的视频流,英文语音流、中文语音流等;而对于一电视节目而言,承载该电视节目的数据流所包含的节目信息可以为:至少一个卫星频道的电视节目。
[0064] 可以理解的是,一数据流包含节目信息和/或媒体流类型表示该数据流可以仅仅包含节目信息,或者,仅仅包含媒体流类型,或者,既包含节目信息又包含媒体流类型。
[0065] S103,显示所述节目信息和/或所述媒体流类型;
[0066] 在确定出所述数据流所包含的节目信息和/或媒体流类型后,则可以通过该电子设备的显示单元将所述节目信息和/或所述媒体流类型展示给用户,以指示用户根据当前的网络状态或自身的兴趣选择所需的节目信息和/或媒体流类型。例如:当网络环境较好时,该用户可以选择分辨率较高的视频流,而非分辨率较低的视频流;而用户喜好体验英文时,则可以选择英文语音流,这都是合理的。
[0067] S104,获得第一节目信息和/或第一媒体流类型;
[0068] 其中,所述第一节目信息和/或所述第一媒体流类型为从所述节目信息和/或该媒体流类型中通过用户选择所确定的。可以理解的是,所述“第一节目信息”以及“第一媒体流类型”所表示的是用户所选择的节目信息和/或媒体流类型,并不具备排列次序意义;并且,每一第一节目信息可以包含至少一个节目,而第一媒体流类型可以包含至少一种媒体流类型。
[0069] S105,下载第二数据包的包头,获得包头信息;
[0070] 在确定出用户所选择的第一节目信息和/或第一媒体流类型后,该电子设备则需要下载第二数据包的包头,进而确定该包头所携带的信息。
[0071] S106,判断所获得的包头信息是否满足所述第一节目信息和/或所述第一媒体流类型,如果是,执行步骤S107;否则,执行步骤S108;
[0072] 需要说明的是,由于第二数据包的包头包括对应包体所携带媒体内容所属的节目信息和/或媒体流类型,因此,可以通过判断所获得包头信息是否满足所述第一节目信息和/或第一媒体流类型,确定出该包头对应包体所携带媒体内容是否为用户所需的。当所获得的包头信息满足所述第一节目信息和/或所述第一媒体流类型时,表明该包头对应包体携带有用户所选择的媒体内容,此时,则执行步骤S107,下载该包头对应的包体;而当所获得的包头信息不满足所述第一节目信息和/或所述第一媒体流类型时,表明该包头对应包体未携带该用户所选择的媒体内容,此时,则执行步骤S108,不下载该包头对应包体。
[0073] 可以理解的是,相对不满足第一节目信息和/或第一媒体流类型的第二数据包而言,满足第一节目信息和/或第一媒体流类型的第二数据包,不但需要下载包头,而且需要下载包体,因此,满足所述第一节目信息和/或所述第一媒体流类型的第二数据包所需要的带宽大于不满足所述第一节目信息和/或所述第一媒体流类型的第二数据包所需要的带宽。
[0074] S107,下载所述包头所对应的包体;
[0075] S108,不下载所述包头所对应的包体;
[0076] S109,判断是否为最后一个第二数据包,如果是,结束下载,否则,执行S105。
[0077] 在确定出是否下载当前第二数据包的包体,并进行相应的处理后,则需要判断当前第二数据包是否为最后一个第二数据包,并根据不同的判断结果,执行不同的操作。当该当前第二数据包为最后一个第二数据包,表明用户所需媒体内容已经下载完毕,此时,结束整个下载过程即可;而当前第二数据包不为最后一个第二数据包,表明所需媒体内容可能未下载完毕,此时,需要继续下载下一第二数据包。
[0078] 本发明实施例所提供的技术方案中,一数据流由多个数据包组成,且每一数据包包括包头和包体,根据第一数据包携带该数据流所包含所有节目信息和/或媒体流类型的特点,首先获取第一数据包,以确定出该数据流中所包含的节目信息和/或媒体流类型,进而指示用户选择所需的第一节目信息和/或第一媒体流类型;在下载第二数据包的过程中,首先下载第二数据包的包头,当判断出该包头满足用户选择的第一节目信息和/或第一媒体流类型时,继续下载该包头对应的包体,否则,舍弃该包头对应的包体,继续下载下一第二数据包。可见,与现有技术中下载数据流所包含的所有数据包相比,本方案仅仅下载用户所选择媒体内容对应的数据包,以降低数据下载量,达到了降低下载媒体内容时所带来的带宽浪费,以及降低播放延迟的目的。
[0079] 更进一步的,在下载到所需的第二数据包后,可以将所下载的第二数据包的包体进行整合处理并播放。当然,根据不同的应用需求,整合播放的过程可以在第二数据包的下载的过程中实现,也可以在下载完毕所需的第二数据包后实现,这都是合理的。
[0080] 更进一步的,为了在数据流传输过程中,根据网络环境的改变或用户喜好的变化,能够更改所确定的第一节目信息和/或第一媒体流类型,达到灵活下载用户所需媒体内容的目的,本发明实施例还提供一种数据处理方法。
[0081] 需要说明的是,需要说明的是,本发明实施例所提供的数据处理方法适用于一电子设备,该电子设备能够接收一数据流,该数据流由多个数据包组成,该多个数据包中每一数据包包括包头和包体,且多个数据包中包括第一数据包和第二数据包;其中,第一数据包的包头携带有第一数据包标识信息,包体携带有该数据流所包含的所有的节目信息和/或媒体流类型;第二数据包的包头表明该第二数据包所携带的节目信息和/或媒体流类型,包体携带相应节目内容和/或媒体流内容。在实际应用中,该电子设备可以为能够接收此类数据流的手机、笔记本、平板电脑等设备;同时,该数据流可以为MPEG2-TS流,当然并不局限于MPEG2-TS流,只要数据流组成形式满足上述即可。
[0082] 可以理解的是,“第一数据包”的“第一”以及“第二数据包”的“第二”仅仅是数据包类型上的区分,其并不代表数据流中数据包的传输顺序;同时,在数据流传输过程中第一数据包按照特定周期被发送。
[0083] 如图2所示,一种数据处理方法,可以包括:
[0084] S201,电子设备获得第一数据包;
[0085] 其中,所述获得第一数据包,具体可以为:
[0086] 下载所述数据流中一数据包的包头;
[0087] 当所下载的包头不为第一数据包的包头时,舍弃所述包头,并继续下载下一数据包的包头,其中,所述第一数据包的包头携带有第一数据包标识信息;
[0088] 当所下载的包头为第一数据包的包头时,下载所述第一数据包的包头对应包体,以此下载到所述第一数据包。
[0089] S202,基于所述第一数据包,确定所述数据流中所包含的节目信息和/或媒体流类型;
[0090] S203,显示所述节目信息和/或所述媒体流类型;
[0091] 其中,所述媒体流类型包括:
[0092] 中文语音流、英文语音流、至少一种分辨率的视频流;
[0093] 所述节目信息包括:
[0094] 至少一个卫星频道的电视节目。
[0095] S204,获得第一节目信息和/或第一媒体流类型;
[0096] 其中,所述第一节目信息和/或所述第一媒体流类型为从所述节目信息和/或所述媒体流类型中通过用户选择所确定的。
[0097] 本实施例中,步骤S201-步骤S204与上述实施例的步骤S101-步骤S104相似,在此不再赘述。
[0098] S205,判断是否接收到用户重新选择所述节目信息和/或所述媒体流类型的指令,如果是,执行步骤S203;否则,执行步骤S206;
[0099] 在当前网络环境或者用户的喜好发生变化后,用户可以通过人机界面向该电子设备发送重新选择所述节目信息和/或所述媒体流类型的指令,而该电子设备在接收到该指令后,则需要重新向用户显示所确定的所有的节目信息和/或所述媒体流类型,以指示用户进行重新选择。
[0100] 需要说明的是,在实际应用中,该电子设备需要实时监控是否接收到用户重新选择所述节目信息和/或媒体流类型的指令,并在接收到指令后,重新显示所有的节目信息和/或媒体流类型,因此,步骤S205在步骤S204之后,在步骤S206之前,仅仅是作为一种示例,并不应该构成对本发明实施例的限定。
[0101] S206,下载第二数据包的包头,获得包头信息;
[0102] S207,判断所获得的包头信息是否满足所述第一节目信息和/或所述第一媒体流类型,如果是,执行步骤S208;否则,执行步骤S209;
[0103] S208,下载所述包头所对应的包体;
[0104] S209,不下载所述包头所对应的包体;
[0105] S210,判断是否为最后一个第二数据包,如果是,结束下载,否则,执行S206。
[0106] 本实施例中,步骤S206-步骤S210与上述实施例的步骤S105-S109相似,在此不再赘述。
[0107] 本实施例中,在下载数据包的过程中,当接收到用户重新选择所述节目信息和/或所述媒体流类型的指令后,则重新显示所有的节目信息和/或媒体流类型,以指示用户重新选择所需的第一节目信息和/或第一媒体流类型,进而根据重新确定的第一节目信息和/或第一媒体流类型进行后续第二数据包的下载,以此实现了根据网络环境的改变或用户喜好的变化,更改所确定的第一节目信息和/或第一媒体流类型,进而达到灵活下载用户所需媒体内容的目的。
[0108] 下面以通过MPEG2-TS流传输一电影为例,对本发明所提供的一种数据处理方法进行介绍。
[0109] 其中,该MPEG2-TS流由多个数据包组成,每一数据包包括包头和包体,且多个数据包包括第一数据包和第二数据包;其中,第一数据包的包头携带有第一数据包标识信息,包体携带有该数据流所包含的四种媒体流类型:中文语音流、英文语音流、高清视频流、普通视频流;第二数据包的包头表明该第二数据包的包体所携带的媒体流类型,包体携带相应媒体流。
[0110] 如图3所述,一种数据处理方法,可以包括:
[0111] S301,获得第一数据包;
[0112] 在用户需要利用一电子设备观看电影时,服务器端将传输承载该电影的一MPEG2-TS,由于该MPEG2-TS流包含多种媒体流,而用户可能需要多种的媒体流所对应的一部分媒体内容,因此,该电子设备首先需要获得该MPEG2-TS流的第一数据包,以进行后续确定用户所需要的媒体流类型的过程。
[0113] 其中,所述获得第一数据包,具体可以为:
[0114] 下载所述数据流中一数据包的包头;
[0115] 当所下载的包头不为第一数据包的包头时,舍弃该包头,并继续下载下一数据包的包头;
[0116] 当所下载的包头为第一数据包的包头时,下载该第一数据包的包头对应包体,以此下载到所述第一数据包。
[0117] 可以理解的是,该第一数据包按照特定的周期被传输,因此,在该电子设备所获得的第一个数据包不为第一数据包的情况下,可以在MPEG2-TS流后续传输过程中获取到该第一数据包,进行后续的处理步骤。
[0118] S302,基于所述第一数据包,确定所述数据流中所包含的四种媒体流类型;
[0119] S303,显示四种媒体流类型;
[0120] 在确定出所述MPEG2-TS流所包含的媒体流类型后,则可以通过该电子设备的显示单元将所述媒体流类型展示给用户,以指示用户根据当前的网络状态或自身的兴趣选择所需的媒体流类型。例如:当网络环境较好时,该用户可以选择分辨率较高的视频流,而非分辨率较低的视频流;而用户喜好体验英文时,则可以选择英文语音流,这都是合理的。
[0121] S304,确定第一媒体流类型为:中文语音流和高清视频流;
[0122] S305,下载第二数据包的包头,获得包头信息;
[0123] 在确定出用户所选择的第一媒体流类型后,该电子设备则需要下载第二数据包的包头,进而确定该包头所携带的信息。
[0124] S306,判断所获得的包头信息是否满足所述中文语音流或高清视频流,如果是,执行步骤S307;否则,执行步骤S308;
[0125] 需要说明的是,由于第二数据包的包头包括对应包体所携带媒体内容所属的媒体流类型,因此,可以通过判断所获得包头信息是否满足所述第一媒体流类型,确定出该包头对应包体所携带媒体内容是否为用户所需的。当所获得的包头信息满足所述第一媒体流类型时,表明该包头对应包体携带有用户所选择的媒体内容,此时,则执行步骤S307,下载该包头对应的包体;而当所获得的包头信息不满足所述第一媒体流类型时,表明该包头对应包体未携带该用户所选择的媒体内容,此时,则执行步骤S308,不下载该包头对应包体。
[0126] S307,下载所述包头所对应的包体;
[0127] S308,不下载所述包头所对应的包体;
[0128] S309,判断是否为最后一个第二数据包,如果是,结束下载,否则,继续执行S305。
[0129] 可以理解的是,该电子设备可以实时监控是否接收到用户重新选择所述媒体流类型的指令,并在接收到指令后,重新显示所有的媒体流类型,进而指示用户重新选择所需的媒体流类型。
[0130] 更进一步的,在下载到所需的第二数据包后,可以将所下载的第二数据包的包体进行整合处理并播放。当然,根据不同的应用需求,整合播放的过程可以在第二数据包的下载的过程中实现,也可以在下载完毕所需的第二数据包后实现,这都是合理的。
[0131] 本实施例中,MPEG2-TS流由多个数据包组成,且每一数据包包括包头和包体,根据该MPEG2-TS流中第一数据包携带该MPEG2-TS流包含的所有媒体流类型的特点,首先获取第一数据包,以确定出该MPEG2-TS流中所包含的媒体流类型,进而指示用户选择所需的第一媒体流类型;在下载第二数据包的的过程中,首先下载第二数据包的包头,当判断出该包头满足用户选择的第一媒体流类型时,继续下载该包头对应的包体,否则,舍弃该包头对应的包体,继续下载下一第二数据包。可见,与现有技术中下载MPEG2-TS流所包含的所有数据包相比,本方案仅仅下载用户所选择媒体内容对应的数据包,以降低数据下载量,达到了降低下载媒体内容时所带来的带宽浪费,以及降低播放延迟的目的。
[0132] 通过以上的方法实施例的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:只读存储器(ROM)、随机存取存储器(RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
[0133] 相应于上述方法,本发明实施例还提供一种电子设备,所述电子设备能够接收一数据流,所述数据流由多个数据包组成,所述多个数据包中的每一数据包包括包头和包体;所述电子设备可以包括:
[0134] 第一数据包获得模块110,用于获得第一数据包;
[0135] 可选类型确定模块120,用于基于所述第一数据包,确定所述数据流中所包含的节目信息和/或媒体流类型;
[0136] 显示模块130,用于显示所述节目信息和/或所述媒体流类型;
[0137] 已选类型获得模块140,用于获得第一节目信息和/或第一媒体流类型,所述第一节目信息和/或所述第一媒体流类型为从所述节目信息和/或所述媒体流类型中通过用户选择所确定的;
[0138] 第二数据包下载模块150,用于下载第二数据包的包头,获得包头信息;
[0139] 处理模块160,用于当所述包头信息满足所述第一节目信息和/或所述第一媒体流类型时,下载所述包头所对应的包体;当所述包头信息不满足所述第一节目信息和/或所述第一媒体流类型时,不下载所述包头所对应的包体。
[0140] 本发明实施例所提供的电子设备,首先获取第一数据包,以确定出该数据流中所包含的节目信息和/或媒体流类型,进而指示用户选择所需的第一节目信息和/或第一媒体流类型;在下载第二数据包的过程中,首先下载第二数据包的包头,当判断出该包头满足用户选择的第一节目信息和/或第一媒体流类型时,继续下载该包头对应的包体,否则,舍弃该包头对应的包体,继续下载下一第二数据包。可见,与现有技术中下载数据流所包含的所有数据包相比,本方案仅仅下载用户所选择媒体内容对应的数据包,以降低数据下载量,达到了降低下载媒体内容时所带来的带宽浪费,以及降低播放延迟的目的。
[0141] 可以理解的是,该电子设备可以为手机、笔记本、平板电脑等设备。
[0142] 其中,该第一数据包获得模块110,具体用于:
[0143] 下载所述数据流中一数据包的包头;
[0144] 当所下载的包头不为第一数据包的包头时,舍弃所述包头,并继续下载下一数据包的包头,其中,所述第一数据包的包头携带有第一数据包标识信息;
[0145] 当所下载的包头为第一数据包的包头时,下载所述第一数据包的包头对应包体,以此下载到所述第一数据包。
[0146] 更进一步的,所述电子设备还可以包括:
[0147] 整合播放模块,用于将所下载的第二数据包的包体进行整合处理并播放。
[0148] 更进一步的,所述电子设备还可以包括:
[0149] 重置指令处理模块,用于接收用户重新选择所述节目信息和/或所述媒体流类型的指令,并在接收到所述指令时,触发显示模块。
[0150] 对于装置或系统实施例而言,由于其基本相应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置或系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0151] 在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,在没有超过本申请的精神和范围内,可以通过其他的方式实现。当前的实施例只是一种示范性的例子,不应该作为限制,所给出的具体内容不应该限制本申请的目的。例如,所述单元或子单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或多个子单元结合一起。另外,多个单元可以或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
[0152] 另外,所描述系统,装置和方法以及不同实施例的示意图,在不超出本申请的范围内,可以与其它系统,模块,技术或方法结合或集成。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0153] 以上所述仅是本发明的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。