用于对视频数据进行流传输的方法和相应装置的制造方法

xiaoxiao2020-10-23  6

用于对视频数据进行流传输的方法和相应装置的制造方法
【技术领域】
[0001]本发明涉及用于传输媒体数据、尤其是Web访问的压缩数据的方法和装置。优选地,通过使用协议HTTP经由(如因特网那样的)IP网络来进行媒体数据的流传输。
【背景技术】
[0002]媒体呈现通常包括诸如音频、视频或文本等的若干媒体内容。可以将这些媒体内容从服务器发送至客户端以由客户端装置共同播放。这些媒体内容是由客户端从服务器下载的。
[0003]在这种情况下,最近出现了被称为DASH( “Dynamic Adaptive Streaming overHTTP (经由HTTP的动态自适应流传输)”的简称)的新标准(参见“ IS0/IEC 23009-1,经由HTTP的动态自适应流传输(DASH),Partl:媒体呈现描述和片段格式”)。该标准使得能够创建媒体呈现的内容的紧凑描述和HTTP地址之间的关联。通常,在被称为清单文件或描述文件的文件中描述该关联。在DASH的上下文中,该清单文件是还被称为MPD (媒体呈现Descript1n(媒体呈现描述)的简称)文件的文件。
[0004]在将MPD文件发送至客户端装置的情况下,客户端可以容易地得知各媒体内容的描述。通过阅读清单文件,客户端获知在媒体呈现中所提出的媒体内容的种类并且获知用于下载关联的媒体内容的HTTP地址。因此,可以决定(经由HTTP请求)下载并播放(在接收到媒体数据片段之后进行解码并播放)哪个媒体内容。
[0005]除该关联外,DASH标准提出了将各媒体内容分割成小段时间。在MPD文件中添加时间分解。因而,该时间分解描述小段时间内HTTP地址(或URL)和各媒体内容的紧凑描述之间的关联。
[0006]本发明(通过以DASH MH)作为参考)关注清单文件中的视频描述。即使没有直接考虑媒体表现的其它元素(例如,音频、文本、…),也可以容易地将这些元素并入如以下将说明的更具全局性的媒体描述。
[0007]视频的空间分辨率越来越重要。在该方面,市场上开始出现4K2K视频。然而,移动应用程序无法以高质量播放该分辨率。
[0008]解决方案提出将视频分割成区块(tile)。如果移动应用程序的用户想要播放或关注视频的子部分,则仅传输与子部分相对应的区块。该处理允许保持视频部分处于高质量。
[0009]在DASH的上下文中,使用已知标准“ISO BMFF^ (Base Media File Format (基本媒体文件格式))来将媒体内容封装在媒体数据片段中,以形成媒体呈现。
[0010]传统上,通过使用DASH,即使各轨与视频的子部分相对应,在清单中也将该轨描述为独立媒体内容。在清单中无法用信号通知各轨是相同视频的子部分。实际上,当前的MPD定义不允许描述区块化视频。在实践中,用户(除清单外还)不得不下载第一初始化片段以得知MPD中所描述的各视频是区块化视频的子部分。然后,这些用户不得不至少下载各视频内容的各第一媒体数据片段的开头以检索区块位置和视频内容之间的关联。对该初始化信息的下载导致延迟以及附加和无用的HTTP请求。
[0011]在与DASH的使用不兼容的另一现有技术中,A.Mavlankar、P.Agrawal、D.Pang、D.Halawa、N.Cheung 和 B.Girod 所编著的文章 “ In packet video 2010, An InteractiveReg1n Of Interest Video Streaming System for Online Lecture Viewing” 提出了描述可分级视频的区块的特定清单(“专有清单”)。该特定清单提供各区块的标识符和一个位置信息。根据与基本层相关联的URL和专有清单所提供的区块信息,构建HTTP查询以访问特定区块,其中该查询与区块索引相关联。这种HTTP查询需要在服务器侧进行处理,以从HTTP查询中检索字节范围、以及作为结果要发送至客户端装置以实现其请求的区块。这可以仅由非常特定的服务器来进行。

【发明内容】

[0012]本发明是为了解决前述担心中的一个或多个而设计的。
[0013]根据本发明的第一方面,提出一种用于对与给定视频相对应的数据进行流传输的方法,所述给定视频的各帧被分割成η个空间区块,以创建独立的η个视频子轨,其中η是整数。
[0014]所述方法包括以下步骤:
[0015].利用服务器将描述文件发送至客户端装置,所述描述文件包括与所述η个视频子轨的空间组织有关的数据以及分别指定各视频子轨的至少η个URL ;
[0016]?利用所述客户端装置,根据所述客户端装置或所述客户端装置的用户所选择的一个关注区域来选择一个或多个URL ;
[0017]?利用所述服务器来从所述客户端装置接收用于请求由此得到的数量的视频子轨的一个或多个请求消息,各请求消息包括所述客户端装置所选择的URL其中之一;以及
[0018].响应于所述请求消息,利用所述服务器将与所请求的视频子轨相对应的视频数据发送至所述客户端装置。
[0019]规定了空间区块包括行和列的像素。
[0020]换句话说,本发明的第一方面提出将视频子轨的URL直接包括在描述文件(是指采用DASH形式的MPD)中,以使得客户端获知将帧分割成区块并且能够将URL请求消息直接发送至服务器。
[0021]本发明的第一方面使得能够限制针对服务器和客户端装置之间的数据流传输的请求的数量。此外,在客户端接收到描述文件的情况下,该客户端已获知区块的存在和空间组织,结果该客户端知晓如何显示相应的视频子轨。
[0022]在实施例中,所述描述文件还包括指定与完整的所述给定视频相对应的轨的URL,并且在所述客户端装置没有根据一个关注区域选择任何URL的情况下,所述服务器从所述客户端装置接收包括完整的视频轨的URL的请求消息,并且响应于该请求消息来将与所述完整的视频轨相对应的视频数据发送至所述客户端装置。
[0023]在实施例中,所述给定视频是包括基本层和至少一个增强层的可分级视频,所述η个视频子轨与增强层相对应;所述给定视频还包括基本层视频轨,所述描述文件还包括所述基本层视频轨的URL ;并且在所述客户端装置根据一个关注区域选择至少一个URL的情况下,所述客户端装置还选择所述基本层的URL ;所述服务器还从所述客户端装置接收用于请求所述基本层视频轨的一个请求消息,该请求消息包括所述基本层视频轨的URL ;并且所述服务器还响应于该请求消息,来将与所请求的基本层视频轨相对应的视频数据发送至所述客户端装置。
[0024]根据变形例,所述给定视频是包括基本层和至少一个增强层的可分级视频,所述η个视频子轨与增强层相对应;所述基本层的各帧也被分割成各自与所述增强层中的区块相对应的η个空间区块,以创建独立的η个基本层子轨。
[0025]在所述客户端装置根据一个关注区域选择至少一个URL的情况下,所述客户端装置还选择相应的基本层子轨的URL ;并且所述服务器还从所述客户端装置接收用于请求所述基本层子轨的一个请求消息,该请求消息包括所述基本层子轨的URL ;并且所述服务器还响应于该请求消息,来将与所请求的基本层子轨相对应的视频数据发送至所述客户端装置。
[0026]在实施例中,在所述描述文件中,利用子分割成每一个具有预先确定的高度和宽度的给定数量的行和列的网格来定义所述η个空间区块的结构。
[0027]在实施例中,所述η个空间区块的结构定义具有均一面积或非均一面积的空间区块。
[0028]在实施例中,各空间区块是矩形区域。
[0029]在实施例中,在所述空间区块具有均一面积的情况下,所述网格是利用水平维度和垂直维度这两者中的边界的数量所指定的。
[0030]在实施例中,在所述空间区块具有非均一面积的情况下,所述网格是利用行和列的数量以及行和列的边界的位置所指定的。
[0031 ] 在实施例中,所述数据是根据经由HTTP的动态自适应流传输标准即DASH标准进行流传输的,所述描述文件是媒体呈现描述文件。
[0032]在实施例中,各URL指定预定义的一段时间内的轨或视频子轨的片段。
[0033]在实施例中,所述η个空间区块的结构是通过使用相对于整个一段时间的句法元素针对各段时间所定义的。
[0034]在实施例中,所述描述文件包括每段时间内的针对各视频子轨所定义的参数的集入I=I ?
[0035]所述参数的集合包括包含与以下内容有关的数据的描述符:
[0036]a.轨的类型:视频轨或视频子轨,以及/或者
[0037]b.在轨是视频子轨的情况下,空间区块的位置和所述η个空间区块的结构。
[0038]在实施例中,所述描述文件针对每段时间包括针对各区块所定义的参数的集合,以及
[0039]所述参数的集合包括称为角色元素即Role元素的描述符,该Role元素包含与以下有关的数据:
[0040]a.所述轨的类型:视频轨或视频子轨,以及/或者
[0041]b.在所述轨是视频子轨的情况下,对所述η个空间区块的结构的参考。
[0042]在实施例中,在所述轨是视频子轨的情况下,描述符还包括用以指定所考虑的区块相对于所述η个空间区块的结构的位置的方案。
[0043]在实施例中,所述空间区块的位置是通过参考网格的行和列的索引来指示的。
[0044]在实施例中,所述空间区块的位置是通过参考所述空间区块的左上角的以像素为单位的位置以及所述空间区块的宽度和高度来指示的。
[0045]在实施例中,所述空间区块的位置是利用指定坐标系中的位置来指示的。
[0046]在实施例中,所述空间区块的位置被表示为空间媒体片断。
[0047]在实施例中,所述视频数据与表示相同内容的各自具有不同分辨率的m个视频相对应,并且各视频的各帧被分割成η个空间区块,以创建m*n个独立的视频子轨,其中m是整数。
[0048]在实施例中,所述描述文件包括视频子轨的参数,所述参数包括与不同视频子轨的可能或禁止的关联有关的数据,在根据经由HTTP的动态自适应流传输标准即DASH标准来对所述数据进行流传输的情况下,所述可能或禁止的关联是利用标识符属性来指示的。
[0049]这样使得客户端侧能够在无需在区块的特定情况下对所接收数据进行上采样和下采样的情况下,通过确保前挡显示来选择子轨的任何子集。
[0050]在实施例中,所述方法还包括以下步骤:
[0051]-获取与所述给定视频有关的数据,
[0052]-对所获取到的数据进行压缩,
[0053]-封装压缩后的数据,所述封装包括:
[0054].生成给定数量的视频片段文件,每一个视频片段文件包括给定的一段时间内的与所述给定视频和所述η个视频子轨有关的数据,以及
[0055].生成与媒体文件片段相关联的初始化片段,所述初始化片段包括与视频轨和所述视频子轨有关的初始化数据,以及
[0056]-根据封装后的数据来生成所述描述文件。
[0057]在实施例中,所述描述文件还包括与所述初始化片段相关联的URL。
[0058]在实施例中,所述初始化数据包括表示各视频子轨的宽度和高度的值。
[0059]在实施例中,所述初始化数据还包括使得能够将各视频子轨显示在恰当位置处的变换矩阵。
[0060]根据本发明的另一方面,提出了一种用于利用服务器装置向客户端装置提供数据的方法,所述数据与给定视频相对应,所述给定视频的各帧被分割成η个空间区块,以创建独立的η个视频子轨,其中η是整数,所述方法包括以下步骤:
[0061].生成描述文件,所述描述文件包括与所述η个视频子轨的空间组织有关的数据以及分别指定各视频子轨的至少η个URL ;
[0062].将所述描述文件发送至所述客户端装置;以及
[0063].基于一个或多个所述客户端装置或所述客户端装置的用户的请求来发送与给定数量的视频子轨相对应的视频数据,其中各请求包括所述URL其中之一。
[0064]在实施例中,所述描述文件还包括指定与完整的所述给定视频相对应的轨的URL,并且所述服务器装置基于包括完整的视频轨的URL的客户端装置请求来将与所述完整的视频轨相对应的视频数据发送至所述客户端装置。
[0065]在实施例中,所述给定视频是包括基本层和至少一个增强层的可分级视频,所述η个视频子轨与所述增强层相对应;并且所述给定视频还包括基本层轨,所述描述文件还包括所述基本层轨的URL ;并且所述服务器装置还基于包括所述基本层轨的URL的客户端装置请求,来将与所述基本层轨相对应的视频数据发送至所述客户端装置。
[0066]根据变形例,所述给定视频是包括基本层和至少一个增强层的可分级视频,所述η个视频子轨与所述增强层相对应;并且所述基本层的各帧还被分割成各自与所述增强层中的区块相对应的η个空间区块,以创建独立的η个基本层子轨,所述描述文件还包括所述基本层子轨的URL ;以及所述服务器装置还基于包括所述基本层子轨的URL的客户端装置请求,来将与所述基本层子轨相对应的视频数据发送至所述客户端装置。
[0067]在实施例中,在所述描述文件中,利用子分割成每一个具有预先确定的高度和宽度的给定数量的行和列的网格来定义所述η个空间区块的结构。
[0068]在实施例中,所述η个空间区块的结构定义具有均一面积或非均一面积的空间区块。
[0069]在实施例中,各空间区块是矩形区域。
[0070]在实施例中,在所述空间区块具有均一面积的情况下,所述网格是利用水平维度和垂直维度这两者中的边界的数量所指定的。
[0071]在实施例中,在所述空间区块具有非均一面积的情况下,所述网格是利用行和列的数量以及行和列的边界的位置所指定的。
[0072]在实施例中,所述数据是根据经由HTTP的动态自适应流传输标准即DASH标准来发送的,所述描述文件是媒体呈现描述文件。
[0073]在实施例中,URL指定预定义的一段时间内的轨或子轨的片段。
[0074]在实施例中,所述η个空间区块的结构是通过使用相对于整个一段时间的句法元素针对各段时间所定义的。
[0075]在实施例中,所述描述文件包括每段时间内的针对各视频子轨所定义的参数的集入I=I ?
[0076]所述参数的集合包括包含与以下内容有关的数据的描述符:
[0077] a.轨的类型:视频轨或视频子轨,以及/或者
[0078]b.在轨是视频子轨的情况下,空间区块的位置和所述η个空间区块的结构。
[0079]在实施例中,所述描述文件针对每段时间包括的针对各区块所定义的参数的集入I=I ?
[0080]所述参数的集合包括称为Role元素的描述符,该Role元素包含与以下有关的数据:
[0081]a.轨的类型:视频轨或视频子轨,以及/或者
[0082]b.在轨是视频子轨的情况下,对所述η个空间区块的结构的参考。
[0083]在实施例中,在轨是视频子轨的情况下,所述描述符还包括用以指定所考虑的区块相对于η个区块的结构的位置的方案。
[0084]在实施例中,所述空间区块的位置是通过参考网格的行和列的索引来指示的。
[0085]在实施例中,所述空间区块的位置是通过参考所述空间区块的左上角的以像素为单位的位置以及所述空间区块的宽度和高度来指示的。
[0086]在实施例中,所述空间区块的位置是利用指定坐标系中的位置来指示的。
[0087]在实施例中,所述空间区块的位置被表示为空间媒体片断。
[0088]在实施例中,在生成所述描述文件的步骤之前,还包括以下步骤:
[0089]-获取与所述给定视频有关的数据,
[0090]-对所获取到的数据进行压缩,
[0091]-封装压缩后的数据,所述封装包括:
[0092].生成给定数量的媒体片段文件,其中每一个媒体片段文件包括给定的一段时间内的与所述给定视频和所述η个视频子轨有关的数据,以及
[0093].生成与媒体文件片段相关联的初始化片段,其中所述初始化片段包括与视频轨和所述视频子轨有关的初始化数据。
[0094]在实施例中,所述视频数据包括表示相同内容的各自具有给定分辨率的m个视频轨,并且各视频轨的各帧被分割成η个空间区块,以创建m*n个独立的视频子轨,其中m是整数。
[0095]在实施例中,所述描述文件包括视频子轨的参数,所述参数包括与不同视频子轨的可能或禁止的关联有关的数据,在根据经由HTTP的动态自适应流传输标准即DASH标准来对所述数据进行流传输的情况下,所述可能或禁止的关联是利用标识符属性来指示的。
[0096]根据本发明的另一方面,提出一种用于利用客户端装置来获得与给定视频相对应的数据的方法,所述给定视频的各帧被分割成η个空间区块,以创建独立的η个视频子轨,其中η是整数,所述方法包括以下步骤:
[0097]-接收描述文件,其中所述描述文件包括与所述η个视频子轨的空间组织有关的数据以及分别指定各视频子轨的至少η个URL ;
[0098]-利用所述客户端装置或所述客户端装置的用户来选择所述给定视频中的至少一个关注区域;
[0099]-基于所述描述文件,来根据所选择的关注区域获得一个或多个URL;
[0100]-发送用于请求所述视频子轨的一个或多个请求消息,其中各请求消息包括所述客户端装置所选择的URL其中之一,以及
[0101]-响应于所述请求消息,来接收与所请求的视频子轨相对应的视频数据。
[0102]在实施例中,所述描述文件还包括指定与完整的所述给定视频相对应的轨的URL,并且在所述客户端装置没有选择任何关注区域的情况下,所述方法还包括以下步骤:发送用于请求完整的视频轨的请求消息,并且响应于该请求消息来接收与所请求的完整视频轨相对应的视频数据。
[0103]在实施例中,所述给定视频是包括基本层和至少一个增强层的可分级视频,所述η个视频子轨与所述增强层相对应;所述给定视频还包括基本层视频轨,所述描述文件还包括所述基本层视频轨的URL ;并且在所述客户端装置选择一个关注区域的情况下,所述方法还包括以下步骤:
[0104]-利用所述客户端装置获得所述基本层的URL;
[0105]-发送包括所述基本层视频轨的URL的请求消息;以及
[0106]-响应于该请求消息来接收与所请求的基本层视频轨相对应的视频数据。
[0107]根据变形例,所述给定视频是包括基本层和至少一个增强层的可分级视频,所述η个视频子轨与所述增强层相对应;所述基本层的各帧还被分割成η个空间区块,所述基本层的各区块与所述增强层中的区块相对应,以创建独立的η个基本层子轨,
[0108]所述描述文件还包括所述基本层子轨的URL ;并且在所述客户端装置选择一个关注区域的情况下,所述方法还包括以下步骤:
[0109]-利用所述客户端装置获得所述基本层子轨的URL;
[0110]-发送包括所述基本层子轨的URL的请求消息;以及
[0111]-响应于该请求消息来接收与所请求的基本层子轨相对应的视频数据。
[0112]在实施例中,在所述描述文件中,利用子分割成每一个具有预先确定的高度和宽度的、给定数量的行和列的网格来定义所述η个空间区块的结构。
[0113]在实施例中,所述η个空间区块的结构定义具有均一面积或非均一面积的空间区块。
[0114]在实施例中,各空间区块是矩形区域。
[0115]在实施例中,在所述空间区块具有均一面积的情况下,所述网格是利用水平维度和垂直维度这两者中的边界的数量所指定的。
[0116]在实施例中,在所述空间区块具有非均一面积的情况下,所述网格是利用行和列的数量以及行和列的边界的位置所指定的。
[0117]在实施例中,所述数据是根据经由HTTP的动态自适应流传输标准即DASH标准来定义的,所述描述文件是媒体呈现描述文件。
[0118]在实施例中,各URL指定预定义的一段时间内的轨或子轨的片段。
[0119]在实施例中,所述η个空间区块的结构是通过使用相对于整个一段时间的句法元素针对各段时间所定义的。
[0120]在实施例中,所述描述文件包括每段时间内的针对各视频子轨所定义的参数的集入I=I ?
[0121]所述参数的集合包括包含与以下内容有关的数据的描述符:
[0122]a.轨的类型:视频轨或视频子轨,以及/或者
[0123]b.在轨是视频子轨的情况下,空间区块的位置和所述η个空间区块的结构。
[0124]在实施例中,所述描述文件针对每段时间包括针对各区块所定义的参数的集合,以及
[0125]所述参数的集合包括称为角色元素即Role元素的描述符,该Role元素包含与以下有关的数据:
[0126]a.所述轨的类型:视频轨或视频子轨,以及/或者
[0127]b.在所述轨是视频子轨的情况下,对所述η个空间区块的结构的参考。
[0128]在实施例中,在轨是视频子轨的情况下,所述描述符还包括用以指定所考虑的区块相对于η个区块的结构的位置的方案。
[0129]在实施例中,所述空间区块的位置是通过参考网格的行和列的索引来指示的。
[0130]在实施例中,所述空间区块的位置是通过参考所述空间区块的左上角的以像素为单位的位置以及所述空间区块的宽度和高度来指示的。
[0131]在实施例中,所述空间区块的位置是利用指定坐标系中的位置来指示的。
[0132]在实施例中,所述空间区块的位置被表示为空间媒体片断。
[0133]在实施例中,所述视频数据与表示相同内容的各自具有不同分辨率的m个视频相对应,并且各视频的各帧被分割成η个空间区块,以创建m*n个独立的视频子轨,其中m是整数。
[0134]在实施例中,所述描述文件包括视频子轨的参数,所述参数包括与不同视频子轨的可能或禁止的关联有关的数据,在根据经由HTTP的动态自适应流传输标准即DASH标准来对所述数据进行流传输的情况下,所述可能或禁止的关联是利用标识符属性来指示的。
[0135]根据权利要求48至68中任一项所述的方法,其中,所接收到的视频数据包括:
[0136]-给定数量的视频片段文件,其中每一个视频片段文件包括给定的一段时间内的与所述给定视频和所述η个视频子轨相对应的数据,以及
[0137]-与媒体文件片段相关联的初始化片段,其中所述初始化片段包括与视频轨和所述视频子轨有关的初始化数据。
[0138]在实施例中,所述描述文件还包括与所述初始化片段相关联的URL。
[0139]在实施例中,所述初始化数据包括表示各视频子轨的宽度和高度的值。
[0140]在实施例中,所述初始化数据还包括使得能够将各视频子轨显示在恰当位置处的变换矩阵。
[0141]根据本发明的另一方面,提出一种可编程设备所用的计算机程序产品,所述计算机程序产品包括指令序列,所述指令序列用于在被载入所述可编程设备并由所述可编程设备执行的情况下,执行以上详细所述的方法。
[0142]根据本发明的另一方面,提出一种存储有计算机程序的指令的计算机可读存储介质,所述指令用于执行以上详细所述的方法。
[0143]根据本发明的另一方面,提出一种用于对与给定视频相对应的数据进行流传输的装置,所述给定视频的各帧被分割成η个空间区块,以创建独立的η个视频子轨,其中η是整数,其特征在于,所述装置具有用于执行以上详细所述的方法的部件。
[0144]根据本发明的另一方面,提出一种用于向客户端装置提供数据的服务器装置,所述数据与给定视频相对应,所述给定视频的各帧被分割成η个空间区块,以创建η个独立的视频子轨,其中η是整数,其特征在于,所述服务器装置具有用于执行以上详细所述的方法的部件。
[0145]根据本发明的另一方面,提出一种用于获得与给定视频相对应的数据的客户端装置,所述给定视频的各帧被分割成η个空间区块,以创建η个独立的视频子轨,其中η是整数,其特征在于,所述客户端装置具有用于执行以上详细所述的方法的部件。
【附图说明】
[0146]在以下说明中还出现仅通过示例的方式进行说明并且用附图例示的本发明的其它特性和优点,其中:
[0147]图1a示出与经由HTTP的媒体流传输的一般原理的示例有关的框图;
[0148]图1b是更详细地说明特别是在将帧分割成区块的情况下、根据本发明实施例的经由HTTP的媒体流传输的流程图;
[0149]图1c示意性示出根据本发明实施例的分割成区块的帧和关注区域;
[0150]图1d示意性示出根据本发明实施例的来自分割成区块的空间可分级视频的帧和关注区域;
[0151]图2是示出生成媒体呈现和清单文件的一般原理的示例的框图;
[0152]图3示意性示出用于使用DASH来进行流传输的媒体呈现的传统组织;
[0153]图4示出不涉及子轨的描述文件/清单;
[0154]图5示意性说明根据本发明的用于将初始视频预处理成视频子轨的实施例;
[0155]图5a示意性说明区块化视频帧向条带和条带片段的分割;
[0156]图6示意性说明根据本发明的用于将视频子轨编码并封装成文件格式的实施例;
[0157]图7示意性说明根据本发明的可用于承载各视频子轨的位置的文件格式的框的实施例;
[0158]图8、8a和Sb说明根据本发明的清单/描述文件的不同句法;
[0159]图9给出根据本发明的具有视频子轨的媒体呈现所用的清单/描述文件的完整示例;
[0160]图10是用于实现本发明的一个或多个实施例的计算装置的示意框图;
[0161]图11示出根据本发明的具有视频子轨的媒体呈现所用的清单/描述文件的另一示例;以及
[0162]图12示出根据本发明的具有视频子轨的媒体呈现所用的清单/描述文件中所使用的另一句法。
【具体实施方式】
[0163]图1a描述特别是如DASH那样的经由HTTP的媒体流传输的一般原则。针对经由HTTP的媒体流传输的新协议和标准中的大部分协议和标准均基于该原则。
[0164]媒体服务器100包含不同的媒体呈现。例示出媒体呈现101的示例。这里,媒体呈现101包含音频数据和视频数据。这里,考虑视频是整体的,这意味着该视频没有分割成区块。在该示例中,认为视频和音频交错存在于同一文件中。以下在图2中说明构建该媒体呈现的方式。该媒体呈现已从时间上分割成小的独立且连续的时间片段102、102a和103 (例如,mp4片段),这意味着视频呈现的交错存在的音频/视频数据被分割成三个连续时间片段。可以单独定址并下载这些时间片段。媒体内容的下载地址是HTTP地址。(一个HTTP地址与音频/视频媒体内容的各时间片段相关联。)这些HTTP地址是由服务器100针对这些时间片段中的每一个片段所设置的。
[0165]清单文件104(或描述文件)是XML文档。清单文件104描述时间媒体片段的内容,例如媒体类型(音频、视频、音频-视频、文本…)、编码格式、片段的持续时间。此外,清单文件104使URL与所描述的各媒体内容片段相关联。
[0166]将清单文件104发送至与客户端或服务器有关的客户端装置110。通过阅读所接收到的清单文件105,客户端可以得知不同媒体内容的时间片段和指定这些时间片段的HTTP地址之间的关联。此外,清单文件105给出与媒体呈现的内容(在该示例中为交错存在的音频/视频)有关的信息。例如,该信息可以包括分辨率和/或位率。
[0167]因此,客户端装置110可以请求106下载他想要的在所接收到的清单文件105中所描述的时间片段。
[0168]作为响应,服务器100发送所请求的时间片段107。这些时间片段可以由客户端装置110进行解码108以供显示109。
[0169]图1b更精确地示出根据本发明的(通常采用DASH形式的)经由HTTP的媒体流传输。这里,考虑流式视频数据包括视频轨,以使得将视频轨的各帧分割成η个空间区块(η是整数),从而创建η个独立的视频子轨。
[0170]首先,客户端装置从服务器接收描述文件(采用DASH形式的MPD)(步骤1008)。该描述文件包括与η个视频子轨的空间组织有关的数据和分别指定这些视频子轨的至少η个 URL。
[0171]客户端选择他想要显示的关注区域(ROI)。例如,他想要对如图1c所示的特定区域进行放大。
[0172]图1c示出这里被分割成八个区块T1、T2、…、Τ8的帧1100。在该帧中,客户端决定对图像的右下部的部分1110进行缩放。如图1c所示,该选中部分1110或ROI被两个区块Τ6和Τ8包含。
[0173]图1d示出这里被分割成 八个区块Τ1、Τ2、…、Τ8的作为具有基本层1121和空间增强层1122的可分级视频进行编码的帧1120。基本层帧1121没有区块化,如此增强层1222中的各区块依赖于整个基本层。在该帧中,在用户决定对图像1122的右下部的部分1123进行缩放的情况下,他不仅需要所选择的这两个区块,而且还需要基本层。
[0174]如图1d所示,该选中部分1123或ROI被两个区块Τ6和Τ8以及基本层1121包含。图1d的右部示出作为具有基于区块化的空间依赖性的区块化基本层1131和区块化空间增强层1132进行编码的帧1130:增强层1132处的一个区块仅依赖于基本层1131中的相同位置处的区块。在该结构中,在用户选择R0I1133的情况下,他需要所选择的两个区块1133以及基本层1131中的两个参考区块Τ06和Τ08。
[0175]在图1b中,客户端根据可分级性和区块化方面的视频结构来如图1c或Id所示选择 ROI (步骤 1010) ο
[0176]利用客户端装置选择与由客户端选择的ROI所覆盖的区块相对应的URL(在图c的示例中为T6和T8的URL)(步骤1020)。
[0177]该选择还基于后面更详细地展开的一些兼容性标准。
[0178]将所请求的消息从客户端装置发送至服务器(步骤1030)。各请求消息包括被客户端装置选择的ROI所覆盖的一个区块的URL。如以下更详细地所述,将与区块相对应的视频子轨组织成时间片段。因此,在整个片段中,一个URL指定与区块相对应的视频子轨。
[0179]响应于请求消息,服务器将视频数据(这意味着如以下详述的片段)发送至客户端装置(步骤1040)。如果请求了视频子轨/区块,则将请求消息中的URL所指定的片段发送至客户端装置。
[0180]图2示出媒体呈现和清单文件这两者的生成的主要步骤。
[0181]在并行步骤200和201中,获取音频数据和视频数据。然后,对音频数据进行压缩(步骤202)。例如,对于该步骤,可以使用MP3标准。并行地,对视频数据进行压缩(步骤203)。可以使用如MPEG4、AVC、HEVC或SVC那样的视频压缩算法。一旦进行了压缩阶段,则可利用音频基本流204和视频基本流205。
[0182]将基本流204、205封装为全局媒体呈现(步骤206)。
[0183]全局媒体呈现207是通过封装而得到的。例如,可以使用ISO BMFF标准(或该ISO BMFF向AVC、SVC、HEVC…的扩展)来将编码后的音频基本流和视频基本流的内容描述为全局媒体呈现。
[0184]使用封装后的媒体呈现207来生成(步骤208) XML清单文件209。
[0185]图3示出DASH清单文件的层级内容的示例。该DASH清单文件描述在服务器处可利用的媒体呈现的内容以及各媒体成分(还称为媒体数据)和HTTP地址之间的关联。
[0186]例如,可以将媒体呈现从时间上分割成被称为“时间段(Per1d) ”的粗粒时间段(任意内容的拼接)。
[0187]MPD级的“时间段”描述在一段时间(如果仅存在一个时间段,则可以是媒体呈现的完整持续时间)内可利用的所有媒体成分。在该时间段内,媒体内容成分可以包括与前面提到的小段时间相对应的数个数据片段,以使得能够容易地进行流传输/随机访问/切换。
[0188]XML MH)将包含与各时间段有关的所有数据。通过接收该信息,客户端将获知各段时间的内容。例如,媒体呈现300被分割成各自与一个时间段相对应的数个元素。例如,第二个时间段包括在10s和294s中。
[0189]各媒体呈现的时间段包含描述相应的一段时间内的可用媒体内容成分的数据。更详细地例示媒体呈现的一个时间段301。
[0190]另外,并入了数个“自适应集”元素:用于视频描述的一个“自适应集”元素和用于音频描述的一个“自适应集”元素。使所设置的各自适应集与给定轨相关联。在该示例中,使第一组自适应集与视频轨相关联,并且使第二个自适应集与同所考虑的时间段的所述视频轨相对应的音频轨相关联。
[0191]自适应集结构302包含与在服务器处可利用的编码视频的可能的不同表现有关的信息。在该示例中,第一个表现是以位率500kbit/s进行编码后的空间分辨率为640X480的编码视频。第二个表现是以250kbit/s进行编码后的相同视频。如果用户得知与该视频有关的HTTP地址,则可以利用HTTP请求来下载该视频中的各个。通过使用附加时间子层来进行各表现的内容和HTTP地址之间的关联。
[0192]如附图标记303所示,将视频表现302分割成时间片段(在该示例中为10秒)。
[0193]第一个表现302所得到的带宽为500kbits/s、宽度为640个像素且高度为480个像素。通过字段“片段信息(Segment Info) ” 303给出更多参数。
[0194]第二个表现所得到的带宽为250kbits/s、宽度为640个像素且高度为480个像素。例如,相比第一个表现,该第二个表现可能表示质量下降。客户端将能够根据网络上的可用带宽来在这些表现之间切换。
[0195]各时间片段303是经由HTTP地址可访问的服务器中所存储的内容。另外,可利用初始化片段。该初始化片段包含(在通过使用iso BMFF或扩展已对视频进行了封装的情况下)描述封装后的视频的MP4内容的MP4初始化信息。例如,该初始化片段帮助客户端实例化与视频有关的解码算法。在以下更详细地例示的MPD(或描述文件)中给出了初始化片段和媒体片段的HTTP地址。
[0196]图4给出给定媒体呈现的已知清单文件的示例。该清单是DASH清单(还被称为MPD)。为了更清楚,这里仅说明MPD的主要特征。
[0197]在该MPD中,描述两个媒体。第一个媒体是英语音频流并且第二个媒体是视频流。经由“自适应集”标题来引入英语音频流。两个表现与该音频流有关:
[0198]?第一个表现(id等于“I”)是位率为64000bit/s的MP4封装后的基本流。在标准中利用属性“mp4a.0X40”定义了用于(在利用mp4解析器进行了解析的情况下)处理该基本流的编解码器。利用在相对地址7657412348.mp4处的请求可访问该编解码器。
[0199].第二个表现(id等于“2”)是位率为32000bit/s的MP4封装后的基本流。
[0200]与视频有关的自适应集包括Representat1n_id 为“6,,、“7,,、“8,,、“9,,、“A”和“B”的六个表现。这些表现包含空间分辨率不同(320X240、640X480、1280X720)并且位率不同(256000?2048000位/秒)的视频。对于这些表现各自,关联不同的URL。因此,客户端可以根据例如估计带宽或画面分辨率那样的不同标准来在同一视频的不同表现之间进行选择。
[0201]现在,以下附图更特别地关注本发明的实施例。
[0202]如前面所述,清单文件的自适应集(通过表现标题)承载按不同的空间分辨率和不同的位率进行编码的同一视频的信息。
[0203]本发明使得表现能够描述视频的子部分。实际上,在现有技术中已知的DASH标准中,没有定义用于描述同一视频的子部分的属性。换句话说,通过使用DASH标准,不能直接发送视频的不同子部分所用的绝对或相对本地化信息。
[0204]在本实施例中(通过以下附图),示出可以如何添加该可能性。
[0205]图5示出视频区块化的概念和如何将该概念应用于视频。通过三个帧来代表视频500。将各帧501分割成被称为Tn(η为I?8)的八个矩形。当然,区块的数量和形状可以不同。例如,视频的区块可以具有不同的维度。
[0206]然而,在该示例中,考虑为无论视频帧501的索引如何,区块化都将相同。还考虑为区块具有相同的水平和垂直大小。
[0207]在图5的底部给出该区块化的结果502。获得八个独立视频子轨。这些视频子轨是整个全局视频的分区。根据优选实施例,这些视频子轨被视为独立视频并且独立进行压缩。
[0208]注意,本发明可容易地应用于具有一个基本层和至少一个增强层的可分级视频。在第一实施例中,仅增强层被分割成区块。结果,在请求区块的情况下,客户端还请求相应的基本层,结果该相应的基本层由服务器发送至客户端。
[0209]在另一实施例中,基本层和增强层都被分割成区块。在这种情况下,可以将各层中的相应区块的URL发送至服务器,并且作为响应,服务器将各层中的相应区块发送至客户端装置。
[0210]图5a说明采用HEVC格式的特定区块和条带组织。HEVC标准定义图片的不同的空间子分割:区块、条带和条带片段。这些不同的分区是为了不同的目的而引入的:条带与流传输问题有关,而区块和条带片段是为了能够进行并行处理而定义的。
[0211]区块定义包括本领域技术人员原本称为IXU(Largest Coding Unit,最大编码单位)的整数个编码树单元(Coding Tree Unit, CTU) 553的、图片的矩形区域。如图5a所示,区块化仅由行边界551和列边界552来定义。这样使得区块从位置和大小方面成为关注区域描述的良好候选。然而,HEVC位流组织在句法和封装成网络抽象层(Network AbstractLayer, NAL)单元方面却是基于条带(如高级视频编码(Advanced Video Coding)那样)。
[0212]HEVC中的条带是条带片段的集合,其中至少第一个条带片段是独立条带片段,并且其它条带片段(在存在的情况下)是依赖条带片段。条带片段包含整数个连续(按光栅扫描顺序)CTU。条带片段不必是矩形形状(因而对于ROI表现不如区块适合)。将条带片段作为以下两个部分编码在HEVC位流中:slice_segment_header,之后是slice_segment_data。
[0213]独立条带片段和依赖条带片段的头部不同:依赖条带片段由于重复使用来自独立条带片段的头部的信息,因而具有较短的头部。独立条带片段和依赖条带片段这两者都包含位流中的进入点的列表:向区块的进入点或向熵解码同步点的进入点。进入点定义HEVC位流中的位置。通过使用特定代码或通过在表中进行参考可标识进入点。进入点与特定句法元素(例如,NAL单元或条带片段的开头)相对应。
[0214]为了更好地理解条带、条带区块和区块之间的关系,图5a在560和570中示出不同的结构。这些结构不同于第一个结构550。结构550将与一个区块具有一个条带(仅包含一个独立条带片段)的情况相对应。在第二个结构560中,将图片划分成利用粗虚线隔开的两个垂直区块561、562以及(具有五个条带片段的)一个条带。
[0215]在该图的右部,将图片570分割成粗虚线所示的两个区块571、572。左侧的区块571具有由粗平线定界的两个条带(各自具有一个独立条带片段和一个依赖条带片段这两个条带片段),并且右侧的区块572具有一个条带(具有一个独立条带片段和一个依赖条带片段这两个条带片段)。HEVC标准定义可以总结为如下的区块和条带片段之间的组织规则(必须满足一个或者两个条件)。
[0216]-条带片段中的所有CTU都属于同一区块。
[0217]-区块中的所有CTU都属于同一条带片段。
[0218]为了匹配关注区域的支持和输送,优选考虑一个区块包含具有一个独立片段的一个条带的图5a的结构550。然而,封装解决方案也适合其它结构560或570。
[0219]如图5a所示,在图片参数集(Picture Parameter Set) 590中的HEVC位流中用信号表示区块。如果使用规则的区块化,则参数“unif0rm_Spacing_flag”取值“I”并且仅需要区块列551和行552的数量。否则,将参数“uniform_spacing_flag”设置为O并且将各列和行位置编码在编码树单元(通常为64X64个像素的大小)的数量中。
[0220]图6示出封装阶段。在进行流传输之前,必须处理与各区块相对应的数据以按标准格式进行封装。
[0221]获取与八个区块相对应的数据(步骤600),以作为编码步骤601的输入。独立对与各区块相对应的数据进行压缩和编码(步骤601)。可以使用任何视频压缩算法。例如,可以使用H264、HEVC、MPEG-2。一旦对与区块相对应的数据进行了编码(步骤601),则必须将由此得到的基本流封装成文件格式。(如标准DASH中所提出的)可以使用ISO BMFF (或该媒体文件的扩展)。
[0222]以下将包含视频的八个子部分的八个视频轨称为“视频子轨”。由于已对与八个视频子轨相对应的数据进行了编码,因此将在ISO BMFF文件中定义这八个视频子轨。可以将八个视频子轨整体作为同一视频呈现的不同轨来进行观看。当然,可以使用如视频或文本轨那样的附加轨。然而,为了更清楚,在该图中将不说明其它种类的介质的插入。
[0223]首先,在封装处理602期间,生成媒体呈现602a。将一个位置信息设置在初始化片段603中。该初始化片段包含与相应的视频子轨相关联的初始化数据。在这些数据中,(如在下一附图中更详细地所述)优选指定各视频子轨的位置。
[0224]除初始化片段603外,封装处理602生成与小段时间相对应的片段文件604、605(在生成MPD的情况下经由URL能够访问的媒体片段)的集合。在该图的示例中,定义两个小段时间。这意味着将各视频子轨从时间上分割成两个小段时间。在给定时间段内将片段文件的不同集合分配至各视频子轨。通过使用该处理,客户端可以请求针对任何所提出的时间段的任何所提出的视频子轨。
[0225]视频片段的第一集合604与第一时间段的不同轨(子视频)相对应。媒体片段的第二集合605与同一视频轨的接下来的第二时间段相对应。当然,本发明不限于这两个时间段。不限制时间段的数量。注意,考虑到框604和605不是现有的容器,利用虚线示出这些框。
[0226]如以下所述,使URL与各片段文件相关联,以使得客户端可以请求所选择的ROI所覆盖的区块。
[0227]注意,在图3中,说明了两个时间分解:
[0228].在块300中,任意内容的拼接,以及
[0229].在块302/303中,小段时间的生成。
[0230]在图6中,考虑了任意内容的拼接生成仅一个全局时间段,并且与各视频子轨相对应的数据被封装成与两个小段时间相对应的两个媒体片段。
[0231]图7示出可以如何构建图6中 的附图标记为603的初始化片段以承载各视频子轨的位置。提到视频子轨是采用文件格式的句法的视频轨。初始化片段是ISO文件700。
[0232]如在ISO BMFF标准中所定义的,该文件包含数个框。为了更清楚,不对已知的框进行说明。由于在该示例中定义了八个视频子轨(表示八个视频轨),因此封装后的媒体呈现的“moov”框应包含八个“ trak”框701。
[0233]该“trak”框的示例的附图标记为702。该“trak”框与第一个视频子轨相关联。该“trak”框还包含数个框。使用第一个框“tkhd” 703来承载视频子轨的位置。该框包含数个属性。本发明中特别使用的属性是矩阵704。该矩阵包含视频子轨的宽度和高度以及使得能够将相应轨显示在恰当位置处的变形矩阵。
[0234]图7给出的该矩阵的参数仅是示例。必须根据不同视频子轨的形状来对这些参数进行微调:实现该矩阵,以使得这些视频子轨的同时显示覆盖图5中附图标记为500的初始视频的区域。
[0235]图8示出描述文件(或DASH标准中的MPD)。在DASH标准中,清单的句法(MPD句法)不允许考虑区块的概念。
[0236]图8示出可以包括在清单/描述文件(DASH MPD)中的用于向客户端通知不同的视频子轨的存在和位置的元素。在图8中给出MPD的部分视图。
[0237]在MPD的左部示出区块化视频帧800的示例,以使区块与其在MPD中的表示关联。在该示例中,区块化视频帧包括四个区块1: 1、1: 2、2:1和2: 2,其中在区块化视频帧800的左侧和上侧示出宽度和高度。
[0238]部分视图801描述包含与视频子轨有关的信息的自适应集。为了更清楚,在该图中仅显示与一个视频子轨有关的数据。因而,没有描述其它子视频。然而,针对其它子视频的描述相同(该描述使用相同的句法但具有其它URL)。
[0239]使用自适应集(“Adaptat1nSet”)801来描述作为整个初始视频的区块的一个视频子轨。该自适应集包含一个视频子轨的一个表不,其中该表不由如同分辨率那样的标准来定义,而且例如还可以由帧频或带宽来定义。这些标准使得客户端装置能够一起或相继选择或不选择视频子轨的表示。实际上,在实施例中,具有第一值的分辨率或帧频的视频子轨无法利用具有第二值的分辨率或子轨的另一子轨来进行选择。
[0240]在自适应集801中,提出了用于用信号通知该自适应集表示媒体呈现中的视频子轨的(相比现有技术的)附加元素。该附加元素是用信号通知与视频子轨相对应的区块的存在和位置这两者的新方案802。
[0241]特别地,根据本发明,提出了 DASH标准的“角色(Role)描述符”的新方案。通过“ scheme I dUr i ”属性来定义“角色”描述符的新方案。针对“ scheme I dUr i ”属性定义被称为“区块化”的新类型。另外,利用用于表示表现现有区块中的哪个区块的附加属性来完成schemeldUri的新类型。
[0242]换句话说,如果可利用N个区块,则角色描述符的属性“schemeldUri”例如等于“urn:mpeg: dash: tiling: 2013”(只要在DASH的上下文中是唯一的,就可以是任何值)。然后,角色描述符经由其属性用信号通知可以配置到一起的区块以及这些区块各自的位置。角色描述符中的该新方案的优选句法为以下句法:
[0243]〈Role schemeldUri =“urn:mpeg:DASH: tiling: 2013,,Id = ‘T’value =“x:y,,/>0
[0244]属性“Id”是表示可能的或禁止的关联的标识符属性。
[0245]变量T标识可以合并到一起的区块的集合。相同的“Id = T”变量表示区块是从相同的初始视频发出的,这意味着具有相同的分辨率。结果,可以对这些区块共同进行流传输以由客户端组装。变量“Id = T”是可选的。在默认的情况下,如果不存在变量“Id = T”,则可以将所定义的所有区块组合到一起(这些区块是从同一初始视频发出的)。“T”是整数。
[0246]属性“值”使得能够标识区块的位置。整数“X”和“y”用信号通知当前区块在从左向右从上向下的区块的集合中的水平和垂直位置。整数“X”和“y”严格来说为正。例如,如果已将初始视频分割成两个水平线的区块并且如果将各水平线分割成四列区块(生成八个区块),则值=“3.2”表示区块在第三列第二条线上。如果将“X”和“y”值设置为“0”,则这表示与方案相关联的视频是初始视频的非区块化版本、即该视频是全帧视频。在默认的情况下,如果不存在区块化角色,则视频是非区块化视频。在MPD解读中存在混淆风险的情况下,这可能是有用的。
[0247]在该示例中,方案802的值指定与区块“1:2”相关联的视频。
[0248]可选地,在需要明确非视频媒体成分与区块化视频成分的分组的情况下,还可将所提出的方案用于非视频(而是例如仅音频或文本)的媒体成分(或媒体数据)。在这种情况下,针对不同的媒体成分的相同Id使得能够在这些媒体成分之间进行关联(可以同时播放不同的媒体成分)。
[0249]在该优选实施例中,“值”属性包括两个整数值。然而,可能存在其它变量。例如,值属性的句法可以如下:
[0250].值=“x:X:y:Y”或逗号隔开:值=“x:X,y:Y”或示例812上那样的水平位置和垂直位置之间的无论何种分隔符,具有以下含义:
[0251]- ‘X’用信号通知整组列中的区块的水平位置(区块的索引);
[0252]- ‘X’用信号通知列的数量;
[0253]- ‘y’用信号通知整组字行中的区块的垂直位置(区块的索引);以及
[0254]- ‘Y,用信号通知字行的数量。
[0255]例如,参考图5,区块T6的信令将如下:
[0256].〈Role schemeldUri = “urn:mpeg: DASH: til ing: 2013,,Id = ‘I,值=“2:4:2:2,,/> 或逗号隔开:schemeldUri = “urn:mpeg:DASH: tiling:2013” Id = ‘I,value=“2:4,2:2”’ />或水平位置和垂直位置之间的无论何种分隔符。方案812的值指定与区块“ 1:2”相关联的视频并且提供区块化是“2X2”网格的信息。
[0257]在视频帧800所示的示例中,如以下在图8a中所述,将初始视频分割成相同大小的区块。然而,这并非限制性的。区块可以具有不同的大小。例如,可以根据四叉树分割生成区块。在这种情况下,OschemeIdURI等于“urn:mpeg:dash: tiling:2013”的句法应考虑到区块分割的性质。新的句法可以如下:
[0258]〈Role schemeldUri = “urn:mpeg:DASH:tiling:2013” Id = ‘T’ value =“coordinates,,coordinate_system = “C,,/>o
[0259]“坐标”将是根据坐标系的可选标识符可识别的值(或一组值)(在该示例中为值“C”)。坐标系的示例可以是用以定义以像素为单位的区块的绝对位置,实际上这是默认情况。坐标将是区块的左上角的以像素为单位的位置(x,y)。在没有指定“coordinatesystem”属性的情况下,除非在表示区块化网格中的位置的值中存在“:”字符,否则假定将属性“value”中所给出的坐标表示成像素位置。区块的大小将由表现的标准属性宽度和高度来定义。例如,在图8中附图标记为821的代码部分中,描述了左上角位于位置列=0、行=240的区块。所有的代码部分示例801、811、821提供具有区块化信息或无区块化信息的区块位置。必须根据关联的“R印resentat1n”元素来解析区块大小。
[0260]图8a提供HEVC区块的特定上下文中的区块位置和大小的替代信令。在该图8a的右部,提供区块化视频帧的三个示例860、870和875。每一个示例均与以下详述的特定结构相对应。
[0261]如参考图5a所述,经由区块行和列边界位置在位流中用信号通知HEVC区块(例如,返回至图5a,附图标记为550的区块化视频帧示出两个行551和两个列552的边界,这样得到3X3的区块化结构)。如此,提出了将如图8a的示例861那样的区块化组织放置在描述区块的“Role”元素862中。在该示例中,使用属性“grid”表示区块化是否规则来作为第一值。这在MPD中从HEVC标准中所定义的HEVC位流直接翻译uniform_space_flag。
[0262]在如区块化视频帧860那样、区块化是规则的情况下,grid属性中的其它值提供(如在HEVC位流中进行编码的)区块列-1的数量和行-1的数量。如区块化视频帧860的附图标记为862的字行那样,水平维度上的区块的该数量是根据HEVC位流参数num_tileS_columns_minusl直接算出的,并且垂直维度上的区块的数量是根据HEVC位流参数num_tiles_rows_minusl直接计算出的。该概念使得能够直接以MPD的形式翻译HEVC图片参数集的值(num_tiles_columns_minusl 和 num_tiles_rows_minusl)。除 grid 属性外,需要全帧视频的大小以能够计算区块大小和位置(参见附图标记为862的字行)。
[0263]在如区块化视频帧871或873所示、区块化不均匀的情况下,第一个值等于O的grid属性暗示“Role”元素必须使得能够提取以像素为单位给出的各列的位置的列表和各行的位置的列表。在这种情况下,定义行和列的区块边界的数量包含在“grid”属性的后续值中。区块化视频帧872提供属性的可能名称以表示行和列边界位置(然而在生成和解析这两者时,这些可能的名称可以是不同的名称而不会影响本发明)。利用全帧视频的宽度和高度将行和列边界位置指定到像素(参见字行872)中。
[0264]作为另一实施例(未示出),对于规则区块化,可以将grid以及width和height属性简化成例如grid =“w, h, W,H”那样的一个属性,其中w和h分别提供区块的大小(以像素为单位的宽度和高度),并且W和H分别提供全帧视频的以像素为单位的大小。在应用于示例861,862的情况下,这样得到grid = “320,240,640,480”。对于DASH客户端,这具有更容易解析句法(一个属性而不是862中的三个不同属性提供了所有这四个值)的优点。
[0265]区块化结构信号通知的另一实施例是使区块化信息处于信号通知的最高水平。因而,可以根据与区块相关联的所有字段“R印resentat1n”对区块化结构信号通知进行一次描述并进行使用。这样降低了描述成本并缩短了清单大小,从而潜在地缩短了清单的下载时间并缩短了流传输应用的启动延迟。
[0266]在图Sb中,代码881和886的一部分例示用以描述区块化结构的这种元素作为示例。代码881和886的这些部分与图8b的右部示意性示出的两个区块化视频帧880和885有关。
[0267]来自该区块化结构的任何区块表现可以经由前面所述的区块化“Role”元素的“id”属性来指代该区块表现。uniform属性表示区块化是否是uniform_spacing_flag HEVC标志的规则的直接翻译。在设置为I的情况下,以下属性cols (columns的简称)和rows表示区块列的数量-1和区块行的数量-1。
[0268]在附图标记为880的示例中,存在仅一个区块行边界和一个区块列边界。最后两个属性提供全帧视频的维度宽度和高度。在如在区块化视频帧885上那样区块化不均一的情况下,“tiling”元素包含提供区块列和行的以像素为单位的位置的子元素(如字行887所示,每个维度一个元素)。在区块化结构沿着时间改变的情况下,创建新的时间段?Per1d?。该新时间段包含新的区块化结构。
[0269]在清单经由“tiling”元素描述多个区块化结构的情况下,可以通过在描述给定区块的Role中添加新的属性,经由应用于该区块的区块化的“id”属性来指代该区块化。例如:〈Role schemeldUri = “urn:mpeg:DASH:tiling:2013” Id = <tiling_l? value =“0,0”/>。然后,存在用以通知与区块化结构有关的流传输客户端的两个替代。该信息是有用的,例如用以向用户通知视频中的可寻址空间区域。具有属性的方法使针对各区块的信息重复。结果,不够紧凑,但具有使所有区块相关信息保持在同一元素中的益处。这样在利用内容分发网络中的任何中间节点应用于清单的变换的情况下提供鲁棒性。
[0270]考虑到经由“Role”元素的区块的鲁棒性方面和自明性,除位置信息外,还有兴趣将大小信息放置在“value”属性中。在本实施例中,“value”属性按以下顺序指定四个整数的逗号分隔的列表:左上角的X和y位置以及区块的宽度和高度。例如,如后面所述的图12那样,值='7,《,11”。用于表示区块的位置的坐标系是2D坐标系,其中原点是任意的,但针对区块化角色的id相同的所有表现应相同。另外,假定X轴朝向画面的右侧并且y轴朝向下侧。观看者可以使用宽度和高度来渲染多个区块并使这些区块在空间上对齐。
[0271]另一实施例提出了通过使用在W3C MediaFragments URI 1.0中所定义的针对空间片段的句法来表示区块的位置和大小。这样得到如value = “#xywh = O, O, 320, 240”那样的“value”属性以描述图片860中的第一个区块(参见图8a)。这样向还支持Media Fragments URI规格的流传输客户端提供了优势。实际上,如果例如使用MediaFragments URI来链接至要显示的视频,则具有Media Fragments URI的客户端将自动使“R印resentat1n”与恰当的空间片段匹配,由此使得更容易选择自适应逻辑。此外,在服务器也支持Media Fragments URI的情况下,流传输客户端可以使用采用MPD的BaseURL并且将value属性的值放置到如按照Media Fragments URI规格所指定的HTTP范围头部中,以直接请求相应的区块。使用Media Fragments URI句法的另一优点是可以利用客户端对如此形成的URL标记书签并且分发,以使得任何其它的Media Fragments URI客户端可以访问相同的区块。
[02 72]在各区块自己的“Adaptat1n Set”中单独描述该区块的情况下,客户端难以标识“R印resentat1n”与哪个全帧视频有关。以前提出了在描述区块的“Role”元素即“tiling Role”中使用特殊值=“0:0”。然而,可以以相同方式描述全帧视频。对区块的“Representat1n”加注解(即,使用“tiling”Role (未示出))。在这种情况下,与全帧视频的“Representat1n”相关联的“tiling” Role的“id”属性被设置为与包括该全帧视频的区块的“tiling”R0le的“id”属性相同的值。在默认的情况下,在使“tiling”R0le与无任何value属性的视频“Representat1n”相关联的情况下,该“Representat1n”只能被视为全帧视频。更明确地,该“Representat1n”可以具有value属性。在这种情况下,x和y字段取0,O作为左上角的值,而w和h取全帧视频的宽度和高度的值。在声明“tiling”元素的情况下,全帧视频“Representat1n”的区块化Role当然可以经由其“id”指代该区块化,以使得从区块到全帧视频的关系对于流传输客户端而言是明确的。针对全帧视频信令的任何上述描述均具有使用清单来避免客户端的模糊性的优点。然而,为了保持尽可能接近标准,还可以使用传统的Role元素,其中将标准的“alternate”和“main”字段分别分配至包含区块“Representat1n”的自适应集和包含全帧视频“Representat1n”的自适应集。在同一 Adaptat1nSet中声明了所有这些Representat1n的情况下,可以使用针对各Representat1n 的一个 ContentComponent 元素来描述各 Representat1n 的各 Role。
[0273]在图11中更详细地描述该情况。该示例描述包括四个空间区块 960X540(Representat1n 1101、1102、1103、1104)的 HD 视频(1106 中的Representat1n。各区块具有自己的“Adaptat1nSet”以及关联的“Representat1n”加上“tiling”Role。仅存在利用“TS1”标识的可以关联的四个区块的一个集合。
[0274]定义两个子集1105以表示第一子集中的全帧视频和来自第二子集的任何区块或区块的组成之间的替代。根据图11的示例可以很容易推断出,在例如在带宽方面给定区块可利用数个“Representat1n”方案的情况下,DASH所提供的动态切换机制未被损坏。
[0275]图9是示出本发明所定义的新方案的使用的完整示例。该示例采用DASH标准(MPD)作为参考。在该图中,描述了媒体呈现(视频媒体和音频媒体)。描述了以下两个子集:
[0276].第一个子集包含Id为‘0’、‘1’、‘2’和‘3’的自适应集;以及
[0277].第二个子集包含标签Id为‘4’、‘5’和‘6’的自适应集。
[0278]如上所述,子集的使用使得能够指定无法将一些自适应集一起进行流传输。无法将第二子集的自适应集与第一子集的自适应集进行流传输。在第一子集中,可利用(具有和不具有新方案的)音频表现和视频表现。即使不支持方案“tiling”(始终理解无该方案的MPD句法),这些表现也向客户端提供对媒体数据进行流传输的可能性。
[0279]在第一方面中,通过使用字行900来描述包含第一个视频表现的自适应集:
[0280].〈Role schemeldUri = “urn:mpeg: DASH: tiling: 2013” Id = “I” value =“0:0,,/>o
[0281]该字行表示与该自适应集相关联的表现是视频的非区块版本(值=“0:0”)。
[0282]使具有本发明中所提出的方案的字行与包含音频媒体910的自适应集相关联:
[0283].〈Role schemeldUri = “urn:mpeg:DASH: tiling: 2013” Id = “ I,,/>。
[0284]该字行表示该自适应集中所包括的音频媒体与视频的非区块版本有关。还可以添加可选字段‘value =“0:0”’,但该字段在该示例中是无用的。
[0285]在第二子集(Id = ‘4’、‘5’和‘6’的自适应集)中,通过新方案来描述两个视频子轨。在‘Id’等于‘4’的自适应集中包含与第一个区块有关的表现元素。指定第一个视频子轨的字行920如下:
[0286].〈Role schemeldUri = “urn:mpeg: DASH: tiling: 2013” Id = “I” value =“1:1”/〉。
[0287]指定第二个视频子轨的字行930如下:
[0288].〈Role schemeldUri = “urn:mpeg: DASH: tiling: 2013” Id = “I” value =“1:2,,/〉。
[0289]该字行指定自适应集中所包括的表现包含与区块的第二字行的第一区块有关的URL0
[0290]具有本发明中所提出的方案的字行940与包含音频媒体的(第二个子集的)自适应集相关联:
[0291].〈Role schemeldUri = “urn:mpeg:DASH: tiling: 2013” Id = “ I ”/>。
[0292]该字行表示该自适应集中所包括的音频媒体与视频子轨的区块版本其中之一有关。
[0293]图10是用于实现本发明的一个或多个实施例的计算装置1000的示意框图。计算装置1000可以是诸如微计算机、工作站或轻薄便携式装置等的装置。计算装置1000包括通信总线,其中该通信总线连接有以下组件:
[0294]-诸如微处理器等的表示为CPU的中央处理单元1001;
[0295]-表示为RAM的随机存取存储器1002,用于存储本发明实施例的方法的可执行代码以及如下寄存器,其中这些寄存器被配置为记录实现用于读取和写入清单以及/或者对视频进行编码以及/或者读取或生成采用给定文件格式的数据的方法所需的变量和参数,其中RAM 1002的存储器容量例如可以利用连接至扩展口的可选RAM来扩展;
[0296]-表示为ROM的只读存储器1003,用于存储实现本发明实施例所用的计算机程序;
[0297]-网络接口1004,其通常连接至可以进行要处理的数字数据的发送或接收所经由的通信网络。网络接口 1004可以是一个网络接口、或者包括不同的网络接口的集合(例如,有线接口和无线接口或者不同种类的有线接口或无线接口)。在CPU 1001中所运行的软件应用程序的控制下,将数据写入网络接口以供发送或者从网络接收读取数据以供接收;
[0298]-用户接口1005,用于从用户接收输入或向用户显示信息;
[0299]-表示为HD的硬盘;
[0300]-1/O模块1007,用于相对于诸如视频源或显示器等的外部装置进行数据的发送/接收。
[0301]可执行代码可以存储在只读存储器1003中、硬盘1006上或者例如盘等的可移除数字介质上。根据变形例,程序的可执行代码可以利用通信网络经由网络接口 1004来接收,从而在执行之前存储在诸如硬盘1006等的通信装置1000的存储部件其中之一内。
[0302]中央处理单元1001被配置为控制和引导根据本发明实施例的程序的指令或软件代码的一部分的执行,其中这些指令存储在上述存储部件其中之一内。在通电时,CPU 1001例如能够在从程序ROM 1003或硬盘hard-disc(HD) 1006下载了来自主RAM存储器1002的与软件应用程序有关的指令之后,执行这些指令。这种软件应用程序在由CPU 1001执行的情况下,使得进行上述附图所示的流程图的步骤。
[0303]在本实施例中,该设备是使用软件来实现本发明的可编程设备。然而,可选地,本发明可以以硬件形式(例如,以专用集成电路或ASIC的形式)来实现。
[0304]尽管以上已经参考具体实施例说明了本发明,但本发明不限于这些具体实施例,并且本领域技术人员将明白存在于本发明的范围内的变形。
[0305]例如,本发明可以嵌入用作TV的远程控制器的如照相机、智能电话或平板终端那样的装置中,以例如缩放到特定关注区域上。还可以从相同装置使用本发明,以通过选择特定关注区域来获得TV程序的个性化浏览体验。用户根据这些装置和方法的另一用途是与其它所连接的装置共享他所喜好的视频中的一些选中的子部分。本发明还可用在智能电话或平板终端中以监视在处于监控下的建筑物的特定区域中发生了什么,只要监控照相机支持根据本发明的用于提供数据的方法即可。
[0306]在参考仅以示例方式给出并不意图限制本发明的范围的前述例示实施例的情况下,许多其它修改和改变对本领域普通技术人员是不言自明的,其中所述范围仅由所附权利要求书来确定。特别地,在适当情况下,可以互换来自不同实施例的不同特征。
【主权项】
1.一种用于对与给定视频相对应的数据进行流传输的方法,所述给定视频的各帧被分割成η个空间区块,以创建独立的η个视频子轨,其中η是整数,所述方法包括以下步骤: ?利用服务器将描述文件发送至客户端装置,所述描述文件包括与所述η个视频子轨的空间组织有关的数据以及分别指定各视频子轨的至少η个URL ; ?利用所述客户端装置,根据所述客户端装置或所述客户端装置的用户所选择的一个关注区域来选择一个或多个URL ; ?利用所述服务器来从所述客户端装置接收用于请求由此得到的多个视频子轨的一个或多个请求消息,各请求消息包括所述客户端装置所选择的URL其中之一;以及 ?响应于所述请求消息,利用所述服务器将与所请求的视频子轨相对应的视频数据发送至所述客户端装置。2.根据权利要求1所述的方法,其中,所述描述文件还包括指定与完整的所述给定视频相对应的轨的URL,并且在所述客户端装置没有根据一个关注区域选择任何URL的情况下,所述服务器从所述客户端装置接收包括完整的视频轨的URL的请求消息,并且响应于该请求消息来将与所述完整的视频轨相对应的视频数据发送至所述客户端装置。3.根据权利要求1或2所述的方法,其中,所述给定视频是包括基本层和至少一个增强层的可分级视频,所述η个视频子轨与增强层相对应;所述给定视频还包括基本层视频轨,所述描述文件还包括所述基本层视频轨的URL ;并且在所述客户端装置根据一个关注区域选择至少一个URL的情况下,所述客户端装置还选择所述基本层的URL,所述服务器还从所述客户端装置接收用于请求所述基本层视频轨的一个请求消息,该请求消息包括所述基本层视频轨的URL,并且所述服务器还响应于该请求消息,来将与所请求的基本层视频轨相对应的视频数据发送至所述客户端装置。4.根据权利要求1或2所述的方法,其中,所述给定视频是包括基本层和至少一个增强层的可分级视频,所述η个视频子轨与增强层相对应;所述基本层的各帧也被分割成各自与所述增强层中的区块相对应的η个空间区块,以创建独立的η个基本层子轨; 在所述客户端装置根据一个关注区域选择至少一个URL的情况下,所述客户端装置还选择相应的基本层子轨的URL,所述服务器还从所述客户端装置接收用于请求所述基本层子轨的一个请求消息,该请求消息包括所述基本层子轨的URL,并且所述服务器还响应于该请求消息,来将与所请求的基本层子轨相对应的视频数据发送至所述客户端装置。5.根据权利要求1至4中任一项所述的方法,其中,在所述描述文件中,利用子分割成每一个具有预先确定的高度和宽度的给定数量的行和列的网格来定义所述η个空间区块的结构。6.根据权利要求5所述的方法,其中,所述η个空间区块的结构定义具有均一面积或非均一面积的空间区块。7.根据权利要求5或6所述的方法,其中,各空间区块是矩形区域。8.根据权利要求6或7所述的方法,其中,在所述空间区块具有均一面积的情况下,所述网格是利用水平维度和垂直维度这两者中的边界的数量所指定的。9.根据权利要求6或7所述的方法,其中,在所述空间区块具有非均一面积的情况下,所述网格是利用行和列的数量以及行和列的边界的位置所指定的。10.根据权利要求1至9中任一项所述的方法,其中,所述数据是根据经由HTTP的动态自适应流传输标准即DASH标准进行流传输的,所述描述文件是媒体呈现描述文件。11.根据权利要求10所述的方法,其中,各URL指定预定义的一段时间内的轨或视频子轨的片段。12.根据权利要求11所述的方法,其中,所述η个空间区块的结构是通过使用相对于整个一段时间的句法元素针对各段时间所定义的。13.根据权利要求11所述的方法,其中,所述描述文件针对每段时间包括针对各视频子轨所定义的参数的集合, 所述参数的集合包括包含与以下内容有关的数据的描述符: a.轨的类型:视频轨或视频子轨,以及/或者 b.在轨是视频子轨的情况下,空间区块的位置和所述η个空间区块的结构。14.根据权利要求11所述的方法,其中,所述描述文件针对每段时间包括针对各区块所定义的参数的集合, 所述参数的集合包括称为角色元素即Role元素的描述符,该Role元素包含与以下内容有关的数据: a.轨的类型:视频轨或视频子轨,以及/或者 b.在轨是视频子轨的情况下,对所述η个空间区块的结构的参考。15.根据权利要求12至14中任一项所述的方法,其中,在轨是视频子轨的情况下,描述符还包括用以指定所考虑的区块相对于所述η个空间区块的结构的位置的方案。16.根据权利要求15所述的方法,其中,所述空间区块的位置是通过参考网格的行和列的索引来指示的。17.根据权利要求15所述的方法,其中,所述空间区块的位置是通过参考所述空间区块的左上角的以像素为单位的位置以及所述空间区块的宽度和高度来指示的。18.根据权利要求15所述的方法,其中,所述空间区块的位置是利用指定坐标系中的位置来指示的。19.根据权利要求15所述的方法,其中,所述空间区块的位置被表示为空间媒体片断。20.根据权利要求1至19中任一项所述的方法,其中,所述视频数据与表示相同内容的各自具有不同分辨率的m个视频相对应,并且各视频的各帧被分割成η个空间区块,以创建独立的m*n个视频子轨,其中m是整数。21.根据权利要求10至20中任一项所述的方法,其中,所述描述文件包括视频子轨的参数,所述参数包括与不同视频子轨的可能或禁止的关联有关的数据,在根据经由HTTP的动态自适应流传输标准即DASH标准来对所述数据进行流传输的情况下,所述可能或禁止的关联是利用标识符属性来指示的。22.根据权利要求1至21中任一项所述的方法,其中,所述 方法还包括以下步骤: -获取与所述给定视频相对应的数据, -对所获取到的数据进行压缩, -封装压缩后的数据,所述封装包括: ?生成给定数量的视频片段文件,每一个视频片段文件包括给定的一段时间内的与所述给定视频和所述η个视频子轨相关联的数据,以及 ?生成与媒体文件片段相关联的初始化片段,所述初始化片段包括与视频轨和视频子轨有关的初始化数据,以及 -根据封装后的数据来生成所述描述文件。23.根据权利要求22所述的方法,其中,所述描述文件还包括与所述初始化片段相关联的URL。24.根据权利要求22或23所述的方法,其中,所述初始化数据包括表示各视频子轨的宽度和高度的值。25.根据权利要求24所述的方法,其中,所述初始化数据还包括使得能够将各视频子轨显示在恰当位置处的变换矩阵。26.—种用于利用服务器装置向客户端装置提供数据的方法,所述数据与给定视频相对应,所述给定视频的各帧被分割成η个空间区块,以创建独立的η个视频子轨,其中η是整数,所述方法包括以下步骤: ?生成描述文件,所述描述文件包括与所述η个视频子轨的空间组织有关的数据以及分别指定各视频子轨的至少η个URL ; ?将所述描述文件发送至所述客户端装置;以及 ?基于一个或多个所述客户端装置或所述客户端装置的用户的请求来发送与给定数量的视频子轨相对应的视频数据,其中各请求包括所述URL其中之一。27.根据权利要求26所述的方法,其中,所述描述文件还包括指定与完整的所述给定视频相对应的轨的URL,并且所述服务器装置基于包括完整的视频轨的URL的客户端装置请求来将与所述完整的视频轨相对应的视频数据发送至所述客户端装置。28.根据权利要求26或27所述的方法,其中,所述给定视频是包括基本层和至少一个增强层的可分级视频,所述η个视频子轨与增强层相对应;所述给定视频还包括基本层轨,所述描述文件还包括所述基本层轨的URL,并且所述服务器装置还基于包括所述基本层轨的URL的客户端装置请求,来将与所述基本层轨相对应的视频数据发送至所述客户端装置。29.根据权利要求26或27所述的方法,其中,所述给定视频是包括基本层和至少一个增强层的可分级视频,所述η个视频子轨与增强层相对应;所述基本层的各帧还被分割成各自与所述增强层中的区块相对应的η个空间区块,以创建独立的η个基本层子轨,所述描述文件还包括所述基本层子轨的URL,并且所述服务器装置还基于包括所述基本层子轨的URL的客户端装置请求,来将与所述基本层子轨相对应的视频数据发送至所述客户端装置。30.根据权利要求26至29中任一项所述的方法,其中,在所述描述文件中,利用子分割成每一个具有预先确定的高度和宽度的给定数量的行和列的网格来定义所述η个空间区块的结构。31.根据权利要求30所述的方法,其中,所述η个空间区块的结构定义具有均一面积或非均一面积的空间区块。32.根据权利要求30或31所述的方法,其中,各空间区块是矩形区域。33.根据权利要求30或31所述的方法,其中,在所述空间区块具有均一面积的情况下,所述网格是利用水平维度和垂直维度这两者中的边界的数量所指定的。34.根据权利要求30或31所述的方法,其中,在所述空间区块具有非均一面积的情况下,所述网格是利用行和列的数量以及行和列的边界的位置所指定的。35.根据权利要求26至34中任一项所述的方法,其中,所述数据是根据经由HTTP的动态自适应流传输标准即DASH标准来发送的,所述描述文件是媒体呈现描述文件。36.根据权利要求35所述的方法,其中,各URL指定预定义的一段时间内的轨或子轨的片段。37.根据权利要求36所述的方法,其中,所述η个空间区块的结构是通过使用相对于整个一段时间的句法元素针对各段时间所定义的。38.根据权利要求37所述的方法,其中,所述描述文件针对每段时间包括针对各视频子轨所定义的参数的集合, 所述参数的集合包括包含与以下内容有关的数据的描述符: a.轨的类型:视频轨或视频子轨,以及/或者 b.在轨是视频子轨的情况下,空间区块的位置和所述η个空间区块的结构。39.根据权利要求36所述的方法,其中,所述描述文件针对每段时间包括针对各区块所定义的参数的集合, 所述参数的集合包括称为角色元素即Role元素的描述符,该Role元素包含与以下内容有关的数据: a.轨的类型:视频轨或视频子轨,以及/或者 b.在轨是视频子轨的情况下,对所述η个空间区块的结构的参考。40.根据权利要求38或39所述的方法,其中,在轨是视频子轨的情况下,所述描述符还包括用以指定所考虑的区块相对于所述η个空间区块的结构的位置的方案。41.根据权利要求40所述的方法,其中,所述空间区块的位置是通过参考网格的行和列的索引来指示的。42.根据权利要求40所述的方法,其中,所述空间区块的位置是通过参考所述空间区块的左上角的以像素为单位的位置以及所述空间区块的宽度和高度来指示的。43.根据权利要求40所述的方法,其中,所述空间区块的位置是利用指定坐标系中的位置来指示的。44.根据权利要求40所述的方法,其中,所述空间区块的位置被表示为空间媒体片断。45.根据权利要求26至44中任一项所述的方法,其中,在生成所述描述文件的步骤之前,还包括以下步骤: -获取与所述给定视频相对应的数据, -对所获取到的数据进行压缩, -封装压缩后的数据,所述封装包括: ?生成给定数量的媒体片段文件,其中每一个媒体片段文件包括给定的一段时间内的与所述给定视频和所述η个视频子轨相关联的数据,以及 ?生成与媒体文件片段相关联的初始化片段,其中所述初始化片段包括与视频轨和视频子轨有关的初始化数据。46.根据权利要求26至45中任一项所述的方法,其中,所述视频数据包括表示相同内容的各自具有给定分辨率的m个视频轨,并且各视频轨的各帧被分割成η个空间区块,以创建独立的m*n个视频子轨,其中m是整数。47.根据权利要求26至46中任一项所述的方法,其中,所述描述文件包括视频子轨的参数,所述参数包括与不同视频子轨的可能或禁止的关联有关的数据,在根据经由HTTP的动态自适应流传输标准即DASH标准来对所述数据进行流传输的情况下,所述可能或禁止的关联是利用标识符属性来指示的。48.—种用于利用客户端装置来获得与给定视频相对应的数据的方法,所述给定视频的各帧被分割成η个空间区块,以创建独立的η个视频子轨,其中η是整数,所述方法包括以下步骤: -接收描述文件,其中所述描述文件包括与所述η个视频子轨的空间组织有关的数据以及分别指定各视频子轨的至少η个URL ; -利用所述客户端装置或所述客户端装置的用户来选择所述给定视频中的至少一个关注区域; -基于所述描述文件,根据所选择的关注区域来获得一个或多个URL ; -发送用于请求所述视频子轨的一个或多个请求消息,其中各请求消息包括所述客户端装置所选择的URL其中之一;以及 -响应于所述请求消息,来接收与所请求的视频子轨相对应的视频数据。49.根据权利要求48所述的方法,其中,所述描述文件还包括指定与完整的所述给定视频相对应的轨的URL,并且在所述客户端装置没有选择任何关注区域的情况下,所述方法还包括以下步骤:发送用于请求完整的视频轨的请求消息,并且响应于该请求消息来接收与所请求的完整的视频轨相对应的视频数据。50.根据权利要求48或49所述的方法,其中,所述给定视频是包括基本层和至少一个增强层的可分级视频,所述η个视频子轨与增强层相对应;所述给定视频还包括基本层视频轨,所述描述文件还包括所述基本层视频轨的URL,并且在所述客户端装置选择一个关注区域的情况下,所述方法还包括以下步骤: -利用所述客户端装置获得所述基本层的URL ; -发送包括所述基本层视频轨的URL的请求消息;以及 -响应于该请求消息来接收与所请求的基本层视频轨相对应的视频数据。51.根据权利要求48或49所述的方法,其中,所述给定视频是包括基本层和至少一个增强层的可分级视频,所述η个视频子轨与增强层相对应;所述基本层的各帧也被分割成各自与所述增强层中的区块相对应的η个空间区块,以创建独立的η个基本层子轨, 所述描述文件还包括所述基本层子轨的URL ;并且在所述客户端装置选择一个关注区域的情况下,所述方法还包括以下步骤: -利用所述客户端装置获得所述基本层子轨的URL ; -发送包括所述基本层子轨的URL的请求消息;以及 -响应于该请求消息来接收与所请求的基本层子轨相对应的视频数据。52.根据权利要求48至51中任一项所述的方法,其中,在所述描述文件中,利用子分割成每一个具有预先确定的高度和宽度的给定数量的行和列的网格来定义所述η个空间区块的结构。53.根据权利要求52所述的方法,其中,所述η个空间区块的结构定义具有均一面积或非均一面积的空间区块。54.根据权利要求52或53所述的方法,其中,各空间区块是矩形区域。55.根据权利要求52或53所述的方法,其中,在所述空间区块具有均一面积的情况下,所述网格是利用水平维度和垂直维度这两者中的边界的数量所指定的。56.根据权利要求52或53所述的方法,其中,在所述空间区块具有非均一面积的情况下,所述网格是利用行和列的数量以及行和列的边界的位置所指定的。57.根据权利要求48至56中任一项所述的方法,其中,所述数据是根据经由HTTP的动态自适应流传输标准即DASH标准来定义的,所述描述文件是媒体呈现描述文件。58.根据权利要求57所述的方法,其中,各URL指定预定义的一段时间内的轨或子轨的片段。59.根据权利要求58所述的方法,其中,所述η个空间区块的结构是通过使用相对于整个一段时间的句法元素针对各段时间所定义的。60.根据权利要求59所述的方法,其中,所述描述文件针对每段时间包括针对各视频子轨所定义的参数的集合, 所述参数的集合包括包含与以下内容有关的数据的描述符: a.轨的类型:视频轨或视频子轨,以及/或者 b.在轨是视频子轨的情况下,空间区块的位置和所述η个空间区块的结构。61.根据权利要求58所述的方法,其中,所述描述文件针对每段时间包括针对各区块所定义的参数的集合, 所述参数的集合包括称为角色元素即Role元素的描述符,该Role元素包含与以下内容有关的数据: a.轨的类型:视频轨或视频子轨,以及/或者 b.在轨是视频子轨的情况下,对所述η个空间区块的结构的参考。62.根据权利要求60或61所述的方法,其中,在轨是视频子轨的情况下,所述描述符还包括用以指定所考虑的区块相对于所述η个空间区块的结构的位置的方案。63.根据权利要求62所述的方法,其中,所述空间区块的位置是通过参考网格的行和列的索引来指示的。64.根据权利要求62所述的方法,其中,所述空间区块的位置是通过参考所述空间区块的左上角的以像素为单位的位置以及所述空间区块的宽度和高度来指示的。65.根据权利要求62所述的方法,其中,所述空间区块的位置是利用指定坐标系中的位置来指示的。66.根据权利要求62所述的方法,其中,所述空间区块的位置被表示为空间媒体片断。67.根据权利要求48至66中任一项所述的方法,其中,所述视频数据与表示相同内容的各自具有不同分辨率的m个视频相对应,并且各视频的各帧被分割成η个空间区块,以创建独立的m*n个视频子轨,其中m是整数。68.根据权利要求48至67中任一项所述的方法,其中,所述描述文件包括视频子轨的参数,所述参数包括与不同视频子轨的可能或禁止的关联有关的数据,在根据经由HTTP的动态自适应流传输标准即DASH标准来对所述数据进行流传输的情况下,所述可能或禁止的关联是利用标识符属性来指示的。69.根据权利要求48至68中任一项所述的方法,其中,所接收到的视频数据包括: -给定数量的视频片段文件,其中每一个视频片段文件包括给定的一段时间内的与所述给定视频和所述η个视频子轨相关联的数据,以及 -与媒体文件片段相关联的初始化片段,其中所述初始化片段包括与视频轨和视频子轨有关的初始化数据。70.根据权利要求69所述的方法,其中,所述描述文件还包括与所述初始化片段相关联的URL。71.根据权利要求70所述的方法,其中,所述初始化数据包括表示各视频子轨的宽度和高度的值。72.根据权利要求71所述的方法,其中,所述初始化数据还包括使得能够将各视频子轨显示在恰当位置处的变换矩阵。73.一种可编程设备所用的计算机程序产品,所述计算机程序产品包括指令序列,所述指令序列用于在被载入所述可编程设备并由所述可编程设备执行的情况下,执行根据权利要求I至72中任一项所述的方法。74.—种存储有计算机程序的指令的计算机可读存储介质,所述指令用于执行根据权利要求I至72中任一项所述的方法。75.一种用于对与给定视频相对应的数据进行流传输的装置,所述给定视频的各帧被分割成η个空间区块,以创建独立的η个视频子轨,其中η是整数,其特征在于,所述装置具有用于执行根据权利要求1至25中任一项所述的方法的部件。76.一种用于向客户端装置提供数据的服务器装置,所述数据与给定视频相对应,所述给定视频的各帧被分割成η个空间区块,以创建独立的η个视频子轨,其中η是整数,其特征在于,所述服务器装置具有用于执行根据权利要求26至47中任一项所述的方法的部件。77.—种用于获得与给定视频相对应的数据的客户端装置,所述给定视频的各帧被分割成η个空间区块,以创建独立的η个视频子轨,其中η是整数,其特征在于,所述客户端装置具有用于执行根据权利要求48至72中任一项所述的方法的部件。
【专利摘要】本发明提供一种用于对与给定视频相对应的数据进行流传输的方法,所述给定视频的各帧被分割成n个空间区块,以创建独立的n个视频子轨,其中n是整数。所述方法包括以下步骤:利用服务器将描述文件发送至客户端装置,所述描述文件包括与所述n个视频子轨的空间组织有关的数据以及分别指定各视频子轨的至少n个URL;利用所述客户端装置,来根据所述客户端装置或所述客户端装置的用户所选择的一个关注区域选择一个或多个URL;利用所述服务器来从所述客户端装置接收用于请求由此得到的大量视频子轨的一个或多个请求消息,各请求消息包括所述客户端装置所选择的URL其中之一;以及响应于所述请求消息,利用所述服务器将与所请求的视频子轨相对应的视频数据发送至所述客户端装置。
【IPC分类】H04N21/845, H04N21/4728, H04N21/858, H04N21/6332, H04N21/63, H04N21/2343
【公开号】CN104904225
【申请号】CN201380064948
【发明人】弗兰克·德诺奥, 赫夫·勒弗洛奇, 弗雷德里克·梅兹, 简·勒菲弗, 西里尔·康克拉托
【申请人】佳能株式会社
【公开日】2015年9月9日
【申请日】2013年10月11日
【公告号】EP2907313A1, US20150237166, WO2014057131A1

最新回复(0)