专利名称:改进的媒体内容回放质量的制作方法
改进的媒体内容回放质量背景诸如基于因特网的电视递送系统之类的媒体内容递送系统被设计成在用户请求进行直接实况观看的情况下将视频数据流传输给客户机设备,或在用户可能想要在记录了视频后才观看该视频之前下载视频数据。此外,用户可以在下载完成之前启动对仍在下载的视频的回放。然而,一些常规的视频数据流传送技术不能为客户机设备处的回放提供一致的音频和/或视频质量。例如,当前的自适应流传送技术可以通过网络从各种媒体内容源下载多个不同质量水平的视频片段,每一质量水平具有不同的带宽要求。由于不可预测的网络带宽,自适应流传送下载算法依赖于低质量的视频片段来维持视频的回放而没有观看者可预测到的延迟,但是回放期间的视觉质量可能是观看者可注意到的缺点。不一致的视频质量主要由于不可预测的网络带宽以及以恒定质量水平压缩视频数据所必需的带宽的变化。这些带宽变化可以是视频复杂性的变化的结果,诸如包括复杂场景的视频数据的相对较高的带宽。例如,电影中包括运动和/或快速变化场景的动作序 列增加了视频复杂性并提高了下载包括该复杂场景的视频片段的带宽要求。此外,常规的回放系统(以接收视频数据的次序)连续缓存视频数据,以尝试使视频质量的变化平稳。然而,这种技术在用户发起视频数据的非线性回放(诸如,当在各章节间进行快速转移或跳跃)时变得低效。概述提供本概述是为了介绍将在以下详细描述中进一步描述的改进的媒体内容回放质量的简化概念。本概述并不旨在标识所要求保护的主题的必要特征,也不旨在用于帮助确定所要求保护的主题的范围。描述了改进的媒体内容回放质量。在各实施例中,媒体内容回放系统将多个各种媒体资产的片段存储在存储器设备中。当从一个或多个媒体内容源下载了这些片段时,将这些片段存储成与各媒体资产中的至少一些片段相关的非连续数据.实现数据加载管理器以预计何时接收到导致对这些媒体资产中的一个媒体资产的非线性回放的内容导航输入。数据加载管理器随后可针对媒体资产的每一片段,基于所预计的内容导航输入来估算何时将回放每一片段。数据加载管理器基于对何时将回放每一片段的估算来确定媒体资产的要下载和存储的下一个片段。数据加载管理器还可基于媒体资产的每一片段的目标回放质量来确定媒体资产的要下载的下一个片段。在各实施例中,数据加载管理器确定接收到观看者所发起的内容导航输入的可能性、考虑媒体资产的各片段的视频复杂性、以及预计可用的网络带宽以确定接着下载媒体资产的哪些片段,以优化提供一致媒体回放质量的概率。可以接收内容导航输入作为以下操作的输入媒体资产中的向前跳转、媒体资产的快进、媒体资产中的向后跳转、媒体资产的倒带、或者到媒体资产的停止回放或一个不同的媒体资产的开始回放的改变。在其他实施例中,可以在媒体资产的回放之前预先加载(例如,下载并存储)媒体资产的若在该媒体资产的回放期间下载就会受制于带宽约束的那些片段。假设在媒体资产的回放期间一定数量的网络带宽可用,并且媒体资产的预先加载的那些片段对应于所需带宽和可用带宽之间的增量以便维持目标回放质量。数据加载管理器可以基于为媒体资产的每一片段生成的加载模型来确定媒体资产的要预先加载的那些片段,其中加载模型包括改进值,根据改进值来对这些片段中的每一个进行排序以确定要下载的下一个最佳片段。媒体资产的可受制于带宽约束的那些片段是在该媒体资产的开始处的那些片段,或者是该媒体资产的对下载而言为资源密集的那些片段。此外,媒体内容回放系统可以下载并盖写媒体资产的存储器设备所存储的那些片段以改进该媒体资产的针对回放的显示质量。此外,可标识出媒体资产的不太可能被回放的那些片段,并将这些片段从媒体资产中删除。附图简述参考以下附图描述了改进的媒体内容回放质量的各实施例。在各附图中,使用相同的标号来指代相同的特征和组件图I示出其中可以实现改进的媒体内容回放质量的各实施例的示例系统。图2示出了以所选的显示质量水平来流传送媒体内容的各片段随时间所需的 网络带宽的示例图。图3示出了媒体资产的各片段的数据块的非连续存储的示例。图4示出了根据一个或多个实施例的改进的媒体内容回放质量。图5示出可实现改进的媒体内容回放质量的各实施例以便在普遍存在的环境中得到无缝用户体验的具有多个设备的示例系统。图6示出按照一个或多个实施例的改进的媒体内容回放质量的示例方法。图7示出根据一个或多个实施例的改进的媒体内容回放质量的附加示例方法。图8示出可实现改进的媒体内容回放质量的各实施例的示例设备的各组件。详细描述描述了改进的媒体内容回放质量。各实施例允许在回放媒体资产之前下载并得到媒体资产中由于不足的网络带宽而不太可能可供下载的各片段以得到改进的用户体验,并在呈现供回放和观看的媒体资产时优化总体显示质量。另外,被配置成任何类型的客户机设备的媒体内容回放系统可利用客户机设备处的本地存储来存储各种媒体资产的非连续片段。在各实施例中,媒体内容回放系统的加载算法可以预计或确定在媒体资产的回放期间接收到内容导航输入的可能性。加载算法可以针对媒体资产的每一片段,基于所预计的内容导航输入来估算何时将回放每一片段。加载算法随后基于对何时将回放每一片段的估算来确定媒体资产的要下载的下一个片段。另外,实现加载算法的数据加载管理器可以基于为媒体资产的每一片段生成的加载模型来确定媒体资产的要预先加载的那些片段,其中加载模型包括改进值,根据改进值来对这些片段中的每一个进行排序以确定要下载的下一个最佳片段。尽管所描述的用于改进的媒体内容回放质量的系统和方法的特征和概念可以在任何数量的不同环境、系统、和/或各种配置中实现,但改进的媒体内容回放质量的各实施例在以下示例系统和环境的上下文中描述。图I示出其中可以实现改进的媒体内容回放质量的各实施例的示例系统100。示例系统100包括媒体内容回放系统102,它可被配置成任何类型的客户机设备104。各客户机设备104中的一些可包括有线和/或无线设备,并且还可被称为用户设备和/或便携式设备。示例系统100还包括经由通信网络110向任何数量的各客户机设备104传递或以其他方式提供媒体内容和数据的内容分发器106和/或其他媒体内容源108。通信网络110可被实现成包括便于在内容分发器106、其他媒体内容源108、以及任何数量的各种客户机设备之间进行媒体资产分发和数据通信的广播网络、基于IP的网络112、和/或无线网络114。还可以使用任何类型的网络拓扑结构和/或通信协议来将通信网络110实现为媒体资产分发系统的一部分,且它可被表示为或以其他方式实现为两个或多个网络的组合。通信网络110还可包括由诸如蜂窝电话提供商和/或因特网服务提供商等通信服务提供商管理的移动运营商网络,以便于任何类型的无线设备或移动电话的移动数据和/或语音通信(例如,蜂窝、VoIP、Wi-Fi等)。内容分发器106可包括被实现来将媒体内容和/或其他数据传递给或以其他方式分发给任何数量的各种客户机设备的一个或多个媒体内容服务器。在该示例系统100中,内容分发器106包括用于存储或以其他方式维护各种媒体内容和数据(诸如媒体资产120和媒体资产元数据122)的存储介质118。存储介质118可被实现成任何类型的存储器和/ 或合适的电子数据存储。媒体资产120可包括从任何类型的媒体内容源或数据源接收到的任何类型的音频、视频、和/或图像数据。如全文所描述的,媒体资产是媒体内容,并且媒体资产可包括音乐(例如,歌曲的数字音乐文件)、电视节目、影片、点播媒体资产、交互式游戏、基于网络的应用、以及任何其他音频、视频、和/或图像数据(例如,以包括节目指南数据、用户界面数据、广告内容、隐藏字幕数据、内容元数据、搜索结果、和/或推荐等)。媒体资产120可包括媒体资产的各种显示格式,诸如最高质量显示格式(例如,最高质量、高清显示格式)到较低质量显示格式(例如,较低质量、标清显示格式),以及这两者间的连续区间上的任何其他质量的显示格式。媒体内容元数据122可包括描述媒体资产和/或对媒体资产进行分类的任何类型的标识准则、描述信息、和/或与媒体资产120相关联的属性。例如,元数据可包括媒体资产标识符、标题、主题描述、制作日期、艺术信息、音乐汇编、以及关于特定媒体资产的任何其他类型的描述信息。此外,元数据可以表征将诸如视频内容等媒体资产描述成广告、影片、喜剧演出、体育运动、新闻节目、情景喜剧、谈话节目、动作/冒险节目、或任何数量的其他分类描述的风格。内容分发器106还可以包括媒体内容服务124。在各个实施例中,内容分发器106可被实现为基于订阅的服务,各客户机设备104中的任一个可向其请求要下载和显示的媒体资产120以供观看。媒体内容服务124被实现成管理到各客户机设备104的媒体资产分发。例如,媒体内容服务124可以接收来自客户机设备104的对媒体资产120的请求,并将该媒体资产的各片段传递或提供给客户机设备。在该示例系统100中,客户机设备104可被实现为电视客户机设备126 (例如,电视机顶盒、数字录像机(DVR)等)、计算机设备128、游戏系统130、电器设备、电子设备和/或可被实现成接收音频、视频、和/或图像数据等任何形式的媒体内容的任何其他类型的客户机设备或用户设备中的任何一个或其组合。各客户机设备104还可包括被实现成接收和/或传递无线数据的无线设备,如移动电话132 (例如,蜂窝、VoIP、WiFi等)、便携式计算机设备134、媒体设备136 (例如,个人媒体播放器、便携式媒体播放器等)、和/或可以接收音频、视频和/或图像数据形式的媒体内容的任何其他无线设备中的任一个或组合。客户机系统可以包括共同呈现或回放任何形式的音频、视频和/或图像媒体内容和媒体资产的相应的客户机设备和显示设备138。显示设备138可被实现为任何类型的电视机、高清电视机(HDTV)、IXD、或类似的显示系统。各客户机设备104中的任一个可被配置成媒体内容回放系统102并用一个或多个处理器、通信组件、存储器组件、信号处理和控制电路、以及媒体内容呈现系统来实现。此夕卜,客户机设备104中的任一个可以用参考图8所示的示例设备进一步描述的任何数量的不同组件及其组合来实现。客户机设备还可与用户(即人)和/或操作该设备的实体相关联,从而使得客户机设备描述包括用户、软件、和/或设备的组合的逻辑设备。在这个示例系统100中,媒体内容回放系统102包括数据加载管理器140、存储介质142和呈现系统144。存储介质142可被实现成任何类型的存储设备以存储各个媒体资产的片段146。数据加载管理器140包括可被实现为计算机可执行指令并由一个或多个处理器执行来实现此处描述的各实施例和/或特征的加载算法148。
在算法实现的各实施例中,加载算法148选择媒体资产的恒定显示质量水平,通过该水平可确定媒体资产的片段大小(因为对于不同显示质量水平的媒体内容,片段大小可包括更多或更少的数据)。假设恒定的可用网络带宽水平,加载算法148确定流传送处于所选显示质量水平的媒体内容随时间所需的网络带宽。图2示出了流传送处于所选显示质量水平的媒体内容的各片段206随时间所需的网络带宽202的示例图200。例如,每一片段可以是媒体资产中的五秒,并且诸如对于在相同时间段内具有较大数据片段的复杂视频而言,片段大小随着回放时间而变化。针对媒体资产中所需网络带宽超过假设的可用带宽的那些片段,可选择这些片段的子集来进行预先加载,使得流传送媒体资产的剩余片段所需的网络带宽等于或小于假设的可用带宽。例如,媒体资产的片段208超过所需网络带宽202,并且片段208可被预先加载在诸如媒体内容回放系统102的存储介质142中。另外地或另选地,媒体资产的各片段可被预先加载在文件中,该文件是在带外根据内容来分发的(例如,经由整夜的抢先下载、广播或光盘)。在对媒体资产的后续实况流传送期间,预先加载文件用于在加载该媒体资产时给出帮助。该技术也可在网络体系结构中诸如通过以下方式来实现将媒体内容的被预先加载的片段存储在内容分发器106处,并从网络存储位置处提供被预先加载的片段。在这个实施例中,将预先加载的片段的预先加载文件高速缓存在本地存储中和/或供在网络存储中快速访问,同时集中式地存储媒体资产的批量片段。在算法实现的替换实施例中,加载算法148是基于特定缓冲器大小对预先加载媒体资产的各片段的可用性来实现的,这使得网络带宽平稳。该技术具有将低通过滤器应用于图2所示的示例图200中的效果,并减少了媒体资产的被预先加载的那些片段的数量。在算法实现的另一替换实施例中,在媒体资产中的可能访问点处,诸如视频中的各章节点处,重置用于预先加载媒体资产的这些片段的缓冲器。该技术增加了预先加载该媒体资产的在该媒体资产中的各访问点之后立即出现的那些片段的可能性。在各个实施例中,加载算法148被实现为确定媒体资产的最可能要下载的那些片段,以得到改进的用户体验,诸如以在呈现媒体资产以供回放和观看时提供一致的显示质量。在各实施例中,加载算法148被实现为确定接收观看者发起的内容导航输入的可能性。加载算法考虑媒体资产的各片段的视频复杂性,并预计可用的网络带宽以确定接下来要下载媒体资产的哪些片段,以优化提供一致媒体回放质量的概率。例如,加载算法148可以确定当特定观看者在观看视频时一般都跳过广告时接收到在媒体资产中向前跳转的可能性。在其他实例中,电视客户机设备126处的观看者可以发起任何类型的内容导航输入,诸如媒体资产中的向前跳转、媒体资产的快进、或到媒体资产的停止回放和一个不同媒体资产的开始回放的改变。加载算法148还被实现为针对媒体资产的每一片段,基于对接收内容导航输入的预计来估算何时将回放每一片段。加载算法148可随后可基于对何时将回放每一片段的估算来确定媒体资产的要加载和存储的下一个片段。加载算法148还可以基于媒体资产的每一片段的目标回放质量来确定媒体资产的要下载的下一个片段。在各实施例中,加载算法148基于为媒体资产的每一片段生成的加载模型来确定媒体资产的要预先加载(例如,下载和存储)的那些片段。加载算法148可以为每一片段生成加载模型,并且加载模型包括改进值,可以根据该改进值来对这些片段中的每一个进行排序以确定要下载的下一个最佳片 段。媒体资产的被确定为要预先加载的那些片段可以被下载以改进这些片段的目标回放质量。应该注意,当预计或确定为可能接收到内容导航输入(诸如媒体资产中的前进或向前跳转)时,不一定将媒体资产的紧跟在该跳转之后的一个或多个片段确定为接下来要下载的那些片段。如果媒体资产的各片段不是太过复杂和/或网络带宽可用于在媒体资产的回放期间下载这些片段同时维持目标显示质量,则加载算法148可以确定接下来要下载媒体资产的其他片段。例如,媒体资产的被确定为供下载的下一些片段可以是复杂的视频场景的片段,该视频场景被估算为将在向前跳转恢复媒体资产以供观看之后大致一分钟回放。加载算法148还可以评估缓冲器的充满度,并基于为媒体资产的每一片段生成的加载模型来确定媒体资产的要下载的那些片段,以为了最可能的用户输入和最大可能的改进来优化显示质量。加载算法148启用数据加载管理器140来提供大致一致的媒体质量水平(例如,处于目标显示质量)。数据加载管理器140利用附加的存储介质142 (例如,除了可选的较小容量的缓冲器之外的存储介质)来递归地使在媒体资产的剩余回放时间中的任何点处可用的媒体时间的最小量最大化,以防止诸如在网络带宽意外减少时的回放问题。在各实施例中,数据加载管理器140可以下载媒体资产的可能受制于带宽约束的那些片段146,所述带宽约束可能妨碍以目标回放质量来下载媒体资产的这些片段。例如,媒体资产的可能受制于带宽约束的那些片段包括在该媒体资产的开始处的那些片段或者该媒体资产的对下载而言为资源密集的那些片段。媒体资产的这些片段146可以由媒体内容回放系统102处的存储介质142来下载和存储。在各实施例中,基于哪个片段或哪些片段将提供最可能的改进用户体验来索引媒体资产的各片段。改进值I指示在一片段针对系统状态S在特定时间t为可用的情况下,针对系统状态s在特定时间t发生的概率P的用户体验的改进。接下来被选择并加载以供呈现的片段的数据块是函数f (P,I)(当被最大化时)所描述的数据块。加载算法148可以通过使用有关哪些片段已被下载和存储的信息、这些片段中的每一个的质量和/或数据大小值和所预计的可用网络带宽的值来在媒体资产的总剩余回放时间内递归地确定或计算函数 f(p,I)。在媒体内容回放系统102中,片段加载器进程(例如,由数据加载管理器140所实现的)以及回放进程(例如,由呈现系统144所实现的)是该回放系统的独立进程。数据加载管理器140提供可在客户机设备处得到媒体资产的回放所需的那些片段,并且数据加载管理器的加载算法148优化获得一致回放质量的可能性,即使在接收到用户输入(诸如,内容导航输入)时。加载算法148为媒体资产的每一片段导出加载模型,并且加载模型针对每一片段指示回放发生的概率。当确定了媒体资产的具有较高回放概率的那些片段时,加载模型148可以考虑优化标准。例如,优化标准包括确定要下载媒体资产的各片段的可能性;以及,在需要时将以较高的比特率来容易地得到各片段,还是诸如由于来自下载源的带宽约束下载各片段将较慢。优化标准还可以考虑各媒体资产片段在对等环境中的相对可用性。假设无论何时观看者发起回放媒体资产一定量的网络带宽都将可用,则可以下载并存储媒体资产的特定片 段。在回放期间可用的带宽可用于扩充所存储的媒体资产的片段,诸如跳跃点和媒体资产中较复杂的场景。这允许限制存储媒体资产的片段所需的存储空间的量,同时仍提供媒体资产的一致回放质量。在一实现中,可利用广播技术来向客户机设备仅广播一大组媒体资产的复杂片段,而不是通过IP网络来预先加载这些片段。操作者可以广播数据块的流,并且客户机设备将基于所预期的、在回放时可用的IP带宽来接收并存储所广播的这些数据块的子集。客户机设备(例如,媒体内容回放系统)处的加载算法148可以估算并确定要预先加载哪些数据块以通过IP提供恒定的质量回放体验。在另一实施例中,加载算法148可以确定存储介质142所存储的媒体资产的各片段146,这些片段146可被盖写以改进该媒体资产的针对回放的显示质量。例如,可以用所存储片段的较高质量版本来盖写这些片段以改进媒体资产的显示质量。数据加载器140可以下载改进的片段,并用改进的片段来盖写媒体资产的片段146,以改进该媒体资产的针对回放的显示质量。在另一个实施例中,加载算法148可以确定要从存储介质142中删除媒体资产的各片段146中的哪些片段,诸如不太可能被回放的那些片段。例如,观看者可能在观看媒体资产时已经发起了向前跳转的内容导航输入,并且可以标识出媒体资产的被跳过的那些片段以供从存储介质中删除。图3示出了在改进的媒体内容回放质量的各实施例中媒体资产的各片段的数据的非连续存储的示例300。在该示例300中,如以上参考图I所描述的,媒体内容回放系统102处的存储介质包括各媒体资产的片段,诸如媒体资产片段302、媒体资产片段304和媒体资产片段306。这些媒体资产片段可以全部都与不同的媒体资产相关联、全部都与相同的媒体资产相关和/或其组合。例如,媒体资产片段302和306可以与相同的媒体资产相关联,而媒体资产片段304可以与不同的媒体资产相关联。媒体资产的片段各自包括任何数量的数据块,诸如媒体资产片段302中的数据块、媒体资产片段304中的数据块以及媒体资产片段306中的数据块。特定媒体资产的数据可以不按回放次序(例如,以非连续次序)来存储,并且加载算法148基于优化标准来确定要读取哪些数据。
图4在图400中示出了改进的媒体内容回放质量的示例,其包括对内容复杂性402、视觉质量404和改进质量406随时间408的指示。图400示出了当内容复杂性402随时间408变化时,被回放以供观看的媒体资产的视觉质量404也可变化。如上所述,常规的视频数据流传送技术由于不可预测的网络带宽以及媒体资产中的复杂场景所需的附加视频数据,可能无法在客户机设备处提供针对回放的一致视频质量。例如,由于内容复杂性在410处增加(或者,针对网络带宽的突然下降),视觉质量在412处降低。随后,当内容复杂性在414处降低时,视觉质量在416处改进了。图400还根据此处所述的改进的媒体内容回放质量的各实施例示出了改进质量406。例如,当内容复杂性在410处增加时,改进质量在418处略微(或根本没有)降低,而不象常规的视觉质量,常规的视觉质量在412处降低了。类似地,当内容复杂性在414处降低时,改进质量在420处保持基本恒定。随后,当内容复杂性在422处再次增加时,改进质量在424处继续基本恒定,然而常规的视觉质量可能在426处降低。 图5示出了包括参考图I描述的媒体内容回放系统102的示例系统500。示例系统500实现了用于当在个人计算机(PC)、电视机设备和/或移动设备上运行应用程序时的无缝用户体验的普遍存在的环境。服务和应用在所有三个环境中基本相似地运行,以便当使用应用、玩视频游戏、看视频等时在从一个设备转换到下一设备时得到共同的用户体验。在示例系统500中,多个设备通过中央计算设备互联。中央计算设备可以是多个设备本地的,或者可以位于多个设备的远程。在一个实施例中,中央计算设备是通过网络、因特网或其他数据通信链路连接到多个设备的一个或多个服务器计算机的云。在一个实施例中,该互联体系结构使得功能能够跨多个设备递送以向多个设备的用户提供共同且无缝的体验。多个设备的每一个可具有不同的物理要求和能力,且中央计算设备使用一平台来使得为设备特制且又对所有设备共同的体验能被递送到设备。在一个实施例中,创建目标设备的类,且为通用设备类定制体验。设备类可由设备的物理特征、用途类型、或其他共同特性来定义。在各种实现中,媒体内容回放系统102可采取各种不同的配置,诸如用于计算机502、移动设备504、和电视机506用途。这些配置中的每一个包括可具有一般不同构造和能力的设备,并且因而媒体内容回放系统102可根据不同设备类中的一个或多个来配置。例如,媒体内容回放系统102可被实现为计算机502设备类,该计算机设备类包括个人计算机、台式计算机、多屏幕计算机、膝上型计算机、上网本等等。媒体内容回放系统102还可被实现为移动504设备类,该移动设备类包括诸如移动电话、便携式音乐播放器、便携式游戏设备、平板计算机、多屏幕计算机等移动设备。媒体内容回放系统102还可被实现为电视机506设备类,该电视机设备类包括在休闲观看环境中具有或连接到一般更大的屏幕的设备。这些设备包括电视机、机顶盒、游戏控制台等。此处所描述的媒体技术可由媒体内容回放系统102的这些各种配置来支持,且不限于在此处描述的媒体内容的改进回放质量的具体示例。云508包括和/或代表用于媒体内容服务512的平台510。平台510抽象云508的硬件(如,服务器)和软件资源的底层功能。媒体内容服务512可包括可在计算机处理在位于媒体内容回放系统102远程的服务器上执行时使用的应用和/或数据。媒体内容服务512可以作为因特网上的服务和/或通过订户网络(如蜂窝或WiFi网络)来提供。
平台510可以抽象资源和功能来将媒体内容回放系统102与其他计算设备相连接。平台510还可用于抽象资源的缩放来向对经由平台512实现的媒体内容服务510的所遇到的需求提供对应的缩放级别。因此,在互联设备的实施例中,数据加载管理器140和/或加载算法148的功能的实现可分布在系统500上。例如,数据加载管理器140和/或加载算法148可部分地在媒体内容回放系统102上并经由抽象云508的功能的平台510来实现。参考相应的图6和7来描述根据媒体内容的改进回放质量的一个或多个实施例的示例方法600和700。一般而言,本文描述的功能、方法、过程、组件以及模块中的任一个都可使用软件、固件、硬件(例如,固定逻辑电路)、手动处理或其任何组合来实现。软件实现表示当由计算机处理器执行时执行指定任务的程序代码。可以在计算机可执行指令的一般上下文中描述示例方法,这些指令可包括软件、应用程序、例程、程序、对象、组件、数据结构、过程、模块、功能等等。程序代码可被存储在计算机处理器本地和/或远程的一个或多个计算机可读存储器设备中。方法还可以在分布式计算环境中由多个计算机设备实施。此外,此处所描述的特征是平台无关的,并且可在具有各种处理器的各种计算平台上实现。 图6示出了改进的媒体内容回放质量的示例方法600,并且是参照媒体内容回放系统来描述的。描述方法框的次序并不旨在解释为限制,并且任何数量的所述方法框都可以按任何次序组合以实现本方法或实现替换方法。在框602,预计何时将接收到导致对媒体资产的非线性回放的内容导航输入。例如,媒体内容回放系统102的加载算法148预计或确定内容导航输入在被观看者发起时将被接收到的可能性。在一个实例中,加载算法148可以确定当特定观看者在观看视频时一般都跳过广告时接收到在媒体资产中向前跳转的可能性。在其他实例中,可接收到任何类型的内容导航输入,诸如在媒体资产中向前跳转、媒体资产的快进、或到媒体资产的停止回放和一个不同媒体资产的开始回放的改变。在框604处,针对媒体资产的各片段的每一个,基于所预计的内容导航输入来估算何时将回放每一片段。例如,加载算法148还针对媒体资产的每一片段基于对接收内容导航输入的预计来估算何时将回放每一片段。在框606处,基于对何时将回放每一片段的估算来确定媒体资产的要下载和存储的下一个片段。例如,加载算法148可基于对何时将回放每一片段的估算来确定媒体资产的要下载和存储的下一个片段。加载算法还考虑媒体资产的各片段的视频复杂性,并预计可用的网络带宽以确定接下来要下载媒体资产的哪些片段,以优化提供一致媒体回放质量的概率。在框608处,从一个或多个媒体内容源处下载媒体资产的下一个片段。例如,媒体内容回放系统102处的数据加载管理器140从各个媒体内容源108处下载下一个媒体资产片段或接下去的多个媒体资产片段。在框610处,在存储器设备的存储中,各媒体资产片段被存储成非连续数据,在下载这些片段时这些非连续数据与媒体资产的至少一些片段相关。例如,媒体内容回放系统102处的存储介质142存储多个各种媒体资产的片段146,并且这些片段被存储成非连续数据,这些非连续数据与这些各种媒体资产中的至少一些片段相关。例如,图2所示的媒体资产片段可以全部都与不同媒体资产相关联、全部都与相同的媒体资产相关联和/或其结合。在框612处,盖写存储在存储器设备中的媒体资产的片段,以改进媒体资产的针对回放的显示质量。例如,数据加载管理器140的加载算法148确定存储介质142所存储的各媒体资产片段146,这些片段146可被盖写以改进媒体资产的针对回放的显示质量。可以用所存储片段的较高质量版本来盖写这些片段以改进媒体资产的显示质量。在框614处,将媒体资产的不太可能被回放的那些片段从存储器设备中删除。例如,加载算法148确定要从存储介质142中删除媒体资产的各片段146中的哪些片段,诸如不太可能被回放的那些片段。例如,观看者可能在观看媒体资产时已经发起了向前跳转的内容导航输入,并且可以标识出媒体资产的被跳过的那些片段以供从存储介质中删除。数据加载管理器120可随后将未被使用的片段从存储介质中删除。图7示出改进的媒体内容回放质量的示例方法700,并且是参照加载算法来描述的。描述方法框的次序并不旨在解释为限制,并且任何数量的所述方法框都可以按任何次序组合以实现本方法或实现替换方法。另外地,参考方法700来描述的各方法框的中的任何一个或组合可以与参考方法500来描述的各方法框中的任何一个或组合相结合。在框702处,为每一媒体资产片段生成加载模型,其中加载模型包括改进值,可以根据该改进值来对各片段中的每一个进行排序以确定要下载的下一个最佳片段。例如,媒体内容回放系统102处的数据加载管理器140的加载算法148为每一媒体资产片段生成加载模型,并且加载模型包括改进值,根据该改进值来对各片段中的每一个进行排序以确定要下载的下一个最佳片段。在框704处,基于媒体资产的每一片段的目标回放质量来确定媒体资产的要下载的下一个片段。例如,加载算法148基于媒体资产的每一片段的目标回放质量来确定媒体资产的要下载的下一个片段。在框706处,确定媒体资产的要预先加载在存储器设备中的那些片段,以改进这些片段的目标回放质量。例如,加载算法148基于为媒体资产的每一片段生成的加载模型来确定媒体资产的要预先加载的那些片段。在框708处,下载媒体资产的受制于带宽约束的那些片段。例如,媒体内容回放系统102处的数据加载管理器140下载各个媒体资产的受制于带宽约束的那些片段146。媒体资产的受制于带宽约束的那些片段包括在该媒体资产的开始处的那些片段或者该媒体资产的对下载而言为资源密集的那些片段。图8示出了可被实现为参考前面的
图1-6来描述的任何类型的媒体内容回放系统和/或计算设备并用于实现改进的媒体内容回放质量的各实施例的示例设备800的各个组件。在各实施例中,设备800可被实现为有线和/或无线设备中的任一个或其组合,如任何形式的电视客户机设备(例如,电视机顶盒、数字录像机(DVR)等等)、消费设备、计算机设备、服务器设备、便携式计算机设备、用户设备、通信设备、视频处理和/或呈现设备、电器设备、游戏设备、电子设备和/或被实现为任何其他类型的设备。设备800还可与用户(SP人)和/或操作该设备的实体相关联,从而使得设备描述包括用户、软件、固件和/或设备的组合的逻辑设备。设备800包括实现设备数据802(例如,所接收的数据、正被接收的数据、排定用于广播的数据、数据的数据包等等)的有线和/或无线通信的通信设备804。设备数据804或其他设备内容可以包括设备的配置设置、存储在设备上的媒体内容和/或与设备的用户相关联的信息。存储在设备800上的媒体内容可以包括任何类型的音频、视频和/或图像数据。设备800包括经由其可以接收任何类型的数据、媒体内容和/或输入的一个或多个数据输入806,诸如用户可选输入、消息、音乐、电视媒体内容、所记录的视频内容以及从任何内容和/或数据源接收的任何其它类型的音频、视频和/或图像数据。设备800还包括通信接口 808,其可被实现为串行和/或并行接口、无线接口、任何类型的网络接口、调制解调器、以及任何其他类型的通信接口中的任一个或多个。通信接口808提供设备800和通信网络之间的连接和/或通信链路,其他电子、计算和通信设备通过所述连接和/或通信链路来与设备800传递数据。设备800包括一个或多个处理器810 (例如,微处理器、控制器等中的任一个),处理器处理各种计算机可执行指令来控制设备800的操作并实现媒体内容的改进回放质量的各实施例。另选地或另外地,设备800可以用硬件、固件或在结合概括地在812处标识的处理和控制电路来实现的固定逻辑电路中的任一个或其组合来实现。虽然未示出,但是设备800可包括耦合设备内的各种组件的系统总线或数据传输系统。系统总线可包括不同总线结构中的任一个或组合,诸如存储器总线或存储器控制器、外围总线、通用串行总线、和/ 或利用各种总线架构中的任一种的处理器或局部总线。设备800还包括诸如一个或多个存储器组件等的计算机可读介质814,存储器组件的示例包括随机存取存储器(RAM)、非易失性存储器(例如,只读存储器(ROM)、闪存、EPROM、EEPROM等中的任一个或多个)、以及盘存储设备。盘存储设备可被实现为任何类型的磁性或光学存储设备,如硬盘驱动器、可记录和/或可重写紧致盘(CD)、任何类型的数字多功能盘(DVD)等等。设备800还可包括大容量存储介质设备816。计算机可读存储介质814提供数据存储机制以便存储设备数据804、以及各种设备应用程序818和关于设备800的各操作方面的任何其它类型的信息和/或数据。例如,操作系统820可以用计算机可读存储介质814作为计算机应用程序来维护并在处理器810上执行。设备应用818可包括设备管理器(例如,控制应用、软件应用、信号处理和控制模块、特定设备本地的代码、特定设备的硬件抽象层等)。设备应用818还包括实现媒体内容的改进回放质量的各实施例的任何系统组件或模块。在这个示例中,诸如当将设备800实现为媒体内容回放设备或系统时,设备应用818可以包括数据加载管理器822和加载算法824。数据加载管理器822和数据算法824被示为软件模块和/或计算机应用程序。作为补充或替换,数据加载管理器822和加载算法824可被实现为硬件、软件、固件、或其任意组合。设备800还包括生成并向音频系统826提供音频数据和/或生成并向显示系统828提供显示数据的音频和/或视频呈现系统830。音频系统828和/或显示系统830可包括处理、显示、和/或以其他方式呈现音频、视频、和图像数据的任何设备。显示数据和音频信号可经由RF (射频)链路、S-视频链路、复合视频链路、分量视频链路、DVI (数字视频接口)、模拟音频连接、或其他类似的通信链路来从设备800传输给音频设备和/或显示设备。在一实施例中,音频系统828和/或显示系统830被实现为设备800的外部组件。或者,音频系统828和/或显示系统830被实现为示例设备800的集成组件。尽管已经用结构特征和/或方法专用的语言描述了媒体内容的改进回放质量的各实施例,但是应该理解,所附权利要求的主题不必限于所述的具体特征或方法。相反,这些具体特征和方法是作为媒体内容的改进回放质量的示例实 现来公开的。
权利要求
1.一种媒体内容回放系统,包括 数据加载管理器,所述数据加载管理器被配置成 预计何时将接收到导致对媒体资产的非线性回放的一个或多个内容导航输入; 针对所述媒体资产的每一片段,基于所预计的一个或多个内容导航输入来估算何时将回放每一片段; 基于对何时将回放每一片段的估算来确定所述媒体资产的要下载和存储的下一个片段;以及 存储器设备,所述存储器设备被配置成存储所述媒体资产的各片段,所述各片段被存储成非连续数据,在从一个或多个媒体内容源下载所述各片段时,所述非连续数据与所述媒体资产的至少一些片段相关。
2.如权利要求I所述的媒体内容回放系统,其特征在于,所述数据加载管理器还被配置成基于所述媒体资产的每一片段的目标回放质量来确定所述媒体资产的要下载的下一个片段。
3.如权利要求I所述的媒体内容回放系统,其特征在于,所述数据加载管理器还被配置成确定要将所述媒体资产的各片段中的哪些片段预先加载在所述存储器设备中,以改进所述各片段的目标回放质量。
4.如权利要求3所述的媒体内容回放系统,其特征在于,所述数据加载管理器还被配置成基于为所述媒体资产的每一片段生成的加载模型来确定所述媒体资产的要预先加载的那些片段,其中所述加载模型包括改进值,根据所述改进值来对那些片段中的每一个进行排序以确定要下载的下一个最佳片段。
5.如权利要求I所述的媒体内容回放系统,其特征在于,所述数据加载管理器还被配置成基于所述媒体资产的受制于带宽约束的那些片段来确定所述媒体资产的要下载的下一个片段。
6.如权利要求5所述的媒体内容回放系统,其特征在于,所述带宽约束妨碍以目标回放质量来下载所述媒体资产的所述各片段。
7.如权利要求5所述的媒体内容回放系统,其特征在于,所述媒体资产的受制于所述带宽约束的那些片段包括如下各项中的至少一个在所述媒体资产的开始处的那些片段或者所述媒体资产的对下载而言为资源密集的那些片段。
8.如权利要求I所述的媒体内容回放系统,其特征在于,所述数据加载管理器还被配置 成下载并盖写所述媒体资产的存储在所述存储器设备中的那些片段,以改进所述媒体资产的针对回放的显示质量。
9.如权利要求I所述的媒体内容回放系统,其特征在于,所述数据加载管理器还被配置成发起将所述媒体资产的不太可能被回放的那些片段从所述存储器设备中删除。
10.如权利要求I所述的媒体内容回放系统,其特征在于,还包括实现所述数据加载管理器的加载算法的至少一存储器和处理器,所述加载算法被配置成 针对所述媒体资产的每一片段,估算何时将回放每一片段; 确定所述媒体资产的要下载和存储的下一个片段; 确定所述媒体资产的要在所述媒体资产的回放之前预先加载的那些片段,以改进所述媒体资产的针对回放的显示质量;以及确定所述媒体资产的不太可能被回放的那些片段,以将这些片段从所述存储器设备中删除。
11.如权利要求I所述的媒体内容回放系统,其特征在于,所述内容导航输入包括以下各项中的至少一个所述媒体资产中的向前跳转、所述媒体资产的快进、或到所述媒体资产的停止回放和附加媒体资产的开始回放的改变。
12.—种计算机实现的方法,包括 在存储器设备中将媒体资产的各片段存储成非连续数据,当从一个或多个媒体内容源中下载所述各片段时所述非连续数据与所述媒体资产的至少一些片段相关; 预计何时将接收到导致对所述媒体资产的非线性回放的内容导航输入; 针对所述媒体资产的所述各片段中的每一片段,基于所预计的内容导航输入来估算何时将回放每一片段; 基于对何时将回放每一片段的估算来确定所述媒体资产的要下载和存储的下一个片段;以及 从所述媒体内容源中的一个或多个处下载所述下一个片段。
13.如权利要求12所述的计算机实现的方法,其特征在于,还包括基于所述媒体资产的每一片段的目标回放质量来确定所述媒体资产的要下载的下一个片段。
14.如权利要求12所述的计算机实现的方法,其特征在于,还包括确定要将所述媒体资产的所述各片段中的哪些片段预先加载在所述存储器设备中,以改进所述各片段的目标回放质量。
15.如权利要求12所述的计算机实现的方法,其特征在于,还包括为所述媒体资产的每一片段生成加载模型,其中加载模型包括改进值,根据所述改进值来对所述各片段中的每一片段进行排序以确定要下载的下一个最佳片段。
全文摘要
描述了改进的媒体内容回放质量。在各实施例中,媒体内容回放系统将媒体资产的各片段存储在存储器设备中,其中这些片段被存储成非连续数据,当从一个或多个媒体内容源下载这些片段时该非连续数据与该媒体资产的至少一些片段相关。数据加载管理器被实现为预计何时将接收到导致对媒体资产的非线性回放的内容导航输入。随后,数据加载管理器可以针对媒体资产的每一个片段,基于所预计的内容导航输入来估算何时回放每一片段。数据加载管理器基于对何时将回放每一片段的估算来确定媒体资产的要下载和存储的下一个片段。
文档编号H04N21/231GK102845072SQ201180019091
公开日2012年12月26日 申请日期2011年4月4日 优先权日2010年4月16日
发明者E·W·萨罗门斯 申请人:微软公司