流媒体数据传输的调节方法及装置与流程

文档序号:15163702发布日期:2018-08-14 17:10阅读:149来源:国知局

本发明涉及流媒体通信技术领域,尤其涉及一种流媒体数据传输的调节方法及装置。



背景技术:

近几年随着第三代移动通信系统(3G)、第四代移动通信系统(4G)的成熟,在用户设备(User Equipment,简称UE),如手机、平板电脑等,上实时接收、解码视频或音频流已成为可能。然而,相对于传统的有线通信网,无线通信的信道实时变化剧烈,导致实时流媒体传输的波动,进而影响用户的视频观看或者音频收听质量。

为了能够适应移动通信环境的流媒体传输机制以保障UE流媒体接收的流畅性,现有技术中提供了基于HTTP的动态自适应流(Dynamic Adaptive Steaming over HTTP,简称DASH)技术。DASH技术是一种基于HTTP的流媒体传输技术,可以有效地适应无线信道的变化。通过在同一个内容的多个码率版本间进行不断切换,保障在较差的无线信道环境下也为移动终端提供连续、无中断的流媒体访问体验。

当UE通过DASH技术从流媒体服务器中获取的片段数量已可以保障UE在一定时间内连续播放时,UE仍然根据当前信道获取流媒体片段。若当前信道条件差,则根据DASH技术,UE将持续获取低码率的流媒体片段。由于当前已获取的流媒体片段数量已可以保障一定时间内的连续播放,因此这些低码率的流媒体片段不会被立即播放,当被播放时将导致获取过多的低码率片段,造成流媒体的播放质量下降。



技术实现要素:

本发明提供的一种流媒体数据传输的调节方法及装置,能够解决因获取过多低码率片段导致的流媒体的播放质量下降的问题。

第一方面,本发明提供了一种流媒体数据传输的调节方法,包括:

获取流媒体的总时长参数,所述流媒体由至少一个未播放的流媒体片段组成;

根据所述总时长参数以及至少一个时长预设阈值确定下一个获取的流媒体片段的码率;

根据确定的所述码率获取下一个流媒体片段。

在所述第一方面的第一种可能的实现方式中,所述获取流媒体的总时长参数,包括:

当获取到流媒体片段时,获取所述流媒体片段的片段时长参数;

将所述片段时长参数与其余已获取且未播放的流媒体片段的片段时长参数进行累加,计算出所述流媒体的总时长参数。

在所述第一方面或所述第一方面的第一种可能的实现方式中,还提供了所述第一方面的第二种可能的实现方式,在所述第一方面的第二种可能的实现方式中,

当所述时长预设阈值的数量为一个时,所述根据所述总时长参数以及至少一个时长预设阈值确定下一个流媒体片段的码率,包括:

判断所述总时长参数是否超过所述时长预设阈值;

如果所述总时长参数超过所述时长预设阈值,则:

将所有已获取流媒体片段的平均码率,确定为下一个获取的流媒体片段的码率;

或者,将所有已获取且未播放的流媒体片段的平均码率,确定为下一个获取的流媒体片段的码率;

或者,将媒体表示描述MPD文件中码率最高的流媒体片段的码率,确定为下一个获取的流媒体片段的码率;

或者,将高于且最接近当前获取的流媒体片段码率的码率,确定为下一个获取的流媒体片段的码率。

在所述第一方面或所述第一方面的第一种可能或第二种可能的实现方式中,还提供了所述第一方面的第三种可能的实现方式,在所述第一方面的第三种可能的实现方式中,

当所述时长预设阈值的数量多于一个时,所述根据所述总时长参数以及至少一个时长预设阈值确定下一个流媒体片段的码率,包括:

判断所述总时长参数是否超过第一阈值并且未超过第二阈值,所述第二阈值为与所述第一阈值相邻并且大于所述第一阈值的阈值;

如果所述总时长参数超过第一阈值并且未超过第二阈值,则根据预设映射关系表选择与所述第一阈值对应的码率,作为下一个获取的流媒体片段的码率,其中所述预设映射关系表用于表征所述第一阈值和第二阈值与码率的对应关系。

在所述第一方面或所述第一方面的第一种可能、第二种可能或第三种可能的实现方式中,还提供了所述第一方面的第四种可能的实现方式,在所述第一方面的第四种可能的实现方式中,

所述根据预设映射关系表选择与所述第一阈值对应的码率,包括:

所述预设映射关系表中所述第一阈值对应的码率和所述第二阈值对应的码率的关系为:

所述第一阈值对应的码率与所述第二阈值对应的码率的差值为固定值;

或者,所述第一阈值对应的码率与所述第二阈值对应的码率的插值的增量值为固定值。

第二方面,本发明还提供了一种电子设备,包括:

获取单元,用于获取流媒体的总时长参数,所述流媒体由至少一个未播放的流媒体片段组成;

处理单元,用于根据所述获取单元获取到的总时长参数以及至少一个时长预设阈值确定下一个获取的流媒体片段的码率;

所述获取单元还用于,根据所述处理单元确定的所述码率获取下一个流媒体片段。

在所述第二方面的第一种可能的实现方式中,所述获取单元包括:

获取子单元,用于当获取到流媒体片段时,获取所述流媒体片段的片段时长参数;

计算子单元,用于将所述获取子单元获取的所述片段时长参数与其余已获取且未播放的流媒体片段的片段时长参数进行累加,计算出所述流媒体的总时长参数。

在所述第二方面或所述第二方面的第一种可能的实现方式中,还提供了所述第二方面的第二种可能的实现方式,在所述第二方面的第二种可能的实现方式中,所述处理单元包括:

判断子单元,用于当所述时长预设阈值的数量为一个时,判断所述获取单元获取到的所述总时长参数是否超过所述时长预设阈值;

确定子单元,用于当判断子单元确定所述总时长参数超过所述时长预设阈值时,将所有已获取流媒体片段的平均码率,确定为下一个获取的流媒体片段的码率;或者用于将所有已获取且未播放的流媒体片段的平均码率,确定为下一个获取的流媒体片段的码率;或者用于将MPD文件中码率最高的流媒体片段的码率,确定为下一个获取的流媒体片段的码率;或者用于将高于且最接近当前获取的流媒体片段码率的码率,确定为下一个获取的流媒体片段的码率。

在所述第二方面或所述第二方面的第一种可能或第二种可能的实现方式中,还提供了所述第二方面的第三种可能的实现方式,在所述第二方面的第三种可能的实现方式中,所述处理单元包括:

判断子单元一,用于当所述时长预设阈值的数量多于一个时,判断所述获取单元获取到的所述总时长参数是否超过第一阈值并且未超过第二阈值,所述第二阈值为与所述第一阈值相邻并且大于所述第一阈值的阈值;

选择子单元,用于当判断子单元确定所述总时长参数超过第一阈值并且未超过第二阈值时,根据预设映射关系表选择与所述第一阈值对应的码率,其中所述预设映射关系表用于表征所述第一阈值和第二阈值与码率的对应关系;

确定子单元一,用于将选择子单元选择的所述码率作为下一个获取的流媒体片段的码率。

在所述第二方面或所述第二方面的第一种可能、第二种可能或第三种可能的实现方式中,还提供了所述第二方面的第四种可能的实现方式,在所述第二方面的第四种可能的实现方式中,所述处理单元还包括:

预设子单元,用于预设映射关系表,所述预设映射关系表用于表征所述第一阈值和第二阈值与码率的对应关系。

在所述第二方面或所述第二方面的第一种可能、第二种可能、第三种可能或第四种可能的实现方式中,还提供了所述第二方面的第五种可能的实现方式,在所述第二方面的第五种可能的实现方式中,所述预设子单元具体用于:

设置所述第一阈值对应的码率与所述第二阈值对应的码率的差值为固定值;或者,

设置所述第一阈值对应的码率与所述第二阈值对应的码率的插值的增量值为固定值。

第三方面,本发明还提供了一种电子设备,包括:

处理器,用于获取流媒体的总时长参数,所述流媒体由至少一个未播放的流媒体片段组成;

根据获取到的总时长参数以及至少一个时长预设阈值确定下一个获取的流媒体片段的码率;

根据确定的所述码率获取下一个流媒体片段。

在所述第三方面的第一种可能的实现方式中,所述电子设备还包括:

接收器,用于接收所述流媒体片段;

存储器,用于存储所述接收器接收到的所述流媒体片段;

所述处理器,还用于当所述接收器接收到流媒体片段时,从所述存储器中获取所述流媒体片段的片段时长参数;

将所述获取子单元获取的所述片段时长参数与其余已获取且未播放的流媒体片段的片段时长参数进行累加,计算出所述流媒体的总时长参数。

在所述第三方面或所述第三方面的第一种可能的实现方式中,还提供了所述第三方面的第二种可能的实现方式,在所述第三方面的第二种可能的实现方式中,所述处理器还用于:

当所述时长预设阈值的数量为一个时,判断所述接收器获取到的所述总时长参数是否超过所述时长预设阈值;

当判断子单元确定所述总时长参数超过所述时长预设阈值时,将所有已获取流媒体片段的平均码率,确定为下一个获取的流媒体片段的码率;或者用于将所有已获取且未播放的流媒体片段的平均码率,确定为下一个获取的流媒体片段的码率;或者用于将MPD文件中码率最高的流媒体片段的码率,确定为下一个获取的流媒体片段的码率;或者用于将高于且最接近当前获取的流媒体片段码率的码率,确定为下一个获取的流媒体片段的码率。

在所述第三方面或所述第三方面的第一种可能或第二种可能的实现方式中,还提供了所述第三方面的第三种可能的实现方式,在所述第三方面的第三种可能的实现方式中,所述处理器还用于:

当所述时长预设阈值的数量多于一个时,判断所述接收器获取到的所述总时长参数是否超过第一阈值并且未超过第二阈值,所述第二阈值为与所述第一阈值相邻并且大于所述第一阈值的阈值;

当判断子单元确定所述总时长参数超过第一阈值并且未超过第二阈值时,根据预设映射关系表选择与所述第一阈值对应的码率,其中所述预设映射关系表用于表征所述第一阈值和第二阈值与码率的对应关系;

将选择子单元选择的所述码率作为下一个获取的流媒体片段的码率。

在所述第三方面或所述第三方面的第一种可能、第二种可能或第三种可能的实现方式中,还提供了所述第三方面的第四种可能的实现方式,在所述第三方面的第四种可能的实现方式中,所述处理器还用于,预设映射关系表,所述预设映射关系表用于表征所述第一阈值和第二阈值与码率的对应关系。

在所述第三方面或所述第三方面的第一种可能、第二种可能、第三种可能或第四种可能的实现方式中,还提供了所述第三方面的第五种可能的实现方式,在所述第三方面的第五种可能的实现方式中,处理器具体用于:

设置所述第一阈值对应的码率与所述第二阈值对应的码率的差值为固定值;或者,

设置所述第一阈值对应的码率与所述第二阈值对应的码率的插值的增量值为固定值。

本发明提供的流媒体数据传输的调节方法及装置,能够根据流媒体的总时长参数与至少一个时长预设阈值确定下一个获取的流媒体片段的码率,根据所述码率获取下一个流媒体片段,进而解决因获取过多低码率片段导致的流媒体的播放质量下降的问题。现有技术中通过DASH技术可保证UE播放的媒体数据的连续性,但当UE已获取的流媒体片段的总时长已满足连续性要求时,若再按照DASH技术获取流媒体片段,可能出现播放质量低的问题。本发明在获取到流媒体片段时,获取当前至少一个未播放的流媒体片段组成的流媒体的总时长参数,根据所述总时长参数以及至少一个时长预设阈值可确定UE已获取的流媒体片段的总时长是否已满足连续性要求。当满足连续性要求时,可得出下一个获取的流媒体片段的码率,该码率与UE当前的信道条件无关,与播放质量有关。当播放根据该码率获取的该下一个流媒体片段时,可提高流媒体文件的播放质量。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为现有技术中DASH技术的示意图;

图2为本发明实施例中一个流媒体数据传输的调节方法的流程图;

图3为本发明实施例中另一个流媒体数据传输的调节方法的流程图;

图4为本发明实施例中一个电子设备的结构示意图;

图5为本发明实施例中另一个电子设备的结构示意图;

图6为本发明实施例中另一个电子设备的结构示意图;

图7为本发明实施例中另一个电子设备的结构示意图;

图8为本发明实施例中另一个电子设备的结构示意图;

图9为本发明实施例中另一个电子设备的结构示意图;

图10为本发明实施例中另一个电子设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例提供了一种流媒体数据传输的调节方法,如图2所示,包括:

步骤201、获取流媒体的总时长参数,流媒体由至少一个未播放的流媒体片段组成。

为了保证已获取且未播放的流媒体片段可以保证一定时间,如2分钟,的连续播放,需要对所述已获取且未播放的流媒体片段的总时长参数进行计算。UE根据MPD文件依次获取流媒体片段,即接收完毕再请求新的流媒体片段。因此,可以将获取到流媒体片段作为计算所述总时长参数的时机。在图1中,若一部微电影由4个流媒体片段组成,UE已获取的片段为“1”和“2”,其中流媒体片段“1”正在播放。此时,所述流媒体为流媒体片段“2”,若“2”的时长为3分钟,可以满足上述一定时间(2分钟)的连续播放。已获取的流媒体片段保存在缓冲区或者硬盘中,以便在播放时从缓冲区中依次播放已获取的流媒体片段。

步骤202、根据总时长参数以及至少一个时长预设阈值确定下一个获取的流媒体片段的码率。

当步骤201获取到流媒体片段时,所述流媒体片段可增加已获取到的流媒体的总时长。例如当前已获取到0-10分钟的流媒体,若步骤201获取到的流媒体片段的时长为2分钟,则获取到的流媒体片段的总时长为12分钟。如果此时流媒体的总时长参数小于时长预设阈值中的任意一个,则沿用DASH技术获取流媒体片段。如果此时流媒体的总时长参数大于至少一个时长预设阈值,则流媒体可以保证一定时间的连续播放,进而确定下一个获取的流媒体片段内的码率。

步骤203、根据确定的码率获取下一个流媒体片段。

通过HTTP请求向流媒体服务器请求步骤202中确定的下一个获取的流媒体片段的码率对应的流媒体片段。

本发明实施例提供的流媒体数据传输的调节方法,能够根据流媒体的总时长参数与至少一个时长预设阈值确定下一个获取的流媒体片段的码率,根据所述码率获取下一个流媒体片段,进而解决因获取过多低码率片段导致的流媒体的播放质量下降的问题。现有技术中通过DASH技术可保证UE播放的媒体数据的连续性,但当UE已获取的流媒体片段的总时长已满足连续性要求时,若再按照DASH技术获取流媒体片段,可能出现播放质量低的问题。本发明在获取到流媒体片段时,获取当前至少一个未播放的流媒体片段组成的流媒体的总时长参数,根据所述总时长参数以及至少一个时长预设阈值可确定UE已获取的流媒体片段的总时长是否已满足连续性要求。当满足连续性要求时,可得出下一个获取的流媒体片段的码率,该码率与UE当前的信道条件无关,与播放质量有关。当播放根据该码率获取的该下一个流媒体片段时,可提高流媒体文件的播放质量。

本发明实施例提供了另一种流媒体数据传输的调节方法,如图3所示,本实施例是对步骤201的具体说明,所述步骤201具体包括:

步骤301、当获取到流媒体片段时,获取流媒体片段的片段时长参数。

每当获取到流媒体片段时,从所述流媒体片段的文件头中可获取到所述流媒体片段的片段时长参数。

步骤302、将片段时长参数与其余已获取且未播放的流媒体片段的片段时长参数进行累加,计算出流媒体的总时长参数。

若已获取10个流媒体片段,其中未播放的流媒体片段为“3”至“10”,此时所述流媒体由“3”至“10”这八个流媒体片段组成。所述流媒体的总时长参数为流媒体片段“3”至“10”的片段时长参数的总和,例如15分钟。当步骤301获取到流媒体片段“11”时,若流媒体片段“11”的片段时长参数为3分钟,则所述流媒体的总时长参数为3+15=18分钟。

所述片段时长参数除了可以用时间(分钟)表示,还可用进度(总进度的百分比)表示。例如:所述流媒体的总时长参数为流媒体片段“3”至“10”的片段时长参数的总和,例如50%。当步骤301获取到流媒体片段“11”时,若流媒体片段“11”的片段时长参数为20%,则所述流媒体的总时长参数为70%。

本发明实施例提供的另一种流媒体数据传输的调节方法,对片段时长参数进行累加得到总时长参数,可以根据所述总时长参数确定是否沿用DASH技术。

本发明实施例提供了另一种流媒体数据传输的调节方法,本实施例是对步骤202的具体说明,当所述时长预设阈值的数量为一个时,步骤202包括:

判断所述总时长参数是否超过所述时长预设阈值;

如果所述总时长参数超过所述时长预设阈值,则:

方式一:将所有已获取流媒体片段的平均码率,确定为下一个获取的流媒体片段的码率;

或者,方式二:将所有已获取且未播放的流媒体片段的平均码率,确定为下一个获取的流媒体片段的码率;

或者,方式三:将MPD文件中码率最高的流媒体片段的码率,确定为下一个获取的流媒体片段的码率;

或者,方式四:将高于且最接近当前获取的流媒体片段码率的码率,确定为下一个获取的流媒体片段的码率。

下面通过本发明实施例提供的场景对上述四种方式做进一步说明:

UE已获取到九个流媒体片段,分别为流媒体片段“1”至流媒体片段“9”,其中流媒体片段“1”和“2”已播放,流媒体片段“3”至“9”未播放,且流媒体片段“3”至“9”组成的流媒体的总时长参数为12分钟。当接收到流媒体片段“10”时,若流媒体片段“10”的片段时长参数为2分钟,时长预设阈值为13分钟,则流媒体的总时长参数为2+12=14分钟,即所述总时长参数(14)超过所述时长预设阈值(13)。若流媒体片段“1”和“2”的码率为250kbps,流媒体片段“3”至“10”的码率为500kbps,MPD文件中可选择的最高码率为1Mbps,则:

方式一:计算出所有已获取流媒体片段的平均码率。该平均码率为:(2*250+8*500)÷10=450kbps。确定出下一个获取的流媒体片段的码率为450kbps。

方式二:计算出所有已获取且未播放的流媒体片段的平均码率。该平均码率为:8*500÷5=500kbps。确定出下一个获取的流媒体片段的码率为500kbps。

方式三:将MPD文件中码率最高的流媒体片段的码率,确定为下一个获取的流媒体片段的码率,即将1Mbps确定为下一个获取的流媒体片段的码率。

方式四:若MPD文件中除了上述250kbps、500kbps以及1Mbps之外,还提供了600kbps、700kbps、800kbps以及900kbps的流媒体片段,则将高于且最接近当前获取的流媒体片段码率的码率,即由于流媒体片段“10”的码率为500kbps,则选择与500kbps相邻其大于500kbps的600kbps确定为下一个获取的流媒体片段的码率。

本发明实施例提供的另一种流媒体数据传输的调节方法,能够从获取到的流媒体片段中提取所述流媒体片段的片段时长参数,将该片段时长参数与其余已获取且未播放的流媒体片段的片段时长参数进行累加,可计算出流媒体的总时长参数,该总时长参数可以用时间表示也可以用播放进度表示,进而实现通过总时长参数对当前未播放流媒体进行监控。现有技术即DASH技术中不根据已获取的流媒体片段内的总时长参数调节下一个获取的流媒体片段的码率,容易造成在已获取的流媒体片段满足连续性要求时,继续获取低码率片段,进而降低流媒体播放质量。只当所述时长预设阈值的数量为一个时,通过方式一至方式四可确定下一个获取的流媒体片段的码率。方式一至方式四提供了码率的不同确定方式,达到提供下一个获取的流媒体片段的码率的效果,根据该码率可获取到高码率的流媒体片段,进而提高流媒体播放质量。

本发明实施例提供了另一种流媒体数据传输的调节方法,本实施例是对步骤202的具体说明,当所述时长预设阈值的数量多于一个时,步骤202包括:

判断所述总时长参数是否超过第一阈值并且未超过第二阈值,所述第二阈值为与所述第一阈值相邻并且大于所述第一阈值的阈值;

如果所述总时长参数超过第一阈值并且未超过第二阈值,则根据预设映射关系表选择与所述第一阈值对应的码率,作为下一个获取的流媒体片段的码率,其中所述预设映射关系表用于表征所述第一阈值和第二阈值与码率的对应关系。

其中,所述预设映射关系表中所述第一阈值对应的码率和所述第二阈值对应的码率的关系为:

所述第一阈值对应的码率与所述第二阈值对应的码率的差值为固定值;

或者,所述第一阈值对应的码率与所述第二阈值对应的码率的插值的增量值为固定值。

当所述第一阈值对应的码率与所述第二阈值对应的码率的差值为固定值时,所述预设映射关系表如表1所示,其中包括多个时长预设阈值与码率的对应关系,所述第一阈值对应的码率与所述第二阈值对应的码率的差值为固定值60kbps,此时时长预设阈值与码率为线性关系。

表1

如果步骤201获取到的总时长参数为0.7分钟,则此时第一阈值为0.5分钟,第二阈值为1分钟,则选择与所述第一阈值0.5分钟对应的码率60kbps,作为下一个获取的流媒体片段的码率。如果步骤201获取到的总时长参数为1.3分钟,则此时第一阈值为1分钟,第二阈值为1.5分钟,则选择与所述第一阈值1.5分钟对应的码率180kbps,作为下一个获取的流媒体片段的码率。

当所述第一阈值对应的码率与所述第二阈值对应的码率的插值的增量值为固定值时,所述预设映射关系表如表2所示,其中包括多个时长预设阈值与码率的对应关系,所述第一阈值对应的码率与所述第二阈值对应的码率的差值的增量值为固定值20kbps,起始差值为60,此时时长预设阈值与码率为非线性关系。

表2

如果步骤201获取到的总时长参数为0.7分钟,则此时第一阈值为0.5分钟,第二阈值为1分钟,则选择与所述第一阈值0.5分钟对应的码率60kbps,作为下一个获取的流媒体片段的码率。如果步骤201获取到的总时长参数为1.3分钟,则此时第一阈值为1分钟,第二阈值为1.5分钟,则选择与所述第一阈值1.5分钟对应的码率420kbps,作为下一个获取的流媒体片段的码率。

所述预设映射关系表中时长预设阈值与码率的对应关系还可为其他函数对应关系,例如:二次函数、对数函数等,此处不做限定。

本发明实施例提供的流媒体数据传输的调节方法,能够从获取到的流媒体片段中提取所述流媒体片段的片段时长参数,将该片段时长参数与其余已获取且未播放的流媒体片段的片段时长参数进行累加,可计算出流媒体的总时长参数,该总时长参数可以用时间表示也可以用播放进度表示,进而实现通过总时长参数对当前未播放流媒体进行监控。现有技术即DASH技术中不根据已获取的流媒体片段内的总时长参数调节下一个获取的流媒体片段的码率,容易造成在已获取的流媒体片段满足连续性要求时,继续获取低码率片段,进而降低流媒体播放质量。当所述时长预设阈值的数量为至少一个时,通过判断总时长参数是否超过第一阈值并且未超过第二阈值可确定下一个获取的流媒体片段的码率,进而实现根据不同的总时长参数确定不同的下一个获取的流媒体片段的码率,所述总时长参数越大所述码率越高,进而提高播放质量。

本发明实施例提供了一种电子设备,如图4所示,包括:

获取单元41,用于获取流媒体的总时长参数,所述流媒体由至少一个未播放的流媒体片段组成。

为了保证已获取且未播放的流媒体片段可以保证一定时间,如2分钟,的连续播放,需要对所述已获取且未播放的流媒体片段的总时长参数进行计算。获取单元41根据MPD文件依次获取流媒体片段,即接收完毕再请求新的流媒体片段。因此,可以将获取到流媒体片段作为计算所述总时长参数的时机。在图1中,若一部微电影由4个流媒体片段组成,获取单元41已获取的片段为“1”和“2”,其中流媒体片段“1”正在播放。此时,所述流媒体为流媒体片段“2”,若“2”的时长为3分钟,可以满足上述一定时间(2分钟)的连续播放。已获取的流媒体片段保存在存储单元43中,例如缓冲区或者硬盘,以便在播放时从存储单元43中依次播放已获取的流媒体片段。

处理单元42,用于根据所述获取单元41获取到的总时长参数以及至少一个时长预设阈值确定下一个获取的流媒体片段的码率。

当获取单元41获取到流媒体片段时,处理单元42能够播放的流媒体片段的总时长。如果此时流媒体的总时长参数小于任意一个时长阈值,则处理单元42沿用DASH技术获取流媒体片段。如果此时流媒体的总时长参数大于至少一个时长预设阈值,则流媒体可以保证一定时间的连续播放,进而处理单元42确定下一个获取的流媒体片段内的码率。

所述获取单元41还用于,根据所述处理单元42确定的所述码率获取下一个流媒体片段。

获取单元41通过HTTP请求向流媒体服务器请求处理单元42确定的下一个获取的流媒体片段的码率对应的流媒体片段。

本发明实施例提供的电子设备,处理单元42能够根据流媒体的总时长参数与至少一个时长预设阈值确定下一个获取的流媒体片段的码率,获取单元41根据所述处理单元42确定的所述码率获取下一个流媒体片段,进而解决因获取过多低码率片段导致的流媒体的播放质量下降的问题。现有技术中通过DASH技术可保证UE播放的媒体数据的连续性,但当已获取的流媒体片段的总时长已满足连续性要求时,若再按照DASH技术获取流媒体片段,可能出现播放质量低的问题。本发明在获取单元41获取到流媒体片段时,获取当前至少一个未播放的流媒体片段组成的流媒体的总时长参数,处理单元42根据所述总时长参数以及至少一个时长预设阈值可确定已获取的流媒体片段的总时长是否已满足连续性要求。当满足连续性要求时,处理单元42可得出下一个获取的流媒体片段的码率,该码率与UE当前的信道条件无关,与播放质量有关。当处理单元42播放获取单元41根据该码率获取的该下一个流媒体片段时,可提高流媒体文件的播放质量。

本实施例是对图4所示实施例中获取单元41的进一步说明,如图5所示,所述获取单元41包括:

获取子单元411,用于当获取到流媒体片段时,获取所述流媒体片段的片段时长参数。

计算子单元412,用于将所述获取子单元411获取的所述片段时长参数与其余已获取且未播放的流媒体片段的片段时长参数进行累加,计算出所述流媒体的总时长参数。

每当获取到流媒体片段时,获取子单元411从所述流媒体片段的文件头中可获取到所述流媒体片段的片段时长参数。计算子单元412将获取子单元411获取到的所述片段时长参数进行累加后,得出所述流媒体的总时长参数。

若已获取10个流媒体片段,其中未播放的流媒体片段为“3”至“10”,此时所述流媒体由“3”至“10”这八个流媒体片段组成。所述流媒体的总时长参数为流媒体片段“3”至“10”的片段时长参数的总和,例如15分钟。当获取子单元411获取到流媒体片段“11”时,若流媒体片段“11”的片段时长参数为3分钟,则计算子单元412计算出的所述流媒体的总时长参数为3+15=18分钟。

所述片段时长参数除了可以用时间(分钟)表示,还可以用进度(总进度的百分比)表示。

本发明实施例提供的另一种电子设备,计算子单元412对片段时长参数进行累加得到总时长参数,可以根据所述总时长参数确定是否沿用DASH技术。

本实施例是对图4所示实施例中处理单元42的进一步说明,如图6所示,所述处理单元42包括:

判断子单元421,用于当所述时长预设阈值的数量为一个时,判断所述获取单元41获取到的所述总时长参数是否超过所述时长预设阈值;

确定子单元422,用于当判断子单元421确定所述总时长参数超过所述时长预设阈值时,将所有已获取流媒体片段的平均码率,确定为下一个获取的流媒体片段的码率;或者用于将所有已获取且未播放的流媒体片段的平均码率,确定为下一个获取的流媒体片段的码率;或者用于将MPD文件中码率最高的流媒体片段的码率,确定为下一个获取的流媒体片段的码率;或者用于将高于且最接近当前获取的流媒体片段码率的码率,确定为下一个获取的流媒体片段的码率。

判断子单元421判断所述获取单元41获取到的所述总时长参数是否超过所述时长预设阈值;

当所述总时长参数超过所述时长预设阈值时:

方式一:确定子单元422将所有已获取流媒体片段的平均码率,确定为下一个获取的流媒体片段的码率;

方式二:确定子单元422将所有已获取且未播放的流媒体片段的平均码率,确定为下一个获取的流媒体片段的码率;

方式三:确定子单元422将MPD文件中码率最高的流媒体片段的码率,确定为下一个获取的流媒体片段的码率;

方式四:确定子单元422将高于且最接近当前获取的流媒体片段码率的码率,确定为下一个获取的流媒体片段的码率。

本发明实施例提供的另一种电子设备,获取单元41能够从获取到的流媒体片段中提取所述流媒体片段的片段时长参数,将该片段时长参数与其余已获取且未播放的流媒体片段的片段时长参数进行累加,可计算出流媒体的总时长参数,该总时长参数可以用时间表示也可以用播放进度表示,进而实现通过总时长参数对当前未播放流媒体进行监控。现有技术即DASH技术中不根据已获取的流媒体片段内的总时长参数调节下一个获取的流媒体片段的码率,容易造成在已获取的流媒体片段满足连续性要求时,继续获取低码率片段,进而降低流媒体播放质量。能够当所述时长预设阈值的数量为一个时,确定子单元422通过方式一至方式四可确定下一个获取的流媒体片段的码率。获取单元41根据确定子单元422确定的该码率可获取到高码率的流媒体片段,进而提高流媒体播放质量。

本实施例是对图4所示实施例中处理单元42的进一步说明,如图7所示,所述处理单元42包括:

判断子单元一423,用于当所述时长预设阈值的数量多于一个时,判断所述获取单元41获取到的所述总时长参数是否超过第一阈值并且未超过第二阈值,所述第二阈值为与所述第一阈值相邻并且大于所述第一阈值的阈值。

选择子单元425,用于当判断子单元421确定所述总时长参数超过第一阈值并且未超过第二阈值时,根据预设映射关系表选择与所述第一阈值对应的码率,其中所述预设映射关系表用于表征所述第一阈值和第二阈值与码率的对应关系。

确定子单元一424,用于将选择子单元425选择的所述码率作为下一个获取的流媒体片段的码率。

本发明实施例提供的另一种电子设备,判断子单元一423能够根据至少两个时长预设阈值判断所述时长预设阈值是否超过第一阈值并且未超过第二阈值,选择子单元425可根据判断子单元一423的判断结果确定出与当前总时长参数对应的码率,进一步提高流媒体播放质量。

本发明实施例提供的另一种电子设备,获取单元41能够从获取到的流媒体片段中提取所述流媒体片段的片段时长参数,将该片段时长参数与其余已获取且未播放的流媒体片段的片段时长参数进行累加,可计算出流媒体的总时长参数,该总时长参数可以用时间表示也可以用播放进度表示,进而实现通过总时长参数对当前未播放流媒体进行监控。现有技术即DASH技术中不根据已获取的流媒体片段内的总时长参数调节下一个获取的流媒体片段的码率,容易造成在已获取的流媒体片段满足连续性要求时,继续获取低码率片段,进而降低流媒体播放质量。当所述时长预设阈值的数量为至少一个时,判断子单元一423通过判断总时长参数是否超过第一阈值并且未超过第二阈值之后,选择子单元425可根据预设映射关系表选择出与所述第一阈值对应的码率,然后确定子单元一424可将选择子单元425选择出的该码率确定为下一个获取的流媒体片段的码率,进而实现根据不同的总时长参数确定不同的下一个获取的流媒体片段的码率,所述总时长参数越大所述码率越高,进而提高播放质量。

本实施例是对图4所示实施例中处理单元42的进一步说明,如图8所示,所述处理单元42还包括:

预设子单元426,用于预设映射关系表,所述预设映射关系表用于表征所述第一阈值和第二阈值与码率的对应关系。

本实施例是对图4所示实施例中处理单元42的进一步说明,所述预设子单元426具体用于:

设置所述第一阈值对应的码率与所述第二阈值对应的码率的差值为固定值;或者,

设置所述第一阈值对应的码率与所述第二阈值对应的码率的插值的增量值为固定值。

本发明实施例提供的另一种电子设备,获取单元41能够从获取到的流媒体片段中提取所述流媒体片段的片段时长参数,将该片段时长参数与其余已获取且未播放的流媒体片段的片段时长参数进行累加,可计算出流媒体的总时长参数,该总时长参数可以用时间表示也可以用播放进度表示,进而实现通过总时长参数对当前未播放流媒体进行监控。现有技术即DASH技术中不根据已获取的流媒体片段内的总时长参数调节下一个获取的流媒体片段的码率,容易造成在已获取的流媒体片段满足连续性要求时,继续获取低码率片段,进而降低流媒体播放质量。当所述时长预设阈值的数量为至少一个时,判断子单元一423通过判断总时长参数是否超过第一阈值并且未超过第二阈值之后,选择子单元425可根据预设映射关系表选择出与所述第一阈值对应的码率,然后确定子单元一424可将选择子单元425选择出的该码率确定为下一个获取的流媒体片段的码率,进而实现根据不同的总时长参数确定不同的下一个获取的流媒体片段的码率,所述总时长参数越大所述码率越高,进而提高播放质量。

本发明实施例提供了另一种电子设备,如图9所示,包括:

处理器91,用于获取流媒体的总时长参数,所述流媒体由至少一个未播放的流媒体片段组成;

根据获取到的总时长参数以及至少一个时长预设阈值确定下一个获取的流媒体片段的码率;

根据确定的所述码率获取下一个流媒体片段。

为了保证已获取且未播放的流媒体片段可以保证一定时间,如2分钟,的连续播放,需要对所述已获取且未播放的流媒体片段的总时长参数进行计算。所述处理器91根据MPD文件依次获取流媒体片段,即接收完毕再请求新的流媒体片段。因此,可以将获取到流媒体片段作为计算所述总时长参数的时机。在图1中,若一部微电影由4个流媒体片段组成,所述处理器91已获取的片段为“1”和“2”,其中流媒体片段“1”正在播放。此时,所述流媒体为流媒体片段“2”,若“2”的时长为3分钟,可以满足上述一定时间(2分钟)的连续播放。已获取的流媒体片段保存在存储器92中,例如缓冲区或者硬盘,以便在播放时从存储器92中依次播放已获取的流媒体片段。

当获取到流媒体片段时,所述处理器91能够播放的流媒体片段的总时长。如果此时流媒体的总时长参数小于任意一个时长阈值,则所述处理器91沿用DASH技术获取流媒体片段。如果此时流媒体的总时长参数大于至少一个时长预设阈值,则流媒体可以保证一定时间的连续播放,进而所述处理器91确定下一个获取的流媒体片段内的码率。

所述处理器91通过HTTP请求向流媒体服务器请求确定的下一个获取的流媒体片段的码率对应的流媒体片段。

本发明实施例提供的电子设备,所述处理器91能够根据流媒体的总时长参数与至少一个时长预设阈值确定下一个获取的流媒体片段的码率,根据确定的所述码率获取下一个流媒体片段,进而解决因获取过多低码率片段导致的流媒体的播放质量下降的问题。现有技术中通过DASH技术可保证UE播放的媒体数据的连续性,但当已获取的流媒体片段的总时长已满足连续性要求时,若再按照DASH技术获取流媒体片段,可能出现播放质量低的问题。本发明在所述处理器91获取到流媒体片段时,获取当前至少一个未播放的流媒体片段组成的流媒体的总时长参数,根据所述总时长参数以及至少一个时长预设阈值可确定已获取的流媒体片段的总时长是否已满足连续性要求。当满足连续性要求时,可得出下一个获取的流媒体片段的码率,该码率与UE当前的信道条件无关,与播放质量有关。当播放根据该码率获取的该下一个流媒体片段时,可提高流媒体文件的播放质量。

本实施例与图9所示实施例类似,不同之处在于,如图10所示,所述电子设备还包括:

接收器93,用于接收所述流媒体片段。

存储器92,用于存储所述接收器93接收到的所述流媒体片段。

所述处理器91,还用于当所述接收器93接收到流媒体片段时,从所述存储器92中获取所述流媒体片段的片段时长参数;

将所述获取子单元获取的所述片段时长参数与其余已获取且未播放的流媒体片段的片段时长参数进行累加,计算出所述流媒体的总时长参数。

每当接收器93接收到到流媒体片段时,接收器93将所述流媒体片段发送到存储器92中进行保存,处理器91通过存储器92获得所述流媒体片段,并从所述流媒体片段的文件头中可获取到所述流媒体片段的片段时长参数。处理器91将获取到的所述片段时长参数进行累加后,得出所述流媒体的总时长参数。

若已获取10个流媒体片段,其中未播放的流媒体片段为“3”至“10”,此时所述流媒体由“3”至“10”这八个流媒体片段组成。所述流媒体的总时长参数为流媒体片段“3”至“10”的片段时长参数的总和,例如15分钟。当处理器91获取到流媒体片段“11”时,若流媒体片段“11”的片段时长参数为3分钟,则计算出的所述流媒体的总时长参数为3+15=18分钟。

所述片段时长参数除了可以用时间(分钟)表示,还可以用进度(总进度的百分比)表示。

本实施例是对图9所示实施例中处理器91的进一步说明,所述处理器91还用于:

当所述时长预设阈值的数量为一个时,判断所述接收器93获取到的所述总时长参数是否超过所述时长预设阈值;

当判断子单元确定所述总时长参数超过所述时长预设阈值时,将所有已获取流媒体片段的平均码率,确定为下一个获取的流媒体片段的码率;或者用于将所有已获取且未播放的流媒体片段的平均码率,确定为下一个获取的流媒体片段的码率;或者用于将MPD文件中码率最高的流媒体片段的码率,确定为下一个获取的流媒体片段的码率;或者用于将高于且最接近当前获取的流媒体片段码率的码率,确定为下一个获取的流媒体片段的码率。

本发明实施例提供的另一种电子设备,处理器91能够从获取到的流媒体片段中提取所述流媒体片段的片段时长参数,将该片段时长参数与其余已获取且未播放的流媒体片段的片段时长参数进行累加,可计算出流媒体的总时长参数,该总时长参数可以用时间表示也可以用播放进度表示,进而实现通过总时长参数对当前未播放流媒体进行监控。现有技术即DASH技术中不根据已获取的流媒体片段内的总时长参数调节下一个获取的流媒体片段的码率,容易造成在已获取的流媒体片段满足连续性要求时,继续获取低码率片段,进而降低流媒体播放质量。能够当所述时长预设阈值的数量为一个时,处理器91通过方式一至方式四可确定下一个获取的流媒体片段的码率,并根据确定的该码率可获取到高码率的流媒体片段,进而提高流媒体播放质量。

本实施例是对图9所示实施例中处理器91的进一步说明,所述处理器91还用于:

当所述时长预设阈值的数量多于一个时,判断所述接收器93获取到的所述总时长参数是否超过第一阈值并且未超过第二阈值,所述第二阈值为与所述第一阈值相邻并且大于所述第一阈值的阈值;

当判断子单元确定所述总时长参数超过第一阈值并且未超过第二阈值时,根据预设映射关系表选择与所述第一阈值对应的码率,其中所述预设映射关系表用于表征所述第一阈值和第二阈值与码率的对应关系;

将选择子单元选择的所述码率作为下一个获取的流媒体片段的码率。

本发明实施例提供的另一种电子设备,处理器91能够根据至少两个时长预设阈值,确定出与当前总时长参数对应的码率,进一步提高流媒体播放质量。

本实施例是对图9所示实施例中处理器91的进一步说明,所述处理器91还用于:

预设映射关系表,所述预设映射关系表用于表征所述第一阈值和第二阈值与码率的对应关系。

所述处理器91还用于:

设置所述第一阈值对应的码率与所述第二阈值对应的码率的差值为固定值;或者,

设置所述第一阈值对应的码率与所述第二阈值对应的码率的插值的增量值为固定值。

本发明实施例提供的另一种电子设备,处理器91能够从获取到的流媒体片段中提取所述流媒体片段的片段时长参数,将该片段时长参数与其余已获取且未播放的流媒体片段的片段时长参数进行累加,可计算出流媒体的总时长参数,该总时长参数可以用时间表示也可以用播放进度表示,进而实现通过总时长参数对当前未播放流媒体进行监控。现有技术即DASH技术中不根据已获取的流媒体片段内的总时长参数调节下一个获取的流媒体片段的码率,容易造成在已获取的流媒体片段满足连续性要求时,继续获取低码率片段,进而降低流媒体播放质量。当所述时长预设阈值的数量为至少一个时,处理器91通过判断总时长参数是否超过第一阈值并且未超过第二阈值之后,可根据预设映射关系表选择出与所述第一阈值对应的码率,将选择出的该码率确定为下一个获取的流媒体片段的码率,进而实现根据不同的总时长参数确定不同的下一个获取的流媒体片段的码率,所述总时长参数越大所述码率越高,进而提高播放质量。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

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