首页> 中国专利> 用于经译码视频数据的网络串流传输的媒体表示群组

用于经译码视频数据的网络串流传输的媒体表示群组

摘要

在一个实例中,一种用于接收用于多媒体数据的信息的装置,所述装置包含一个或一个以上处理器,所述一个或一个以上处理器经配置以:分析用于多媒体内容的清单文件的至少一部分,其中所述清单文件的所述部分包括指示所述多媒体内容的表示集合的信息及指示所述表示集合中的每一集合的共同特性的信息;基于所述表示集合中的一个集合的所述共同特性而选择所述表示集合中的所述一个集合;基于所述集合中的所述一个集合的所述表示中的一个表示的一个或一个以上译码特性而选择所述表示集合中的所述选定一个集合的所述表示中的所述一个表示;及基于所述选择而产生针对所述表示中的所述一个表示的数据的请求。

著录项

  • 公开/公告号CN103141069A

    专利类型发明专利

  • 公开/公告日2013-06-05

    原文格式PDF

  • 申请/专利权人 高通股份有限公司;

    申请/专利号CN201180039437.0

  • 申请日2011-08-09

  • 分类号H04L29/06;

  • 代理机构北京律盟知识产权代理有限责任公司;

  • 代理人宋献涛

  • 地址 美国加利福尼亚州

  • 入库时间 2024-02-19 19:50:28

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-04-27

    授权

    授权

  • 2013-07-10

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20110809

    实质审查的生效

  • 2013-06-05

    公开

    公开

说明书

技术领域

本发明涉及经编码多媒体数据的存储及输送。

背景技术

可将数字视频能力并入到广泛范围的装置中,所述装置包括数字电视、数字直播系 统、无线广播系统、个人数字助理(PDA)、膝上型或桌上型计算机、数码相机、数字记 录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、 视频电话会议装置及其类似者。数字视频装置实施视频压缩技术(例如,由MPEG-2、 MPEG-4、ITU-T H.263或ITU-T H.264/MPEG-4第10部分(高级视频译码(AVC))定义的 标准及这些标准的扩展中所描述的视频压缩技术),以更有效率地发射及接收数字视频信 息。

视频压缩技术执行空间预测及/或时间预测以减少或移除视频序列所固有的冗余。对 于以块为基础的视频译码,可将视频帧(frame)或切片(slice)分割为宏块。可进一步分割 每一宏块。使用相对于相邻宏块的空间预测来编码经帧内译码(I)帧或切片中的宏块。经 帧间译码(P或B)帧或切片中的宏块可使用相对于同一帧或切片中的相邻宏块的空间预 测或相对于其它参考帧的时间预测。

在已编码视频数据之后,可包化视频数据以供发射或存储。可将视频数据组装为符 合多种标准(例如,国际标准组织(ISO)基础媒体文件格式及其扩展(例如,ITU-T H.264/AVC))中任一者的视频文件。可以多种方式(例如,使用网络串流传输经由计算机 网络的发射)输送此经包化视频数据。

发明内容

一般来说,本发明描述用于改善经由网络对媒体数据进行串流传输的技术。这些技 术包括针对特技模式的支持,例如,在经由网络串流传输的媒体内容内的快进、倒转及 搜寻。这些技术还包括针对表示群组的支持,例如,用信号表示一表示群组的共同特性, 以及所述表示的个别特性。此外,所述技术包括提供用于更新用于串流传输的媒体内容 的清单文件的信息。所述技术还包括提供用于目标广告的媒体数据作为用于媒体内容的 外部周期。这些技术进一步包括将体验质量报告从一客户端装置提供及解译到一服务提 供者。另外,这些技术包括媒体内容的清单文件所符合的简档数据的信令。

在一个实例中,一种检索视频数据的方法包括:分析用于多媒体内容的清单文件的 至少一部分,其中所述清单文件的所述部分包括指示所述多媒体内容的表示集合的信息 及指示所述表示集合中的每一集合的共同特性的信息;基于所述表示集合中的一个集合 的所述共同特性而选择所述表示集合中的所述一个集合;基于所述集合中的所述一个集 合的所述表示中的一个表示的一个或一个以上译码特性而选择所述表示集合中的所述 选定一个集合的所述表示中的所述一个表示;及基于所述选择而产生针对所述表示中的 所述一个表示的数据的请求。

在另一实例中,一种用于接收用于视频数据的信息的装置包括一个或一个以上处理 器,所述一个或一个以上处理器经配置以:分析用于多媒体内容的清单文件的至少一部 分,其中所述清单文件的所述部分包括指示所述多媒体内容的表示集合的信息及指示所 述表示集合中的每一集合的共同特性的信息;基于所述表示集合中的一个集合的所述共 同特性而选择所述表示集合中的所述一个集合;基于所述集合中的所述一个集合的所述 表示中的一个表示的一个或一个以上译码特性而选择所述表示集合中的所述选定一个 集合的所述表示中的所述一个表示;及基于所述选择而产生针对所述表示中的所述一个 表示的数据的请求。

在另一实例中,一种用于接收用于视频数据的信息的装置包括:用于分析用于多媒 体内容的清单文件的至少一部分的装置,其中所述清单文件的所述部分包括指示所述多 媒体内容的表示集合的信息及指示所述表示集合中的每一集合的共同特性的信息;用于 基于所述表示集合中的一个集合的所述共同特性而选择所述表示集合中的所述一个集 合的装置;用于基于所述集合中的所述一个集合的所述表示中的一个表示的一个或一个 以上译码特性而选择所述表示集合中的所述选定一个集合的所述表示中的所述一个表 示的装置;及用于基于所述选择而产生针对所述表示中的所述一个表示的数据的请求的 装置。

在另一实例中,一种计算机程序产品包括计算机可读存储媒体,所述计算机可读存 储媒体包含指令,所述指令在执行时使用于检索视频数据的装置的处理器进行以下操 作:分析用于多媒体内容的清单文件的至少一部分,其中所述清单文件的所述部分包括 指示所述多媒体内容的表示集合的信息及指示所述表示集合中的每一集合的共同特性 的信息;基于所述表示集合中的一个集合的所述共同特性而选择所述表示集合中的所述 一个集合;基于所述集合中的所述一个集合的所述表示中的一个表示的一个或一个以上 译码特性而选择所述表示集合中的所述选定一个集合的所述表示中的所述一个表示;及 基于所述选择而产生针对所述表示中的所述一个表示的数据的请求。

在另一实例中,一种发送用于视频数据的信息的方法包括:获得具有一个或一个以 上共同特性的多媒体内容的表示集合,其中所述集合中的所述表示中的每一表示具有与 所述共同特性分离的一个或一个以上个别译码特性;获得用于所述多媒体内容的清单文 件,其中所述清单文件包括指示所述集合中的所述表示的信息、指示所述表示集合的所 述共同特性的信息,及指示所述集合中的所述表示中的每一表示的所述译码特性的信 息;及将所述清单文件的至少一部分发送到客户端装置。

在另一实例中,一种用于发送用于视频数据的信息的装置,所述装置包含一个或一 个以上处理器,所述一个或一个以上处理器经配置以:获得具有一个或一个以上共同特 性的多媒体内容的表示集合,其中所述集合中的所述表示中的每一表示具有与所述共同 特性分离的一个或一个以上个别译码特性;获得用于所述多媒体内容的清单文件,其中 所述清单文件包括指示所述集合中的所述表示的信息、指示所述表示集合的所述共同特 性的信息,及指示所述集合中的所述表示中的每一表示的所述译码特性的信息;及将所 述清单文件的至少一部分发送到客户端装置。

在另一实例中,一种用于发送用于视频数据的信息的装置包括:用于获得具有一个 或一个以上共同特性的多媒体内容的表示集合的装置,其中所述集合中的所述表示中的 每一表示具有与所述共同特性分离的一个或一个以上个别译码特性;用于获得用于所述 多媒体内容的清单文件的装置,其中所述清单文件包括指示所述集合中的所述表示的信 息、指示所述表示集合的所述共同特性的信息,及指示所述集合中的所述表示中的每一 表示的所述译码特性的信息;及用于将所述清单文件的至少一部分发送到客户端装置的 装置。

在另一实例中,一种计算机程序产品包括计算机可读存储媒体,所述计算机可读存 储媒体包含指令,所述指令使用于提供视频数据的装置的处理器进行以下操作:获得具 有一个或一个以上共同特性的多媒体内容的表示集合,其中所述集合中的所述表示中的 每一表示具有与所述共同特性分离的一个或一个以上个别译码特性;获得用于所述多媒 体内容的清单文件,其中所述清单文件包括指示所述集合中的所述表示的信息、指示所 述表示集合的所述共同特性的信息,及指示所述集合中的所述表示中的每一表示的所述 译码特性的信息;及将所述清单文件的至少一部分发送到客户端装置。

在另一实例中,一种检索视频数据的方法包括:分析用于多媒体内容的清单文件的 信息,其中所述清单文件的所述信息指示所述多媒体内容的至少一个表示包括时间子序 列;确定用于所述时间子序列的数据的一个或一个以上位置;及提交针对用于所述时间 子序列的所述数据的一个或一个以上请求。

在另一实例中,一种用于检索视频数据的装置包括一个或一个以上处理器,所述一 个或一个以上处理器经配置以:分析用于多媒体内容的清单文件的信息,其中所述清单 文件的所述信息指示所述多媒体内容的至少一个表示包括时间子序列;确定用于所述时 间子序列的数据的一个或一个以上位置;及提交针对用于所述时间子序列的所述数据的 一个或一个以上请求。

在另一实例中,一种用于检索视频数据的装置包括:用于分析用于多媒体内容的清 单文件的信息的装置,其中所述清单文件的所述信息指示所述多媒体内容的至少一个表 示包括时间子序列;用于确定用于所述时间子序列的数据的一个或一个以上位置的装 置;及用于提交针对用于所述时间子序列的所述数据的一个或一个以上请求的装置。

在另一实例中,一种计算机程序产品包括计算机可读媒体,所述计算机可读媒体具 有存储于其上的指令,所述指令在执行时使用于检索视频数据的装置的处理器进行以下 操作:分析用于多媒体内容的清单文件的信息,其中所述清单文件的所述信息指示所述 多媒体内容的至少一个表示包括时间子序列;确定用于所述时间子序列的数据的一个或 一个以上位置;及提交针对用于所述时间子序列的所述数据的一个或一个以上请求。

在另一实例中,一种发送用于视频数据的信息的方法包括:获得用于包括时间子序 列的多媒体内容的至少一个表示的数据;获得用于所述多媒体内容的清单文件的数据, 其中所述清单文件的信息指示所述多媒体内容的所述至少一个表示包括所述时间子序 列;及将所述清单文件的至少一部分发送到客户端装置。

在另一实例中,一种用于发送用于视频数据的信息的装置包括一个或一个以上处理 器,所述一个或一个以上处理器经配置以:获得用于包括时间子序列的多媒体内容的至 少一个表示的数据;获得用于所述多媒体内容的清单文件的数据,其中所述清单文件的 信息指示所述多媒体内容的所述至少一个表示包括所述时间子序列;及将所述清单文件 的至少一部分发送到客户端装置。

在另一实例中,一种用于发送用于视频数据的信息的装置包括:用于获得用于包括 时间子序列的多媒体内容的至少一个表示的数据的装置;用于获得用于所述多媒体内容 的清单文件的数据的装置,其中所述清单文件的信息指示所述多媒体内容的所述至少一 个表示包括所述时间子序列;及用于将所述清单文件的至少一部分发送到客户端装置的 装置。

在另一实例中,一种计算机程序产品包括计算机可读媒体,所述计算机可读媒体具 有存储于其上的指令,所述指令在执行时使用于发送用于视频数据的信息的装置的处理 器进行以下操作:获得用于包括时间子序列的多媒体内容的至少一个表示的数据;获得 用于所述多媒体内容的清单文件的数据,其中所述清单文件的信息指示所述多媒体内容 的所述至少一个表示包括所述时间子序列;及将所述清单文件的至少一部分发送到客户 端装置。

在另一实例中,一种检索视频数据的方法包括:根据由客户端装置存储的清单文件 的副本的数据而检索多媒体内容的表示的第一区段的数据;根据所述清单文件而检索所 述表示的第二区段的一部分,其中在所述表示中所述第二区段出现于所述第一区段之 后,且其中所述第二区段的所述部分指示所述清单文件待更新;基于所述清单文件待更 新的所述指示而更新由所述客户端装置存储的所述清单文件的所述副本;及根据所述经 更新清单文件而检索所述第二区段的媒体数据。

在另一实例中,一种用于检索视频数据的装置包括一个或一个以上处理器,所述一 个或一个以上处理器经配置以:根据由所述装置存储的清单文件的副本的数据而检索多 媒体内容的表示的第一区段的数据;根据所述清单文件而检索所述表示的第二区段的一 部分,其中在所述表示中所述第二区段出现于所述第一区段之后,且其中所述第二区段 的所述部分指示所述清单文件待更新;基于所述清单文件待更新的所述指示而更新由所 述装置存储的所述清单文件的所述副本;及根据所述经更新清单文件而检索所述第二区 段的媒体数据。

在另一实例中,一种用于检索视频数据的装置包括:用于根据由所述装置存储的清 单文件的副本的数据而检索多媒体内容的表示的第一区段的数据的装置;用于根据所述 清单文件而检索所述表示的第二区段的一部分的装置,其中在所述表示中所述第二区段 出现于所述第一区段之后,且其中所述第二区段的所述部分指示所述清单文件待更新; 用于基于所述清单文件待更新的所述指示而更新由所述装置存储的所述清单文件的所 述副本的装置;及用于根据所述经更新清单文件而检索所述第二区段的媒体数据的装 置。

在另一实例中,一种计算机程序产品包括计算机可读媒体,所述计算机可读媒体具 有存储于其上的指令,所述指令在执行时使用于检索视频数据的装置的处理器进行以下 操作:根据由所述装置存储的清单文件的副本的数据而检索多媒体内容的表示的第一区 段的数据;根据所述清单文件而检索所述表示的第二区段的一部分,其中在所述表示中 所述第二区段出现于所述第一区段之后,且其中所述第二区段的所述部分指示所述清单 文件待更新;基于所述清单文件待更新的所述指示而更新由所述装置存储的所述清单文 件的所述副本;及根据所述经更新清单文件而检索所述第二区段的媒体数据。

在另一实例中,一种发送用于视频数据的信息的方法包括:将多媒体内容的清单文 件的数据发送到客户端装置,其中所述清单文件包括指示所述多媒体内容的表示的第一 区段的信息;响应于来自所述客户端装置的请求而将所述表示的所述第一区段的至少一 部分发送到所述客户端装置,其中所述第一区段的所述部分指示所述清单文件待更新, 其中所述清单文件的经更新版本包括指示所述表示的第二不同区段的信息;及响应于从 所述客户端装置所接收且根据所述经更新清单文件所形成的请求而将所述第二区段的 数据发送到所述客户端装置。

在另一实例中,一种用于发送用于视频数据的信息的装置包括一个或一个以上处理 器,所述一个或一个以上处理器经配置以:将多媒体内容的清单文件的数据发送到客户 端装置,其中所述清单文件包括指示所述多媒体内容的表示的第一区段的信息;响应于 来自所述客户端装置的请求而将所述表示的所述第一区段的至少一部分发送到所述客 户端装置,其中所述第一区段的所述部分指示所述清单文件待更新,其中所述清单文件 的经更新版本包括指示所述表示的第二不同区段的信息;及响应于从所述客户端装置所 接收且根据所述经更新清单文件所形成的请求而将所述第二区段的数据发送到所述客 户端装置。

在另一实例中,一种用于发送用于视频数据的信息的装置包括:用于将多媒体内容 的清单文件的数据发送到客户端装置的装置,其中所述清单文件包括指示所述多媒体内 容的表示的第一区段的信息;用于响应于来自所述客户端装置的请求而将所述表示的所 述第一区段的至少一部分发送到所述客户端装置的装置,其中所述第一区段的所述部分 指示所述清单文件待更新,其中所述清单文件的经更新版本包括指示所述表示的第二不 同区段的信息;及用于响应于从所述客户端装置所接收且根据所述更新清单文件所形成 的请求而将所述第二区段的数据发送到所述客户端装置的装置。

在另一实例中,一种计算机程序产品包括计算机可读媒体,所述计算机可读媒体具 有存储于其上的指令,所述指令在执行时使用于发送用于视频数据的信息的装置的处理 器进行以下操作:将多媒体内容的清单文件的数据发送到客户端装置,其中所述清单文 件包括指示所述多媒体内容的表示的第一区段的信息;响应于来自所述客户端装置的请 求而将所述表示的所述第一区段的至少一部分发送到所述客户端装置,其中所述第一区 段的所述部分指示所述清单文件待更新,其中所述清单文件的经更新版本包括指示所述 表示的第二不同区段的信息;及响应于从所述客户端装置所接收且根据所述经更新清单 文件所形成的请求而将所述第二区段的数据发送到所述客户端装置。

附图说明

图1为说明实施用于经由网络而串流传输媒体数据的技术的实例系统的框图。

图2为说明实例多媒体内容的元素的概念图。

图3为说明实例视频文件的元素的框图,所述视频文件可对应于多媒体内容的表示 的区段。

图4为说明包括媒体呈现描述(MPD)及各种表示群组的实例多媒体内容的概念图。

图5为说明其中将MPD数据分离为用于各种表示群组的各种部分的另一实例多媒 体内容的概念图。

图6为说明可用以支持特技模式的另一实例多媒体内容的概念图。

图7为说明其中区段可包括MPD更新盒以指示多媒体内容的MPD待更新的另一实 例多媒体内容的概念图。

图8为说明一实例方法的流程图,所述方法用于通过服务器装置提供表示群组的指 示,且用于通过客户端装置选择表示群组以及在选定表示群组内选择个别表示。

图9为说明一实例方法的流程图,所述方法用于通过服务器装置提供表示特技模式 的数据,且用于通过客户端装置使用所述数据以检索及播放多媒体内容的特技模式数 据。

图10为说明一实例方法的流程图,所述方法用于通过服务器装置提供清单文件(例 如,MPD)待更新的指示,且用于通过客户端装置更新MPD。

图11为说明一实例方法的流程图,所述方法用于建构及使用体验质量(QoE)报告文 档的数据。

具体实施方式

一般来说,本发明描述用于经由网络而串流传输多媒体数据(例如,音频及视频数据) 的技术。本发明的技术可结合经由HTTP的动态自适应串流传输(DASH)而使用。本发明 描述可结合网络串流传输而执行的各种技术,所述技术中的任一者或全部可单独地或以 任何组合来实施。如下文更详细地描述,执行网络串流传输的各种装置可经配置以实施 本发明的技术。

根据DASH及用于经由网络而串流传输数据的相似技术,可以多种方式且通过多种 特性来编码多媒体内容(例如,电影或其它音频/视频内容,其还可包括文本覆盖或其它 数据)。内容准备装置可形成同一多媒体内容的多个表示。每一表示可对应于一特定特性 (例如,译码及再现特性)集合,以提供具有各种译码及再现能力的多种不同客户端装置 可使用的数据。此外,具有各种位速率的表示可允许带宽适应。即,客户端装置可确定 当前可用的带宽的量,且基于可用带宽的量连同客户端装置的译码及再现能力一起来选 择表示。

在一些实例中,内容准备装置可指示一表示集合具有一共同特性集合。内容准备装 置可接着指示所述集合中的表示形成表示群组,因为所述集合中的表示可用于带宽适 应。即,所述集合中的表示的位速率可不同,但在别的方面却共享大体上相同的特性。 以此方式,客户端装置可确定多媒体内容的表示群组的各种共同特性集合,且基于客户 端装置的译码及再现能力而选择表示群组。接着,客户端装置可基于带宽可用性而在选 定的表示群组中的表示之间自适应地切换。

内容准备装置还可提供用于清单文件(例如,呈由3GPP(第三代合作伙伴计划)规定 的格式的媒体呈现描述(MPD)文件)的不同部分的单独网络位置。即,清单文件的不同部 分可通过(例如)例如统一资源定位符(URL)等各种统一资源识别符(URI)独立地寻址。清 单文件的初始部分可包括清单文件的另一部分的URI、URL或其它位置识别符。举例来 说,清单文件的第一部分可包括表示群组的共同特性的描述,如上文所论述。

表示群组中每一表示群组可与清单文件的一相应不同部分相关联,所述不同部分可 包括指示在相应表示群组中表示的媒体数据的位置的数据。以此方式,客户端装置可接 收清单文件的第一部分、选择适当表示群组、针对选定表示群组检索清单文件的另一部 分、选择选定群组的表示,且使用清单文件的另一部分来检索选定表示的数据。此外, 客户端装置可使用清单文件的另一部分(即,为选定表示群组所特有的部分)而适应于改 变的网络带宽。

另外或替代地,清单文件的一部分可出于其它目的而涉及清单文件的另一部分。即, 清单文件的一部分可将客户端装置引导到清单文件的另一部分以用于在重放期间将远 程周期的媒体数据插入到电影中。在一些实例中,远程周期可对应于广告。在一些实例 中,这些技术可用于目标广告。客户端装置可将例如用户识别符、针对广告的用户偏好 及/或用户人口统计信息等用户信息提供到服务器装置,服务器装置可基于用户信息而选 择清单文件的一部分。因此,当解除参考时,清单文件的外部部分可(例如)由客户端装 置并入到原始清单文件中。服务器装置可将清单文件的与目标广告媒体内容相关联的部 分的位置提供到客户端装置。客户端装置可接着在检索所请求的多媒体内容的一周期的 特定表示的数据之前检索及呈现目标广告媒体内容的数据。以此方式,用于多媒体内容 的清单文件的第一部分可涉及清单文件的第二部分。

在一些例子中,用户可能希望以不同于从开始到结束的方式播放视频数据。举例来 说,用户可能希望以快进或倒转模式或从特定重放点开始而播放视频数据。这些视频重 放模式(其为不同于从开始到结束播放的模式)可被称作“特技模式”。在特技模式中,因 为最终将不会播放所有视频数据,所以不需要检索视频数据的全部。本发明还提供用于 支持特技模式的技术。举例来说,内容准备装置可提供用于特技模式的视频数据中的帧 (例如,瞬时解码器刷新(IDR)图片)的字节范围位置的指示。一般来说,可在不参考在IDR 图片自身外部的任何帧的数据的情况下解码IDR图片。通常在帧内预测模式中译码IDR 图片的帧或切片,以避免对其它帧或切片的相依性。以此方式,客户端装置可检索指示 IDR图片的位置的信息以仅下载用于在特技模式(例如,快进)中显示视频数据的IDR图 片的数据。其它数据也可包括于时间子序列中。可以译码次序布置数据,使得用于参考 的数据早于参考数据而出现(且与参考数据呈连续字节顺序)。举例来说,I帧可先于P 帧,P帧可前进一个或一个以上B帧,一个或一个以上B帧中的任一者或全部可先于可 以阶层方式参考较早B帧的其它B帧。

在一些实例中,例如MPD等清单文件可能需要不定期更新。本发明还提供用于发 信号及接收MPD需要更新的指示的技术。特定来说,内容准备装置可包括指示对应MPD 需要更新的表示的区段中的数据。此数据可对应于区段的初始元素,其可指示待施加到 MPD的更新及/或可供客户端装置检索对MPD的更新的位置。更新可包含相对于用于多 媒体内容的先前MPD的全新MPD或增量更新。

本发明进一步包括用于将反馈从客户端装置提供到服务器装置及/或内容准备装置 的技术。反馈可对应于(例如)指示经检索用于多媒体内容的数据的信息。内容准备装置 及/或服务器的管理者或其它用户可以多种方式使用此信息。举例来说,用户可配置内容 递送网络(CDN)以高速缓冲存储CDN的代理装置(例如,路由器或其它装置)中的被较频 繁存取的表示的数据。作为另一实例,用户可确定被较频繁存取的表示以确定应将某些 表示添加到当前多媒体内容还是从当前多媒体内容移除某些表示,及/或如何编码未来多 媒体内容的表示。

例如媒体内容的表示的区段等视频文件可符合根据ISO基础媒体文件格式、可缩放 视频译码(SVC)文件格式、高级视频译码(AVC)文件格式、第三代合作伙伴计划(3GPP) 文件格式及/或多视图视频译码(MVC)文件格式或其它相似视频文件格式中任一者而封 装的视频数据。

ISO基础媒体文件格式经设计成含有用于呈灵活可扩展格式的呈现的经计时媒体信 息,所述格式促进媒体的互换、管理、编辑及呈现。在定义用于以时间为基础的媒体文 件的一般结构的MPEG-4第12部分中指定ISO基础媒体文件格式(ISO/IEC 14496-12:2004)。ISO基础媒体文件格式用作例如针对H.264/MPEG-4AVC视频压缩的 AVC文件格式(ISO/IEC14496-15)定义支持、3GPP文件格式、SVC文件格式及MVC文 件格式等系列中的其它文件格式的基础。3GPP文件格式及MVC文件格式为AVC文件 格式的扩展。ISO基础媒体文件格式含有用于媒体数据的经计时序列(例如,视听呈现) 的时序、结构及媒体信息。文件结构可为面向对象的。可极简单地将一文件分解为基础 对象,且根据所述对象的类型暗示所述对象的结构。

符合ISO基础媒体文件格式(及其扩展)的文件可形成为被称为“盒(box)”的一系列 对象。呈ISO基础媒体文件格式的数据可含于盒中,使得其它数据无需含于文件内且在 文件内的盒外部无需存在数据。这包括特定文件格式所需要的任何初始签名。“盒”可 为通过唯一类型识别符及长度定义的面向对象的建置块。通常,一个文件中含有一呈现, 且媒体呈现为自含式的。电影容器(电影盒)可含有媒体的元数据,且视频帧及音频帧可 含于媒体数据容器中且可在其它文件中。

一表示(运动序列)可含于若干文件(有时被称作区段)中。时序及成帧(位置及大小)信 息通常在ISO基础媒体文件中,且辅助文件可基本上使用任何格式。此呈现可在含有所 述呈现的系统“本地”,或可经由网络或其它串流递送机制而提供。

可使用任选的元数据轨道以用每一轨道所具有的“令人感兴趣的特性”来标记所述 轨道,对于所述“令人感兴趣的特性”,所述轨道的值可不同于群组的其它成员(例如, 其位速率、屏幕大小或语言)。轨道内的一些样本可具有特殊特性或可被个别地识别。特 性的一个实例为同步点(常常为视频I帧)。这些点可通过每一轨道中的特殊表来识别。 更一般化地,还可使用元数据来记载轨道样本之间的相依性的本质。元数据可结构化为 文件格式样本序列,正如视频轨道一样。此轨道可被称作元数据轨道。每一元数据样本 可结构化为一元数据语句。存在对应于各种问题的各种类别的语句,所述问题可能询问 对应文件格式样本或其构成样本。

当经由串流传输协议而递送媒体时,可能需要根据媒体在文件中被表示的方式来变 换媒体。此情形的一个实例为当经由实时输送协议(RTP)而发射媒体时。举例来说,在 文件中,视频的每一帧相连地存储为文件格式样本。在RTP中,必须遵守为所使用的编 解码器所特有的包化规则以将这些帧置放于RTP包中。串流传输服务器可经配置以在运 行时间计算此包化。然而,存在对串流传输服务器的辅助的支持。

本发明的技术可适用于(例如)根据经由HTTP的动态自适应串流传输(DASH)的网络 串流传输协议,例如,HTTP串流传输。在HTTP串流传输中,常用操作包括GET及部 分GET。GET操作检索所关联的整个文件:给定统一资源定位符(URL)或其它识别符(例 如,URI)。部分GET操作接收字节范围作为输入参数且检索文件的对应于所接收字节 范围的数个连续字节。因此,可提供电影片段以用于HTTP串流传输,这是因为部分 GET操作可得到一个或一个以上个别电影片段。应注意,在电影片段中,可存在不同轨 道的若干轨道片段。在HTTP串流传输中,媒体表示可为客户端可存取的结构化数据集。 客户端可请求及下载媒体数据信息以向用户呈现串流传输服务。

在使用HTTP串流传输来串流传输3GPP数据的实例中,可存在用于多媒体内容的 视频及/或音频数据的多个表示。这些表示的清单可以媒体呈现描述(MPD)数据结构来定 义。媒体表示可对应于HTTP串流传输客户端装置可存取的结构化数据集。HTTP串流 传输客户端装置可请求及下载媒体数据信息以向客户端装置的用户呈现串流传输服务。 媒体表示可以可包括MPD的更新的MPD数据结构来描述。

多媒体内容可含有一个或一个以上周期的序列。周期可通过MPD中的Period元素 来定义。每一周期可具有在MPD中的一属性start。MPD可包括针对每一周期的start 属性及availableStartTime属性。对于实况服务,周期的start属性与MPD属性 availableStartTime的总和可指定呈UTC格式的周期的可用性时间,尤其是在对应周期中 每一表示的第一媒体区段。对于按需服务,第一周期的start属性可为0。对于任何其它 周期,start属性可指定对应周期的开始时间相对于第一周期的开始时间之间的时间偏 移。每一周期可延伸直到下一周期的开始为止,或在最后周期的状况下直到媒体呈现的 结束为止。周期开始时间可为精确的。其可反映由播放所有先前周期的媒体引起的实际 时序。

每一周期可含有用于同一媒体内容的一个或一个以上表示。一表示可为音频或视频 数据的数个替代经编码版本中的一者。表示可通过各种特性(例如,编码类型)而不同, 例如,通过用于视频数据的位速率、分辨率及/或编解码器以及用于音频数据的位速率、 语言及/或编解码器而不同。术语“表示”可用以指代对应于多媒体内容的特定周期且以 特定方式编码的经编码音频或视频数据的区。

可将特定周期的表示指派到一群组,所述群组可通过MPD中的group属性指示。 同一群组中的表示通常被视为彼此的替代例。举例来说,可将针对特定周期的视频数据 的每一表示指派到同一群组,使得所述表示中任一者可经选择以供解码以显示对应周期 的多媒体内容的视频数据。在一个周期内的媒体内容可通过来自群组0(如果存在)的一 个表示来表示,或在一些实例中通过来自每一非零群组的至多一个表示的组合来表示。 可相对于一周期的开始时间来表达用于所述周期的每一表示的时序数据。

一表示可包括一个或一个以上区段。每一表示可包括一初始化区段,或一表示的每 一区段可为自初始化的。当存在时,初始化区段可含有用于存取表示的初始化信息。一 般来说,初始化区段不含有媒体数据。可通过例如统一资源定位符(URL)等识别符来唯 一地参考一区段。MPD可提供用于每一区段的识别符。在一些实例中,MPD还可提供 呈range属性的形式的字节范围,range属性可对应于用于可通过URL或URI存取的文 件内的区段的数据。

每一表示还可包括一个或一个以上媒体分量,其中每一媒体分量可对应于一个个别 媒体类型(例如,音频、视频及/或经计时文本(例如,用于隐藏式字幕))的一经编码版本。 媒体分量可横跨在一个表示内的连续媒体区段的边界为时间连续的。

图1为说明实施用于经由网络而串流传输媒体数据的技术的实例系统10的框图。 在此实例中,系统10包括内容准备装置20、服务器装置60及客户端装置40。客户端 装置40及服务器装置60是通过可包含因特网的网络74而以通信方式耦合。在一些实 例中,内容准备装置20及服务器装置60还可通过网络74或另一网络耦合,或可直接 以通信方式耦合。在一些实例中,内容准备装置20及服务器装置60可包含同一装置。

在图1的实例中,内容准备装置20包含音频源22及视频源24。音频源22可包含(例 如)产生表示待由音频编码器26编码的所俘获音频数据的电信号的麦克风。或者,音频 源22可包含存储先前记录的音频数据的存储媒体、例如计算机化合成器等音频数据产 生器,或任何其它音频数据源。视频源24可包含产生待由视频编码器28编码的视频数 据的摄像机、经编码有先前记录的视频数据的存储媒体、例如计算机图形源等视频数据 产生单元,或任何其它视频数据源。内容准备装置20未必在所有实例中都以通信方式 耦合到服务器装置60,但可将多媒体内容存储到由服务器装置60读取的单独媒体。

原始音频及视频数据可包含模拟或数字数据。模拟数据可在由音频编码器26及/或 视频编码器28编码之前被数字化。音频源22可在讲话参与者正在讲话的同时从讲话参 与者获得音频数据,且视频源24可同时获得讲话参与者的视频数据。在其它实例中, 音频源22可包含计算机可读存储媒体,所述计算机可读存储媒体包含存储的音频数据, 且视频源24可包含计算机可读存储媒体,所述计算机可读存储媒体包含存储的视频数 据。以此方式,本发明中所描述的技术可应用于实况、串流传输、实时音频及视频数据, 或应用于经归档的预记录的音频及视频数据。

对应于视频帧的音频帧通常为含有由音频源22俘获的音频数据的音频帧,所述音 频数据是与含于所述视频帧内的由视频源24俘获的视频数据同时被俘获。举例来说, 当讲话参与者通常通过讲话而产生音频数据时,音频源22俘获音频数据,且视频源24 同时(即,在音频源22正在俘获音频数据的同时)俘获讲话参与者的视频数据。因此,音 频帧可在时间上对应于一个或一个以上特定视频帧。因此,对应于视频帧的音频帧通常 对应于如下情形:在所述情形中,同时俘获音频数据及视频数据,且对于所述情形,音 频帧及视频帧分别包含同时俘获的音频数据及视频数据。

在一些实例中,音频编码器26可将表示用于经编码音频帧的音频数据被记录的时 间的时戳编码于每一经编码音频帧中,且相似地,视频编码器28可将表示用于经编码 视频帧的视频数据被记录的时间的时戳编码于每一经编码视频帧中。在这些实例中,对 应于视频帧的音频帧可包含:包含时戳的音频帧,及包含同一时戳的视频帧。内容准备 装置20可包括一内部时钟,音频编码器26及/或视频编码器28可从所述内部时钟产生 时戳,或音频源22及视频源24可使用所述内部时钟来分别使音频数据及视频数据与时 戳相关联。

在一些实例中,音频源22可将对应于音频数据被记录的时间的数据发送到音频编 码器26,且视频源24可将对应于视频数据被记录的时间的数据发送到视频编码器28。 在一些实例中,音频编码器26可对经编码音频数据中的序列识别符进行编码以指示经 编码音频数据的相对时间排序,但未必指示音频数据被记录的绝对时间,且相似地,视 频编码器28也可使用序列识别符来指示经编码视频数据的相对时间排序。相似地,在 一些实例中,序列识别符可被映射或以其它方式与时戳相关。

音频编码器26通常产生经编码音频数据的串流,而视频编码器28产生经编码视频 数据的串流。数据(无论是音频还是视频)的每一个别串流可被称作基本串流。基本串流 是表示的单一经数字译码(可能经压缩)分量。举例来说,表示的经译码视频或音频部分 可为基本串流。基本串流可在经封装于视频文件内之前转换为经包化基本串流(PES)。 在同一表示内,串流ID可用以区别属于一个基本串流的PES包与属于另一基本串流的 PES包。基本串流的基础数据单元为经包化基本串流(PES)包。因此,经译码视频数据通 常对应于基本视频串流。相似地,音频数据对应于一个或一个以上相应基本串流。

如同许多视频译码标准一样,H.264/AVC定义用于无错误位流的语法、语义及解码 过程,所述无错误位流中的任一者符合某一简档或等级。H.264/AVC不指定编码器,但 编码器的任务是保证所产生的位流对于解码器是顺应标准的。在视频译码标准的上下文 中,“简档”对应于算法、特征或工具及施加到算法、特征或工具的约束的子集。举例 来说,如通过H.264标准所定义,“简档”为由H.264标准指定的整个位流语法的子集。 “等级”对应于例如(例如)解码器存储器及计算等解码器资源消耗的限制,所述限制与图 片的分辨率、位速率及宏块(MB)处理速率有关。简档可以profile_idc(简档指示符)值来 以信号表示,而等级可以level_idc(等级指示符)值来以信号表示。

举例来说,H.264标准认识到,在通过给定简档的语法强加的界限内,取决于由位 流中的语法元素采取的值(例如,经解码图片的指定大小),仍有可能需要编码器及解码 器的性能的大变化。H.264标准进一步认识到,在许多应用中,实施能够处理在特定简 档内的语法的所有假设使用的解码器既不实际也不经济。因此,H.264标准将“等级” 定义为强加于位流中的语法元素的值上的指定约束集合。这些约束可为对值的简单限 制。或者,这些约束可采取对值的算术组合(例如,图片宽度乘以图片高度乘以每秒解码 的图片的数目)的约束的形式。H.264标准进一步规定,个别实施方案可支持针对每一受 支持简档的不同等级。

符合一简档的解码器通常支持所述简档中所定义的所有特征。举例来说,作为译码 特征,B图片译码在H.264/AVC的基线简档中未受到支持,但在H.264/AVC的其它简档 中受到支持。符合一等级的解码器应能够解码不需要超出所述等级中所定义的限制的资 源的任何位流。简档及等级的定义可有助于解译能力。举例来说,在视频发射期间,可 针对整个发射会话而协商及同意一对简档及等级定义。更具体来说,在H.264/AVC中, 等级可定义(例如)对需要处理的宏块的数目、经解码图片缓冲器(DPB)大小、经译码图片 缓冲器(CPB)大小、垂直运动向量范围、每两个连续MB的运动向量的最大数目及B块 是否可具有小于8x8像素的子宏块分割区的限制。以此方式,解码器可确定解码器是否 能够适当地解码位流。

例如ITU-T H.261、H.262、H.263、MPEG-1、MPEG-2、H.264/MPEG-4第10部分 及即将出现的高效率视频译码(HEVC)标准等视频压缩标准利用运动补偿时间预测来减 少时间冗余。例如视频编码器28的编码器可使用来自一些先前经编码图片(本文中也被 称作帧)的动作补偿预测根据运动向量来预测当前经译码图片。在典型视频译码中存在三 种主要图片类型。其为经帧内译码图片(“I图片”或“I帧”)、预测图片(“P图片”或 “P帧”)及双向预测图片(“B图片”或“B帧”)。P图片可使用按时间次序在当前图片 之前的参考图片。在B图片中,可从一个或两个参考图片预测B图片的每一块。这些参 考图片可按时间次序位于当前图片之前或之后。

参数集通常含有在序列参数集(SPS)中的序列层标头信息及在图片参数集(PPS)中的 很少改变的图片层标头信息。在参数集的情况下,不需要针对每一序列或图片重复此很 少改变的信息;因此,可改善译码效率。另外,参数集的使用可使得能够进行标头信息 的带外发射,从而避免需要冗余发射来实现错误恢复。在带外发射中,参数集NAL单 元是在不同于其它NAL单元的信道上发射。

在图1的实例中,内容准备装置20的封装单元30从视频编码器28接收包含经译 码视频数据的基本串流且从音频编码器26接收包含经译码音频数据的基本串流。在一 些实例中,视频编码器28及音频编码器26可各自包括用于由经编码数据形成PES包的 包化器。在其它实例中,视频编码器28及音频编码器26可各自与用于由经编码数据形 成PES包的相应包化器介接。在再其它实例中,封装单元30可包括用于由经编码音频 及视频数据形成PES包的包化器。

视频编码器28可以多种方式编码多媒体内容的视频数据,以在各种位速率下且通 过各种特性(例如,像素分辨率、帧速率、对各种译码标准的符合性、对用于各种译码标 准的各种简档及/或简档等级的符合性、具有一个或多个视图的表示(例如,针对二维或 三维重放),或其它这些特性)产生多媒体内容的不同表示。如本发明中所使用,一表示 可包含音频数据与视频数据的组合,例如,一个或一个以上音频基本串流及一个或一个 以上视频基本串流。每一PES包可包括识别所述PES包所属的基本串流的stream id。 封装单元30负责将基本串流组装为各种表示的视频文件。

封装单元30从音频编码器26及视频编码器28接收用于表示的基本串流的PES包 且由PES包形成对应的网络抽象层(NAL)单元。在H.264/AVC(高级视频译码)的实例中, 将经译码视频区段组织为NAL单元,NAL单元提供处理例如视频电话、存储、广播或 串流传输等应用的“网络友好”视频表示。可将NAL单元分类为视频译码层(VCL)NAL 单元及非VCL NAL单元。VCL单元可含有核心压缩引擎且可包括块、宏块及/或切片等 级数据。其它NAL单元可为非VCL NAL单元。在一些实例中,在一个时间实例中的经 译码图片(通常呈现为主要经译码图片)可含于可包括一个或一个以上NAL单元的存取 单元中。

非VCL NAL单元可尤其包括参数集NAL单元及SEI NAL单元。参数集可含有序 列等级标头信息(序列参数集(SPS)中)及很少改变的图片等级标头信息(图片参数集(PPS) 中)。在参数集(例如,PPS及SPS)的情况下,不需要针对每一序列或图片重复很少改变 的信息,因此可改善译码效率。另外,参数集的使用可使得能够进行重要标头信息的带 外发射,从而不需要冗余发射来实现错误恢复。在带外发射实例中,参数集NAL单元 相比于例如SEI NAL单元等其它NAL单元可在不同信道上发射。

补充增强信息(SEI)可含有对于解码来自VCLNAL单元的经译码图片样本来说并非 必要但是可辅助与解码、显示、错误恢复及其它目的有关的过程的信息。SEI消息可含 于非VCL NAL单元中。SEI消息是一些标准规范的正规部分,且因此对于顺应标准的 解码器实施方案并非总是强制的。SEI消息可为序列等级SEI消息或图片等级SEI消息。 一些序列等级信息可含于SEI消息中,例如,在SVC的实例中的可缩放性信息SEI消 息,及在MVC中的视图可缩放性信息SEI消息。这些实例SEI消息可传达关于(例如) 操作点的提取及操作点的特性的信息。另外,封装单元30可形成清单文件,例如,描 述表示的特性的媒体呈现描述符(MPD)。封装单元30可根据可扩展标记语言(XML)而格 式化MPD。

封装单元30可将用于多媒体内容的一个或一个以上表示的数据连同清单文件(例 如,MPD)一起提供到输出接口32。输出接口32可包含网络接口或用于向存储媒体进行 写入的接口,例如,通用串行总线(USB)接口、CD或DVD写入器或烧录器,到磁性或 快闪存储媒体的接口,或用于存储或发射媒体数据的其它接口。封装单元30可将多媒 体内容的表示中每一表示的数据提供到输出接口32,输出接口32可经由网络发射或存 储媒体而将数据发送到服务器装置60。在图1的实例中,服务器装置60包括存储各种 多媒体内容64的存储媒体62,每一多媒体内容64包括一相应清单文件66及一个或一 个以上表示68A到68N(表示68)。根据本发明的技术,清单文件66的部分可存储于单 独位置(例如,存储媒体62或另一存储媒体(潜在地,网络74的另一装置(例如,代理装 置)的另一存储媒体)的位置)中。

在一些实例中,表示68可被分离为表示群组。即,表示68的各种子集可包括相应 的共同特性集合,例如,编解码器、简档及等级、分辨率、视图的数目、用于区段的文 件格式、可识别待用表示显示的文本及/或待(例如)由讲话者解码及呈现的音频数据的语 言或其它特性的文本类型信息、可描述用于表示群组中的表示的场景的相机角度或真实 世界相机视角的相机角度信息、描述针对特定视听者的内容合适性的分级信息,或其类 似者。

清单文件66可包括指示对应于特定表示群组的表示68的子集以及表示群组的共同 特性的数据。清单文件66还可包括表示针对表示群组的个别表示的个别特性(例如,位 速率)的数据。以此方式,表示群组可提供简化的网络带宽适应。可使用清单文件66的 表示群组元素的子代元素来指示表示群组中的表示。

清单文件66还可(即,另外或替代地)以信号表示用于表示68中的一者或一者以上 的特技模式信息。在一些实例中,表示68中的一者或一者以上可包括用于特技模式支 持的相应时间子序列。特技模式通常对应于用于一表示的重放模式,其中所述表示的数 据并非是从开始到结束进行播放,而是可在指定时间位置处开始(例如,以允许搜寻到特 定时间位置),或在前向或反向时间方向上跳过一个或一个以上帧(例如,快进或倒转)。

为了提供特技模式,多媒体内容64可包括表示用于对应表示68的时间子序列的数 据的位置的信息。在一些实例中,清单文件66可包括表示用于时间子序列的数据的位 置的信息。在其它实例中,表示68自身可包括表示用于时间子序列的数据的位置的信 息。在再其它实例中,表示68及清单文件66均可包括表示用于时间子序列的数据的位 置的信息。

在一些实例中,内容准备装置20可在媒体内容正被记录(例如,用于实况服务)时准 备媒体内容。在一些状况下,封装单元30可能需要周期性地更新用于媒体内容的清单 文件。封装单元30甚至可在媒体内容的特定周期内更新清单文件。根据本发明的技术, 封装单元30可形成一表示的包括指示清单文件待更新的数据的区段。封装单元30可在 区段自身中或在单独位置中提供更新,客户端装置(例如,客户端装置40)可从所述单独 位置检索对清单文件的更新。以此方式,当需要在多媒体内容64的特定周期内更新清 单文件66时,封装单元30可形成表示68中的一者或一者以上的指示清单文件66待更 新的区段。

在一些实例中,清单文件66可包括用于在重放期间将远程周期的数据插入到多媒 体内容64中的数据。举例来说,内容准备装置20可准备一个或一个以上单独广告媒体 内容以在重放期间并入到多媒体内容64中,而非在多媒体内容64内编码广告。在一些 实例中,客户端装置40可提供用户特定信息,使得广告可以客户端装置40的用户为目 标,使得客户端装置40的用户接收对于用户最优选且信息充足的广告。响应于用户信 息集合,服务器装置60可将清单文件的目标广告部分提供到客户端装置40,此情形可 使客户端装置40检索目标广告多媒体内容的数据。以此方式,同一多媒体内容64的两 个或两个以上观看者可接收到不同的目标广告,使得所述广告对于用户最相关且有用。

服务器装置60包括请求处理单元70及网络接口72。在一些实例中,服务器装置 60可包括多个网络接口。另外,服务器装置60的特征中任一者或全部可实施于内容递 送网络的其它装置(例如,路由器、桥接器、代理装置、交换机或其它装置)上。在一些 实例中,内容递送网络的中间装置可高速缓冲存储多媒体内容64的数据,且包括大体 上符合服务器装置60的组件的组件。一般来说,网络接口72经配置以经由网络74发 送及接收数据。

请求处理单元70经配置以从客户端装置(例如,客户端装置40)接收针对存储媒体 72的数据的网络请求。举例来说,请求处理单元70可实施如RFC2616(1999年6月, IETF,网络工作群组,R·菲尔丁(R.Fielding)等人的“超文本传送协议HTTP/1.1”)中 所描述的超文本传送协议(HTTP)版本1.1。即,请求处理单元70可经配置以接收HTTP GET或部分GET请求且响应于所述请求而提供多媒体内容64的数据。请求可(例如)使 用表示68中的一者的区段的URL来指定所述区段。在一些实例中,请求还可指定区段 的一个或一个以上字节范围,因此包含部分GET请求。请求处理单元70可进一步经配 置以服务于HTTP HEAD请求以提供表示68中的一者的区段的标头数据。在任何状况 下,请求处理单元70均可经配置以处理请求以将所请求的数据提供到请求装置(例如, 客户端装置40)。

如图1的实例中所说明,多媒体内容64包括可对应于媒体呈现描述(MPD)的清单文 件66。清单文件66可含有不同替代表示68(例如,具有不同质量的视频服务)的描述, 且描述可包括(例如)编解码器信息、简档值、等级值、位速率,及表示68的其它描述性 特性。客户端装置40可检索媒体呈现的MPD以确定如何存取表示68的区段。

特定来说,网络应用程序52可检索客户端装置40的配置数据(未图示)以确定视频 解码器48的解码能力及视频输出44的再现能力。配置数据还可包括由客户端装置40 的用户所选择的语言偏好、对应于由客户端装置40的用户所设定的深度偏好的一个或 一个以上相机视角及/或由客户端装置40的用户所选择的分级偏好中的任一者或全部。 网络应用程序52可包含(例如)经配置以提交HTTP GET及部分GET请求的网络浏览器 或媒体客户端。网络应用程序52可对应于由客户端装置40的一个或一个以上处理器或 处理单元(未图示)执行的软件指令。在一些实例中,关于网络应用程序52所描述的功能 性的全部或部分可实施于硬件或硬件、软件及/或固件的组合中,其中可提供必需硬件以 执行用于软件或固件的指令。

网络应用程序52可比较客户端装置40的解码及再现能力与由清单文件66的信息 指示的表示68的特性。网络应用程序52可起初检索清单文件66的至少一部分以确定 表示68的特性。举例来说,网络应用程序52可根据本发明的技术而请求描述一个或一 个以上表示群组的特性的清单文件66的一部分。网络应用程序52可选择具有可通过客 户端装置40的译码及再现能力满足的特性的表示68的子集(例如,表示群组)。网络应 用程序52可接着确定表示群组中的表示的位速率、确定网络带宽的当前可用量,且从 具有可通过网络带宽满足的位速率的表示中的一者检索区段。

一般来说,较高位速率表示可得到较高质量视频重放,而较低位速率表示可在可用 网络带宽缩减时提供足够质量视频重放。因此,当可用网络带宽相对高时,网络应用程 序52可从相对高位速率表示检索数据,而当可用网络带宽低时,网络应用程序52可从 相对低位速率表示检索数据。以此方式,客户端装置40可经由网络74而串流传输多媒 体数据,同时还适应于网络74的改变的网络带宽可用性。

如上文所指出,在一些实例中,客户端装置40可将用户信息提供到(例如)服务器装 置60或内容递送网络的其它装置。举例来说,网络应用程序52可收集用户识别符、用 户识别符、用户偏好及/或用户人口统计信息,且将此用户信息提供到服务器装置60。 网络应用程序52可接着接收与目标广告媒体内容相关联的清单文件,以用以在重放期 间将来自目标广告媒体内容的数据插入到所请求的媒体内容的媒体数据中。

有时,客户端装置40的用户可使用客户端装置40的用户接口(例如,键盘、鼠标、 手写笔、触控屏接口、按钮或其它接口)与网络浏览器52互动,以请求在特技模式中播 放表示68中的选定一者。举例来说,用户可选择供开始重放的特定时间位置,或跳过 或搜寻到特定时间位置。作为另一实例,用户可选择快进或倒转表示。

响应于来自用户的这些请求,网络应用程序52可确定表示68中的一者是否包括时 间子序列,以执行所请求的特技模式。作为一实例,用户可选择在快进模式中播放视频 数据。网络应用程序52可确定对应于一表示的时间子序列的所述表示的数据的位置, 而非检索所述表示的区段的所有数据。时间子序列的数据可对应于(例如)表示的瞬时解 码器刷新(IDR)图片集合。

可在表示的IDR图片之间存在近似时间持续时间,例如,2秒、10秒,或其它近似 时间持续时间。此外,可在帧内预测模式中编码IDR图片,且因此,网络应用程序52 不需要检索除IDR图片外的数据。网络应用程序52可使IDR图片以表示的视频数据原 本将被显示的相同帧速率进行显示。然而,因为可跳过在IDR图片之间的许多数据帧, 所以可以增加的帧速率重放所得视频数据,因此实现所要特技模式。

网络应用程序52可使用各种技术来确定用于时间子序列的数据的位置。在一些实 例中,网络应用程序52可分析清单文件66的数据以确定IDR图片的位置。可使用在特 定表示的区段内的字节范围来指示IDR图片的位置。在其它实例中,例如子片段索引盒 (也被称作子区段索引盒)的表示的区段的特定盒可提供用于时间子序列的数据的位置的 指示。举例来说,子片段索引盒可包括表示针对对应区段内的IDR图片的字节范围的数 据。在再其它实例中,清单文件66及表示68均可包括由网络应用程序52使用以检索 时间子序列的数据的信息。在任何状况下,网络应用程序52均可确定区段中的IDR图 片的字节范围以建构针对IDR图片的部分GET请求,以避免检索将不用于解码或显示 的数据。

在一些实例中,封装单元30可形成区段,使得IDR图片在所述区段内相连。即, 封装单元30可确保对应于IDR图片的区段的字节相连,而不介入用于其它类型的图片 的字节。以此方式,网络应用程序52仅需要指定一表示的区段的单一字节范围以检索 用于所述表示的时间子序列的数据。在一些实例中,开放解码器刷新(ODR)图片也可用 于执行特技模式。

在一些实例中,网络应用程序52可确定接收的区段的一部分指示清单文件待更新。 网络应用程序52可经配置以分析每一区段的特定部分(例如,区段的标头部分或其它初 始部分),以确定区段是否指示清单文件待更新。当区段指示清单文件待更新时,网络应 用程序52可使用区段的数据或通过从远程位置(例如,从服务器60)检索用以更新清单 文件的数据来更新清单文件的本地存储的副本。在更新清单文件之后,网络应用程序52 可基于经更新清单文件的数据而提交针对表示68的数据的未来请求。

作为一实例,内容准备装置20可编码实况媒体数据,例如,实况体育运动事件、 政治事件,或通常实况或近实况广播而非预记录的其它有新闻价值的事件。在这些状况 下,对应于直到一特定时间的媒体数据的区段可被指派包括于初始清单文件中的识别 符,例如,URL。然而,在一时段已过去之后,在所述特定时间之后的区段可经编码且 被指派例如URL的识别符。内容准备装置20的封装单元30可将用于在特定时间之后 的区段的URL提供到经更新清单文件。因此,为了确定如何检索在特定时间之后的区 段,客户端装置40可接收指示经更新清单文件的信息,以便建构对检索在特定时间之 后的区段的请求。

在一些实例中,区段可指示其是否为表示的最后区段。当区段为表示的最后区段时, 可能需要检索新清单文件以确定对应多媒体内容的后续周期的表示。因此,当网络应用 程序52确定区段为在多媒体内容的一周期中的表示的最后区段时,网络应用程序52可 检索用于多媒体内容的经更新清单文件,例如,多媒体内容64的清单文件66的经更新 版本。

在一些实例中,客户端装置40可维持指示特定表示68的数据结构,客户端装置40 从所述特定表示68请求用于多媒体内容64的数据。客户端装置40还可维持确切地播 出何内容且在何时间播出的指示。即,数据结构可提供以真实(或“壁钟”)时间及呈现 时间来表示开始及结束时间的信息。数据结构可进一步提供表示初始起动时间及重放的 开始的信息。在完成多媒体内容64的重放之后,客户端装置40可将数据结构发送到服 务器装置60及/或内容准备装置20。服务器装置60及/或内容准备装置20可使用从客户 端装置40接收的信息来确定改善体验质量的更佳方式,例如,在重放时减少暂停。

网络接口54可接收选定表示的区段的数据且将其提供到网络应用程序52,网络应 用程序52又可将区段提供到解封装单元50。解封装单元50可将视频文件的元素解封装 为构成PES串流、解包化PES串流以检索经编码数据,且取决于经编码数据是音频还 是视频串流的部分(例如,由串流的PES包标头所指示)而将经编码数据发送到音频解码 器46或视频解码器48。音频解码器46解码经编码音频数据且将经解码音频数据发送到 音频输出42,而视频解码器48解码经编码视频数据且将可包括串流的多个视图的经解 码视频数据发送到视频输出44。

视频编码器28、视频解码器48、音频编码器26、音频解码器46、封装单元30、网 络应用程序52及解封装单元50在适用时各自可实施为多种合适处理电路中任一者,例 如,一个或一个以上微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可 编程门阵列(FPGA)、离散逻辑电路、软件、硬件、固件或其任何组合。视频编码器28 及视频解码器48中的每一者可包括于一个或一个以上编码器或解码器中,其中任一者 可经集成为组合式视频编码器/解码器(CODEC)的部分。同样地,音频编码器26及音频 解码器46中的每一者可包括于一个或一个以上编码器或解码器中,其中任一者可经集 成为组合式CODEC的部分。包括视频编码器28、视频解码器48、音频编码器音频编码 器26、音频解码器46、封装单元30、网络应用程序52及/或解封装单元50的设备可包 含集成电路、微处理器及/或无线通信装置,例如,蜂窝式电话。

图2为说明实例多媒体内容100的元素的概念图。多媒体内容100可对应于多媒体 内容64(图1),或存储于存储器62中的另一多媒体内容。在图2的实例中,多媒体内 容100包括媒体呈现描述(MPD)102及多个表示110到120。表示110包括任选的标头 数据112及区段114A到114N(区段114),而表示120包括任选的标头数据122及区段 124A到124N(区段124)。为了方便起见,字母N用以指明在表示110、120中的每一者 中的最后电影片段。在一些实例中,在表示110、120之间可存在不同数目个电影片段。

MPD102可包含与表示110到120分离的数据结构。MPD102可对应于图1的清单 文件66。同样地,表示110到120可对应于图1的表示68。一般来说,MPD102可包 括如下数据:所述数据通常描述表示110到120的特性,例如,译码及再现特性、表示 群组、MPD102所对应的简档、文本类型信息、相机角度信息、分级信息、特技模式信 息(例如,指示包括时间子序列的表示的信息),及/或用于检索远程周期(例如,用于在重 放期间将目标广告插入到媒体内容中)的信息。远程周期还可被称作外部周期。下文更详 细地论述的图4到7说明多媒体内容的各种实例,其中各种元素包括于MPD及/或表示 中的任一者或此两者中(例如,在表示的区段内或表示的标头数据内)。图4到7的MPD 中的任一者或全部均可大体上对应于图2的MPD102。

标头数据112(当存在时)可描述区段114的特性,例如,随机存取点的时间位置、 区段114中的哪一者包括随机存取点、在区段114内到随机存取点的字节偏移、区段114 的统一资源定位符(URL),或区段114的其它方面。标头数据122(当存在时)可描述区段 124的相似特性。另外或替代地,这些特性可完全地包括于MPD102内。

区段114包括一个或一个以上经译码视频样本,所述一个或一个以上经译码视频样 本中的每一者可包括视频数据的帧或切片。区段114的经译码视频样本中的每一者可具 有相似特性,例如,高度、宽度及带宽要求。这些特性可由MPD102的数据描述,但 此数据在图2的实例中未说明。MPD102可包括如由3GPP规范描述的特性,外加本发 明中所描述的以信号表示的信息中的任一者或全部。

区段114、124中的每一者可与唯一统一资源识别符(URI)(例如,统一资源定位符 (URL))相关联。因此,可使用串流传输网络协议(例如,DASH)独立地检索区段114、124 中的每一者。以此方式,例如客户端装置40等目的地装置可使用HTTP Get请求来检索 区段114或124。在一些实例中,客户端装置40可使用HTTP部分Get请求来检索区段 114或124的特定字节范围。

如上文所指出,MPD102可符合特定MPD简档。MPD102可包括指示用于MPD102 及/或多媒体内容100的多用途因特网邮件扩展(MIME)类型的信息。然而,MIME类型 通常不指示需要何种编解码器来呈现多媒体内容。一般来说,假定:如果一装置可检索 用于多媒体内容的MPD(例如,MPD102),则所述装置可重放对应于所述MPD的多媒 体内容的数据。然而,此假定可能并非总是安全的。因此,在一些实例中,MPD102可 包括指示MPD102所对应的简档的信息。

可存在MPD可对应的相对小数目个简档。简档可按等级受到支持以处理能力,相 似于H.264/AVC包括用于视频译码的简档及等级的方式。MPD简档可为洋葱壳式 (onion-shelled),因为较高简档可包括所有较低简档的所有特征。可存在具有注册各种简 档的注册权限的注册过程。在一些实例中,客户端装置(例如,客户端装置40)可经配置 以在检索MPD的其它数据(例如,由MPD102以信号表示的表示110到120的特性)之 前检索指示用于MPD(例如,MPD102)的简档的信息。以此方式,可在提供对MPD102 的存取之前以信号表示用于MPD102的简档。

可以纯文本(例如,纯名称)或颠倒域名(reversed domain name)提供简档识别符。纯 名称可由例如3GPP或另一注册权限等注册权限保留。简档可被视为主张及准许,因为 简档可主张对应多媒体内容符合所述简档,且准许实施所述简档的读取器(例如,客户端 装置)读取MPD、解译其所辨识的内容且忽略其不理解的材料。

简档可描述如下特性:例如(例如),MPD102的特征、网络的使用、媒体格式、所 使用的编解码器、保护格式及/或定量度量(例如,位速率、屏幕大小及其类似者)。以此 方式,MPD102的简档可提供指示需要支持哪些编解码器以便检索MPD102及/或多媒 体内容100的数据的信息。简档还可被描述为“符合性点(conformance point)”。MPD所 遵照的简档可在MPD的“简档(Profiles)”属性中指示。因此,客户端装置可经配置以 在检索MPD102的额外数据之前检索包括与“Profiles”属性有关的信息的MPD102的 部分。替代地,简档可被指示为MPD的MIME类型中的参数。举例来说,可以以下方 式以信号表示简档“X、Y及Z”:

video/vnd.mpeg.mpd;profiles=“X,Y,Z”。

在一些实例中,MPD102可参考外部周期(也被称作远程周期)的数据。周期通常对 应于多媒体内容的特定时间区。每一周期可包括一个或一个以上表示,例如,表示110 到120。然而,外部周期可插入于多媒体内容100的周期内或之间。外部周期可包括除 了多媒体内容的多媒体数据以外的多媒体数据。举例来说,外部周期可包括广告数据。

可通过周期的持续时间界定周期,即,周期的开始时间可取决于先前周期的持续时 间。客户端装置可将外部周期映射到MPD结构。对于实况服务,可通过以适当更新程 序在服务器(例如,服务器装置60)上动态地创建MPD来实现MPD的串连。还可使用其 它网络技术。可实时处理用于外部界定的周期的URL以产生含有以客户端装置40的用 户为目标的广告的新周期。客户端装置40可供应具有可用于广告目标的请求的额外信 息,例如,用户识别符、用户偏好、用户人口统计信息或其它信息。

以下表1说明可提供于MPD102中以描述多媒体内容的一个或一个以上周期且指 示外部周期的存在的实例信息集合:

表1-MPD周期信息

以此方式,MPD102的周期元素可(例如)使用periodListURI来指代外部(或远程)周 期。对于按需内容,周期持续时间的指示可比开始时间更有用于使客户端装置(例如,客 户端装置40)支持外部周期。一MPD可包括一周期序列,其中周期可为内部的或外部的。 使用这些远程周期连同用户特定信息可允许目标用户广告。服务器装置60及/或内容准 备装置20可经配置以动态地产生用于每一用户或用于每一客户端装置的单独MPD。客 户端装置40或另一装置可(例如)使用动态创建的MPD来串连目标广告及实况服务的播 出。

以此方式,本发明的技术可支持服务提供者经由3GPPAHS提供按需内容的情形。 所述内容可包括若干场景,且在每一场景之间可添加一广告。所述广告针对每一用户可 不同。即,可添加目标广告。另外,每一广告可具有一不同持续时间。同样地,服务提 供者可提供特定实况服务(例如,免费服务)。当存取实况服务时,服务提供者可添加可 能或可能不以用户为目标的广告。取决于存取时间、存取位置、用户及其类似者,广告 的持续时间可不同。服务器装置60可经配置以仅在已完成广告之后提供实况服务的 URL,以确保广告被看见。

图3为说明实例视频文件150的元素的框图,视频文件150可对应于表示的区段, 例如,图2的区段114、124中的一者。区段114、124中的每一者可包括大体上符合图 3的实例中所说明的数据布置的数据。相似地,下文所论述的图4到7的区段也可大体 上符合视频文件150的结构。如上文所描述,根据ISO基础媒体文件格式及其扩展的视 频文件将数据存储于被称作“盒”的一系列对象中。在图3的实例中,视频文件150包 括文件类型(FTYP)盒152、电影(MOOV)盒154、电影片段(MOOF)盒162,及电影片段 随机存取(MFRA)盒164。

文件类型(FTYP)盒152通常描述视频文件150的文件类型。文件类型盒152可包括 识别描述针对视频文件150的最佳使用的规范的数据。文件类型盒152可置放于MOOV 盒154、电影片段盒162及MFRA盒164之前。

在一些实例中,例如视频文件150等区段可包括位于FTYP盒152之前的MPD更 新盒(未图示)。MPD更新盒可包括指示对应于包括视频文件150的表示的MPD待更新 的信息,连同用于更新MPD的信息。举例来说,MPD更新盒可提供用于待用以更新 MPD的资源的URI或URL。作为另一实例,MPD更新盒可包括用于更新MPD的数据。 在一些实例中,MPD更新盒可紧接地跟随视频文件150的区段类型(STYP)盒(未图示), 其中STYP盒可定义视频文件150的区段类型。下文更详细地所论述的图7提供关于 MPD更新盒的额外信息。

在图3的实例中,MOOV盒154包括电影标头(MVHD)盒156、轨道(TRAK)盒158, 及一个或一个以上电影扩展(MVEX)盒160。一般来说,MVHD盒156可描述视频文件 150的一般特性。举例来说,MVHD盒156可包括描述最初何时创建视频文件150、最 后何时修改视频文件150、用于视频文件150的时标、用于视频文件150的重放持续时 间的数据,或一般地描述视频文件150的其它数据。

TRAK盒158可包括用于视频文件150的轨道的数据。TRAK盒158可包括描述对 应于TRAK盒158的轨道的特性的轨道标头(TKHD)盒。在一些实例中,TRAK盒158 可包括经译码视频图片,而在其它实例中,轨道的经译码视频图片可包括于可通过TRAK 盒158的数据参考的电影片段162中。

在一些实例中,视频文件150可包括一个以上轨道。因此,MOOV盒154可包括数 目等于视频文件150中的轨道的数目的TRAK盒。TRAK盒158可描述视频文件150的 对应轨道的特性。举例来说,TRAK盒158可描述用于对应轨道的时间及/或空间信息。 当封装单元30(图1)包括视频文件(例如,视频文件150)中的参数集轨道时,相似于 MOOV盒154的TRAK盒158的TRAK盒可描述参数集轨道的特性。封装单元30可用 信号表示在描述参数集轨道的TRAK盒内的参数集轨道中的序列等级SEI消息的存在。

MVEX盒160可描述对应电影片段162的特性,例如,以用信号表示如下情形:除 了包括于MOOV盒154内的视频数据(如果存在)以外,视频文件150还包括电影片段 162。在串流传输视频数据的上下文中,经译码视频图片可包括于电影片段162中,而 非包括于MOOV盒154中。因此,所有经译码视频样本均可包括于电影片段162中, 而非包括于MOOV盒154中。

MOOV盒154可包括数目等于视频文件150中的电影片段162的数目的MVEX盒 160。MVEX盒160中的每一者可描述电影片段162中的一对应电影片段的特性。举例 来说,每一MVEX盒可包括描述用于电影片段162中的所述对应电影片段的时间持续 时间的电影扩展标头盒(MEHD)盒。

如上文所指出,封装单元30可将序列数据集存储于不包括实际经译码视频数据的 视频样本中。视频样本通常可对应于存取单元,存取单元为在特定时间实例时经译码图 片的表示。在AVC的上下文中,经译码图片包括含有用以建构存取单元的所有像素的 信息的一个或一个以上VCL NAL单元,及其它相关联非VCL NAL单元(例如,SEI消 息)。因此,封装单元30可包括处于电影片段162的一者中的序列数据集,其可包括序 列等级SEI消息。封装单元30可进一步用信号表示序列数据集及/或序列等级SEI消息 的存在,如存在于MVEX盒160中的所述一个MVEX盒内的电影片段162中的一个电 影片段中,所述MVEX盒对应于电影片段162中的所述一个电影片段。

电影片段162可包括一个或一个以上经译码视频图片。在一些实例中,电影片段162 可包括一个或一个以上图片群组(GOP),其中每一者可包括数个经译码视频图片(例如, 帧或图片)。另外,如上文所描述,电影片段162可在一些实例中包括序列数据集。电影 片段162中的每一者可包括一电影片段标头盒(MFHD,图3中未图示)。MFHD盒可描 述对应电影片段的特性,例如,电影片段的序列号。电影片段162可按序列号的次序包 括于视频文件150中。

MFRA盒164可描述视频文件150的电影片段162内的随机存取点。此情形可帮助 执行特技模式,例如,执行到视频文件150内的特定时间位置的搜寻。MFRA盒164通 常是任选的,且在一些实例中不需要包括于视频文件中。同样地,客户端装置(例如,客 户端装置40)未必需要参考MFRA盒164以正确地解码及显示视频文件150的视频数据。 MFRA盒164可包括数目等于视频文件150的轨道的数目或在一些实例中等于视频文件 150的媒体轨道(例如,非提示轨道)的数目的轨道片段随机存取(TFRA)盒(未图示)。

在一些实例中,电影片段162可包括一个或一个以上IDR及/或ODR图片。同样地, MFRA盒164可提供IDR及ODR图片在视频文件150内的位置的指示。因此,视频文 件150的时间子序列可由视频文件150的IDR及ODR图片形成。时间子序列还可包括 其它图片,例如,依赖于IDR及/或ODR图片的P帧及/或B帧。时间子序列的帧及/或 切片可布置于区段内,使得可适当地解码时间子序列的取决于所述子序列的其它帧/切片 的帧/切片。举例来说,在数据的阶层布置中,用于其它数据的预测的数据也可包括于时 间子序列中。此外,数据可布置于连续子序列中,使得可在部分GET请求中指定单一 字节范围以检索用于时间子序列的特定区段的所有数据。客户端装置(例如,客户端装置 40)可通过确定对应于IDR及/或ODR图片的电影片段162(或电影片段162的部分)的字 节范围来提取视频文件150的时间子序列。如下文更详细地所论述,视频文件(例如,视 频文件150)可包括子片段索引盒及/或子轨道片段盒,其中任一者或此两者均可包括用于 提取视频文件150的时间子序列的数据。

图4为说明包括MPD202及表示群组210到220的实例多媒体内容200的概念图。 多媒体内容200可对应于多媒体内容64(图1),或存储于存储器62中的另一多媒体内 容。在此实例中,多媒体内容200的表示是通过表示群组布置。即,具有共同特性集合 的表示可形成为表示群组,表示群组提供简化的网络带宽适应。

在此实例中,MPD202包括:共同表示特性204A,其包括描述表示群组210的共 同特性的信息;及共同表示特性204B,其描述表示群组220的共同特性。共同特性可 包括表示的译码及/或再现特性,例如,编解码器、表示中的表示所符合的编解码器的简 档及等级、像素分辨率、帧速率,或表示的其它特性。

根据本发明的技术,除了上文所论述的特性以外,特性还可包括文本类型值、相机 角度值及/或分级值。文本类型值可描述待与视频数据一起显示的文本(例如,隐藏式字 幕文本)的特性。文本类型值可描述(例如)文本的语言、在屏幕上将显示文本的位置、文 本的字型及/或大小,或文本的其它特性。

相机角度值可描述用以(实体上或概念上)产生对应表示的经译码视频数据的相机的 真实世界水平相机位置。在使用相机角度的情况下,客户端装置可从待大体上同时显示 的两个或两个以上表示选择数据,例如,以产生三维视频重放效果。水平真实世界相机 位置可使客户端装置能够选择表示以增加或缩减视频数据的三维重放中的深度的相对 量。

分级可描述针对特定视听者的内容合适性。举例来说,在美国,美国电影协会定义 了包括G、PG、PG-13、R及NC-17的分级。作为另一实例,在英国,英国电影分类委 员会定义了包括U、PG、12A、12、15、18及R18的分级。作为又一实例,在中华民国 (台湾),电影种类包括一般视听者种类、受保护种类、父母引导种类及受限制种类。

通过提供相应表示群组(例如,表示群组210到220)的共同特性204,客户端装置(例 如,客户端装置40)可至少部分地基于对应共同表示特性204而选择表示群组210到220 中的一个适当表示群组。在图4的实例中,MPD202还包括分别对应于表示212A、212B、 222A、222B的个别表示特性206A、206B、208A及208B。个别表示特性206A、206B、 208A及208B可包括表示未通过共同表示特性204指示的表示212A、212B、222A、222B 的特性的信息。举例来说,个别表示特性206A、206B、208A及208B可包括表示针对 表示212A、212B、222A、222B中的相应表示的位速率的信息。

表示群组的表示可被视为互斥的,因为所述表示可表示具有不同编码或其它参数的 相同内容(相同视频、相同语言音频,等等)。MPD202可提供用于选择表示群组210到 220中的一者的信息,例如,共同表示特性204。此信息可包括指示客户端是否可解码 及再现给定表示的信息。以此方式,客户端装置可根据考虑而移除客户端装置不能够解 码及/或再现的表示。因此,客户端装置40可选择可被解码及再现的合适表示群组,接 着基于(例如)网络带宽可用性而从所述群组选择表示。

客户端装置40还可配置有针对(例如)分级、语言及/或深度的用户偏好。因此,客 户端装置40还可选择一个或一个以上表示群组,使得选定群组符合用户偏好。客户端 装置40可接着选择可被同时播放的可用表示群组的子集。当客户端装置40仅能够显示 一个视图时,客户端装置40可选择仅从一个表示检索数据。另一方面,当客户端装置 40具备立体视图或多视图能力时,客户端装置40可从两个或两个以上表示检索数据。

在选择一个或一个以上表示群组之后,客户端装置40可基于(例如)可用网络带宽而 从表示群组选择表示。随着可用网络带宽改变(例如,增加或缩减),客户端装置40可调 整从表示群组选择表示以适应于改变的网络带宽条件。当然,如果用户偏好或装置能力 (例如,解码及再现能力)改变,则客户端装置40也可改变表示选择。

在一些实例中,共同表示特性204可对应于MPD202的RepresentationGroup XML 元素。在一些实例中,个别表示特性可对应于MPD202的对应RepresentationGroup元 素的子元素。

通过将表示的共同特性分组在一起,可实现各种优化。举例来说,许多表示对于各 种参数可具有相同值。因此,在MPD中个别地用信号表示特性可在MPD中引起实质重 复以个别地用信号表示特性。许多客户端装置经配置以舍弃所接收的MPD的大多数。 因此,可存在客户端装置所接收的MPD的部分的优化。此外,如果舍弃表示群组,则 客户端装置可不需要存取当前存在于用于已舍弃的表示或表示群组的MPD中的信息 (URL,等等)。客户端装置还可避免URL的不必要更新,URL往往在(例如)用于实况事 件的视频数据的实时网络串流传输期间被频繁地更新。即使消除了MPD中的冗余,客 户端装置40仍将需要在接收及重新建构之后剖析完全MPD,此情形可耗费大量计算时 间。

图5为说明其中将MPD数据分离为用于各种表示群组的各种部分的另一实例多媒 体内容250的概念图。多媒体内容250可对应于多媒体内容64(图1),或存储于存储器 62中的另一多媒体内容。特定来说,用于多媒体内容250的清单文件包括MPD部分252, 其通常包括与表示群组有关的数据。在此实例中,MPD部分252包括表示群组数据254A 及254B(表示群组数据254),其对应于相应表示群组270到280,如通过从表示群组数 据254指向相应表示群组270到280的箭头所说明。

在此实例中,表示群组数据254A包括表示群组共同特性256A,及用于表示群组的 MPD部分的位置258A。即,用于表示群组的MPD部分的位置258A指示用于表示群组 的MPD部分260A的位置。用于表示群组的MPD部分的位置258A可对应于(例如)用于 表示群组的MPD部分260A的URI或URL。相似地,表示群组数据254B包括表示群 组共同特性256B,及对应于用于表示群组的MPD部分260B的用于表示群组的MPD部 分的位置258B。

用于表示群组的MPD部分260A包括表示表示群组270的特定表示272A、272B(表 示272)的特性的信息。相似地,用于表示群组的MPD部分260B包括表示表示群组280 的特定表示282A、282B(表示282)的特性的信息。

以此方式,客户端装置(例如,客户端装置40)可确定要从中检索数据的适当表示群 组,而不接收用于客户端装置40将不会检索、解码及显示的表示的表示特定的信令数 据。因此,客户端装置40可避免检索原本恰好将会被舍弃的过量数据。特定来说,在 选择包括可由客户端装置40解码及再现的表示的一个或一个以上表示群组之后,客户 端装置40可仅检索用于选定表示群组的MPD部分,而不检索用于不能由客户端装置40 适当地解码及/或再现的表示群组的MPD部分。

多媒体内容250的数据通常可大体上对应于多媒体内容200的相应元素。然而,多 媒体内容250可简化客户端装置对用于多媒体内容250的MPD数据的阶层下载。举例 来说,客户端装置可简单地确定一个或一个以上表示群组,接着检索对应于所述表示群 组的MPD部分,而不检索对应于将不会由客户端装置检索的其它表示群组的MPD部分 (例如,因为客户端装置不支持用以解码及显示表示的解码及/或再现程序),而非检索可 包括用于所有表示的信令数据的完全清单文件。以此方式,多媒体内容250的数据可减 轻不必要的下载及剖析的低效率。

以下表2提供可添加到描述表示群组的特性的MPD(例如,图4的MPD202及/或 图5的MPD部分252)的实例元素。可根据表2的结构来格式化共同表示特性204(图4) 及/或表示群组共同特性256。

表2

以下XML提供MPD数据结构的表示群组元素的实例:

以下表3提供可经包括用于表示的实例数据集。在一些实例中,此数据可经提供用 于个别表示,而在其它实例中,根据(例如)以上表2,所述数据的全部或一部分可经提 供用于表示群组。

表3

在一些实例中,用于表示群组的数据及用于这些群组内的个别表示的数据可以阶层 关系呈现于MPD(例如,MPD202)内。即,个别表示可作为子代元素而用信号发送到(例 如)MPD202的对应表示群组元素。同样地,对于MPD部分252及用于表示群组的MPD 部分260,个别表示特性262、264可对应于表示群组共同特性256的子代元素。

图6为说明可用以支持特技模式的另一实例多媒体内容300的概念图。多媒体内容 300可对应于多媒体内容64(图1),或存储于存储器62中的另一多媒体内容。在此实例 中,MPD302包括表示信息304,其可包括时间子序列信息306。在此实例中,表示信 息304包括表示310的特性。表示310包括区段312A到312D(区段312)。在此实例中, 区段312中的每一者包括一相应子片段索引盒314及随机存取点(RAP)数据316。在其它 实例中,一些区段可不包括随机存取点,而一些区段可包括多个随机存取点。随机存取 点可包括IDR或ODR图片。

客户端装置40可从表示310提取时间子序列。举例来说,客户端装置40可提取 RAP316中的每一者以形成表示310的时间子序列。替代地,客户端装置40可检索RAP 316的子集,例如,RAP316A及316C,或316A及316D。通过仅检索及重放随机存取 点316(或其子集),客户端装置40可在特技模式(例如,快进或倒转)中播放表示310。 相似地,客户端装置40可跳过或搜寻到随机存取点316中的一个特定随机存取点以从 所请求的时间位置开始重放。

多媒体内容可包括时间子序列信息306及/或SFIX盒314中的任一者或此两者以指 示用于特技模式的信息。时间子序列信息306可包括MPD302的“特技模式”元素, 例如,通过以下表4定义的“特技模式”元素:

表4

在表4的实例中,特技模式元素包括指定对应表示含有时间子序列的时间子序列元 素,所述时间子序列可通过字节范围使用子片段索引盒314的信息而存取。RAP316可 对应于电影片段(例如,图3所说明的电影片段162)的部分。

子片段索引盒314通常可描述对应区段312的随机存取点316的字节范围位置。一 般来说,子片段索引盒314可出现于区段312的区段索引(SIDX)盒(图6中未图示)之后, 且提供在紧接先前的区段索引盒中所参考的电影片段的电影片段前缀大小。以下表5提 供实例SFIX盒的性质。

表5-子片段索引盒性质

盒类型 SFIX 容器 强制 数量 每区段索引盒一个

以下伪码提供用于子片段索引盒314的实例语法:

以下描述提供用于上文所描述的语法的实例语义集合:

fragment_count指定片段的数目,对于所述数目,在此盒中指定子片段信息。此数 目必须等于在紧接先前的区段索引盒中的片段参考的数目。

sub_fragment_count指定每片段的子片段的数目。

prefix_size指定由子片段j占用的片段i的前缀的大小。

另外,或在替代例中,子轨道片段盒可包括于区段312中。虽然子片段索引盒连同 区段索引盒在请求媒体数据之前可提供可由客户端装置40检索的语法信息,但子片段 索引盒可提供用于客户端装置40的信息以建构以片段数据的子集(例如,时间子层)为目 标的字节范围请求。

子轨道片段盒可指定轨道片段的样本数据的重新排序,使得每一子轨道片段的样本 先于仅出现于较高子轨道片段中的所有样本。不出现于任何较低子轨道片段中的子轨道 片段的样本可以与其出现于轨道运行盒中相同的次序相连地置放于文件(例如,区段312 中的一个对应区段)内。此情形可允许样本按时间可缩放性层的次序存储于轨道片段内。 当存在此盒时,可存在仅一个轨道运行盒。

表6描述子轨道片段盒的性质:

表6-子轨道片段盒性质

盒类型 STRF 容器 轨道片段盒(“TRAF”) 强制 数量 零或一个

以下伪码说明用于子轨道片段盒的实例语法:

以下描述提供用于上文所描述的子轨道片段盒的实例语法的实例语义:

sub_track_count指示子轨道片段的数目;当存在此盒时,sub_track_count可等于或 大于2。

sample_count[i]指示在具有i+1的索引的子轨道片段中样本的数目。子轨道片段的 样本被视为具有较小索引值的所有子轨道片段的成员。在子轨道片段0中样本的数目等 效于在后续循环中第一位串的零的数目。在具有sub_track_count-1的索引的子轨道片段 中样本的数目(其为sample_count[sub_track_count-1])等于轨道片段中样本的数目。

cur_sub_track_flag在外部循环的迭代i中等于1指示样本属于具有i+1的索引的子 轨道片段。此值在外部循环的迭代中等于0指示样本属于具有小于i+1的索引的子轨道 片段。注释:即,循环的第一迭代含有指示在子轨道片段1中且还不在子轨道片段0中 的样本的位置的sample_count[0]旗标。循环的第二迭代含有指示在子轨道片段2中且还 不在子轨道片段1等等中的样本的位置的sample_count[1]旗标。 sample_count[sub_track_count-1]被视为等于在轨道片段中样本的数目。

特技模式可应用于多种不同情境。举例来说,特技模式可用以暂时暂停服务、在暂 停之后继续服务、倒转达一时段,及/或快进以前进到所要时间位置(例如,在重放中断 之后,或搜寻到特定所要时间位置)。

使用时间子序列来支持特技模式可提供数个优点。举例来说,时间子序列可相对容 易地支持各种帧速率。同样地,包括时间子序列的表示可用于规则播出,这是因为表示 不限于时间子序列。另外,以时间子序列进行编码可为高度有效率的。时间子序列还不 必需要任何新译码简档或等级,可重新使用规则表示,避免额外的客户端复杂性,使得 能够进行简单内容供应,提供带宽、高速缓冲存储器及存储效率,提供用以优化用户体 验的客户端实施方案的灵活性(在不同特技模式操作当中是共同的),且可适用于广泛范 围的客户端实施方案,且可在搜寻之后在起动延迟方面提供相对良好的用户体验,以及 提供优良帧速率、反应性及其它此类量度。

图7为说明其中区段362A到362D可包括MPD更新盒364以指示MPD352待更 新的另一实例多媒体内容350的概念图。多媒体内容350可对应于多媒体内容64(图1), 或存储于存储器62中的另一多媒体内容。一般来说,MPD352包括用于表示360的表 示信息354,例如,表示360的特性及表示360的区段362的URI或URL。在一些状况 下,表示360可由实况内容(例如,体育运动事件)形成,且因此,可能不预先确定区段 362的URI。因此,随着形成表示360的区段,所述区段中的一者或一者以上可包括MPD 更新盒以指示MPD352待更新。

举例来说,在图7中,区段362A包括MPD更新盒364及区段数据366A。通常可 根据视频文件150(图3)而形成区段数据366A。然而,区段362A还包括MPD更新盒 364A。以此方式,客户端装置40可基于MPD更新盒364A的数据而更新MPD352。 MPD更新盒364A可包括对MPD352的更新,或可包括用于MPD352的更新的URI或 URL。应理解,MPD更新盒364的数据未必包括于明确的盒中。举例来说,大体上符合 MPD更新盒364的数据的数据可包括于区段362的其它盒中,或包括于区段362的标头 部分中。以此方式,区段362的包括MPD更新信息的“部分”可对应于标头部分、相 似于MPD更新盒364的MPD更新盒,或包括于区段362的一个或一个以上其它盒中的 数据。

以此方式,在检索区段362A的数据之后,客户端装置40可分析MPD更新盒364A 以更新MPD352。客户端装置40可接着使用MPD352的经更新版本以检索区段362B 及362C。区段362B及362C包括区段数据366B、366C,其可再次根据图3的视频文件 150而格式化。客户端装置40还可检索区段362D的数据。在此实例中,区段362D包 括MPD更新盒364B,客户端装置40可使用MPD更新盒364B来以大体上符合第一更 新的方式执行对MPD352的另一更新。因此,为了接收超出表示360的区段362D的区 段,客户端装置40可基于相对于MPD更新盒364B的数据所执行的更新而使用MPD352 的新更新版本。

MPD更新盒(例如,MPD更新盒364A、364B)可包括根据以下表7的性质:

表7-MPD更新盒性质

盒类型 MUPE

容器 强制 数量 零或一个

在一些实例中,以下语法可用以定义MPD更新盒:

下文提供用于实例MPD更新盒语法的实例语义集合:

mpd_information_flags含有以下各者中的零或多者的逻辑OR:

new_location_flag如果设定为1,则新媒体呈现描述可用于mpd_location中所指定 的新位置处。

latest_mpd_update_time指定MPD更新相对于最近MPD的MPD发行时间是必要的 以ms为单位的时间。客户端可选择在现在之间的任何时间更新MPD。

mpd_location在且仅在new_location_flag被设定的情况下才存在且提供用于新媒体 呈现描述的统一资源定位符。

以此方式,在区段等级处的带内信令可用以指示对MPD302的更新。在一些实例 中,更新可提供于区段边界处。即,在各种实例中,MPD更新盒364可仅出现于相应区 段的开始处或结束处。在一些实例中,如果MPD更新的带宽呈现问题,则服务器装置 60(图1)可提供用于特定装置能力的MPD,使得仅更新这些部分。此外,MPD302的 MPD元素可在MPD302的壁钟时间中提供发布时间。此情形可提供唯一MPD发布时 间,所述唯一MPD发布时间可提供用于MPD的唯一识别符及MPD何时被发行。其还 可提供用于更新程序的锚点(anchor)。另外,服务器装置60及/或内容准备装置20可使 用阶层结构来优化MPD更新,例如,以仅更新MPD302的需要更新的部分,而不改变 MPD302的不需要更新的其它部分。

还可使用相似于图7的MPD更新盒的MPD更新盒来执行广告插入,例如,目标广 告插入。即,MPD更新盒可提供到直接客户端装置40以从广告多媒体内容检索数据。 此情形可出现于体育运动事件中的使比赛的播放延迟的暂停或其它动作期间,且同样 地,出现于用于视频重放的激励动作的超时或延迟中。因为这些事件可稍微随机地发生, 所以可能不会先验地知道广告将插入的时间。

以与区段的递送异步的方式更新MPD302可为可行的。服务器装置60可向客户端 装置40提供在特定量的时间中MPD将不被更新的保证。然而,当在最小更新周期之前 更新MPD时,服务器装置60不需要明确地发信号。可能很难实现完全同步播出,这是 因为客户端装置可对不同MPD更新实例操作。因此,客户端可体验到漂移。服务器装 置60及/或内容准备装置20可提供时间偏移观看。

图8为说明一实例方法的流程图,所述方法用于通过服务器装置提供表示群组的指 示,且用于通过客户端装置选择表示群组以及在选定表示群组内选择个别表示。尽管图 8的方法是相对于服务器装置60及客户端装置40而描述,但应理解,其它装置可实施 相似于图8的方法的技术的技术。举例来说,内容准备装置20或内容递送网络的一个 或一个以上网络装置可执行被认为是服务器装置60的功能中的一些或全部。

服务器装置60起初可获得(例如,创建,或从内容准备装置20接收)用于多媒体内 容的表示集合的数据(其中所述集合中的表示具有一个或一个以上共同特性)以及用于多 媒体内容的清单文件。所述表示集合可对应于一表示群组。服务器装置60可将表示群 组的指示提供到客户端装置40(400)。举例来说,服务器装置60可将MPD202(图4)或 MPD部分252(图5)提供到客户端装置40。图2、6及7的其它实例MPD还可包括表示 群组的指示,例如,表示群组XML元素。在任何状况下,客户端装置40均可(例如)从 接收自服务器装置60的MPD文件或MPD文件的部分接收描述表示群组特性的信息 (402)。

客户端装置40可接着分析表示群组特性以消除客户端装置40不能或将不会选择检 索、解码或再现的表示群组。举例来说,客户端装置40可比较解码及再现能力与表示 群组的特性以确定不适当的表示群组。作为另一实例,客户端装置40可比较针对语言、 分级及深度量(例如,如通过具有特定相机角度的两个或两个以上视图所提供)的用户偏 好以消除不良的表示群组。客户端装置40可接着至少部分地基于客户端装置40的解码 及再现能力而选择适当表示群组(404)。当然,应理解,还(另外或替代地)可基于如上文 所论述的用户偏好而进行此选择。以此方式,客户端装置40可基于表示集合的共同特 性而选择表示集合。

在选择表示群组之后,客户端装置40可请求用于特定地描述表示群组的表示的 MPD部分的数据。作为响应,服务器装置60可将在选定表示群组中的表示位速率的指 示连同其它个别表示特性一起提供到客户端装置40(406)。举例来说,服务器装置60可 将用于表示群组的MPD部分260(图5)中的一个特定MPD部分的数据发送到客户端装 置40。在其它实例中,客户端装置40可能已经接收用于多媒体内容的完全MPD(例如, 图4的MPD202),但可特定地分析特定地对应于选定表示群组的MPD的部分。以此方 式,在一些实例中,图8的步骤406可出现于步骤402及/或步骤404之前。

在任何状况下,在接收到包括选定表示群组的表示的位速率的为所述表示所特有的 特性(408)之后,客户端装置40可确定网络带宽的当前可用量(410)。客户端装置40可接 着从选定表示群组中选择表示(412),使得选定表示具有可通过所确定的网络带宽的当前 可用量所适应的位速率。表示的位速率表示在表示群组中的个别表示的译码特性的实 例。客户端装置40可接着请求选定表示的数据(414)。举例来说,客户端装置40可建构 (例如,产生及发送)请求选定表示的区段的HTTP GET请求。或者,客户端装置40可建 构指定选定表示的区段的字节范围的HTTP部分GET。在任何状况下,客户端装置40 均可对服务器装置60提交请求。

服务器装置60可接收请求,且作为响应,将所请求的数据发送到客户端装置40 (416)。举例来说,请求处理单元70可根据所接收请求的数据(例如,所接收请求的来源 因特网协议(IP)地址及来源端口)确定客户端装置40的网络地址。请求处理单元70可形 成包括所请求的数据的网络包且将所请求的数据发送到客户端装置40,例如,目的地为 所确定的客户端装置40的IP地址。

在接收到所请求的数据之后,客户端装置40可开始解码及显示接收的数据(418)。 在接收所请求的数据的同时,客户端装置40可继续分析当前可用网络带宽且提交来自 表示的请求,所述表示具有可通过网络带宽的当前可用量所适应的位速率(410到414)。 如果网络带宽的量改变,则客户端装置40可自适应地切换到选定表示群组中的不同表 示。举例来说,客户端装置40可确定对应于从表示群组中的先前表示所请求的最后区 段的时间位置的新表示中的区段,接着请求新表示中的所确定的区段(或其一部分)。

在一些实例中,服务器装置60可在图8的方法期间将对应于目标广告插入的MPD 提供到客户端装置40。MPD可使客户端装置40检索以客户端装置40的用户为目标的 广告多媒体数据。在一些实例中,客户端装置40可将用户信息进一步提供到服务器装 置60以使广告媒体数据以客户端装置40的用户为目标。用户信息可包括用户偏好、用 户识别信息(例如,用户ID)、用户人口统计信息,或其它此类信息。目标广告插入可出 现于(例如)图8的步骤400之前,或出现于步骤418之后且出现于选择后续表示(例如, 针对多媒体内容的后续周期)之前。

以此方式,图8的方法表示一种方法的实例,所述方法包括:分析用于多媒体内容 的清单文件的至少一部分,其中所述清单文件的所述部分包括指示所述多媒体内容的表 示集合的信息及指示所述表示集合中的每一集合的共同特性的信息;基于所述表示集合 中的一个集合的所述共同特性而选择所述表示集合中的所述一个集合;基于所述集合中 的所述一个集合的所述表示中的一个表示的一个或一个以上译码特性而选择所述表示 集合中的所述选定集合的所述表示中的所述一个表示;及基于所述选择而产生针对所述 表示中的所述一个表示的数据的请求。

同样地,图8的方法表示一种方法的实例,所述方法包括:获得具有一个或一个以 上共同特性的多媒体内容的表示集合,其中所述集合中的所述表示中的每一表示具有与 所述共同特性分离的个别译码特性;获得用于所述多媒体内容的清单文件,其中所述清 单文件包括指示所述集合中的所述表示的信息、指示所述表示集合的所述共同特性的信 息,及指示所述集合中的所述表示中的每一表示的所述译码特性的信息;及将所述清单 文件的至少一部分发送到客户端装置。

图9为说明一实例方法的流程图,所述方法用于通过服务器装置提供表示特技模式 的数据,且用于由客户端装置使用所述数据以检索及播放多媒体内容的特技模式数据。 尽管图9的方法是相对于服务器装置60及客户端装置40而描述,但应理解,其它装置 可实施相似于图9的方法的技术的技术。举例来说,内容准备装置20或内容递送网络 的一个或一个以上网络装置可执行被认为是服务器装置60的功能中的一些或全部。此 外,如上文关于图8所描述,可结合表示群组及来自表示群组的表示的选择而执行特技 模式的选择。

服务器装置60起初可获得(例如,创建,或从内容准备装置20接收)用于多媒体内 容的一个或一个以上表示的数据(其中所述表示中的至少一者包括时间子序列)以及用于 多媒体内容的清单文件。清单文件可指示表示包括时间子序列。服务器装置60可将多 媒体内容的表示的指示(例如,表示的特性)提供(430)到客户端装置40。另外,服务器装 置60可提供表示中的一者或一者以上的时间子序列的指示(432)。即,服务器装置60可 提供用于多媒体内容的MPD文件中的信息,所述信息指示时间子序列可用于多媒体内 容的一个或一个以上表示。举例来说,如上文关于图6所描述,服务器装置60可将包 括具有时间子序列子元素的特技模式元素的MPD的至少一部分提供到客户端装置40。

客户端装置40可基于多媒体内容的表示的特性而选择表示(434)。尽管客户端装置 40未必需要选择具有时间子序列的表示,但出于说明这些技术的论述的目的,出于实例 目的而假定客户端装置40选择时间子序列可用的表示。客户端装置40可接着接收使用 特技模式的请求(436)。举例来说,客户端装置40可(例如)从客户端装置40的用户接收 供开始重放的特定时间位置的选择。替代地,客户端装置40可接收快进或倒转视频数 据的请求。

响应于使用特技模式的请求,客户端装置40可确定用于表示的时间子序列是否可 用,且如果可用,则请求用于检索时间子序列的至少一部分的数据(438)。服务器装置 60可通过将用于时间子序列的数据的位置的指示提供到客户端装置40(440)而响应于请 求。在一些实例中,用于多媒体内容的MPD的一部分可指示用于时间子序列的数据的 位置。在其它实例中,客户端装置40可从对应表示的区段请求子片段索引盒及/或子轨 道片段盒。

在任何状况下,客户端装置40可使用包括指示用于时间子序列的数据的位置的信 息的所接收数据来从指定位置请求时间子序列的数据(442)。举例来说,客户端装置40 可确定包括IDR随机存取点及/或ODR随机存取点的位置(例如,区段的URL,且可能 地为区段的字节范围)。客户端装置40可接着建构针对时间子序列的数据的HTTP GET 或部分GET请求,以便根据特技模式播放视频数据。

在从客户端装置40接收到HTTP GET及/或部分GET请求之后,服务器装置60可 将所请求的数据提供到客户端装置40(444)。举例来说,服务器装置60可响应于HTTP GET请求而发送区段或响应于HTTP部分GET请求而发送区段的媒体片段(或媒体片段 的部分)。在接收到所请求的数据之后,客户端装置40可解码及显示接收的数据(446)。 同样地,客户端装置40可继续从表示(或不同表示(如果可用网络带宽的量改变))请求数 据。

以此方式,图9的方法表示一种方法的实例,所述方法包括:分析用于多媒体内容 的清单文件的信息,其中所述清单文件的所述信息指示所述多媒体内容的至少一个表示 包括时间子序列;确定用于所述时间子序列的数据的一个或一个以上位置;及提交针对 用于所述时间子序列的所述数据的一个或一个以上请求。

同样地,图9的方法表示一种方法的实例,所述方法包括:获得用于包括时间子序 列的多媒体内容的至少一个表示的数据;获得用于所述多媒体内容的清单文件的数据, 其中所述清单文件的信息指示所述多媒体内容的所述至少一个表示包括所述时间子序 列;及将所述清单文件的至少一部分发送到客户端装置。

图10为说明一实例方法的流程图,所述方法用于通过服务器装置提供清单文件(例 如,MPD)待更新的指示,且用于通过客户端装置更新MPD。尽管图10的方法是相对于 服务器装置60及客户端装置40而描述,但应理解,其它装置可实施相似于图10的方 法的技术的技术。举例来说,内容准备装置20或内容递送网络的一个或一个以上网络 装置可执行被认为是服务器装置60的功能中的一些或全部。此外,如上文关于图8及9 所描述,可结合特技模式的选择及/或表示群组及来自表示群组的表示的选择而执行 MPD的更新。

在一些实例中,内容准备装置20可编码及封装在实况事件(例如,体育运动事件) 期间所俘获的经编码视频数据。以此方式,客户端装置40可在事件发生时几乎实时地 检索事件的经译码数据。起初,服务器装置60可接收对应于实况事件的多媒体内容的 一个或一个以上表示且在MPD中提供多媒体内容的表示的特性的指示(460)。归因于在 正实况拍摄事件时形成多媒体内容,MPD可仅描述直到多媒体内容的特定时间位置的区 段的特性及位置。

客户端装置40可使用MPD的信息来选择表示(462)。在使用当前MPD的情况下, 客户端装置40可请求(例如)直到时间位置的选定表示的区段。作为响应,服务器装置 60可发送所请求的区段。然而,另外,服务器装置60可发送一区段,所述区段包括MPD 更新盒或指示MPD到所述区段为止待更新的其它信息(466)。

作为响应,客户端装置40可解码及显示所接收区段中的一者或一者以上的数据 (468)。客户端装置40还可接收指示MPD待更新的信息(470)。举例来说,客户端装置 40可接收在MPD不再适用的时间位置之前的最后区段。客户端装置40可确定最后区段 包括相似于关于图7所描述的MPD更新盒的MPD更新盒。

在使用更新盒的情况下,客户端装置40可请求对MPD的更新(472)。举例来说,客 户端装置40可确定用于MPD的更新的网络位置且从所确定位置请求更新。服务器装置 60或存储对MPD的更新的另一装置(例如,内容准备装置20)可发送指示对MPD的更 新的信息(474),客户端装置40可使用所述信息来更新MPD(476)。替代地,在一些实 例中,MPD更新盒自身可包括指示MPD更新的信息,在此状况下,客户端装置40可 使用MPD更新盒的信息来更新MPD。在任何状况下,客户端装置40可接着使用MPD 的经更新版本来请求在先前MPD不再适用的时间位置之后的区段(478)。客户端装置40 及服务器装置60可继续执行相似步骤,直到客户端装置40已完成多媒体内容的重放为 止。

在一些实例中,相似于图10的方法的技术可用以执行目标广告插入。举例来说, 经更新MPD可包括对应于广告媒体内容的部分。可能要求客户端装置40基于经更新 MPD而检索及重放广告媒体内容的数据,以便接收广告媒体内容的一个或一个以上区段 的数据,其可包括用于检索所要媒体内容的后续媒体数据的另一经更新MPD。

以此方式,图10的方法表示一种方法的实例,所述方法包括:根据由客户端装置 存储的清单文件的副本的数据而检索多媒体内容的表示的第一区段的数据;根据所述清 单文件而检索所述表示的第二区段的一部分,其中在所述表示中所述第二区段出现于所 述第一区段之后,且其中所述第二区段的所述部分指示所述清单文件待更新;基于所述 清单文件待更新的所述指示而更新由所述客户端装置存储的所述清单文件的所述副本; 及根据所述经更新清单文件而检索所述第二区段的媒体数据。

同样地,图10的方法表示一种方法的实例,所述方法包括:将多媒体内容的清单 文件的数据发送到客户端装置,其中所述清单文件包括指示所述多媒体内容的表示的第 一区段的信息;响应于来自所述客户端装置的请求而将所述表示的所述第一区段的至少 一部分发送到所述客户端装置,其中所述第一区段的所述部分指示所述清单文件待更 新,其中所述清单文件的经更新版本包括指示所述表示的第二不同区段的信息;及响应 于从所述客户端装置所接收且根据所述经更新清单文件所形成的请求而将所述第二区 段的数据发送到所述客户端装置。

图11为说明一实例方法的流程图,所述方法用于建构及使用体验质量(QoE)报告文 档的数据。尽管图11的方法是相对于服务器装置60及客户端装置40而描述,但应理 解,其它装置可实施相似于图11的方法的技术的技术。举例来说,内容准备装置20或 内容递送网络的一个或一个以上网络装置可执行被认为是服务器装置60的功能中的一 些或全部。此外,如上文关于图8、9及10所描述,可结合MPD的更新、特技模式的 选择及/或表示群组及来自表示群组的表示的选择中的任一者或全部而执行将QoE报告 提供到服务器装置60及/或内容准备装置20。

起初,服务器装置60可将MPD中的多媒体内容的表示的特性的指示提供到客户端 装置40(500)。如上文所论述,客户端装置40可(例如)基于客户端装置40的解码及/或 再现能力、用户偏好、可用网络带宽及/或多媒体内容的表示的其它特性而选择表示 (502)。客户端装置40可接着请求选定表示的一个或一个以上区段(504)。

服务器装置60可将所请求的区段发送到客户端装置40(506)。在接收到所请求的区 段之后,客户端装置40可解码及显示接收的数据(508)。客户端装置40可接着确定是否 已接收到所有视频数据(510)。如果尚未接收到表示(或通常,多媒体内容)的最后区段(510 的“否”分支),则客户端装置40可再次评估网络带宽的当前可用量,且基于此分析而 选择表示(502)且请求表示的区段(504)。

一般来说,客户端装置40可通过从可通过当前可用网络带宽所适应的表示请求多 媒体内容的数据来缓冲数据且试图避免缓冲器上溢及下溢。然而,有时,(例如)如果多 媒体内容的实际译码特性不匹配于以信号表示的译码特性或如果不存在用于客户端装 置40进行适当选择的足够数据,则可发生缓冲器上溢或下溢。其它因素也可引起客户 端装置40的用户的体验质量减少。因此,在已接收及适当地解码表示(或多媒体内容) 的最后区段(510的“是”分支)之后,客户端装置40可将体验质量(QoE)报告提供到服 务器装置60。

举例来说,客户端装置40可建构报告以包括选定区段及表示的指示(512)。客户端 装置40还可记录缓冲器上溢/下溢的发生,此情形可引起媒体重放的暂停。客户端装置 40可形成包括表示已播出的周期的PeriodReport元素序列的报告。Period元素可包括 RepresentationReport元素序列,每一RepresentationReport元素表示一Representation的 一部分的连续播出,且以真实时间及呈现时间提供开始及结束卷册。报告还可包括初始 起动时间,此时间为从针对观看内容的用户请求及播出开始起的时间。以此方式,报告 文档可包含指示多媒体内容的表示的可扩展标记语言(XML)格式化电子文档,客户端装 置从所述多媒体内容的所述表示检索所述多媒体内容的媒体数据。

客户端装置40可将报告提供到服务器装置60或内容递送网络的另一装置,例如, 内容准备装置20或专用报告收集装置。以此方式,服务器装置60可接收由客户端装置 40接收的区段及表示的指示(514)。服务器装置60可接着将指示提供到(例如)内容准备 装置20或与服务提供者或媒体组装器相关联的另一装置以改善内容准备(516)。根据由 客户端装置40提供的信息,服务提供者可确切地确定已播出何内容、播出中何时存在 暂停,及表示之间何时存在切换。替代地或另外,客户端装置40可以总播出持续时间 及用于每一表示的相异连续播出周期的数目连同暂停的数目以及暂停持续时间的平均 值及方差的形式提供概要信息。

在使用此数据的情况下,服务提供者可分析用于一条新媒体内容的体验质量信息以 用于使用自适应HTTP串流传输进行串流传输。服务提供者可使处于不同位速率的数个 不同表示可用,且提供HTTP服务基础结构以代管媒体文件,接着收集反馈以确定用户 的观看体验质量。服务提供者可使用此数据来改善此种或未来媒体内容代管的服务质 量。体验质量量度可指代如由用户所体验的实际观看,且可独立于用于调度HTTP请求、 表示选择决策及其类似者的客户端算法。以此方式,服务提供者可获得针对特定观看会 话的用户观看体验质量的相对准确描绘。

以此方式,图11的方法表示一种方法的实例,所述方法包括:建构包括指示从中 检索了媒体数据的多媒体内容的表示的信息的文档;及将所述所建构文档发送到从中检 索了所述媒体数据的服务器。图11的方法还表示一种方法的实例,所述方法包括接收 指示由客户端装置检索的数据的信息,包含接收可扩展标记语言格式化电子文档,所述 电子文档包括指示供所述客户端装置检索所述多媒体内容的媒体数据的所述多媒体内 容的表示的信息。

在一个或一个以上实例中,所描述的功能可实施于硬件、软件、固件或其任何组合 中。如果实施于软件中,则所述功能可作为一个或一个以上指令或代码而存储于计算机 可读媒体上或经由计算机可读媒体而传输且由以硬件为基础的处理单元执行。计算机可 读媒体可包括对应于例如数据存储媒体等有形媒体的计算机可读存储媒体,或包括促进 计算机程序(例如)根据通信协议从一处转移到另一处的任何媒体的通信媒体。以此方式, 计算机可读媒体通常可对应于(1)非暂时性的有形计算机可读存储媒体或(2)例如信号或 载波等通信媒体。数据存储媒体可为可由一个或一个以上计算机或一个或一个以上处理 器存取以检索用于实施本发明中所描述的技术的指令、代码及/或数据结构的任何可用媒 体。计算机程序产品可包括计算机可读媒体。

作为实例而非限制,这些计算机可读存储媒体可包含RAM、ROM、EEPROM、 CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器,或可 用以存储呈指令或数据结构形式的所要程序代码且可由计算机存取的任何其它媒体。 又,任何连接均被适当地称为计算机可读媒体。举例来说,如果使用同轴电缆、光缆、 双绞线、数字订户线(DSL)或例如红外线、无线电及微波等无线技术而从网站、服务器 或其它远程来源传输指令,则同轴电缆、光缆、双绞线、DSL或例如红外线、无线电及 微波等无线技术包括于媒体的定义中。然而,应理解,计算机可读存储媒体及数据存储 媒体不包括连接、载波、信号或其它暂时性媒体,而是有关于非暂时性有形存储媒体。 如本文中所使用,磁盘及光盘包括压缩光盘(CD)、激光光盘、光学光盘、数字多功能光 盘(DVD)、软磁盘及蓝光光盘,其中磁盘通常以磁性方式再生数据,而光盘通过激光以 光学方式再生数据。以上各者的组合也应包括于计算机可读媒体的范围内。

指令可由一个或一个以上处理器(例如,一个或一个以上数字信号处理器(DSP)、通 用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散 逻辑电路)执行。因此,如本文中所使用,术语“处理器”可指代上述结构或适于实施本 文中所描述的技术的任何其它结构中的任一者。另外,在一些方面中,本文中所描述的 功能性可提供于经配置用于编码及解码的专用硬件及/或软件模块内,或并入于组合式编 解码器中。又,所述技术可完全地实施于一个或一个以上电路或逻辑元件中。

本发明的技术可实施于广泛多种装置或设备中,包括无线手持机、集成电路(IC)或 IC集合(例如,芯片组)。在本发明中描述各种组件、模块或单元以强调经配置以执行所 揭示技术的装置的功能方面,但未必需要通过不同硬件单元的实现。事实上,如上文所 描述,各种单元可组合于一编解码器硬件单元中或通过互操作性硬件单元的集合(包括如 上文所描述的一个或一个以上处理器)结合合适软件及/或固件而提供。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号