用于回放的高码率内容的预测性递送的系统和方法与流程

文档序号:11142250阅读:192来源:国知局
用于回放的高码率内容的预测性递送的系统和方法与制造工艺

本公开通常涉及数字媒体,并且更具体地,涉及用于回放的高码率内容的预测性递送的系统和方法。



技术实现要素:

本公开可以在一种方法中实施,其包括:从装置接收用于传输媒介内容资产的请求,所述媒介内容资产包括以特定顺序布置的多个段,所述多个段中的至少一个为高码率段;将所述多个段以所述特定顺序传输至所述装置;检测所述高码率段;以及不按顺序,在所述高码率段之前的一个或更多个段中,将所述高码率段的数据传输至所述装置。

在本实施例的一个方面中,所述媒介内容资产可进一步包括清单文件。

在本实施例的另一个方面中,该方法可进一步包括检测传输条件。在进一步的方面中,传输条件可用于确定高码率段。

在又另一方面中,不按顺序传输所述高码率段的数据可进一步包括:与以所述特定顺序较早出现的段同时,传输所述高码率段的数据。

在另一实施例中,本公开可以在一种方法中实施,其包括:请求传输媒介内容资产,所述媒介内容资产包括以特定顺序布置的多个固定或可变码率段,所述多个段中的至少一个为高码率段;接收所述媒介内容资产中即将到来的段的码率信息;接收以所述特定顺序的所述多个段;使用所述码率信息检测即将到来的高码率段;不按顺序,请求所述高码率段的数据;以及不按顺序接收请求的所述高码率段的数据。

在本实施例的一个方面中,所述媒介内容资产可进一步包括与所述多个段中的一个或更多个段相关联的多个头,并且所述码率信息可包含在所述多个头内。在进一步的方面中,所述多个段中的每个段可包括头。所述多个段中的每个段可包含针对预定数量的即将到来的段的码率信息。

在另一方面中,所述媒介内容资产可进一步包括清单文件,并且所述码率信息可包含在所述清单文件内。

在又另一方面中,不按顺序请求所述高码率段的数据可进一步包括:与以所述特定顺序较早出现的段同时,请求所述高码率段的数据。

本公开还可以在一种包括指令集的计算机可读介质中实施,所述指令集被配置为命令计算装置执行本文所描述的方法。

附图说明

附图仅用于说明目的提供且仅描述典型或示例实施方式。提供这些附图有助于读者理解且不应当认为是对本公开的广度、范围或适用性的限制。为了清晰且容易说明,这些附图不一定按比例绘制。

图1示意性示出一种具有高码率段的样本媒介内容资产。

图2示意性示出一种用于提供图1的媒介内容资产至接收装置的智能服务器布置。

图3A和图3B示意性示出一种用于提供图1的媒介内容资产至接收装置的传输过程。

图4示意性示出一种用于提供图1的媒介内容资产至接收装置的智能客户端布置。

图5说明样本计算模块,其可用于实施本公开的某些特征和实施例。

具体实施方式

本文所提供的公开描述用于高码率内容的预测性递送的系统和方法。

现今,网络递送的媒介主要经由两种方法进行递送:本地下载是一种递送媒介文件至媒介应用或装置(即,接收装置)用于本地存储和回放的方法,而流式传输是一种在不需要长期本地存储的情况下实时递送并浏览媒介文件的方法。

流式传输法允许内容在递送期间被计算装置接收并由该计算装置回放。换句话说,使用计算装置的用户可在内容完全被接收之前开始回放内容。例如,用户可开始观看一段视频内容的开始部分或听一段音频内容的开始部分,同时仍然正在递送该内容的中间部分和末尾部分。然而,流式传输递送能够容易受到网络带宽变化、传输延迟以及数据包丢失的影响,其能够负面地影响回放并引发缓冲问题。

已经引入自适应码率流式传输(ABS)系统来克服网络递送中的若干缺点。在ABS中,ABS系统实时检测传输条件。此类传输条件可包括多种因素,如,可用带宽、传输延迟、以及传输装置和/或接收装置的可用CPU和/或动力源。基于传输条件,流式传输多媒介内容的码率可被相应调整。ABS系统利用以各种码率的相同内容的多个版本,其对应于变化的质量水平。

通常使用若干ABS方法。在第一方法中,响应于具体传输标准,不同质量水平的可流式传输的媒介文件的多个版本是可用的,且接收装置从一个媒介源“跳”到另一个。在第二方法中,基于类似的一组标准,媒介文件在不同质量水平下被编码之前先被分成较短的段(如,3秒的内容),且然后接收装置能够请求在合适码率下的后续部分。媒介文件“段”(如本文广泛讨论并理解的)还可称为“块”或“部分”。每种方法可进一步利用分层编码,其中,当基于传输条件传输附加数据时,越来越高的质量下的渐进式重建是可能的。

在单个媒介内容文件内,可存在媒介内容的段,其请求比用于流式传输的其他段更大的码率。例如,在回放流式传输的电影期间,电影回放可在繁重的动作序列(包括特技、爆炸和/或快速的摄影机运动)期间遭遇较低的可视质量。这是因为视频内容可以利用目标和峰值码率被转码,尽管其对于电影中的大多数场景是充分的,该目标和峰值码率可能不足以适当地显示高密度段而不出现块效应。以下事实使此问题严重,即,这些繁重的动作场景中的许多是一段媒介内容内的最重要的场景中的一些,所以相比于在内容的较不重要的段期间的质量降级,在这些高密度场景期间的任何带宽损失将对用户观看体验产生更大的负面影响。

本公开提供用于高码率内容的预测性递送的系统和方法。所公开的系统和方法提供具有更稳健信息的自适应码率流式传输系统,以允许媒介内容的更智能的预缓存。通过给ABS系统提供更多信息,所公开的系统能够预见请求更多关注的更高的码率段,并使用此类信息改善回放体验。参考附图公开若干示例性实施例。

图1示意性示出样本媒介内容资产20。虽然其他媒介内容资产类型可用且已知,但为了描述使用不连续示例的本系统和方法,媒介内容资产20将被视为视频内容资产。媒介内容资产20具有十个段1-10。每个段1-10的垂直高度表示该特定段的码率。这样,段1-4、6-8、10具有相同的较低的码率,而段5和9是高的码率段。例如,较低的码率段可以500千比特/秒(kb/sec)被转码,而段5可以1000kb/sec被转码且段9可以1250kb/sec被转码。由于包含在某些段中的高水平的移动和/或细节请求那些段的附加数据以被清楚地且最优的详细地呈现,那些段可以更高的码率被转码。

应当理解,图1中所示的段的码率不是绝对的而是相对于其他段。例如,在ABS系统中,通常存在具有不同质量水平的单个媒介内容资产的多个版本。因此,使用如上所讨论的码率数字,可存在具有从250kb/sec至625kb/sec变化的码率的低质量版本,和具有从500kb/sec至1250kb/sec变化的码率的正常质量版本,以及具有从1000kb/sec至2500kb/sec变化的码率的高质量版本。参考图2至图4公开的系统和方法允许用户以高质量观看媒介内容资产20的所有段,即使他们的接收装置的传输条件不能适当接收常规流式传输布置中的高码率段。

图2示意性示出用于提供媒介内容资产20至接收装置34的“智能服务器”系统30。图2中所示的系统30包括内容服务器32和接收装置34。内容服务器32存储媒介内容资产20并通过网络36(如,互联网)将媒介内容资产20传输至接收装置34,以在接收装置34上回放。内容服务器32还存储或以其他方式访问清单文件38。清单文件38包含媒介内容资产20的码率信息,其还可称为“预见性”信息,因为它通知即将到来的段的码率。包含在清单文件38中的码率信息可以是用于每个段1-10的码率信息,或其可包含仅用于“高码率”段(如,段5和9)的信息或可以允许内容服务器32预测媒介内容资产20的即将到来的码率要求的任何其他布置。

在图2中所示的“智能服务器”系统30中,接收装置34请求特定媒介内容资产20用于回放。内容服务器32接收该请求,并随后提起所请求的媒介内容资产20和相关清单文件38。当内容服务器32开始将媒介内容资产20传输至接收装置34时,其监测至接收装置34的传输条件以确定合适版本的媒介内容资产20以传输。例如,如果传输条件良好(如,高可用带宽和计算资源),则高质量版本的资产20被传输,使得用户得到最佳可用观看体验。相反,如果传输条件较糟(如,低可用带宽和/或计算资源),则低质量版本的资产20被传输。这样,尽管糟糕的传输条件,但用户仍能够流式传输传输条件将允许的最佳版本的媒介资产20。

内容服务器32还检查清单文件38中的信息以确定是否存在将请求更大码率的某些段以及是否存在可具有较低码率使得它们将不请求待利用的所有可用资源的其他段。此过程的表示在图3A至图3B中示出。内容服务器32检测传输条件,如可用带宽40。段1、2、3、4足够小使得它们将不利用整个可用带宽40,但段5太大而不能在没有一些质量退化的情况下被实时传输。具有此信息的内容服务器32能够在段1至段4的传输期间利用可用的过量带宽以传输段5的部分(5a、5b、5c),且仅一小部分段5(区段5d)被剩下以在段5的正常传输时间时被发送。这样,当段5在接收装置34上播放时,完整的高码率段5将已经被充分传输且将以高质量播放。接收装置34可将段5的头三个部分(5a、5b、5c)存储在存储器中,且随后结合或集成段5的所有部分(5a-5d)用于在段5的时隙期间回放。

示出段6至段9的类似过程,其中,段6至段8不请求完整可用的带宽40,而段9太大不能被实时传输。因此,在传输段6、7、8期间内容服务器传输段9的部分(部分9a、9b、9c),使得最后剩余的部分9d能够利用可用带宽传输,且段9能够被结合/集成并在接收装置34上全面详细且清楚地播放。

应当理解,请求顺序混乱的预见性传输的“高码率”段的确定可以是客观考虑(如,具有预定数值以上的码率的任何段),或其可基于变量,如传输条件(如,如果段的码率接近或超过平均可用带宽)。进一步地,哪些段被标记为请求附加关注的高码率段的确定可不基于实际的段码率,而基于可选择的质量回放标准。例如,优先级设定可用于每个段,使得相比于较不重要的段,更“重要的”段被给定优先级用于更高质量的传输。在媒介内容资产20中,段1-5实际上可用相同码率被编码,而段1-4可以为使得质量的一些退化将不显著影响观看者的观看体验。相反,段5可请求高码率以适当捕捉在段中所示的所有细节。既然如此,段5可以用更高的优先级被编码,使得内容服务器32将看到更高的优先级值,并基于受限的可用带宽将决定以较低码率传输段1-4,使得段5能够以更高码率传输。这种优先级值可由程序或软件自动确定(如,如果在其中存在大量移动的场景被检测,则相比于较慢移动的细节较少的场景,该场景将被赋予更高的优先级)或可手动指定(如,通过媒介内容的制造者)。

参考“智能服务器”系统讨论图2、3A、3B中描述的系统和过程。在此类系统中,内容服务器32具有必要信息以决定如何传输媒介内容资产20,以便最大化用户的观看体验。在一个替代实施例中,相同的系统和方法可用在“智能客户端”布置中。在“智能客户端”布置中,接收装置34追踪传输条件并利用包含在清单38中的预见性信息确定最优传输顺序。

在此“智能客户端”布置中,接收装置34请求内容服务器32以接收特定媒介内容资产用于流式传输。当请求媒介内容资产20时,接收装置34可在本地具有清单文件38,或清单文件38可传输至接收装置34。一旦接收装置34获得清单文件38的所有权,则其可基于其确定的最优传输顺序开始请求媒介内容资产20的段。如在图3B和3C中所示的示例,接收装置34将看到段1-4将不利用整个可用带宽40,而段5将请求比可用带宽更大的带宽。这样,接收装置34将在请求段1的同时请求一部分段5(5a),且然后将在请求段2的同时请求段5的另一部分(5b),等等。该过程类似于参考“智能服务器”系统讨论的过程,除了接收装置34能够决定最佳传输顺序并随后相应地请求某些段或段的部分之外。

图4提供一种可替代的“智能客户端”布置的示意性表示。在图4所示的系统42中,内容服务器32再次存储具有10个段(包括高码率段5和9)的媒介内容资产20。然而,替代经由清单文件传输包含用于整个媒介内容资产20的预见性码率信息的“预见性”信息,头1a-10a包括有段1-10中的每个。这些头1a-10a包含关于未来段的码率要求的预见性信息。接收装置34然后能够使用在头1a-10a中的预见性信息以决定传输的最佳顺序并做出传输请求决定。

例如,接收装置34可发送传输至请求媒介内容资产20的内容服务器32。内容服务器32接收到该请求后传输媒介内容资产20的段1,其还包括头1a。头1a包括媒介内容资产20中的未来段的码率信息,使得接收装置34能够做出最佳传输请求决定。例如,头1a可包括用于接下来“x”数量的段的码率信息。如果头1a包含用于接下来三(3)个段的码率信息,则已知传输条件和可用带宽40的接收装置34将看到接下来三(3)个段2、3、4能够被实时传输,并且不需要进行调节。然而,当段2连同头2a被传输时,接收装置34将看到段5请求多于可用带宽,并将开始请求段5的部分早于段3和4被发送。相反,如果头1a-10a包含用于接下来五(5)个段的码率信息,则段1和头1a一经传输接收装置34就将看到段5的高码率要求,并立刻开始请求段5的部分。

其他实施方式是可能的。例如,头1a-10a可指示请求基本上比其他段更多带宽的接下来的高码率段。段1-4的头可全部包含针对段5的码率信息,使得接收装置34意识到段5的即将到来的高码率要求,且段6-8可包含段9的码率信息等。可替代地,如上所讨论的,替代包含码率信息,头1a-10a可包含优先级信息,使得质量确定能够基于段优先级做出。在此实施例中,段5和9可比其他段具有更高的优先级确定,使得当存在过量可用带宽时,段5和9的部分被较早传输。在又另一个实施方式中,头可仅被间歇提供,而不是利用每个段提供。

应当理解,尽管附图已经呈现本系统和方法的示例性实施例,但可在不偏离本公开范围的情况下校正所公开的系统和方法。在更广泛的意义上,通过为ABS系统提供关于被播放的媒介内容资产的预见性信息,本公开提供允许改善的用户体验的系统和方法。ABS系统能够利用当前传输条件信息和/或预见性媒介内容信息确定最佳传输顺序,使得具有更高码率或请求最佳观看的更高码率的场景能够被提前计划并且在该过程中被较早传输。

在一个实施例中,其中所公开的系统和方法的组件或模块通过使用软件而被整体或部分实施,这些软件元件能够被实施以利用能够执行参考其描述的功能的计算或处理模块操作。在阅读此说明书之后,如何利用其它计算模块或架构实施本公开对于本领域技术人员将变得明显。

如本文所使用的,术语模块可描述给定的功能单元,其能够根据一个或更多个实施方式执行。如本文所使用的,模块可利用任何形式的硬件、软件或其组合被实施。例如,一个或更多个处理器、控制器、ASIC、PLA、PAL、CPLD、FPGA、逻辑组件、软件程序或其他机构可被实施以建立模块。在实施中,本文所描述的各种模块可被实施为离散模块,或所描述的功能和特征能够被部分或整体共享在一个或更多个模块中。换句话说,正如将对阅读此说明书之后的本领域技术人员明显的,本文所描述的各种特征和功能可以在任何给定应用中实施,并且能够以各种组合以及排列在一个或更多个单独或共享的模块中实施。即使功能的各种特征或元素可以被单独描述或要求为单独的模块,但本领域技术人员将理解这些特征和功能能够在一个或更多个公用软件和硬件元件中共享,并且此类说明不要求或暗示单独的硬件或软件组件被用于实施此类特征或功能。

现在参考图12,计算模块500可视情况表示例如在台式电脑、便携电脑和笔记本电脑;手持式计算装置(PDA、智能电话、手机、笔记本电脑、平板电脑等);或任何其他类型的专用或通用计算装置中发现的计算或处理能力。计算模块500还可表示给定装置内实施的或以其他方式可用于给定装置的计算能力。例如,计算模块可发现在其他电子装置中,如,例如,电视、家庭影院、蓝光光盘播放机、DVD播放机、车载娱乐系统、视频游戏机、视频下载或流媒体设备、便携式DVD播放器以及可包括一些形式的处理能力的其他电子装置。

计算模块500可包括例如一个或更多个处理器、控制器、控制模块或其他处理装置如处理器504。可使用通用或专用处理引擎(如,例如,微处理器、控制器或其他控制逻辑)实施处理器504。在所示示例中,处理器504连接到总线502,虽然任何通信媒介能够用于促进与计算模块500的其他组件交互或外部通信。

计算模块500还可包括一个或更多个存储器模块,本文简称为主存储器508。存储器可包括任何非暂时存储介质。例如,优选地,随机存取存储器(RAM)或其他动态存储器可用于存储将被处理器504执行的信息和指令。主存储器508还可用于在执行由处理器504执行的指令期间存储临时变量或其他中间信息。计算模块500同样可包括只读存储器(“ROM”)或其他用于存储处理器504的静态信息和指令的耦合到总线502的静态存储装置。计算模块500还可包括一个或更多个各种形式的信息存储机构510,其可包括例如磁带驱动器、光盘驱动器、固态驱动器或任何其他非易失性存储器。

计算模块500还可包括通信接口520。通信接口520可用于允许软件和数据在计算模块500和外部装置之间传输。通信接口520的示例可包括调制解调器或软调制解调器、网络接口(如,以太网、网络接口卡、WiMedia、IEEE802.XX或其他接口)、通信端口(如,例如,USB端口、IR端口、RS232端口、蓝牙接口、或其他端口)、或其他通信接口。经由通信接口520传输的软件和数据通常可在信号上运载,其能够为能够由给定通信接口520交换的电子的、电磁的(包括光学的)或其他信号。这些信号可经由信道525被提供至通信接口520。该信道525可运载信号并可使用有线或无线通信介质被实施。信道的一些示例可包括电话线、蜂窝链路、RF链路、光链路、网络接口、局域或广域网、以及其他有线或无线通信信道。

计算模块500还可包括一个或更多个用户输入530。用户输入允许用户输入命令至计算模块500并与其交互。用户输入的示例可包括计算机鼠标、键盘、触摸屏、触笔、触控板、操纵杆、加速计、陀螺仪、照相机、遥控器或任何其他用户输入机构。

计算模块500还可包括一个或更多个用户输出接口540。用户输出接口540可用于通过呈现信息或感官输出给用户来与用户交互。用户输出接口的示例可包括可视化输出(如,显示屏或监视器)或音频输出(如,扬声器或耳机输出)。

在此文件中,术语“计算机可读介质”和“计算机可用介质”通常用来指代媒介,如,例如,存储器508、存储单元510和信道525。计算机可读介质和计算机可用介质的这些以及其他各种形式可涉及将一个或更多个指令的一个或更多个序列输送到处理装置以执行。在媒介上包含的此类指令通常被称为“计算机程序代码”或“计算机程序产品”(其可以计算机程序或其他分类的形式分组)。当被执行时,此类指令可使计算模块500能够执行如本文所讨论的本公开的特征和功能。

尽管已经如上描述本公开的各种实施例,但应当理解,它们仅通过示例而非限制的形式呈现。同样,各种图表可示出本公开的示例架构或其他配置,其旨在助于理解能够被包括的特征和功能。本公开不限制于所说明的示例架构或配置,但能够使用各种可替代的架构和配置实施期望的特征。的确,可替代的功能的、逻辑的或物理的分区和配置能够被如何实施以实施期望的特征对本领域技术人员将是明显的。此外,关于流程图、操作说明和方法权利要求,本文呈现的步骤的顺序不要求被实施的各种实施例以相同顺序执行所叙述的功能,除非上下文另有指示。因此,本公开的广度和范围不应当受任何上述示例性实施例限制。

除非另有明文规定,在本文件中使用的术语和短语以及其变体应当被理解为是开放式的而非限制性的。如前述示例:术语“包括”应当理解为意味“包括而不限于”等;术语“示例”用来提供所讨论的项目的示例性事例,而非其详尽的或限制列表;术语“一个(a或an)”应当理解为意味“至少一个”、“一个或更多个”等;以及形容词,如“常规的”、“传统的”、“正常的”、“标准的”、“已知的”以及类似意思的术语不应当理解为将所描述的项目限制到给定时间段或限制到可用于给定时间的项目,而是相反应当理解为包含可以为现在或者未来任何时间是可用的或已知的常规的、传统的、正常的或标准的技术。同样,其中,该文件指代对本领域技术人员将是明显的或已知的技术,此类技术包含现在或者未来任何时间对本领域技术人员是明显的或已知的技术。

虽然仅参考当前的优选实施例呈现了本公开,但是本领域技术人员将了解到在不偏离本公开的情况下,能够进行各种修改。这样,仅通过随附权利要求和所述的限制限定本公开。

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