用于多媒体自适应流传输的装置和机器可读存储介质的制作方法

文档序号:15568705发布日期:2018-09-29 03:57阅读:164来源:国知局

本申请是申请日为2014年3月18日、申请号为201480010153.2、题为“体验质量感知的多媒体自适应流传输”的发明专利申请的分案申请。



背景技术:

包括流传输服务和对话服务在内的多媒体服务的增长是向新的移动宽带技术和标准演进的一个关键驱动。移动设备中正越来越多地消费数字视频内容。在日常生活中存在许多在移动设备上广泛使用的视频应用。例如,在线视频流传输包括诸如youtube和hulu之类的流行服务。视频记录和视频会议包括诸如skype和googlehangout之类的服务。在2011年,youtube具有超过1万亿的全球观看量。这些观看中的百分之十是通过移动设备或平板电脑访问的。随着更多的智能电话、平板电脑、和其它移动计算设备被购买,它们对于视频记录和视频会议的使用将剧烈增加。随着对于多媒体服务的如此高的消费需求加上媒体压缩和无线网络基础架构的发展,增强未来的蜂窝和移动宽带系统的多媒体服务功能、以及向消费者递送较高的体验质量(qoe)从而确保用任何设备和技术在任何时候从任何位置对视频内容和服务的无所不在的访问是令人感兴趣的。



技术实现要素:

根据本申请的一方面,公开了一种可操作用于对从服务器接收到的http动态自适应流传输(dash)内容进行解码的客户端的装置,该装置包括一个或多个处理器和存储器,该一个或多个处理器和存储器被配置用于:在客户端处对从服务器接收到的消息进行解码,该消息包括对针对客户端的带宽分配的指示;在客户端处对从服务器接收到的媒体呈现描述(mpd)文件进行解码,mpd文件包括与多个表示中的每个表示相关联的带宽;在客户端处从mpd中选择dash内容的表示,该dash内容的表示具有在针对客户端的带宽分配内的带宽;并且在客户端处对从服务器接收到的所选择的dash内容的表示进行解码。

根据本申请的一方面,公开了一种可操作用于向客户端提供http动态自适应流传输(dash)内容的服务器的装置,该装置包括一个或多个处理器和存储器,该一个或多个处理器和存储器被配置用于:在服务器处确定针对客户端的带宽分配;在服务器处对用于传送到客户端的消息进行编码,该消息包括对针对客户端的带宽分配的指示;在服务器处对用于传送到客户端的媒体呈现描述(mpd)文件进行编码,mpd文件包括与多个表示中的每个表示相关联的带宽;并且在服务器处对从mpd中选择的dash内容的表示进行编码以传送到客户端,其中dash内容的表示与在针对客户端的带宽分配内的带宽相关联。

根据本申请的一方面,公开了至少一个存储有指令的机器可读存储介质,该指令用于对在客户端处从服务器接收到的http动态自适应流传输(dash)内容进行解码,该指令在被一个或多个处理器执行时实现以下操作:在客户端处对从服务器接收到的消息进行解码,该消息包括对针对客户端的带宽分配的指示;在客户端处对从服务器接收到的媒体呈现描述(mpd)文件进行解码,mpd文件包括与多个表示中的每个表示相关联的带宽;在客户端处从mpd中选择dash内容的表示,该dash内容的表示具有在针对客户端的带宽分配内的带宽。

根据本申请的一方面,公开了至少一个存储有指令的机器可读存储介质,该指令用于从服务器向客户端提供http动态自适应流传输(dash)内容,该指令在被一个或多个处理器执行时实现以下操作:在服务器处确定针对客户端的带宽分配;在服务器处对用于传送到客户端的消息进行编码,该消息包括对针对客户端的带宽分配的指示;在服务器处对用于传送到客户端的媒体呈现描述(mpd)文件进行编码,mpd文件包括与多个表示中的每个表示相关联的带宽;并且在服务器处对从mpd中选择的dash内容的表示进行编码以传送到客户端,其中dash内容的表示与在针对客户端的带宽分配内的带宽相关联。

附图说明

本公开的特征和优点将从随后结合附图的详细描述中变得清楚,该附图通过示例的方式一起示出了本公开的特征;并且其中:

图1示出了根据示例的媒体呈现描述(mpd)元数据文件配置的框图;

图2a示出了根据示例的随时间变化的超文本传输协议(http)自适应流(has)的示例;

图2b示出了根据示例的超文本传输协议(http)流传输的框图;

图3示出了根据示例的用于基于超文本传输协议(基于http)的视频流传输的能量特性感知的无线电接入网络(ran)架构的框图;

图4示出了根据示例的提供具有可用表示的mpd文件的示例的图表;

图5示出了根据示例的针对所选择的服务器带宽的可用表示代码的示例的图表;

图6示出了根据示例的可操作以提供http自适应流传输的服务器的计算机电路的功能;

图7示出了根据示例的可操作以提供http自适应流传输的移动设备的计算机电路的功能;

图8示出了根据示例的用于从服务器向多个客户端提供多媒体的可变比特率自适应流传输的方法的框图;以及

图9示出了根据示例的无线设备(例如,ue)的示意图。

下面将参考所示出的示例性实施例,并且这里将使用具体语言来描述这些示例性实施例。然而,应该理解的是不旨在限制本发明的范围。

具体实施方式

在本发明被公开和描述之前,应该理解的是本发明不限于这里公开的特定结构、处理步骤、或材料,而是被扩展至将被相关领域普通技术人员认识到的其等同形式。还应该理解的是,这里所采用的术语仅被用于描述特定示例的目的并且不旨在是限制性的。不同附图中的相同标号表示相同的元件。流程图和过程中所提供的标号被提供用于清楚说明步骤和操作并且不一定指示特定的次序或顺序。

示例实施例

下面提供了技术实施例的初步概述,然后将进一步详细描述具体的技术实施例。该初步概述旨在帮助读者更快速地理解技术,而不是旨在标识技术的关键特征或必要特征,也不旨在限制所要求保护的主题的范围。

自适应多媒体流传输允许相同多媒体文件的不同版本在多媒体被流传输的同时被移动设备访问。无线电链路条件的改变会降低或增加移动设备处的可用带宽。通过在多媒体文件在移动设备处被运行的同时改变该多媒体文件的不同版本来“适应”的能力使得即使在带宽减小时也能够继续该多媒体文件的执行。

包括基于超文本传输协议(http)的流传输服务(例如,逐步下载和http动态自适应流传输(dash))在内的当前自适应多媒体流传输标准和规范具有在某些条件下会降低用户的体验质量的局限性。

一般假设被包括在流传输文件的清单文件(manifestfile)中的所有多媒体服务器包括多媒体的所有版本和部分。这意味着具有多媒体流的部分内容的服务器不能被用于向移动设备流传输它们不具有的时段。在具有多媒体流的所有版本和时段的特定服务器变得过载因而不能在适当的时间帧中递送内容的情况下,无法通知移动设备降低其从服务器的下载速率以避免多媒体的多个部分的潜在的取回延迟或者较大的分组丢失。

另外,在移动设备共享共同的有限带宽并且争用资源的情况下,去往多个用户的多个多媒体流的存在将会导致拥塞,并且通过使移动设备在播放可以继续之前重新填充它们的缓冲器会降低播放体验。对于大量用户试图从服务器获取相同的多媒体流传输内容时的直播活动尤其如此。

无线多媒体标准

已经开发出了使能多媒体被传送至移动计算设备、从移动计算设备传送多媒体、或者在移动计算设备之间传送多媒体的大量多媒体标准。例如,在流传输视频方面,第三代合作伙伴计划(3gpp)已经开发出了描述基于实时流传输协议(rtsp)的分组交换流传输服务(pss)的技术规范(ts)26.234(例如,版本11.0.0)用于按需或者直播内容的单播流传输。另外,在3gppts26.247(例如,版本11.0.0)中描述了包括逐步下载和http动态自适应流传输(dash)在内的基于超文本传输协议(http)的流传输服务。基于3gpp的多媒体广播多播服务(mbms)规范ts26.346(例如,版本11.0.0)规定了用于多播/广播内容分发的流传输和下载技术。这样,诸如用户设备(ue)之类的基于dash/pss/mbms的移动计算设备在ue设备处解码并且呈现流传输的视频。3gppts26.244(例如,版本11.0.0)中对于3gp文件格式的支持在所有这些规范中都是强制的,以支持文件下载和基于http的流传输用例。

3gppts26.114(例如,11.0.0)中提供了用于对话视频通信(例如,视频会议)的标准的一个示例。该标准描述了ims多媒体电话服务(mtsi),该服务允许高级多媒体对话服务和内容在基于互联网协议(ip)多媒体子系统(ims)的网络上递送。ims在3gppts26.140(例如,版本11.0.0)中被标准化。基于mtsi的发射器ue终端可以捕捉并记录视频,然后通过3gpp网络将视频传输到基于mtsi的接收器ue终端。接收器ue终端随后可以译码并且呈现该视频。3gppts26.140还使能使用多媒体共享服务(mmi)的视频共享,其中提供了对3gp文件格式的支持。

以上描述的标准作为可以被用于向多媒体设备传送多媒体文件、从多媒体设备传送多媒体文件、和/或在多媒体设备之间传送多媒体文件的无线多媒体标准的示例被提供。这些示例并不旨在限制性的。其他标准可以被用于提供流传输视频、对话视频、或者视频共享。

流传输媒体标准

在本发明的实施例的背景下提供了对于http流传输,尤其是dash标准的更详细的说明。详细的说明并不旨在限制性的。如将在后续段落中进一步说明的,本发明的实施例可以被用于通过使能移动设备、或者与移动设备通信的服务器选择和/或传送具有期望能量特性的多媒体,来高效地向移动设备传送多媒体、从移动设备传送多媒体、和/或在移动设备之间传送多媒体。可以使用标准化或非标准化的通信机制来传送多媒体。

超文本传输协议(http)流传输可以被用作互联网视频的多媒体递送的一种形式。在http流传输中,多媒体文件可以被划分为一个或多个片段,并且被使用http协议递送到客户端。基于http的递送由于广泛采用了http和http的底层协议(包括传输控制协议(tcp)/互联网协议(ip)),可以提供可靠性和部署简易性。基于http的递送可以通过避免网络地址转换(nat)和防火墙穿越问题,而使能简化的流传输服务。基于http的递送或流传输还可以提供使用标准http服务器和高速缓存来代替专门的流传输服务器的能力。基于http的递送由于服务器侧的状态信息被最小化或者减少,而可以提供可扩展性。http流传输技术的示例可以包括microsoftiis平滑流传输、applehttp实时流传输、以及adobehttp动态流传输。

dash是标准化的http流传输协议。如图1中所示,dash可以规定媒体呈现描述(mpd)元数据文件102的不同格式,该mpd元数据文件可以提供关于服务器中存储的媒体内容表示的结构和不同版本、以及片段格式的信息。mpd元数据文件包含关于媒体播放器的初始化和媒体片段的信息(例如,媒体播放器可以查看初始化片段来确定容器格式和媒体定时信息),以确保片段到用于切换和与其他表示的同步呈现的媒体呈现时间轴的映射。dash技术也已经被其它组织(例如,运动图像专家组(mpeg)、开放iptv论坛(oipf)、以及混合广播宽带tv(hbbtv))标准化。

dash客户端可以通过经由一系列http请求-响应处理下载片段,来接收多媒体内容。dash可以提供在对于移动设备可用的带宽改变时在媒体内容的不同比特率表示之间动态切换的能力。因此,dash可以允许对改变的网络和无线链路条件、用户偏好和设备性能(诸如显示器分辨率、所采用的中央处理单元(cpu)的类型、存储器资源可用性等)的快速适应。相比其他流传输协议,dash的动态自适应可以为用户提供更好的体验质量(qoe),包括更短的启动延迟和更少的重缓冲事件。

在dash中,媒体呈现描述(mpd)元数据102可以提供关于存储在web/媒体服务器212中的媒体内容表示的结构和不同版本的信息,如图2b中所示。在图1中所示的示例中,mpd元数据在时间上被划分为具有预定长度(在本示例中为60秒)的时段。每个时段可以包括多个适应集104。每个适应集可以提供关于具有多个经编码的替代的一个或多个媒体组件的信息。例如,本示例中的适应集0可以包括各种经不同编码的音频替代(诸如,不同比特率、单声道、立体声、环绕声等)。除了在时段id上针对多媒体呈现提供不同质量的音频以外,适应集还可以包括不同语言的音频。适应集中提供的不同替代被称为表示106。

在图1中,适应集1被示出为提供不同比特率(例如,5兆比特每秒(mbps)、2mbps、500千比特每秒(kbps)、或特技模式)的视频。特技模式可以被用于多媒体流传输文件中的位置的寻找、快进、倒退、或其它改变。另外,视频还可以在不同格式(例如,二维(2d)或三维(3d))视频)中可用。每个表示106可以包括片段信息108。片段信息可以包括初始化信息110和实际媒体片段数据112。在该示例中,mpeg4(mp4)文件可以被从服务器流传输到移动设备。尽管本示例中使用mp4,但是各种不同的编解码器可以被使用,如前所述。

适应集中的多媒体还可以被进一步划分为更小的片段。在图1的示例中,适应集1的60秒的视频片段被进一步划分为分别为15秒的四个子片段112。这些示例不旨在限制性的。适应集和每个媒体片段或子片段的实际长度取决于媒体类型、系统需求、潜在干扰类型等。实际的媒体片段或子片段可以具有小于1秒到数分钟的长度。

图2a提供了随着时间变化的http自适应流(has)210的示例图示。在最初的30秒时段中,客户端首先从高质量表示202中取回片段208。该示例中的片段大约为10秒长。但是,这不旨在限制性的。片段可以在服务器处被配置为任何期望的长度。另外,子片段也可以被下载。

客户端然后取回中等质量表示204中的两个片段。在10秒持续时间的第二时段中,客户端再次切换并且从低质量表示206取回片段。客户端可能会由于与多媒体服务器的无线电链路质量的改变而切换到更低质量的表示。在20秒持续时间的第三时段中,客户端切换回中等质量表示204,如图2a中所示。客户端可以贯穿从服务器到多媒体设备上运行的客户端的多媒体文件的has的长度,继续从所选择的表示请求片段。

如图2b中所示,mpd元数据信息可以被传送至客户端220。客户端可以在移动设备上操作。移动设备可以是被配置为接收并显示流传输媒体的无线设备。在一个实施例中,移动设备可以仅执行部分功能(例如,接收流传输媒体,然后将其传送到另一设备或显示设备进行呈现)。移动设备可以被配置为运行客户端220。客户端可以使用httpget240消息或者一系列部分get消息来请求片段。客户端可以控制流传输会话(例如,管理片段序列的按时请求和平滑播放、或者潜在地调整比特率或其他属性,以对无线链路、设备状态、或用户偏好的改变做出反应)。

图2b示出了基于dash的流传输框架。web/媒体服务器212中的媒体编码器214可以将来自音频/视频输入端210的输入媒体编码为供存储或流传输的格式。媒体分段器216可以被用来将输入媒体划分为一系列片段232,这些片段可以被提供给web服务器218。客户端220可以使用被发送到web服务器(例如,http服务器)的httpget消息234请求以片段为单位的新数据。

例如,客户端220的web浏览器222可以使用httpget消息240请求多媒体内容。web服务器218可以将多媒体内容的mpd242提供给客户端。mpd可以被用来传递每个片段的索引、以及该片段的相应地址,如相关联的元数据信息252中所示。web浏览器可以根据236中所示的mpd242逐片段地从服务器抽取媒体。例如,web浏览器可以使用httpgeturl(frag1req)244请求第一片段。统一资源定位符(url)或者通用资源定位符可以被用来告知web服务器客户端将请求哪个片段254。web服务器可以提供第一分段(即,片段1246)。对于后续片段,web浏览器可以使用httpgeturl(fragireq)248来请求片段i,其中i是片段的整数索引。结果,web浏览器可以提供片段i250。片段可以经由媒体解码器/播放器224被呈现给客户端。

图3示出了http服务器310向移动设备(例如,ue336)上运行的3gpp客户端338提供多媒体内容之间的多媒体内容312的流。http服务器可以与公共或者私有网络322(或者互联网)交互,该公共或者私有网络与无线广域网(wwan)的核心网络324通信。在一个实施例中,wwan可以是基于3gpplte(即,rel.11或12)的网络、或者基于ieee802.16(即,802.16-2009或者802.16m-2011)的网络。核心网络可以经由无线电接入网络(ran)332访问诸如演进分组系统(eps)之类的无线网络330。ran可以经由节点(例如,演进节点b(enb)334)向ue上运行的客户端提供多媒体内容。

qoe感知的自适应流传输

http自适应流传输(has)的体验质量(qoe)会受到容宿表示和相应片段的一个或多个服务器的影响。如前面所讨论的,本说明书假设所有服务器(基础统一资源定位符(url))分别包括所有的表示和相应片段。这意味着只具有部分内容的服务器不会在mpd文件中被列出。如果具有部分内容的服务器在mpd文件中被列出,则在请求被作出并且未被特定服务器完成之前客户端将无法确定这些服务器不具有某些表示或者片段。当出现这种情况时,客户端qoe会由于取回丢失的片段中的延迟而急剧下降。

服务器可能具有有限的操作能力。如果特定服务器变得过载并且无法在适当的时间帧中传递内容,则该服务器无法向移动设备上运行的一个或多个客户端通知降低其从服务器的下载速率以避免潜在的片段取回延迟或大的分组丢失。

另外,服务器可能具有有限的带宽。当多个客户端共享共同的有限带宽并且争用资源时,去往多个用户的多个dash流的存在将导致拥塞并且降低客户端的播放体验。服务器提供片段的能力降低会导致客户端处的不期望的重缓冲。在大量客户端试图从服务器获取相同的dash内容时尤其如此。

根据本发明的实施例,服务器可以修改清单列表(例如,mpd)中的提供客户端的dash表示的集合。该修改使得服务器能够向客户端传送诸如可用表示和/或片段、可用服务器容量、和/或可用服务器带宽或吞吐量之类的信息。客户端随后可以请求活动可用的表示。如果具有更大容量或者带宽的另一服务器不可用,则客户端可以选择将不会使可用服务器容量和带宽过载的表示或片段。

服务器通常传送包括诸如<baseurl>http://192.168.10.10/sintel/,/baseurl>之类的服务器互联网协议(ip)地址的所支持的基础url站点。除了服务器ip地址以外,与每个表示相对应的、指示所选择的表示在服务器处是否可用的二进制代码可以被包括。例如,表示可用性可以使用被称为可用表示代码(arc)的二进制代码来传送。来自服务器的通信可以包括arc消息(例如,<baseurlarc=”0011001111”>http://192.168.10.10/sintel/</baseurl>)。这将在后续段落中更详细地描述。

传送表示的可用性的能力可以使得服务器能够利用针对可用表示的更新后的二进制代码来动态地通知客户端。该二进制代码可以被服务器用来限制客户端对于将加重服务器的容量和/或吞吐量方面的负担的表示的请求。客户端可以将更新后的二进制代码包括在其比特率自适应逻辑中,并且仅请求活动可用列表中的表示。该反馈机制允许由服务器服务的客户端做出有助于避免服务器处的拥塞问题的决策,从而通过减少重缓冲事件来增大客户端设备处的qoe并且增大可以被传送给客户端的表示等级。

可用表示代码

根据一个实施例,可以针对清单文件(例如,mpd文件)中的每个表示预先确定诸如arc之类的二进制代码。在一个示例中,每个arc可以针对每个表示分派被称为表示访问位(representationaccessbit,rab)的可以为“0”或“1”的比特。在运行时,服务器可以针对被提供给客户端的流传输媒体计算服务器的上传速率,并且动态地更新arc,该arc随后被用来通知每个客户端。

图4提供了示出具有可用表示的mpd文件的示例的图表。在该示例中,mpd文件包括利用表示标识(id)0-5标记的六个不同的表示。每个表示具有不同的比特率。在该示例中,id0具有最低比特率,并且id5具有最高比特率(以千比特每秒(kbits/sec)来度量)。每个表示id还被分派以rab,其中,表示id0被分派给rabb5,id5被分派给rabb0,如所示出的。替代布置也是可能的,如所理解的那样。

由于示例mpd文件包含6个表示,所以相应的arc可以包括6个比特、或者包括(b5b4b3b2b1b0)的rab。在该示例实施方式中,最高有效位对应于具有最低比特率的表示,反之亦然。该示例不旨在限制性的。许多不同类型的代码可以被用来从服务器向每个客户端传送arc。

图5提供了用来示出服务器处的所选择的可用带宽速率的arc代码的示例图表。如可以看出的,对于服务器处的每个表示,当相应的可用表示比特被设置为所选择的二进制值(例如,“0”)时,客户端对表示的访问被禁止。当可用表示比特被设置为相反的二进制值(例如,“1”)时,表示访问被使能。这允许每个客户端能够获知哪些表示对于客户端是可用的。

在后续段落中的示例,代码可以被用来传送哪些表示在服务器处可用。该代码在每个mpd文件中被传送。然而,取决于has系统中发生的服务器带宽或者服务器容量快速改变的程度,代码可以被以期望的频率以其他方式传送。

在另一示例中,在流传输会话期间,服务器和客户端可以执行一组操作,以增加每个客户端的qoe。服务器可以从每个客户端接收反馈信息,以计算将被分配给每个用户的带宽。反馈信息可以包含在has会话期间用户察觉到的平均质量、以及客户端经历的重缓冲事件的数目。在一个实施例中,用户察觉到的质量可以是与每个片段相关联的、粗略估计将达到的平均意见得分(mos)的预先计算的质量因子。该预先计算的质量因子可以被包括在诸如mpd之类的清单文件中。用于带宽分配的算法将在后续段落中进一步讨论。

服务器可以动态地修改arc,从而使得一个或多个客户端的下载速率不超过服务器的带宽速率所支持的最大值、或者特定客户端所支持的速率最大值。服务器随后可以通过对用户http请求的响应,将更新后的arc发送给用户。传送arc信息的示例包括在清单文件(例如,mpd)中发送arc信息,在定制http报头中发送arc信息,经由单独的无线电信道而不是用于传送has的无线电信道发送arc信息,或者经由更高层信令发送arc。客户端随后可以接收arc,并且随后在做出后续请求时在客户端的比特速率适应算法中使用该信息。

之前的段落中描述的操作使得服务器能够管理用户的体验质量。另外的操作可以被执行,以通过所选择的方式来优化qoe。下面提供了用于优化用户体验的多个示例。

最小质量下降方法

在服务器处动态调整arc可以使每个用户处的质量方面的显著下降最小化。更高的优先级可以被赋予在表示被去激活(即,表示的rab被从“1”改变为“0”)的情况下将经历更大下降的用户。

可以考虑多个额外因素。例如,针对每个客户端的重缓冲事件的数目可以被确定。每个客户端的平均质量与所组合的所有用户的平均质量之间的差可以被确定。这些因子随后可以被用作可以赋予客户端的信用(credit)。该信用可以降低针对客户端的其他表示被去激活的可能性。因此,具有比平均qoe低的qoe的客户端可以使他们的qoe相对于其他客户端被提升。

在一个实施例中,最小质量下降(mqr)算法可以从使能针对所有客户端的所有表示开始。以迭代的方式,mqr算法可以搜索在表示被去激活时将经历质量方面的最小下降的客户端。在每个循环中,如果客户端具有信用点,则该客户端在该次循环中被去除作为表示的去激活的潜在候选,并且它的信用下降1。这些循环可以继续进行,直到服务器达到带宽或容量方面的期望下降为止。当服务器具有多余的带宽或容量时,mqr算法可以首先针对具有最多信用点的客户端激活表示。

相同平均质量方法

在该示例实施例中,所有客户端可以被设置到几乎相同的平均质量。服务器可以检查组合在一起的客户端的集合所请求的总带宽是否超过了对于服务器可用的带宽。如果所请求的带宽超过对于has的服务器的可用带宽,则可以针对具有最高平均质量的客户端的表示去激活。平均质量可以由每个客户端计算,并被发送给服务器。

如前所述,mos值可以在预处理阶段被计算出来,并且可以被包括在诸如mpd之类的清单文件中。mpd中的每个片段被与该mos值相关联。具有更高数据速率的片段具有大于等于具有较低数据速率的片段的mos值的mos值。当前存在将该质量信息标准化为用于dash规范的mpd中的参数的努力。当下载has时,每个客户端可以更新平均质量,该平均质量可以通过用has中的下载片段的数目来除下载片段的每个mos值之和得出。

在一个实施例中,客户端的平均质量可以被与针对该客户端所准许的最大表示的平均质量相对应的质量替换。服务器随后可以再次检查所请求的总带宽,并且继续迭代地针对具有最大平均质量的客户端去激活表示,直到可以被组合在一起的由服务器服务的客户端的集合可以请求的最大总带宽小于或者等于对于has的服务器可用的带宽。相反,如果服务器检测出客户端所请求的总带宽小于对于has的服务器可用的总带宽,则可以针对具有最小平均质量的客户端激活额外的表示。

通过调整哪些表示对于每个客户端可用并且以期望的频率将可用性信息传送给每个客户端的另外算法可以被开发并被服务器用来向由服务器所服务的客户端提供期望的qoe。

qoe感知的服务器

另一示例提供了可操作以提供超文本传输协议(http)自适应流传输(如图6中的流程图所示)的服务器的计算机电路的功能600。该功能可以被实现为一种方法,或者该功能可以作为指令在机器上被执行,其中这些指令被包括在至少一个计算机可读介质或者一个非暂态机器可读存储介质上。计算机电路可以被配置为确定服务器能够用于向多个客户端发送http自适应流传输内容的带宽(块610)。计算机电路还可以被配置为从多个客户端接收对由服务器提供的、用于http自适应流传输的清单文件中的表示的http请求(块620)。计算机电路还可以被配置为计算在服务器的清单文件中提供的每个表示的可用性,其中,该可用性是至少部分地基于所确定的带宽计算得出的(在块630)。另外,计算机电路还可以被配置为将每个表示的可用性从服务器传送到多个客户端(块640)。

在一个实施例中,计算机电路可以被配置为将作为最大下载速率的每个表示的可用性传送到多个客户端中的每个客户端,以配置每个客户端请求具有小于最大下载速率的比特率的表示。在另一实施例中,计算机电路可以被配置为将每个表示的可用性作为清单文件中的每个表示的表示访问位(rab)进行传送。计算机电路可以将每个表示的rab作为可用表示代码(arc)进行传送,其中arc是响应于来自客户端的对于表示的http请求被传送的。

在一个实施例中,计算机电路可以将每个表示的rab作为可用表示代码(arc)进行传送,其中arc经由单独的无线电信道而不是用于传送has的无线电信道、或者在定制http报头中被传送。在另一实施例中,arc可以被传送,其中最高有效位对应于具有最小比特率的表示。替代地,arc可以基于服务器与每个客户端之间的协议被传送。在另一实施例中,arc可以被嵌入在每个服务器的清单文件中,以用信号发送该服务器处的每个可用表示,从而使得每个服务器存储不同比特率的表示。

计算机电路可以进一步被配置为从多个客户端中的每个客户端接收体验质量(qoe)信息,其中该多个客户端从服务器接收http自适应流传输;并且基于所确定的带宽和多个客户端中的每个客户端的qoe来计算对于每个客户端的每个表示的可用性。从多个客户端中的每个客户端接收的qoe信息可以是由流传输客户端发送的统计信息的形式,例如:如前所述的平均下载速率、平均请求速率、缓冲事件的数目、拖延时间、表示切换的次数、平均质量,或者可以被用来标识客户端处的has的质量的另一期望度量。

在另一实施例中,计算机电路可以被配置为针对多个客户端中的每个客户端使能所有表示;基于针对每个客户端所接收的qoe,迭代地禁止针对所选择的客户端的表示,其中针对多个客户端中将相对于该多个客户端中的其他客户端经历最小qoe下降的客户端禁用表示;以及继续表示的迭代禁止,直到可用带宽足够以接近的质量(closequality)发送http自适应流传输内容到多个客户端为止。

计算机电路可以被配置为至少部分地基于针对所接收的http自适应流的重缓冲事件的数目、和每个客户端的平均质量与多个客户端的平均组合质量之间的差计算多个客户端中的每个客户端的信用得分,并且循环执行表示的迭代禁止。当客户端具有信用点时,客户端可以被去除作为针对循环中的表示的去激活的候选,并且客户端的信用得分被降低选定值。在另一实施例中,计算机电路可以被配置为针对多个客户端中具有最高平均体验质量的客户端执行表示的迭代禁止;并且继续针对具有最高平均体验质量的每个客户端执行表示的迭代禁止,直到可用带宽足够发送http自适应流传输内容到多个客户端为止。

在一个示例中,计算机电路可以进一步被配置为使用所选择的负载均衡算法,基于多个客户端中的每个客户端的qoe和所确定的带宽,计算每个表示对于每个客户端的可用性。

qoe感知的移动设备

另一个示例提供了可操作以提供超文本传输协议(http)自适应流传输的移动设备的计算机电路的功能700,如图7中的流程图所示。该功能可以被实现为一种方法,或者该功能可以作为指令在机器上被执行,其中这些指令被包括在至少一个计算机可读介质或者一个非暂态机器可读存储介质上。计算机电路可以被配置为从服务器接收http自适应流传输内容(块710)。计算机电路还可以被配置为确定所接收的http自适应流传输内容的体验质量(块720)。qoe可以是如前所述的平均mos值。平均mos值一般是基于下载内容的。但是,qoe可以被扩展为诸如平均下载速率、平均请求速率、缓冲事件的数目、拖延时间、表示切换的数目、平均质量(如前所述)、或者其他期望度量的其他统计信息的组合。这些因素可以被结合在一起产生代表qoe的单个值。

计算机电路还可以被配置为向服务器发送qoe(块730)。另外,计算机电路可以被配置为从服务器接收http自适应流传输内容的多个表示的可用性,其中多个表示的可用性至少部分地基于所发送的qoe(块740),并且向服务器发送针对服务器所提供的至少一个表示的http请求(块750)。

移动设备的计算机电路还可以被配置为向清单文件中的服务器发送针对http自适应流传输内容的http请求。在一个实施例中,清单文件可以是http动态自适应流传输(dash)适应集的媒体呈现描述。

在另一实施例中,计算机电路可以被配置为接收http自适应流传输内容,http自适应流传输内容被格式化为http动态自适应流传输(dash)格式。

计算机电路还可以被配置为接收作为每个表示的表示访问位(rab)的http自适应流传输内容的每个表示的可用性。在另一实施例中,每个表示的rab可以作为可用表示代码(arc)被接收,其中arc是响应于来自移动设备的对于表示所发送的http请求接收的。在一个实施例中,arc可以被接收,其中最低有效位对应于具有最高比特率的表示并且最高有效位对应于具有最低比特率的表示。替代地,在做出针对http自适应流传输内容的表示的后续http请求时,arc可以被用在比特率自适应算法中。

另外,计算机电路可以被配置为至少部分地基于在接收http自适应流传输内容时在移动设备处发生的重缓冲事件的数目来确定qoe。

提供可变比特率自适应流传输的方法

另一示例提供了用于从服务器向多个客户端提供多媒体的可变比特率自适应流传输的方法800,如图8中的流程图所示。该方法可以作为指令在机器、计算机电路、或者服务器的处理器上被执行,其中这些指令被包括在至少一个计算机可读介质、或者一个非暂态机器可读存储介质上。该方法包括确定服务器能够用于向多个客户端发送可变比特率自适应流传输内容的带宽的操作(块810)。该方法的附加操作是从多个客户端接收对用于可变比特率自适应流传输的清单文件中的、由服务器提供的表示的请求(块820)。该方法的附加操作是计算在服务器的清单文件中提供的每个表示的可用性(块830)。可用性可以至少部分地基于所确定的带宽计算得出。该方法的附加操作包括从服务器向多个客户端传送每个表示的可用性(块840)。

方法800还可以包括向多个客户端中的每个客户端传送作为最大下载速率的每个表示的可用性,以配置每个客户端请求具有小于最大下载速率的比特率的表示。替代地,每个表示的可用性可以作为清单文件中的每个表示的表示访问位(rab)被传送。每个表示的rab可以作为可用表示代码(arc)被传送。在一个实施例中,arc可以响应于来自客户端的对于表示的请求被传送。替代地,arc代码可以经由单独的无线电信道而不是用于传送可变比特率流传输的无线电信道、或者在定制的超文本传输协议(http)报头中被传送。例如,arc可以在针对下载片段的http响应分组中的定制http报头中被接收。

图9提供了诸如用户设备(ue)、移动台(ms)、移动无线设备、移动通信设备、平板电脑、手机、或者其他类型的无线设备之类的无线设备的示例图示。无线设备可以包括一个或多个天线,该一个或多个天线被配置为与诸如基站(bs)、演进节点b(enb)、基带单元(bbu)、远程无线电头端(rrh)、远程无线电设备(rre)、中继站(rs)、无线电设备(re)、远程无线电单元(rru)、中央处理模块(cpm)、或者其他类型的无线广域网(wwan)接入点之类的节点或传输站通信。无线设备可以被配置为使用包括3gpplte、wimax、高速分组接入(hspa)、蓝牙、以及wifi在内的至少一种无线通信标准进行通信。无线设备可以使用针对每个无线通信标准的不同天线、或者针对多个无线通信标准的共享天线进行通信。无线设备可以在无线局域网(wlan)、无线个人域网(wpan)、和/或wwan中进行通信。尽管提供了移动无线设备的示例,但是该设备不一定是无线的。有线设备也可以用于has。

图9提供了可以被用于无线设备的音频输入和输出的麦克风和一个或多个扬声器的图示。显示屏可以是液晶显示(lcd)屏、或者诸如有机发光二极管(oled)显示器之类的其他类型的显示屏。显示屏可以被配置为触摸屏。触摸屏可以使用电容性、电阻性、或者其他类型的触摸屏技术。应用处理器和图形处理器可以被耦合到内部存储器,以提供处理和显示功能。非易失性存储器端口也可以被用来为用户提供数据输入/输出选项。非易失性存储器端口还可以被用来扩展无线设备的存储器功能。键盘可以与无线设备集成在一起,或者被无线地连接到无线设备,以提供附加的用户输入。虚拟键盘也可以使用触摸屏来提供。

各种技术及其某些方面或部分可以采用被具体化在有形介质中的程序代码(即,指令)的形式,该有形介质例如是软盘、压缩盘只读存储器(cd-rom)、硬盘驱动器、非暂态计算机可读存储介质、或者任何其他机器可读存储介质,其中当程序代码被加载到诸如计算机之类的机器中并且被机器执行时,机器变为实施各种技术的装置。电路可以包括硬件、固件、程序代码、可执行代码、计算机指令、和/或软件。非暂态计算机可读存储介质可以是不包括信号的计算机可读存储介质。在程序代码在可编程计算机上执行的情况下,计算设备可以包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备、以及至少一个输出设备。易失性和非易失性存储器和/或存储元件可以是随机存取存储器(ram)、可擦除可编程只读存储器(eprom)、闪盘驱动器、硬磁盘驱动器、固态驱动器、或者用于存储电子数据的其他介质。节点和无线设备还可以包括收发器模块(即,收发器)、计数器模块(即,计数器)、处理模块(即,处理器)、和/或时钟模块(即,时钟)或者定时器模块(即,定时器)。可以实现或者利用这里描述的各种技术的一个或多个程序可以使用应用程序接口(api)、可重复使用控件等。这些程序可以实现为高级程序或者面向对象的编程语言,以与计算机系统通信。但是,根据需要,一个或多个程序可以以汇编语言或者机器语言实现。在任何情况中,语言可以是编译语言或者解释语言,并且与硬件实施方式相结合。

应该理解的是,本说明书中描述的很多功能单元已经被标记为模块,以便更突出地强调他们的实现独立性。例如,模块可以被实现为包括自定义超大规模集成(vlsi)电路或者门阵列、诸如逻辑芯片、晶体管、或者其他离散组件的即买即用半导体。模块还可以被实现为诸如现场可编程门阵列、可编程阵列逻辑、可编程逻辑器件等的可编程硬件设备。

模块还可以被实现为软件,供各种类型的处理器执行。可执行代码的标识模块可以包括例如,一个或多个物理或者逻辑的计算机指令块,这些物理或者逻辑块可以被组织为例如对象、进程、或者功能。然而,所标识的模块的可执行文件不需要在物理上在一起,相反可以包括存储在不同位置的不同指令,这些指令在逻辑上被联合在一起时包括该模块并且实现该模块的所陈述的目的。

实际上,可执行代码的模块可以是单个指令或者很多指令,甚至可以分布在不同程序中并且跨越若干存储器设备的若干个不同的代码段中。类似地,操作数据可以被标识并被示出在模块中,并且可以被具体化为任何合适的形式并且被组织在任何适当类型的数据结构中。操作数据可以被收集为单个数据集,或者可以被分布在不同存储设备上的不同位置上,并且可以至少部分地作为电子信号存在于系统或者网络上。这些模块可以是主动的或者被动的,包括可操作以执行期望功能的代理。

贯穿本说明书引用“示例”或者“示例性”意味着结合示例描述的特定特征、结构、或者特性被包括在本发明的至少一个实施例中。所以,短语“在示例中”或者词语“示例性”在贯穿本说明书的不同位置的出现不一定都指代相同的实施例。

如这里所使用的,多个条目、结构元件、组合元件、和/或材料可以出于方便的目的存在于共同列表中。但是,这些列表应该被理解为列表的每个元件被单独标识为不同且唯一的元件。因此,该列表的任何元件都不应该仅基于它们在共同群组中的出现在没有相反指示的情况下而被理解为相同列表的任何其他元件的事实上的等同物。另外,本发明的各种实施例和示例可以被与其各种组件的替代一起提及。将理解的是,这些实施例、示例、和替代不应该被理解为彼此的事实上的等同,而应该被理解为本发明的单独且自治的表示。

另外,所描述的特征、结构、或者特性可以被以任何合适的方式结合在一个或多个实施例中。在下面的描述中,提供了诸如布局、距离、网络示例等的示例之类的多个具体细节,以提供对本发明的实施例的透彻理解。然而,相关领域技术人员将认识到,本发明可以在没有一个或多个这些具体细节的情况下,通过其他方法、组件、布局等实现。在其他实例中,公知的结构、材料、或者操作没有被详细示出或者描述,以避免模糊本发明的多个方面。

尽管前面的示例是本发明在一个或多个特定应用中的原理的说明,但是本领域技术人员讲明白的是,在不脱离本发明的原理和概念的情况下在不具有发明能力的条件下可以做出实施方式的使用和细节方面的多种修改。因此,除了下面给出的权利要求所限定的以外,本发明不受限制。

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