视频译码中的参数集和同步样本的安置的制作方法

文档序号:11291459阅读:229来源:国知局
视频译码中的参数集和同步样本的安置的制造方法与工艺

本申请案主张2015年2月11日提交的第62/115,013号美国临时申请案的权益,所述申请案的整个内容以引用的方式并入本文中。

本发明涉及视频译码及压缩,以及用信号表示与位流中的经压缩视频相关联的数据。



背景技术:

数字视频功能可并入到广泛范围的装置中,包含数字电视、数字直播系统、无线广播系统、个人数字助理(pda)、膝上型或桌上型计算机、平板计算机、电子图书阅读器、数码相机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、所谓的“智能电话”、视频电话会议装置、视频串流装置等等。数字视频装置实施视频压缩技术,例如描述于以下各者中的那些技术:由mpeg-2、mpeg-4、itu-th.263、itu-th.264/mpeg-4第10部分、高级视频译码(avc)、itu-th.265定义的标准、高效视频译码(hevc)和此类标准的扩展。视频装置通过实施此类视频压缩技术可以更有效地发射、接收、编码、解码和/或存储数字视频信息。

视频压缩技术执行空间(图片内)预测和/或时间(图片间)预测来减少或去除视频序列中固有的冗余。对于基于块的视频译码来说,视频切片(即,视频帧或视频帧的一部分)可分割成视频块,视频块也可被称作树块、译码单元(cu)和/或译码节点。图片的经帧内译码(i)切片中的视频块是使用相对于同一图片中的相邻块中的参考样本的空间预测来编码。图片的经帧间编码(p或b)切片中的视频块可使用相对于同一图片中的相邻块中的参考样本的空间预测或相对于其它参考图片中的参考样本的时间预测。图片可被称作帧,且参考图片可被称作参考帧。

空间或时间预测产生待译码的块的预测块。残余数据表示待译码的原始块与预测块之间的像素差。经帧间译码块根据指向形成预测块的参考样本块块的运动向量及指示经译码块与预测块之间的差的残余数据来编码。经帧内译码块是根据帧内译码模式和残余数据来编码的。为了进一步压缩,可将残余数据从像素域变换到变换域,从而产生残余变换系数,可接着量化所述残余变换系数。可扫描最初布置成二维阵列的经量化变换系数,以便产生变换系数的一维向量,且可应用熵译码以实现甚至更多压缩。



技术实现要素:

本发明的技术涉及文件格式的定义以及视频数据的解析和/或译码。举例来说,在视频译码中,参数集可以包含确实无需针对每个序列或图片重复的序列层级标头信息或不频繁地改变的图片层级信息,由此提高译码效率。本发明的各方面可以通过强制对视频位流中的参数集的安置进行限制并且限定视频文件中的同步样本和非同步样本来实现经译码的视频数据的高效随机可存取性。举例来说,针对同步样本,用于视频数据的参数集数据可以仅在样本的样本条目或样本本身中得到译码。针对非同步样本,用于视频数据的参数集数据可以仅在样本的样本条目、样本本身、作为同步样本的按解码次序的先前样本中,或在按解码次序出现在非同步样本与作为同步样本的按解码次序的先前样本之间的一或多个样本中得到译码。

在一个实例中,解码视频数据的方法包含确定视频数据的样本是否是同步样本,并且基于确定样本不是同步样本,仅从样本的样本条目、样本、作为同步样本的按解码次序的先前样本中,或从按解码次序出现在样本与作为同步样本的按解码次序的先前样本之间的样本中确定用于视频数据的参数集数据。

在另一个实例中,用于编码视频数据的方法包括确定视频数据的样本是否是同步样本,并且基于确定样本不是同步样本,仅在样本的样本条目、样本、作为同步样本的按解码次序的先前样本中,或在按解码次序出现在样本与作为同步样本的按解码次序的先前样本之间的样本中编码用于视频数据的参数集数据。

在另一个实例中,用于解码视频数据的装置包括经配置以存储视频数据的存储器以及一或多个处理器,所述一或多个处理器经配置以确定视频数据的样本是否是同步样本,并且基于确定样本不是同步样本,仅从样本的样本条目、样本、作为同步样本的按解码次序的先前样本中,或从按解码次序出现在样本与作为同步样本的按解码次序的先前样本之间的样本中确定用于视频数据的参数集数据。

在另一个实例中,用于编码视频数据的装置包括经配置以存储视频数据的存储器以及一或多个处理器,所述一或多个处理器经配置以确定视频数据的样本是否是同步样本,并且基于确定样本不是同步样本,仅在样本的样本条目、样本、作为同步样本的按解码次序的先前样本中,或在按解码次序出现在样本与作为同步样本的按解码次序的先前样本之间的样本中包含用于视频数据的参数集数据。

在另一个实例中,用于解码视频数据的装置包括用于确定视频数据的样本是否是同步样本的装置,以及用于基于确定样本不是同步样本仅从样本的样本条目、样本、作为同步样本的按解码次序的先前样本中,或从在按解码次序出现在样本与作为同步样本的按解码次序的先前样本之间的样本中确定用于视频数据的参数集数据的装置。

在另一个实例中,用于编码视频数据的装置包括用于确定视频数据的样本是否是同步样本的装置,以及基于确定样本不是同步样本仅在样本的样本条目、样本、作为同步样本的按解码次序的先前样本中,或在按解码次序出现在样本与作为同步样本的按解码次序的先前样本之间的样本中包含用于视频数据的参数集数据的装置。

在另一个实例中,非暂时性计算机可读媒体包括存储在其上的指令,当执行所述指令时,使得一或多个处理器确定视频数据的样本是否是同步样本,并且基于确定样本不是同步样本,仅从样本的样本条目、样本、作为同步样本的按解码次序的先前样本中,或从按解码次序出现在样本与作为同步样本的按解码次序的先前样本之间的样本中确定用于视频数据的参数集数据。

在另一个实例中,非暂时性计算机可读媒体包括存储在其上的指令,当执行所述指令时,使得一或多个处理器确定视频数据的样本是否是同步样本,并且基于确定样本不是同步样本,仅在样本的样本条目、样本、作为同步样本的按解码次序的先前样本中,或在按解码次序出现在样本与作为同步样本的按解码次序的先前样本之间的样本中包含用于视频数据的参数集数据。

在附图和以下描述中阐明本发明的一或多个实例的细节。其它特征、目标和优点将从所述描述、图式和权利要求书中变得显而易见。

附图说明

图1是说明可以利用本发明中描述的技术的实例视频编码和解码系统的框图。

图2是说明可以实施本发明中描述的技术的实例视频编码器的框图。

图3是说明可以实施本发明中描述的技术的实例视频解码器的框图。

图4是说明实例视频文件的元素的框图。

图5是说明用于从视频位流中解码参数集数据的过程的流程图。

图6是说明用于在视频位流中编码参数集数据的过程的流程图。

具体实施方式

本发明的技术涉及以文件格式存储视频内容。更确切地说,所述技术可以通过强制对视频文件中的参数集的安置以及同步样本和非同步样本的定义进行限制来实现经译码视频数据的高效随机可存取性。

视频译码标准包含itu-th.261、iso/iecmpeg-1视觉、itu-th.262或iso/iecmpeg-2视觉、itu-th.263、iso/iecmpeg-4视觉、itu-th.264或iso/iecmpeg-4avc,包含其可缩放视频译码(svc)和多视图视频译码(mvc)扩展,以及高效视频译码(hevc),也被称作itu-th.265和iso/iec23008-2,包含其可缩放译码扩展(即,可缩放高效视频译码,shvc)和多视图扩展(即,多视图高效视频译码,mv-hevc)。

随机存取可以指对从不是位流中的第一经译码的图片的经译码的图片开始的视频位流的解码。对位流的随机存取提供于许多视频应用程序中,例如,广播和串流,例如,使用户能够在任何时候调入到程序,在不同信道之间切换,并且跳转到视频的特定部分,或者切换到用于流适配的不同位流(例如,位速率、帧率、空间分辨率的适配等等)。这种特征通过以规则的间隔将随机存取图片或随机存取点多次插入到视频位流中实现。

如在avc或hevc中所规定的瞬时解码刷新(idr)可以用于随机存取。一般来说,idr图片可以包含经帧内译码数据并且可以使得经解码图片缓冲器的图片被清除和/或标记为不用于参考。然而,由于按解码次序在idr图片之后的图片无法使用在idr图片之前解码的图片作为参考,所以依赖于用于随机存取的idr图片的位流可显著地降低译码效率。

为了提高译码效率,在hevc中引入清洁随机存取(cra)图片的概念,以允许按解码次序在cra图片之后但按输出次序在cra图片之前的图片使用在cra图片前解码的图片作为参考。按解码次序在cra图片之后但按输出次序在cra图片之前的图片被称作与cra图片相关联的前导图片(或cra图片的前导图片)。如果解码从当前cra图片之前的idr或cra图片开始,那么cra图片的前导图片可被正确地解码。然而,当从此cra图片的随机存取发生时,cra图片的前导图片可能是不可解码的;因此,在随机存取解码期间,通常丢弃这些前导图片。为防止错误从取决于解码开始处而可能不可用的参考图片中传播,在解码次序及输出次序两者上在cra图片之后的所有图片不应将在解码次序或输出次序中在cra图片之前的任何图片(其包含前导图片)用作参考。

断链存取(bla)图片的概念在hevc中是在cra图片的引入之后进一步引入且是基于cra图片的概念。bla图片通常来源于cra图片的位置处的位流拼接(如下文更详细描述),并且在经拼接位流中拼接点cra图片变为bla图片。

idr图片、cra图片和bla图片统称为随机存取点(rap)图片。idr图片对应于所谓的基于闭合图片群组(gop)的rap,而cra和bla图片对应于常规地所谓的基于开启图片群组的rap。

bla图片与cra图片之间的一个差异在于,对于cra图片,如果按解码次序从在cra图片之前的rap图片开始解码,那么相关联的前导图片是可正确解码的,并且当发生从cra图片中的随机存取时(即,当从cra图片中开始解码时,或换句话说,当cra图片是位流中的第一图片时)相关联的前导图片可能是不可正确地解码的。对于bla图片,相关联的前导图片在所有情况下可能都是不可解码的,即使当从按解码次序在bla图片之前的rap图片中开始解码时也是如此。

视频位流的随机地存取也可以从渐进解码刷新(gdr)图片中开始,所述图片不是经帧内译码的,而是在一定数量的图片被解码之后,所有按解码次序在后面的图片可以得到正确地解码。对于实现gdr的视频技术的综述,参见此论文:miskam.hannuksela、ye-kuiwang以及moncefgabbouj的“视频译码中的隔离区域(isolatedregionsinvideocoding)”,ieee多媒体汇刊(ieeetransactionsonmultimedia),第6卷,第2期,第259-267页,2004年4月。

在一些实例中,随机地存取视频位流可以在位流拼接期间执行。位流拼接可指代两个或大于两个位流或其部分的串接。举例来说,第一位流可由第二位流附加,可能对所述位流中的一者或两者具有一些修改以产生经拼接位流。第二位流中的第一经译码的图片也被称作拼接点。因此,在经拼接位流中的拼接点之后出现的图片来源于第二位流,而在经拼接位流中的拼接点之前的图片来源于第一位流。

位流的拼接可以通过位流拼接器来执行。位流拼接器通常是轻质的并且与编码器相比可能不太智慧。举例来说,拼接器可能并不配备有熵解码和编码功能。在一些实例中,位流拼接器可能包含在服务器或其它内容准备装置中。位流切换可用于自适应串流环境中。在切换到的位流中的某一图片处的位流切换操作有效地为位流拼接操作,其中拼接点是位流切换点,即,来自切换到的位流的第一图片。

在一些情况下,经译码的视频数据可以特定文件格式存储。实例文件格式标准包含iso基础媒体文件格式(isobmff,iso/iec14496-12)。isobmff可用作许多编解码封装格式(例如,avc文件格式)以及许多多媒体容器格式(例如,mpeg-4文件格式、3gpp文件格式(3gp)和dvb文件格式)的基础。举例来说,衍生自isobmff的其它文件格式可以包含mpeg-4文件格式(iso/iec14496-14)、3gpp文件格式(3gppts26.244)和avc文件格式(iso/iec14496-15)。

除连续媒体(例如,音频和视频)、静态媒体(例如,图像)之外,元数据同样可以存储在符合isobmff的文件中。根据isobmff结构化的文件可用于许多目的,其包含本地媒体文件播放、远程文件的即看式下载、通过http的动态自适应串流(dash)的片段、待串流的内容的容器及它的分包指令,以及记录接收到的实时媒体流。

框可指代在isobmff中的基础语法结构,其包含四特征经译码的框类型、框的字节数和有效负载。isobmff文件由一系列框构成,并且框可以包含其它框。电影框(“moov”)包含用于存在于文件中的连续媒体流的元数据,每一个元数据作为路径呈现在文件中。

路径的元数据包封在路径框(“trak”)中,而路径的媒体内容或者包封在媒体数据框(“mdat”)中或者直接地包封在单独的文件中。路径的媒体内容由一系列样本(例如,音频或视频存取单元)构成。一般而言,存取单元是包含用于通用时间实例的经译码的图片数据的数据的单元。样本是如由特定规范(例如,本文中所描述的视频译码规范)限定的存取单元。样本条目可以提供对应的样本的描述。

isobmff规定以下类型的路径:媒体路径(包含基础媒体流)、提示路径(或者包含媒体传输指令或或者表示接收到的包流)和定时元数据路径(包括时间同步的元数据)。

尽管isobmff最初设计用于存储,但是已经证实isobmff对于串流(例如,即看式下载或dash)而言是有价值的。出于串流的目的,可以使用在isobmff中定义的电影片段。每个路径的元数据包含样本描述条目(也被称作样本条目)的列表,每个样本描述条目提供用于路径中的译码或封装格式以及处理该格式所需的初始化数据。每个样本可以与路径的样本描述条目中的一个相关联。如本文中所述,样本可以对应于在视频译码中的存取单元。举例来说,样本可以对应于视频数据的单元,所述视频数据包含用于通用时间实例的所有视图分量(例如,所有网络抽象层(nal)单元)。参数集样本可以是在包含参数集nal单元的参数集流中的样本,所述参数集nal单元被视为在相同时间实例中存在于视频基本流中。

isobmff实现通过多种机制规定的样本特定的元数据。已经标准化在样本表框(“stbl”)内的特定框以响应于通用需要。举例来说,同步样本框(“stss”)用于列出路径的随机存取样本(如下文所述)。样本分组机制实现根据四特征分组类型将样本映射到共享相同特性的样本的群组中,所述特性被规定为文件中的样本群组描述条目。在isobmff中已经规定了若干分组类型。

isobmff规范规定与dash一起使用的流存取点(sap)的六种类型。前两种sap类型(类型1和2)对应于在h.264/avc和hevc中的idr图片。第三sap类型(类型3)对应于开启gop随机存取点;从而对应于在hevc中的bla或cra图片。第四sap类型(类型4)对应于gdr随机存取点。

然而,短语“随机存取点”可以具有贯穿isobmff的多个潜在的不一致的定义。举例来说,符合isobmff的一部分的视频译码器(例如,视频编码器或视频解码器)可以确定样本是否是与符合isobmff的另一部分的视频译码器不同的随机存取点。当随机存取点由不同装置(例如,负责编码/封装视频数据的装置和负责解析/解码视频数据的装置)解释时,文件可能无法恰当地输送和/或播放。

举例来说,由于在isobmff中存在术语“随机存取点”的不同解释,所以关于在avc文件格式、svc文件格式、mvc文件格式和hevc文件格式中安置参数集的限制可以有不同的解释。因此,文件可以被一些实施方案视为符合isobmff,但是被其它实施方案视为不符合isobmff。由于这些不一致,所以视频译码器可能并不能够准确地和/或一致地确定针对特定的位流是否已经满足与随机存取点相关联的条件,例如,与参数集相关联的条件。在一些情况下,文件可能被拒绝请求或播放。

本发明的技术可解决上述问题中的一或多个。举例来说,根据本发明的方面,关于在avc文件格式、svc文件格式、mvc文件格式和hevc文件格式中安置参数集的限制可以根据isobmff更新,使得解决上文所提到的互操作性问题。

举例来说,根据本发明的方面,视频译码器(例如,视频编码器或视频解码器)可以确定视频数据的样本(例如,包含用于特定时间实例的至少一个经译码的图片的存取单元)是否是同步样本。一般来说,同步样本是可用于同步(例如,在位流切换或拼接期间)的样本。如果满足用于随机存取的条件(如下文更详细地描述),那么样本可以被视为同步样本,使得视频解码器可以开始恰当地解码同步样本和按解码次序在同步样本之后的所有样本。

根据本发明的方面,基于确定样本不是同步样本,视频解码器可以解码视频数据的参数集数据,所述视频数据仅在样本的样本条目中或在按解码次序出现在样本与作为同步样本的按解码次序的先前样本(包含)之间的样本中。也就是说,视频解码器可以确定用于仅从非同步样本的样本条目、非同步样本本身、按解码次序的先前同步样本或在先前同步样本与非同步样本之间的一或多个样本中解码非同步样本的视频数据所需的参数集数据。举例来说,在样本不是同步样本并且参数集数据包含于除了那些规定的之外的位流的任何其它位置中的情况下,视频解码器30可以由于不符合而拒绝文件并且可以不解码样本。如下文更详细地描述,参数集可以包含对于每个序列或图片来说确实无需重复的序列层级标头信息或不频繁改变的图片层级信息(由此提高译码效率)。

图1是说明根据本发明的方面可以使用用于确定一或多个目标输出层的技术的实例视频编码和解码系统10的框图。如图1中所示,系统10包含源装置12,所述源装置12提供在稍后时间由目的地装置14解码的经编码视频数据。确切地说,源装置12经由计算机可读媒体16将视频数据提供到目的地装置14。

源装置12和目的地装置14可包括广泛范围的装置中的任一者,包含桌上型计算机、笔记型(即,膝上型)计算机、平板计算机、机顶盒、电话手持机(例如所谓的“智能”电话)、所谓的“智能”平板电脑、电视机、相机、显示装置、数字媒体播放器、视频游戏控制台、视频串流装置或类似者。在一些情况下,可装备源装置12和目的地装置14以用于无线通信。

目的地装置14可经由计算机可读媒体16接收待解码的经编码视频数据。计算机可读媒体16可包括能够将经编码视频数据从源装置12移动到目的地装置14的任何类型的媒体或装置。在一个实例中,计算机可读媒体16可包括使得源装置12能够实时将经编码的视频数据直接传输到目的地装置14的通信媒体。

经编码的视频数据可根据通信标准(例如,无线通信协议)而调制,且被传输到目的地装置14。通信媒体可包括任何无线或有线通信媒体,例如射频(rf)频谱或一或多个物理传输线路。通信媒体可形成基于包的网络(例如,局域网、广域网或全球网络,例如因特网)的部分。通信媒体可包含路由器、交换器、基站或任何其它可以用于促进从源装置12到目的地装置14的通信的设备。

在一些实例中,经编码的数据可以从输出接口22输出到存储装置。类似地,可通过输入接口28从存储装置存取经编码的数据。存储装置可包含多种分布式或本地存取式数据存储媒体中的任一者,例如,硬盘驱动器、蓝光光盘、dvd、cd-rom、快闪存储器、易失性或非易失性存储器或用于存储经编码的视频数据的任何其它合适的数字存储媒体。在另一实例中,存储装置可对应于文件服务器或可存储源装置12产生的经编码的视频的另一中间存储装置。

目的地装置14可经由串流或下载从存储装置中存取所存储的视频数据。文件服务器可以为能够存储经编码的视频数据并将经编码的视频数据传输到目的地装置14的任何类型的服务器。实例文件服务器包含网络服务器(例如,用于网站)、ftp服务器、网络附接式存储(nas)装置或本地磁盘驱动器。

目的地装置14可经由任何标准数据连接(包含因特网连接)来存取经编码的视频数据。这可包含适用于存取存储于文件服务器上的经编码的视频数据的无线信道(例如,wi-fi连接)、有线连接(例如,dsl、电缆调制解调器等)或两者的组合。经编码的视频数据从存储装置的传输可为串流传输、下载传输或其组合。

本发明的技术未必限于无线应用或设置。所述技术可应用于支持多种多媒体应用中的任一者的视频译码,例如,空中电视广播、有线电视传输、卫星电视传输、因特网串流视频传输(例如,http动态自适应串流(dash))、被编码到数据存储媒体上的数字视频,存储在数据存储媒体上的数字视频的解码,或其它应用。在一些实例中,系统10可经配置以支持单向或双向视频传输,以支持例如视频串流、视频播放、视频广播和/或视频电话的应用。

在图1的实例中,源装置12包含视频源18、视频编码器20、封装单元21和输出接口22。目的地装置14包含输入接口28、解封装单元29、视频解码器30和显示装置32。在其它实例中,源装置和目的地装置可包含其它组件或布置。举例来说,源装置12可从外部视频源18(例如外部相机)接收视频数据。类似地,目的地装置14可与外部显示装置介接,而非包含集成显示装置。

图1的所说明的系统10仅为一个实例。可通过任何数字视频编码和/或解码装置来执行本文中所描述的技术。尽管本发明的技术通常由视频编码装置执行,但是所述技术也可通过视频编码器/解码器(通常被称作“编解码器”)执行。此外,本发明的技术还可由视频预处理器执行。

源装置12和目的地装置14仅为源装置12在其中产生经译码视频数据以供传输到目的地装置14的此类译码装置的实例。在一些实例中,装置12、14可以以基本上对称的方式操作,使得装置12、14中的每一者包含视频编码和解码组件。因此,系统10可支持视频装置12、14之间的单向或双向视频传输以例如用于视频串流、视频播放、视频广播或视频电话。

源装置12的视频源18可包含视频俘获装置,例如摄像机、含有先前所俘获视频的视频存档和/或用于从视频内容提供者接收视频的视频馈送接口。作为另一替代方案,视频源18可产生基于计算机图形的数据作为源视频,或实况视频、所存档视频与计算机产生的视频的组合。在一些情况下,如果视频源18为摄像机,那么源装置12和目的地装置14可形成所谓的相机电话或视频电话。然而,如上文所提及,本发明中所描述的技术一般可适用于视频译码,且可应用于无线和/或有线应用。在每一情况下,可由视频编码器20编码所俘获、预先俘获或计算机产生的视频。

视频编码器20通常产生经编码视频数据的流。每一单独的数据流(不论是音频还是视频)可被称为基本流。基本流是一个表示的单个经数字译码的(可能经压缩)分量。举例来说,所述表示的经译码的视频或音频部分可以是基本流。基本流可以在被封装在视频文件内之前被转换成打包基本流(pes)。在一些实例中,视频编码器20可以包含用于从经编码的数据中形成pes包的打包器。在其它实例中,视频编码器20可以与相应的打包器介接以用于从经编码的数据中形成pes包。在另外其它实例中,视频编码器20可以包含打包器以用于从经编码的音频和视频数据中形成pes包。

封装单元21从视频编码器20中接收pes包以用于表示的基本流并且从pes包中形成对应的nal单元。在h.264/avc和hevc的实例中,经译码的视频片段被组织成nal单元,所述单元提供“网络友好”的视频表示,其处理例如视频电话、存储、广播或串流的应用。nal单元可分类为视频译码层(vcl)nal单元和非vcl的nal单元。vcl单元可含有核心压缩引擎,且可包含块、宏块和/或切片层级数据。其它nal单元可以为非vcl的nal单元。在一些实例中,一个时间实例中的经译码的图片(通常呈现为初级经译码的图片)可以包含在存取单元中,所述存取单元可包含一或多个nal单元。

如上文所指出,存取单元通常是包含用于通用时间实例的所有视图分量(例如,所有nal单元)的数据的单元。存取单元的视图分量通常意图是一起输出的(即,基本上同时输出的),其中输出图片通常涉及从经解码图片缓冲器(dpb)传送图片(例如,将图片从dpb存储到外部存储器、将图片从dpb发送到显示器、从dpb移除图片或类似者)。

非vcl的nal单元可包含参数集nal单元和seinal单元等等。参数集可以含有序列层级标头信息(在序列参数集(sps)中)和不频繁改变的图片层级标头信息(在图片参数集(pps)中)。对于参数集(例如,pps和sps),不频繁改变的信息不需要对于每一序列或图片重复,因此可改进译码效率。另外,使用参数集可以实现重要标头信息的带外传输,避免了对于用于错误恢复的冗余传输的需要。在带外传输实例中,参数集nal单元可以在与其它nal单元(例如seinal单元)不同的信道上传输。

辅助增强信息(sei)可以含有对于对来自vclnal单元的经译码的图片样本进行解码不是必需的信息,但是可以辅助与解码、显示、错误恢复和其它目的相关的过程。sei消息可以包含在非vcl的nal单元中。sei消息是一些标准规范的规范性部分,并且因此对于标准的顺应性解码器实施方案并非始终是必选的。sei消息可以是序列层级sei消息或图片层级sei消息。sei消息中可以含有一些序列层级信息,所述消息例如是svc的实例中的可缩放性信息sei消息,和mvc中的视图可缩放性信息sei消息。这些实例sei消息可传送关于例如操作点的提取及操作点的特征的信息。此外,封装单元21可形成清单文件,例如描述表示的特征的媒体呈现描述符(mpd)。封装单元21可根据可扩展标记语言(xml)将mpd格式化。

输出接口22可将经编码的视频输出到计算机可读媒体16上。计算机可读媒体16可包含瞬时媒体,例如无线广播或有线网络传输,或存储媒体(也就是说,非暂时性存储媒体),例如,硬盘、快闪驱动器、压缩光盘、数字视频光盘、蓝光光盘或其它计算机可读媒体。在一些实例中,网络服务器(未示出)可以从源装置12接收经编码的视频数据,并且例如经由网络传输将经编码的视频数据提供到目的地装置14。类似地,媒体生产设施(例如,光盘冲压设施)的计算装置可从源装置12接收经编码的视频数据且生产含有经编码的视频数据的光盘。因此,在各种实例中,计算机可读媒体16可被理解为包含各种形式的一或多个计算机可读媒体。

目的地装置14的输入接口28可以接收特定表示的片段的数据。解封装单元29可以将视频文件的元素解封装成组成性pes流、对pes流进行解封装以检索经编码的数据,并且将经编码的数据发送到视频解码器30。视频解码器30对经编码的视频数据进行解码并且将经解码的视频数据(其可以包含流的多个视图)发送到显示装置32。显示装置32将经解码的视频数据显示给用户,且可包括多种显示装置中的任一者,例如,阴极射线管(crt)、液晶显示器(lcd)、等离子显示器、有机发光二极管(oled)显示器或另一类型的显示装置。

视频编码器20、封装单元21、解封装单元29和视频解码器30、下文所描述的后处理实体27和网络实体79,以及本发明中所描述的其它组件在适当时可以各自实施为多种合适的集成电路处理电路系统中的任一者,例如,一或多个处理器,包含一或多个微处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)、离散逻辑电路系统、软件、硬件、固件或其任何组合。因此,如本发明中所描述,视频编码器20、封装单元21、解封装单元29和视频解码器30以及后处理实体27和网络实体79的组件可以通过多种集成处理电路系统中的任一者形成,包括实施为固定硬件处理电路系统、可编程处理电路系统和/或两者的组合的一或多个处理器。视频编码器20和视频解码器30中的每一者可包含在一或多个编码器或解码器中,所述编码器或解码器中的任一者可集成为组合视频编码器/解码器(codec)的部分。包含视频编码器20、视频解码器30、封装单元21和/或解封装单元29的设备可以包括集成电路、微处理器和/或无线通信装置,例如,蜂窝式电话。

本发明通常可以指视频编码器20(和/或服务器/内容传递网络34)“用信号发送”某些信息到另一装置,例如,视频解码器30。然而,应理解,视频编码器20和/或服务器/内容传递网络34可通过使某些语法元素与视频数据的各种经编码的部分相关联来用信号发送信息。也就是说,视频编码器20和/或服务器/内容传递网络34可以通过将某些语法元素存储到视频数据的各种经编码的部分的标头来“用信号发送”数据。在一些情况下,此类语法元素可在被视频解码器30接收和解码之前被编码和存储(例如,存储到存储装置24)。因此,术语“发信号通知”通常可以指语法或其它数据的传送以用于解码经压缩的视频数据,而无论此类传送是否是实时或接近实时发生的或是在一定时间跨度内发生的,例如,可能在编码时间处将语法元素存储到存储媒体时发生,所述语法元素随后可以在被存储到此媒体之后的任何时间处通过解码装置检索到。

视频编码器20和视频解码器30可以根据视频压缩标准操作,例如,itu-th.264标准(替代地被称作mpeg-4第10部分高级视频译码(avc)),或此类标准的扩展(例如,多视图视频译码(mvc)或可缩放视频译码(svc))。itu-th.264/mpeg-4(avc)标准是作为被称为联合视频小组(jvt)的集体合作伙伴的产品而由itu-t视频译码专家组(vceg)连同iso/iec移动图片专家组(mpeg)制定。h.264标准描述于itu-t研究组的日期为2005年3月的“itu-t推荐h.264,用于通用视听服务的高级视频译码(itu-trecommendationh.264,advancedvideocodingforgenericaudiovisualservices)”中,其在本文中可被称作h.264标准或h.264规范或h.264/avc标准或规范。

在其它实例中,视频编码器20和视频解码器30可以根据hevc视频译码标准(也被称作itu-th.265和iso/iec23008-2)或hevc的扩展(可缩放高效视频译码(shvc)或多视图高效视频译码(mv-hevc))操作。最终hevc标准文献作为“itu-th.265,系列h:视听服务的视听及多媒体系统基础架构-移动视频的译码-高效视频译码(itu-th.265,seriesh:audiovisualandmultimediasystemsinfrastructureofaudiovisualservices-codingofmovingvideo-highefficiencyvideocoding)”公布,国际电信联盟(itu)的电信标准化部门,2013年4月。

hevc允许视频图片被划分成包含亮度和色度样本两者的树块或最大译码单元(lcu)的序列。位流内的语法数据可界定lcu(就像素数目来说,其为最大译码单位)的大小。切片包含多个连续译码树单元(ctu)。ctu中的每一者可包括亮度样本的译码树块、色度样本的两个对应译码树块和用于对译码树块的样本进行译码的语法结构。在黑白图片或具有三个单独颜色平面的图片中,ctu可包括单个译码树块及用于对所述译码树块的样本进行译码的语法结构。

视频图片可被分割成一或多个切片。每一树块可根据四叉树而分裂成若干译码单元(cu)。一般来说,四叉树数据结构包含每个cu一个节点,其中一个根节点对应于所述树块。如果cu分裂成四个子cu,那么对应于cu的节点包含四个叶节点,其中叶节点中的每一者对应于所述子cu中的一者。cu可以包括具有亮度样本阵列、cb样本阵列和cr样本阵列的图片的亮度样本的译码块和色度样本的两个对应的译码块,以及用于对译码块的样本进行译码的语法结构。在黑白图片或具有三个单独颜色平面的图片中,cu可包括单个译码块及用于对所述译码块的样本进行译码的语法结构。译码块是样本的n×n块。

四叉树数据结构的每一节点可提供对应的cu的语法数据。举例来说,四叉树中的节点可包括分裂旗标,指示对应于所述节点的cu是否分裂成子cu。用于cu的语法元素可递归地定义,且可取决于cu是否分裂成子cu。如果cu未进一步分裂,那么将其称作叶cu。在本发明中,叶cu的4个子cu也将被称作叶cu,即使不存在原始叶cu的明确分裂时也如此。举例来说,如果16×16大小的cu不进一步分裂,那么尽管16×16cu从未经分裂,四个8×8子cu也将被称作叶cu。

除了cu不具有大小区别以外,cu具有与h.264标准的宏块类似的目的。举例来说,树块可分裂成四个子节点(还称为子cu),并且每一子节点又可为父节点并且可分裂成另外四个子节点。最后未分裂的子节点(被称作四叉树的叶节点)包括译码节点,也被称作叶cu。与经译码位流相关联的语法数据可定义树块可分裂的最大次数,被称作最大cu深度,且还可定义译码节点的最小大小。因此,位流还可定义最小译码单元(scu)。本发明使用术语“块”来指hevc的情形中的cu、pu或tu中的任一者,或者其它标准的情形中的类似数据结构(例如,其在h.264/avc中的宏块及子块)。

cu包含译码节点以及与所述译码节点相关联的预测单元(pu)及变换单元(tu)。cu的大小对应于译码节点的大小并且形状必须是正方形。cu的大小可从8×8像素到具有最大64×64像素或更大的树块的大小变动。每一cu可含有一或多个pu和一或多个tu。

一般来说,pu表示对应于相对应的cu的全部或一部分的空间区域,并且可包含用于检索pu的参考样本的数据。此外,pu包含与预测相关的数据。举例来说,当pu经帧内模式编码时,用于pu的数据可包含在残余四叉树(rqt)中,残余四叉树可包含描述用于对应于pu的tu的帧内预测模式的数据。作为另一实例,当pu经帧间模式编码时,pu可包含定义pu的一或多个运动向量的数据。预测块可为其上应用相同预测的样本的矩形(即,正方形或非正方形)块。cu的pu可以包括图片的亮度样本的预测块、图片的色度样本的两个对应的预测块,以及用于对预测块样本进行预测的语法结构。在黑白图片或具有三个单独彩色平面的图片中,pu可以包括单个预测块和用于对预测块样本进行预测的语法结构。

在将变换(例如,离散余弦变换(dct)、整数变换、小波变换或概念上类似的变换)应用于残余视频数据之后,tu可以包含变换域中的系数。所述残余数据可对应于未经编码图片的像素与对应于pu的预测值之间的像素差。视频编码器20可形成包含用于cu的残余数据的tu,并且随后变换tu以产生用于cu的变换系数。变换块可为其上应用相同变换的样本的矩形块。cu的变换单元(tu)可包括亮度样本的变换块、色度样本的两个对应的变换块和用于对变换块样本进行变换的语法结构。在黑白图片或具有三个单独彩色平面的图片中,tu可以包括单个变换块和用于对变换块样本进行变换的语法结构。

在使用cu的pu进行帧内预测性或帧间预测性译码之后,视频编码器20可计算cu的tu的残余数据。pu可包括描述在空间域(也称为像素域)中产生预测性像素数据的方法或模式的语法数据,并且tu可包括在对残余视频数据应用变换(例如,离散余弦变换(dct)、整数变换、小波变换或概念上类似变换)之后变换域中的系数。所述残余数据可对应于未经编码图片的像素与对应于pu的预测值之间的像素差。视频编码器20可形成包含用于cu的残余数据的tu,并且随后变换tu以产生用于cu的变换系数。

在任何用于产生变换系数的变换之后,视频编码器20可执行变换系数的量化。量化一般是指变换系数经量化以可能地减少用于表示系数的数据量从而提供进一步压缩的过程。在量化之后,视频编码器可以扫描变换系数,从包含经量化变换系数的二维矩阵中产生一维向量。

在扫描经量化变换系数以形成一维向量之后,视频编码器20可例如根据上下文自适应可变长度译码(cavlc)、上下文自适应二进制算术译码(cabac)、基于语法的上下文自适应二进制算术译码(sbac)、概率区间分割熵(pipe)译码或另一熵编码方法对一维向量进行熵编码。视频编码器还20还可以对与经编码视频数据相关联的语法元素进行熵编码以供视频解码器30在对视频数据进行解码时使用。

在图1中所示的实例中,系统10还包含具有路由器36的服务器/内容传递网络34。在一些实例中,如上文所述,源装置12可以经由多种无线和/或有线传输或储存媒体与服务器/内容传递网络34通信。此外,虽然在图1的实例中单独地示出,但是在一些实例中,源装置12和服务器/内容传递网络34包括相同的装置。服务器/内容传递网络34可以存储(来自源装置12的视频编码器20的)经译码的视频数据的一或多个版本,并且可以使得此类经译码的视频数据可通过目的地装置14和视频解码器30存取。

在一些实例中,路由器36可以负责以所请求的格式将经译码的视频数据提供到目的地装置14。在其它实例中,封装单元21可以负责以特定格式封装经编码的视频数据。文件格式标准包含iso基础媒体文件格式(isobmff、iso/iec14496-12)和衍生自isobmff的其它格式,包含mpeg-4文件格式(iso/iec14496-14)、3gpp文件格式(3gppts26.244)和avc文件格式(iso/iec14496-15)。此外,服务器/内容传递网络34可以负责拼接和/或切换位流。

如下文根据图4的更详细描述,框可指代在isobmff中的语法结构,所述语法结构包含四特征经译码的框类型、框的字节数和有效负载。isobmff文件由一系列框构成,并且框可以包含其它框。电影框(“moov”)包含用于存在于文件中的连续媒体流的元数据,每一个元数据作为路径呈现在文件中。

路径的元数据包封在路径框(“trak”)中,而路径的媒体内容或者包封在媒体数据框(“mdat”)中或者直接地包封在单独的文件中。路径的媒体内容由一系列样本(例如,音频或视频存取单元)构成。一般而言,存取单元是包含用于通用时间实例的经译码的图片数据的数据的单元。样本是如由特定规范(例如,本文中所描述的视频译码规范)限定的存取单元。

样本条目可以提供对应的样本的描述。举例来说,样本条目可以包含描述对应的样本的特征的四特征代码,例如,对应的样本的格式。avc和svc路径的实例样本条目包含于下表中:

上表仅出于说明的目的。多种其它样本条目可用于描述其它类型的样本。

视频编码器20(或封装单元21)可以产生某些参数集并且视频解码器30(或解包封单元29)可以接收某些参数集,所述参数集可以在解码视频数据时使用。举例来说,如上文所指出,参数集可以包含sps、pps或vps,这通过发信号通知不频繁地改变的信息而提高了效率。根据isobmff文件格式,参数集样本可以是在包含参数集nal单元的参数集流中的样本,所述参数集nal单元在相同的时间实例中被视为存在于视频基本流中。在参数集更新的每个点处也存在参数集样本。每个参数集可以包含解码视频基本流的相关区段所需的序列和图片参数集。参数集路径中的同步样本可以指示在视频基本流中前向解码时间所需的所有参数集在其中或后续参数流样本中。

然而,在一些情况下,解封装单元29和/或视频解码器30可能没有恰当地识别和解码参数集。举例来说,如上文所指出,因为在isobmff中存在对术语随机存取点(rap)的不同解释,所以关于在avc文件格式、svc文件格式、mvc文件格式和hevc文件格式中安置参数集的限制可以具有不同的解释,并且文件可以被一些实施方案视为符合但是被其它实施方案视为不符合。当随机存取点通过不同装置(例如,其中不同装置可以包含负责编码/封装视频数据的装置和负责解析/解码视频数据的装置)解释时,文件可能没有恰当地输送和/或播放。

举例来说,在isobmff中,视频译码器可以用至少三种不同方法解释rap,这取决于视频译码器所符合的isobmff的特定部分。在第一实例中,rap可以对应于sap类型1、2或3中的任一者,但不不对应于其它sap类型。举例来说,isobmff的章节3.1.11的一部分再现于下文:

3.1.11

随机存取点(rap)

在路径中的样本,其在sap的类型1或2或3的isau处开始(如在附件i中所定义);非正式的样本,从其中在解码开始时可以正确地解码样本本身和所有以组成次序在后面的样本

在以上实例(被称作解释1)中,rap仅对应于sap1型到3;因此渐进解码刷新(gdr)开始点无法被视为rap。

在另一个实例中,rap可以对应于sap类型1、2、3或4中的任一者,但不对应于其它sap类型。举例来说,isobmff的章节10.1.1.3的一部分再现于下文:

10.1.1.3

roll_distance是带正负号的整数,其给出必须被解码以便正确地解码样本的样本数量。正值指示在其为必须被解码使得最终完成这些恢复(即,最终样本是正确的)的群组成员的样本之后的样本的数量。负值指示在其为必须被解码以便在标记的样本处完成恢复的群组成员的样本之前的样本的数量。不得使用零值;同步样本表记录了不需要恢复卷动的随机存取点。

在以上实例(被称作解释2)中,gdr开始点可以被视为rap,这与条款3.1.11中的rap的定义不一致(上文提到)。

在第三实例中,随机存取点可以对应于同步样本,其为编解码特定的。举例来说,isobmff的章节a.7的一部分再现于下文:

a.7随机存取

3)原本位于步骤1的样本可能不是同步样本。同步样本表指示哪个样本是实际的随机存取点。使用这种表,可以在规定的时间之前定位哪个样本是第一同步样本。不存在同步样本表指示所有样本是同步点,并且使得这一问题变得简单。在查询同步样本表之后,很可能希望查找哪个所产生的样本最接近于(但是在之前)在步骤1中所发现的样本。

在以上实例(被称作解释3)中,rap是同步样本,且反之亦然。

上文所提到的解释可以引起通过解封装单元29或视频解码器30的解析和/或解码困难。举例来说,解封装单元29或视频解码器30可以确定特定位流是否符合特定标准,并且因此基于样本是否被识别为rap而包含在预期的位置处的信息。在出于说明的目的的一个实例中,解封装单元29或视频解码器30可以解析来自位流的不同位置的参数集,这取决于解封装单元29或视频解码器30是否确定样本是rap样本。

下文包含iso/iec14496-15(在本文中被称作isobmff,其包含avc文件格式、svc文件格式、mvc文件格式和hevc文件格式)的实例章节。在这些实例中,解封装单元29或视频解码器30可以在不同章节之间不同地解释rap(例如,如上文相对于解释1、解释2和解释3所提到的),这可能影响位流的参数集的恰当解析和/或解码。

举例来说,isobmff的章节4.8的一部分再现于下文:

4.8同步样本(idr)

●当样本条目名称是‘avc3’或‘avc4’时,以下内容适用:

1.如果样本是idr存取单元,那么解码该样本所需的所有参数集将包含于样本条目或样本本身中。

2.否则(样本不是idr存取单元),解码样本所需的所有参数集将包含于样本条目或从先前随机存取点到样本本身(包含)的样本中的任一者中。

在以上实例中,解封装单元29或视频解码器30可以基于随机存取点的定义确定位流的参数集的位置。然而,如上文所指出,解封装单元29或视频解码器30可以不一致地确定随机存取点的定义,例如,如上文相对于解释1、解释2和解释3所提到的。因此,当实际上基于随机存取点的另一定义位流确实符合视频译码标准时,解封装单元29或视频解码器30可以基于随机存取点的一个定义确定位流并不符合特定的视频译码标准。相同问题相应地适用于svc文件格式和mvc文件格式的isobmff的章节6.5.5和7.5.3(两者具有与章节4.8相同的标题)。

作为另一实例,isobmff的章节8.4.3的一部分再现于下文:

8.4.3同步样本

如果样本中的vclnal单元指示包含于样本中的经译码的图片是瞬时解码刷新(idr)图片、清洁随机存取(cra)图片或断链存取(bla)图片,那么hevc样本被视为同步样本。

当样本条目名称是‘hev1’时,以下内容适用:

●如果样本是随机存取点,那么解码该样本所需的所有参数集将包含于样本条目或样本本身中。

●否则(样本不是随机存取点),解码样本所需的所有参数集将包含于样本条目或从先前随机存取点到样本本身(包含)的样本中的任一者中。

同样,不同可能的随机存取点解释可能影响关于参数集的安置的限制,并且当排版器(例如,视频编码器20或封装单元21)和解析器(例如,解封装单元29或视频解码器30)使用两个不同的解释时,可能出现互操作性问题。

根据本发明的方面,视频编码器20、封装单元21、解封装单元29和/或视频解码器30可以施加关于参数集的安置的限制以用于视频文件的恰当地解码和播放。根据本发明的各种技术,用于译码参数集的实例语法和语义在下文中给出。如所提到,所描述的语法和语义是相对于(例如)avc、hevc、svc、mvc或类似物的语法和语义的。

在实例描述中,下文中的语法表和语义、相关标准的添加是使用粗体和下划线呈现的并且删除是使用[[双重括号]]呈现的。一般来说,关于“要求”的陈述应理解为形成标准或标准扩展的文本的一部分,而不是出于本发明的技术的目的的要求。在一些情况下,此类“要求”可包含可确定为可适用的位流限制且随后由例如视频译码器基于所述确定而加以遵守。

在一个实例中,根据本发明的方面,视频编码器20、封装单元21、解封装单元29和/或视频解码器30可以符合avc文件格式的章节4.8的更新后的版本,其中“随机存取点”被替换为如下“其为idr存取单元的样本”:

4.8同步样本(idr)

如果[[满足所有以下条件]]样本中的视频数据nal单元指示包含于样本中的初级图片是瞬时解码刷新(idr)图片,那么样本被视为同步样本。

●当样本条目名称是‘avc3’或‘avc4’时,以下内容适用:

1.如果样本是idr存取单元,那么解码该样本所需的所有参数集将包含于样本条目或样本本身中。

2.否则(样本不是idr存取单元),解码样本所需的所有参数集将包含于样本条目或从为idr存取单元的先前[[随机存取点]]样本到样本本身(包含)的样本中的任一者中。

相同改变相应地适用于svc文件格式和mvc文件格式的isobmff的章节6.5.5和7.5.3(两者具有与章节4.8相同的标题)。在此实例中,视频编码器20、封装单元21、解封装单元29和/或视频解码器30或其它装置可经配置以确定:如果样本中的视频数据nal单元指示包含于样本中的初级图片是idr图片,那么样本是同步样本。视频编码器20、封装单元21、解封装单元29和/或视频解码器30或其它装置可以进一步经配置使得:如果样本是idr存取单元,那么解码样本所需的所有参数集包含(例如,编码、存储或安置)于样本的样本条目中或样本本身中。因此,当样本是idr存取单元时,通过以此方式包含解码样本所需的所有参数集,视频解码器30可以确定同步样本的视频数据的参数集数据仅来自样本的样本条目或样本本身。确定参数集数据可以是指(例如)解析、解码、检索或获取参数集数据。

在此实例中,解码样本所需的所有参数集包含于样本的样本条目或样本本身中。因此,解码样本的视频数据的参数集数据仅包含于样本的样本条目或样本本身中。类似地,为了解码样本的视频数据,解码样本的视频数据所需的所有参数集数据是从样本的样本条目或样本本身中确定的。因此,为了解码,视频数据的参数集数据是仅从样本的样本条目或样本本身中确定的。

此外,在此实例中,视频编码器20、封装单元21、解封装单元29和/或视频解码器30或其它装置可以配置使得:如果样本不是idr存取单元,那么解码样本所需的所有参数集包含(例如,编码、存储或安置)于样本的样本条目或从为idr存取单元的先前样本到不是idr存取单元本身的样本的样本中的任一者中。也就是说,如果样本不是idr存取单元,那么解码样本所需的所有参数集包含于不是idr存取单元的样本的样本条目、不是idr存取单元本身的样本、是idr存取单元的先前样本中,或者包含于在其为idr存取单元的先前样本之后且在样本本身之前(即,在不是idr存取单元的样本之前)的样本中。通过解码不是以此方式所包含的idr存取单元的样本所需的所有参数集,视频解码器30可以仅从样本的样本条目、样本本身、其为idr存取单元的先前样本中,或从出现在不是idr存取单元的样本与其为idr存取单元的先前样本之间的样本中确定样本的视频数据的参数集数据。

在此实例中,解码不是idr存取单元的样本所需的所有参数集包含于样本的样本条目、样本本身、其为idr存取单元的先前样本中,或包含于出现在不是idr存取单元的样本与其为idr存取单元的先前样本之间的样本中。因此,解码样本的视频数据的参数集数据仅包含于样本的样本条目、样本本身、其为idr存取单元的先前样本中,或包含于出现在不是idr存取单元的样本与其为idr存取单元的先前样本之间的样本中。类似地,为了解码样本的视频数据,解码样本的视频数据所需的所有参数集数据是从样本的样本条目、样本本身、其为idr存取单元的先前样本中确定的,或从出现在不是idr存取单元的样本与其为idr存取单元的先前样本之间的样本中确定的。因此,为了解码样本的视频数据,视频数据的参数集数据是仅从样本的样本条目、样本本身、其为idr存取单元的先前样本中确定的,或从出现在不是idr存取单元的样本与作为idr存取单元的先前样本之间的样本中确定的。

在一些实例中,视频编码器20、封装单元21、解封装单元29和/或视频解码器30或其它装置可以进一步经配置使得:如果样本是idr存取单元并且样本条目名称是特定名称(例如,‘avc3’或‘avc4’),那么解码该同步样本所需的所有参数集包含(例如,编码、存储或安置)于样本的样本条目中或样本本身中。因此,通过解码以此方式所包含的样本所需的所有参数集,如果样本是idr存取单元并且样本条目名称是特定名称(例如,‘avc3’或‘avc4’),那么视频解码器30可以确定样本的视频数据的参数集数据仅在样本的样本条目或样本本身中。因此,可以以此方式确定参数集数据,这是基于确定样本是idr存取单元并且进一步基于样本的条目名称,例如,样本条目名称为特定名称或特定名称(例如,‘avc3’或‘avc4’)的集合中的一个。如果样本条目名称不是特定名称,那么可以不同地操纵参数集数据的安置或确定。

在一些实例中,视频编码器20、封装单元21、解封装单元29和/或视频解码器30或其它装置可以进一步经配置使得:如果样本不是idr存取单元并且样本条目名称是特定名称(例如,‘avc3’或‘avc4’),那么解码该同步样本所需的所有参数集包含(例如,编码、存储或安置)于不是idr存取单元的样本的样本条目、不是idr存取单元本身的样本、其为idr存取单元的先前样本,或在其为idr存取单元的先前样本之后且在样本本身之前(即,在不是idr存取单元的样本之前)的样本中。因此,通过解码以此方式所包含的样本所需的所有参数集,如果样本不是idr存取单元并且样本条目名称是特定名称(例如,‘avc3’或‘avc4’),那么视频解码器30可以确定样本的视频数据的参数集数据仅在不是idr存取单元的样本的样本条目、不是idr存取单元本身的样本、其为idr存取单元的先前样本,或在其为idr存取单元的先前样本之后且在样本本身之前(即,在不是idr存取单元的样本之前)的样本中。因此,可以以此方式解码参数集数据,这是基于确定样本不是idr存取单元并且进一步基于样本的条目名称,例如,样本条目名称为特定名称或特定名称(例如,‘avc3’或‘avc4’)的集合中的一个。如果样本条目名称不是特定名称,那么可以不同地操纵参数集数据的安置或确定。

在另一个实例中,根据本发明的方面,举例来说,视频编码器20、封装单元21、解封装单元29和/或视频解码器30可以符合如下avc文件格式的章节4.8的更新后的版本,内容如下:

4.8同步样本(idr)

如果[[满足所有以下条件]]样本中的视频数据nal单元指示包含于样本中的初级图片是瞬时解码刷新(idr)图片,那么样本被视为同步样本。

●当样本条目名称是‘avc3’或‘avc4’时,以下内容适用:

1.如果样本是[[idr存取单元]]同步样本,那么解码该样本所需的所有参数集将包含于样本条目或样本本身中。

2.否则(样本不是[[idr存取单元]]同步样本),解码样本所需的所有参数集将包含于样本条目中或从先前[[随机存取点]]同步样本到样本本身(包含)的样本中的任一者中。

同样,相同改变相应地适用于svc文件格式和mvc文件格式的isobmff的章节6.5.5和7.5.3(两者具有与章节4.8相同的标题)。在此实例中,视频编码器20、封装单元21、解封装单元29和/或视频解码器30或其它装置可经配置以确定:如果样本中的视频数据nal单元指示包含于样本中的初级图片是idr图片,那么样本是同步样本。视频编码器20、封装单元21、解封装单元29和/或视频解码器30或其它装置可以进一步经配置使得:如果样本是同步样本,那么解码该同步样本所需的所有参数集包含(例如,通过视频编码器20、封装单元21、解封装单元29和/或视频解码器30或另一装置)于同步样本的样本条目或同步样本本身中。因此,通过解码以此方式所包含的同步样本所需的所有参数集,视频解码器30可以确定同步样本的视频数据的参数集数据仅在样本的样本条目或样本本身中。确定参数集数据可以是指(例如)解析、解码、检索或获取参数集数据。

在此实例中,解码同步样本所需的所有参数集包含于同步样本的样本条目或同步样本本身中。因此,解码同步样本的视频数据的参数集数据仅包含于同步样本的样本条目或同步样本本身中。类似地,为了解码同步样本的视频数据,解码同步样本的视频数据所需的所有参数集数据是从同步样本的样本条目或同步样本本身中确定的。因此,为了解码,视频数据的参数集数据是通过解码器30仅从同步样本的样本条目或同步样本本身中确定的。

此外,在此实例中,视频编码器20、封装单元21、解封装单元29和/或视频解码器30或其它装置可经配置使得:如果样本不是同步样本,那么解码样本所需的所有参数集包含于样本的样本条目或从先前同步样本到样本本身(包含)的样本中的任一者中。也就是说,如果样本不是同步样本,那么解码不是同步样本的样本所需的所有参数集包含(例如,编码、存储或安置)于不是同步样本的样本的样本条目、不是同步样本本身的样本、先前同步样本中,或在先前样本之后且在样本本身之前(即,在不是同步样本的样本之前)的一或多个样本中。不是同步样本的样本还可被称为非同步样本。通过解码以此方式所包含的非同步样本所需的所有参数集,视频解码器30可以仅从样本的样本条目、样本本身、先前同步样本中,或从出现在非同步样本与先前同步样本之间的样本中确定非同步样本的视频数据的参数集数据。

在此实例中,解码非同步样本所需的所有参数集包含于非同步样本的样本条目、非同步样本本身、其为同步样本的先前样本中,或包含于出现在非同步样本与先前同步样本之间的样本中。因此,用于解码非同步样本的视频数据的参数集数据仅包含于非同步样本的样本条目、非同步样本本身、其为同步样本的先前样本中,或包含于出现在非同步样本与先前同步样本之间的样本中。类似地,为了解码非同步样本的视频数据,解码非同步样本的视频数据所需的所有参数集数据是从非同步样本的样本条目、非同步样本本身、先前同步样本中确定的,或在出现在非同步样本与先前同步样本之间的样本中确定的。因此,为了解码非同步样本的视频数据,视频数据的参数集数据是仅从非同步样本的样本条目、非同步样本本身、先前同步样本中确定的,或在出现在非同步样本与先前同步样本之间的样本中确定的。

在一些实例中,视频编码器20、封装单元21、解封装单元29和/或视频解码器30或其它装置可以进一步经配置使得:如果样本是同步样本并且样本条目名称是特定名称(例如,‘avc3’或‘avc4’),那么解码该同步样本所需的所有参数集包含(例如,编码、存储或安置)于同步样本的样本条目或同步样本本身中。因此,通过解码以此方式所包含的样本所需的所有参数集,如果样本是同步样本并且样本条目名称是特定名称(例如,‘avc3’或‘avc4’),那么视频解码器30可以确定同步样本的视频数据的参数集数据仅在同步样本的样本条目或同步样本本身中。因此,可以以此方式解码参数集数据,这是基于确定样本不是同步样本并且进一步基于样本的条目名称,例如,样本条目名称为特定名称或特定名称(例如,‘avc3’或‘avc4’)的集合中的一个。如果样本条目名称不是特定名称,那么可以不同地操纵参数集数据的安置或确定。

在一些实例中,视频编码器20、封装单元21、解封装单元29和/或视频解码器30或其它装置可以进一步经配置使得:如果样本不是同步样本并且样本条目名称是‘avc3’或‘avc4’,那么解码样本所需的所有参数集包含(例如,编码、存储或安置)于不是同步样本的样本条目、不是同步样本本身的样本、先前同步样本,或在先前同步样本之后且在样本本身之前(即,在不是同步样本的样本之前)的样本中。因此,通过解码以此方式所包含的样本所需的所有参数集,如果样本不是同步样本并且样本条目名称是特定名称(例如,‘avc3’或‘avc4’),那么视频解码器30可以确定样本的视频数据的参数集数据仅在不是同步样本的样本的样本条目、不是同步样本本身的样本、先前同步样本,或在先前同步样本之后且在样本本身之前(即,在不是同步样本的样本之前)的一或多个样本中。因此,可以以此方式确定参数集数据,这是基于确定样本不是同步样本并且进一步基于样本的条目名称,例如,样本条目名称为特定名称或特定名称(例如,‘avc3’或‘avc4’)的集合中的一个。如果样本条目名称不是特定名称,那么可以不同地操纵参数集数据的安置或确定。

相对于hevc,在根据本发明的技术的另一个实例中,视频编码器20、封装单元21、解封装单元29和/或视频解码器30可以符合hevc文件格式的章节8.4.3的更新后的版本,其中“随机存取点”被替换为“同步样本”,内容如下:

8.4.3同步样本

如果样本中的vclnal单元指示包含于样本中的经译码的图片是瞬时解码刷新(idr)图片、清洁随机存取(cra)图片或断链存取(bla)图片,那么hevc样本被视为同步样本。

当样本条目名称是‘hev1’时,以下内容适用:

●如果样本是[[随机存取点]]同步样本,那么解码该样本所需的所有参数集将包含于样本条目或样本本身中。

●否则(样本不是[[随机存取点]]同步样本),解码样本所需的所有参数集将包含于样本条目中或从先前[[随机存取点]]同步样本到样本本身(包含)的样本中的任一者中。

在此实例中,视频编码器20、封装单元21、解封装单元29和/或视频解码器30或其它装置可经配置以确定:如果样本中的vclnal单元指示包含于样本中的经译码的图片是瞬时解码刷新(idr)图片、清洁随机存取(cra)图片或断链存取(bla)图片,那么样本是同步样本。视频编码器20、封装单元21、解封装单元29和/或视频解码器30或其它装置可经进一步经配置使得:如果样本是同步样本,那么解码同步样本的视频数据所需的所有参数集包含于同步样本的样本条目中或同步样本本身中。因此,通过解码以此方式所包含的同步样本所需的所有参数集,对于同步样本,视频解码器30可以仅从样本的样本条目中或从样本本身中确定样本的视频数据的参数集数据。确定参数集数据可以是指(例如)解析、解码、检索或获取参数集数据。

在此实例中,解码同步样本所需的所有参数集包含于同步样本的样本条目或同步样本本身中。因此,解码同步样本的视频数据的参数集数据仅包含于同步样本的样本条目或同步样本本身中。类似地,为了解码同步样本的视频数据,解码同步样本的视频数据所需的所有参数集数据是从同步样本的样本条目或同步样本本身中确定的。因此,为了解码,视频数据的参数集数据是例如通过解码器30仅从同步样本的样本条目或同步样本本身中确定的。

在此实例中,视频编码器20、封装单元21、解封装单元29和/或视频解码器30或其它装置可以配置使得:如果样本不是同步样本,那么解码样本所需的所有参数集包含于样本的样本条目中或从先前同步样本到样本本身(包含)的样本中的任一者中。也就是说,如果样本不是同步样本,那么解码样本所需的所有参数集包含于不是同步样本的样本的样本条目、不是同步样本本身的样本、先前同步样本,或在先前同步样本之后且在样本本身之前(即,在不是同步样本的样本之前)的样本中。不是同步样本的样本还可被称为非同步样本。因此,通过解码以此方式所包含的非同步样本所需的所有参数集,视频解码器30可以仅从非同步样本的样本条目、非同步样本本身、先前同步样本中,或从出现在非同步样本与先前同步样本之间的一或多个样本中确定用于解码非同步样本的视频数据的参数集数据。

在此实例中,解码非同步样本所需的所有参数集包含于非同步样本的样本条目、非同步样本本身、其为同步样本的先前样本中,或包含于出现在非同步样本与先前同步样本之间的样本中。因此,用于解码非同步样本的视频数据的参数集数据仅包含于非同步样本的样本条目、非同步样本本身、其为同步样本的先前样本中,或包含于出现在非同步样本与先前同步样本之间的样本中。类似地,为了解码非同步样本的视频数据,解码非同步样本的视频数据所需的所有参数集数据是从非同步样本的样本条目、非同步样本本身、先前同步样本中确定的,或从出现在非同步样本与先前同步样本之间的样本中确定的。因此,为了解码非同步样本的视频数据,视频数据的参数集数据是例如通过视频解码器30仅从非同步样本的样本条目、非同步样本本身、先前同步样本中,或从出现在非同步样本与先前同步样本之间的一或多个样本中确定的。

在一些实例中,视频编码器20、封装单元21、解封装单元29和/或视频解码器30或其它装置可以进一步经配置使得:如果样本是同步样本并且样本条目名称是特定名称(例如,‘hev1’),那么解码该同步样本所需的所有参数集包含(例如,编码、存储或安置)于样本的样本条目中或样本本身中。因此,通过解码以此方式所包含的样本所需的所有参数集,如果样本是同步样本并且样本条目名称是特定名称(例如,‘hev1’),那么视频解码器30可以确定用于解码样本的视频数据的参数集数据仅在同步样本的样本条目或同步样本本身中。因此,可以以此方式确定参数集数据,这是基于确定样本是同步样本并且进一步基于样本的条目名称,例如,样本条目名称为特定名称或特定名称的集合中的一个,例如,‘hev1’。如果样本条目名称不是特定名称,那么可以不同地操纵参数集的安置。

在一些实例中,视频编码器20、封装单元21、解封装单元29和/或视频解码器30或其它装置可以进一步经配置使得:如果样本不是同步样本并且样本条目名称是‘hev1’,那么解码该同步样本所需的所有参数集包含(例如,编码、存储或安置)于不是同步样本的样本的样本条目、不是同步样本本身的样本、先前同步样本,或在先前同步样本之后且在样本本身之前(即,在不是同步样本的样本之前)的一或多个样本中。因此,通过解码以此方式所包含的样本所需的所有参数集,如果样本不是同步样本(即,它是非同步样本)并且样本条目名称是特定名称(例如,‘hev1’),那么视频解码器30可以确定用于解码非同步样本的视频数据的参数集数据仅在非同步样本的样本条目、非同步样本本身、先前同步样本,或在先前同步样本之后且在非同步样本本身之前(即,在不是同步样本的样本之前)的一或多个样本中。因此,可以以此方式解码参数集数据,这是基于确定样本不是同步样本并且进一步基于样本的条目名称,例如,样本条目名称为特定名称或特定名称的集合中的一个,例如,‘hev1’。如果样本条目名称不是特定名称,那么可以不同地操纵参数集数据的确定。

本发明的其它方面涉及确定样本是否是同步样本。举例来说,根据本发明的方面,可以更新在分层hevc位流的分层hevc文件格式中的同步样本的定义以与在hevc文件格式中的同步样本的定义一致且后向兼容。一般来说,通用名称分层hevc(l-hevc)可用于使用相同分层设计的所有hevc扩展。l-hevc位流可以是层的集合,其中每一层有助于调整在质量、分辨率、帧率、视图、深度等中的视觉呈现。相关层的集合被分组在一起作为层集合。任何层集合中的层是通过它们的层标识符(l-id)唯一地识别的。层可以是一或多个层集合的成员。属于层的nal单元可以进一步基于它们的时间标识符(t-id)分割。每个此类分割被称为子层。

在hevc文件格式中,如果样本中的vclnal单元指示包含于样本中的经译码的图片是idr图片、cra图片或bla图片,那么hevc样本可以被视为同步样本。然而,在草案l-hevc文件格式中,如果存取单元中的每个经译码的图片是帧内随机存取点(irap)图片而没有随机存取跳过前沿(rasl)图片,那么l-hevc样本可以被视为同步样本。举例来说,shvc和mv-hevc都使用相同的分层设计。

在以上实例中,草案分层hevc文件格式中的同步样本的定义可能不与在hevc文件格式中的一致,其中失配为irap图片的rasl图片的存在是否将不允许样本为同步样本。这种失配可以产生的问题在于当使用hevc兼容样本条目(即,‘hvc1’、‘hev1’、‘hvc2’和‘hev2’中的一个)时l-hevc文件格式的同步样本的定义不与hevc文件格式后向兼容。

根据本发明的方面,视频编码器20、封装单元21、解封装单元29和/或视频解码器30可经配置以符合l-hevc文件格式的同步样本的更新后的定义以与hevc文件格式的定义一致且后向兼容。举例来说,取决于样本条目名称,l-hevc文件格式的同步样本定义如下:

-当样本条目名称是‘hvc1’、‘hev1’、‘hvc2’或‘hev2’时,如果存取单元中的基础层图片是如在iso/iec23008-2中所定义的irap图片,那么l-hevc样本被视为同步样本。

-当样本条目名称是‘lhv1’或‘lhe1’时,如果存取单元中的每个经译码的图片是如在iso/iec23008-2中所定义的irap图片,那么l-hevc样本被视为同步样本。

替代地,在不考虑相同条目名称的情况下,如果存取单元中的基础层图片是如在iso/iec23008-2中所定义的irap图片,那么视频编码器20、封装单元21、解封装单元29和/或视频解码器30可经配置以确定l-hevc样本是同步样本。

替代地,在不考虑相同条目名称的情况下,如果存取单元中的每个经译码的图片是如在iso/iec23008-2中所定义的irap图片,那么视频编码器20、封装单元21、解封装单元29和/或视频解码器30可经配置以确定l-hevc样本是同步样本。同步样本是通过同步样本表记录的,并且可以另外通过流存取点‘sap.’样本群组记录。

图2是说明可以实施本发明中描述的技术的实例视频编码器20的框图。视频编码器20可以包含用于存储视频数据的存储器和一或多个处理器,所述一或多个处理器经配置以执行视频译码操作,例如,操作以编码视频数据,并且操作以包含用于解码在特定位置中的样本的参数集数据,如本发明中所描述。视频编码器20可经配置以将视频输出到后处理实体27,所述后处理实体是可以实施用于编码视频数据的技术的另一实例装置,如本发明中所描述。举例来说,后处理实体27可以执行技术以用于包含在特定位置中用于解码样本的参数集数据,和/或确定用于从特定位置中解码样本的参数集数据,如本发明中所描述。后处理实体27意图表示视频实体的实例,例如,具有媒体知识的网络元件(mane)、拼接/编辑装置或可处理来自视频编码器20的经编码的视频数据的另一中间装置。在一些情况下,后处理实体27可为网络实体的实例。在一些视频编码系统中,后处理实体27及视频编码器20可为单独装置的若干部分,而在其它情况下,关于后处理实体27所描述的功能性可由包括视频编码器20的相同装置执行。

视频编码器20可对视频切片内的视频块执行帧内和帧间译码。帧内译码依赖于空间预测来减少或去除给定视频帧或图片内的视频中的空间冗余。帧间译码依赖于时间预测来减少或去除视频序列的邻近帧或图片内的视频中的时间冗余。帧内模式(i模式)可指若干基于空间的压缩模式中的任一者。例如单向预测(p模式)或双向预测(b模式)的帧间模式可指若干基于时间的压缩模式中的任一者。

在图2的实例中,视频编码器20包含分割单元35、视频存储器37、预测单元41、滤波器单元63、参考图片存储器64、求和器50、变换处理单元52、量化单元54,及熵编码单元56。预测单元41包含运动估计单元42、运动补偿单元44及帧内预测处理单元46。视频存储器37和参考图片存储器64可以是同一存储器装置的部分或单独的存储器装置。所述存储器装置可以是本发明中所描述的任何形式的计算机可读媒体或数据存储媒体,例如,ram、rom、快闪存储器或类似物,或其组合。为了视频块重构,视频编码器20还包含逆量化单元58、逆变换处理单元60,及求和器62。滤波器单元63意图表示一或多个环路滤波器,例如,解块滤波器、自适应环路滤波器(alf)及样本自适应偏移(sao)滤波器。尽管在图2中将滤波器单元63示为环路内滤波器,但在其它配置中,可将滤波器单元63实施为环路后滤波器。

如图2中所示,视频编码器20接收待编码的视频数据(例如,在视频存储器37中),并且分割单元35将视频存储器37中的视频数据分割成视频块。此分割还可包含分割成切片、单元片或其它较大单元,以及例如根据lcu及cu的四叉树结构的视频块分割。视频编码器20大体上说明对待编码的视频切片内的视频块进行编码的组件。可将切片划分成多个视频块(且可能划分成被称作单元片的视频块的集合)。预测处理单元41可基于错误结果(例如,译码速率及失真等级)针对当前视频块选择多种可能译码模式中的一者,例如,多种帧内译码模式中的一者或多种帧间译码模式中的一者。预测处理单元41可将所得经帧内或帧间译码块提供到求和器50以产生残余块数据,并提供到求和器62以重构经编码的块以用作参考图片。

预测处理单元41内的帧内预测处理单元46可相对于与待译码的当前块在相同的帧或切片中的一或多个相邻块执行当前视频块的帧内预测性译码以提供空间压缩。预测处理单元41内的运动估计单元42及运动补偿单元44相对于一或多个参考图片中的一或多个预测块执行当前视频块的帧间预测性译码以提供时间压缩。

运动估计单元42可经配置以根据用于视频序列的预定模式来确定用于视频切片的帧间预测模式。预定模式可将序列中的视频切片表示为p切片或b切片。运动估计单元42及运动补偿单元44可高度集成,但出于概念性目的分别加以说明。由运动估计单元42执行的运动估计是产生运动向量的过程,所述过程估计视频块的运动。举例来说,运动向量可指示将当前视频帧或图片内的视频块的pu相对于参考图片内的预测块的移位。

预测块是被发现在像素差方面与待译码的视频块的pu密切匹配的块,像素差可通过绝对差总和(sad)、平方差总和(ssd)或其它差度量来确定。在一些实例中,视频编码器20可以计算存储在参考图片存储器64中的参考图片的子整数像素位置的值。举例来说,视频编码器20可以内插参考图片的四分之一像素位置、八分之一像素位置或其它分数像素位置的值。因此,运动估计单元42可相对于整数像素位置及分数像素位置执行运动搜索并且输出具有分数像素精确度的运动向量。

运动估计单元42通过比较pu的位置与参考图片的预测块的位置来计算用于经帧间译码切片中的视频块的pu的运动向量。参考图片可以选自第一参考图片列表(列表0)或第二参考图片列表(列表1),其中的每一者识别存储在参考图片存储器64中的一或多个参考图片。运动估计单元42将计算出的运动向量发送到熵编码单元56及运动补偿单元44。

通过运动补偿单元44执行的运动补偿可以涉及基于通过运动估计(可能执行对子像素精确度的内插)确定的运动向量提取或产生预测块。在接收到当前视频块的pu的运动向量后,运动补偿单元44可在参考图片列表中的一者中定位所述运动向量指向的预测块。视频编码器20通过从正被译码的当前视频块的像素值中减去预测块的像素值来形成残余视频块,从而形成像素差值。像素差值形成用于所述块的残余数据,且可包含亮度及色度差分量两者。求和器50表示执行此减法运算的一或多个组件。运动补偿单元44还可产生与视频块和视频切片相关联的语法元素以供视频解码器30在对视频切片的视频块解码时使用。

作为如上文所描述由运动估计单元42和运动补偿单元44执行的帧间预测的替代方案,帧内预测单元46可对当前块进行帧内预测。确切地说,帧内预测单元46可以确定用来编码当前块的帧内预测模式。在一些实例中,例如,在单独的编码传递期间,帧内预测单元46可以使用各种帧内预测模式对当前块进行编码,并且帧内预测单元46(或在一些实例中,模式选择单元40)可以从测试模式中选择合适的帧内预测模式来使用,例如,通过使用用于各种测试帧内预测模式的速率失真分析来计算速率失真值并且从测试模式中选择具有最好的速率失真特征的帧内预测模式。

在任何情况下,在选择了用于一个块的帧内预测模式之后,帧内预测单元46可以将指示用于所述块的所选择的帧内预测模式的信息提供到熵编码单元56。熵编码单元56可以根据本发明的技术对指示所选择的帧内预测模式的信息进行编码。视频编码器20可在所传输的位流中包含配置数据,所述配置数据可包含多个帧内预测模式索引表及多个修改后的帧内预测模式索引表(也被称作码字映射表)、用于各种块的编码上下文的定义,及用于所述上下文中的每一者的最可能的帧内预测模式、帧内预测模式索引表及修改后的帧内预测模式索引表的指示。

在预测处理单元41经由帧间预测或帧内预测产生当前视频块的预测块之后,视频编码器20通过从当前视频块减去预测块而形成残余视频块。残余块中的残余视频数据可包含在一或多个tu中并应用于变换处理单元52。变换处理单元52使用例如离散余弦变换(dct)或概念上类似的变换的变换来将残余视频数据变换成残余变换系数。变换处理单元52可将残余视频数据从像素域转换到变换域,例如,频域。

变换处理单元52可将所得变换系数发送到量化单元54。量化单元54对变换系数进行量化以进一步减小位速率。量化过程可减小与系数中的一些或全部相关联的位深度。可以通过调节量化参数来修改量化程度。在一些实例中,量化单元54可随后执行对包含经量化变换系数的矩阵的扫描。替代地,熵编码单元56可执行扫描。

在量化之后,熵编码单元56对经量化的变换系数进行熵编码。举例来说,熵编码单元56可执行上下文自适应可变长度译码(cavlc)、上下文自适应二进制算术译码(cabac)、基于语法的上下文自适应二进制算术译码(sbac)、概率区间分割熵(pipe)译码或另一熵译码方法或技术。在由熵编码单元56进行熵编码后,可将经编码的位流传输到视频解码器30,或将经编码的位流存档以供稍后由视频解码器30传输或检索。熵编码单元56还可对正经译码的当前视频切片的运动向量和其它语法元素进行熵编码。

逆量化单元58和逆变换处理单元60分别应用逆量化和逆变换以在像素域中重构残余块,以供稍后用作参考图片的参考块。运动补偿单元44可通过将残余块添加到参考图片列表中的一者内的参考图片中的一者的预测块中来计算参考块。运动补偿单元44还可将一或多个内插滤波器应用于经重构的残余块以计算子整数像素值用于运动估计。求和器62将经重构的残余块添加到由运动补偿单元44产生的经运动补偿的预测块以产生参考块以用于存储在参考图片存储器64中。参考块可由运动估计单元42和运动补偿单元44用作参考块以对后续视频帧或图片中的块进行帧间预测。

以此方式,图2的视频编码器20表示经配置以实施本文中阐述的技术中的一或多者的视频编码器的实例。在一个实例中,熵编码单元56可以执行本文中相对于参数集和同步样本所描述的技术。此外,图2的后处理实体27是可以实施本发明中相对于参数集和同步样本所描述的技术的另一实例装置。

图3是说明可以实施本发明中描述的技术的实例视频解码器30的框图。视频解码器30可以包含用于存储视频数据的存储器和一或多个处理器,所述一或多个处理器经配置以执行视频译码操作,例如,操作以解码视频数据,并且操作以确定用于解码来自特定位置中的样本的参数集数据,如本发明中所描述。在图3的实例中,视频解码器30包含熵解码单元80、视频存储器83、预测处理单元81、逆量化单元86、逆变换单元88、求和器90、滤波器单元91和参考图片存储器92。预测处理单元81包含运动补偿单元82和帧内预测处理单元84。在一些实例中,视频解码器30可执行大体上与相对于来自图2的视频编码器20描述的编码遍次互逆的解码遍次。

在解码过程期间,视频解码器30从视频编码器20中接收表示经编码的视频切片的视频块及相关联的语法元素的经编码的视频位流。举例来说,视频存储器83可以接收经编码的视频位流。在一些实例中,视频存储器83可以是经译码的图片缓冲器。视频解码器30可以从网络实体79(这在一些实例中,可以对应于图1的路由器36)中接收经编码的视频位流,例如,经由视频存储器83。举例来说,网络实体79可以是服务器、mane、视频编辑器/拼接器或经配置以实施上文所述的用于解码视频数据的技术中的一或多个的其它此类装置。网络实体79可包含或可不包含视频编码器,例如,视频编码器20。在网络实体79将经编码的视频位流传输到视频解码器30之前,网络实体79可实施本发明中描述的技术中的一些。在一些实例中,网络实体79可以执行技术以用于包含在特定位置中用于解码样本的参数集数据,和/或确定用于从特定位置中解码样本的参数集数据,如本发明中所描述。在一些视频解码系统中,网络实体79和视频解码器30可为单独的装置的部分,而在其它情况下,关于网络实体79描述的功能性可由包括视频解码器30的相同装置执行。

视频解码器30的熵解码单元80对位流进行熵解码以产生经量化的系数、运动向量及其它语法元素。熵解码单元80将运动向量和其它语法元素转发到预测处理单元81。视频解码器30可以接收在视频切片层级和/或视频块层级处的语法元素。

当视频切片经译码为经帧内译码(i)切片时,预测处理单元81的帧内预测处理单元84可基于用信号发送的帧内预测模式及来自当前帧或图片的先前经解码块的数据产生用于当前视频切片的视频块的预测数据。当视频帧经译码为经帧间译码(即,b或p)切片时,预测处理单元81的运动补偿单元82基于从熵解码单元80接收的运动向量及其它语法元素产生用于当前视频切片的视频块的预测块。可从参考图片列表中的一者内的参考图片中的一者产生预测块。视频解码器30可基于存储在参考图片存储器92中的参考图片使用默认构造技术构造参考帧列表:列表0及列表1。

运动补偿单元82通过解析运动向量及其它语法元素确定用于当前视频切片的视频块的预测信息,并且使用所述预测信息产生用于经解码的当前视频块的预测块。举例来说,运动补偿单元82使用接收到的语法元素中的一些以确定用于译码视频切片的视频块的预测模式(例如,帧内或帧间预测)、帧间预测切片类型(例如,b切片或p切片)、用于切片的参考图片列表中的一或多个的构造信息、用于切片的每个经帧间编码的视频块的运动向量、用于切片的每个经帧间译码的视频块的帧间预测状况,以及用于解码当前视频切片中的视频块的其它信息。

运动补偿单元82还可基于内插滤波器而执行内插。运动补偿单元82可使用如由视频编码器20在编码视频块期间使用的内插滤波器来计算参考块的子整数像素的内插值。在此情况下,运动补偿单元82可从所接收的语法元素中确定由视频编码器20使用的内插滤波器并使用所述内插滤波器来产生预测块。

逆量化单元86将提供于位流中且由熵解码单元80解码的经量化的变换系数逆量化(即,去量化)。逆量化过程可包含使用由视频编码器20针对视频切片中的每一视频块所计算的量化参数以确定量化的程度,并且类似地确定应当应用的逆量化的程度。逆变换处理单元88将逆变换(例如,逆dct、逆整数变换或概念地类似的逆变换过程)应用于变换系数,以便产生像素域中的残余块。

在运动补偿单元82基于运动向量和其它语法元素产生了当前视频块的预测块之后,视频解码器30通过将来自逆变换处理单元88的残余块与运动补偿单元82产生的对应预测块求和来形成经解码的视频块。求和器90表示可执行此求和运算的一或多个组件。

在需要时,还可使用环路滤波器(在译码环路中或在译码环路之后)来使像素转变变平稳,或者以其它方式改善视频质量。滤波器单元91意图表示一或多个环路滤波器,例如,解块滤波器、自适应环路滤波器(alf)及样本自适应偏移(sao)滤波器。尽管在图3中将滤波器单元91示为环路内滤波器,但在其它配置中,可将滤波器单元91实施为环路后滤波器。随后将给定帧或图片中的经解码的视频块存储在参考图片存储器92中,所述参考图片存储器存储用于后续运动补偿的参考图片。参考图片存储器92还存储经解码的视频以用于稍后呈现在显示装置(例如,图1的显示装置31)上。参考图片存储器92可被称作经解码图片缓冲器。视频存储器83和参考图片存储器92可以是同一存储器装置的部分或单独的存储器装置。所述存储器装置可以是本发明中所描述的任何形式的计算机可读媒体或数据存储媒体,例如,ram、rom、快闪存储器或类似物,或其组合。

以此方式,图3的视频解码器30表示经配置以实施本文中所阐述技术中的一或多个的视频编码器的实例。在一个实例中,熵解码单元80可以执行本文中相对于参数集和同步样本所描述的技术。此外,图3的网络实体79(其可以是具有媒体知识的网络元件)是可以实施本发明中相对于参数集和同步样本所描述的技术的另一实例装置。

图4是说明实例视频文件150的元素的框图。视频文件150可以被称为封装一个片段。如本文中所述,根据iso基础媒体文件格式(isobmff)及其扩展的视频文件将数据存储在被称作“框”的一系列对象中。在图4的实例中,视频文件150包含文件类型(ftyp)框152、电影(moov)框154、片段索引(sidx)框162、电影片段(moof)框164和电影片段随机存取(mfra)框166。尽管图4表示视频文件的实例,但是应理解根据iso基础媒体文件格式及其扩展,其它媒体文件可以包含类似于视频文件150的数据结构化的其它类型的媒体数据(例如,音频数据、定时文本数据或类似物)。

文件类型(ftyp)框152通常描述视频文件150的文件类型。文件类型框152可以包含识别描述视频文件150的最佳用途的规范的数据。文件类型框152可以替代地放置在moov框154、电影片段框164和/或mfra框166之前。

在图4的实例中,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可以包含经译码的视频图片,然而在其它实例中,路径的经译码的视频图片可以包含于电影片段164中,所述电影片段可以通过trak框158和/或sidx框162的数据参考。

在一些实例中,视频文件150可以包含一个以上路径。因此,moov框154可以包含与视频文件150中的路径的数量相等的数量的trak框。trak框158可以描述视频文件150的对应的路径的特征。举例来说,trak框158可以描述对应的路径的时间和/或空间信息。当封装单元21(图1)包含在视频文件(例如,视频文件150)中的参数集路径时,类似于moov框154的trak框158的trak框可以描述参数集路径的特征。

举例来说,参数集路径中的同步样本可以指示在视频基本流中前向解码时间所需的所有参数集在其中或后续参数流样本中。在参数集更新的每个点处也存在参数集样本。每个参数集可以包含解码视频基本流的相关区段所需的序列和图片参数集。封装单元21可以在描述参数集路径的trak框内的参数集路径中用信号发送序列层级sei消息的存在。

mvex框160可以描述对应的电影片段164的特征,例如,以用信号通知除包含在moov框154内的视频数据(如果存在的话)之外,视频文件150还包含电影片段164。在串流视频数据的情形下,经译码的视频图片可以包含于电影片段164中而非包含于moov框154中。因此,所有经译码的视频样本可以包含于电影片段164中,而非包含于moov框154中。

moov框154可以包含与视频文件150中的电影片段164的数量相等的数量的mvex框160。mvex框160中的每一个可以描述电影片段164中的对应的一个的特征。举例来说,每个mvex框可以包含描述电影片段164中的对应的一个的持续时间的电影扩展标头框(mehd)框。

如上文所指出,封装单元21可以在并不包含实际经译码的视频数据的视频样本中存储序列数据集。视频样本可以通常对应于存取单元,所述存取单元是在特定时间实例处的一或多个经译码的图片的表示。在avc的情形下,经译码的图片包含一或多个vclnal单元,所述vclnal单元包含信息以构造存取单元和其它相关联的非vclnal单元(例如,sei消息)的所有像素。因此,封装单元21可以包含序列数据集,所述序列数据集可以包含在电影片段164中的一个中的序列层级sei消息。封装单元21可以进一步发信号通知序列数据集和/或序列层级sei消息的存在作为存在于在对应于电影片段164中的一个的mvex框160中的一个内的电影片段164中的一个中。

sidx框162是视频文件150的任选的元素。也就是说,符合3gpp文件格式或其它此类文件格式的视频文件不一定包含sidx框162。根据3gpp文件格式的实例,sidx框可用于识别片段(例如,包含在视频文件150内的片段)的子片段。3gpp文件格式将子片段定义为“具有对应的媒体数据框的一或多个连续的电影片段框的独立的集合并且包含电影片段框所参考的数据的媒体数据框必须在电影片段框之后并且在包含关于相同路径的信息的下一个电影片段框之前”。3gpp文件格式还指示sidx框“包含通过框记录的(子)片段的子片段的参考的序列”。所参考的字片段在呈现时间中是连续的。类似地,由片段索引框所指代的字节在片段内始终是连续的。所参考的大小给出在所参考的材料中的字节的数量的计数。

sidx框162通常提供表示包含于视频文件150中的片段的一或多个子片段的信息。举例来说,此类信息可以包含子片段开始和/或结束处的播放时间、子片段的字节偏移、子片段是否包含sap(例如,以sap开始)、sap的类型(例如,sap是否是idr图片、cra图片、bla图片或类似物)、子片段中的sap的位置(就播放时间和/或字节偏移而言)等等。

电影片段164可以包含一或多个经译码的视频图片。在一些实例中,电影片段164可以包含一或多个gop,其中的每一个可以包含多个经译码的视频图片。此外,如上文所述,在一些实例中,电影片段164可以包含序列数据集。电影片段164中的每一个可以包含电影片段标头框(mfhd,在图4中未示出)。mfhd框可以描述对应的电影片段的特征,例如,电影片段的序号。可以按视频文件150中的序号的次序包含电影片段164。

mfra框166可以描述视频文件150的电影片段164内的随机存取点。这可以辅助于执行特技模式,例如,执行对通过视频文件150封装的片段内的特定时间位置(即,播放时间)的寻找。在一些实例中,mfra框166通常是任选的并且无需包含于视频文件中。类似地,客户端装置(例如,目的地装置14)不一定需要参考mfra框166以正确地解码和显示视频文件150的视频数据。mfra框166可以包含与视频文件150的路径的数量相等的数量的路径片段随机存取(tfra)框(未示出),或在一些实例中,包含与视频文件150的媒体路径(例如,非提示路径)的数量相等的数量的路径片段随机存取(tfra)框(未示出)。

在一些实例中,电影片段164可以包含一或多个sap,例如,idr图片。类似地,mfra框166可以提供sap的视频文件150内的位置的指示。因此,视频文件150的时间子序列可以由视频文件150的sap形成。时间子序列还可包含其它图片,例如,取决于sap的p帧和/或b帧。时间子序列的帧和/或切片可以布置在片段内,使得取决于子序列的其它帧/切片的时间子序列的帧/切片可以恰当地得到解码。举例来说,在数据的分级布置中,用于预测其它数据的数据也可以包含于时间子序列中。

根据本发明的技术,视频解码器(例如,解封装单元29和/或视频解码器30(图1))可经配置以基于视频数据的样本或样本条目确定参数集数据。举例来说,解封装单元29和/或视频解码器30可经配置以确定包含于电影片段164中的视频数据的样本是否是同步样本。在一些实例中,解封装单元29和/或视频解码器30可以根据isobmff确定此类样本是否是同步样本,例如,基于在isobmff的章节4.8(avc)、章节6.5.5(svc)、章节7.5.3(mvc)和章节8.4.3(hevc)中阐述的条件。解封装单元29和/或视频解码器30可以基于样本自身或基于与mrfa框166相关联的描述评估此类条件。

对于样本的视频数据的解码,解封装单元29和/或视频解码器30可以确定参数集数据对于是同步样本的样本与不是同步样本的样本是不同的。举例来说,解封装单元29和/或视频解码器30可经配置以仅从与样本相关联的样本条目中或从样本本身中确定同步样本的参数集数据。另一方面,解封装单元29和/或视频解码器30可经配置以仅从与非同步样本相关联的样本条目中、从非同步样本本身中、从按解码次序在非同步样本之前的同步样本中,或从按解码次序在非同步样本之前但是按解码次序在先前同步样本之后出现的样本中解码非同步样本的参数集数据。

图5是说明用于从视频位流中解码参数集数据的过程的流程图。虽然出于说明的目的相对于视频解码器30(图1和3)进行描述,但是应理解图5的过程或其部分也可以通过解封装单元29(图1)、网络实体79(图3)或经配置以解析和/或解码视频数据的其它处理单元执行。举例来说,解封装单元29或网络实体79可以执行用于将解码样本的参数集数据包含在特定位置中或确定用于从特定位置中解码样本的参数集数据的技术,如本发明中所描述且在图5中说明。

在图5的实例中,视频解码器30可以接收包含视频数据的一或多个样本的视频数据的文件(180)。举例来说,如本文中所述,文件可以符合isobmff。此外,一或多个样本可以各自对应于视频数据的存取单元。

视频解码器30可以确定一或多个样本的任何样本是否是同步样本(182)。举例来说,在解码样本的视频数据之前,视频解码器30可以分析包含样本的位流以确保与特定视频译码标准的一致性。视频解码器30可以确定样本中的任一者是否可以作为同步样本处理,如由特定译码标准所限定的。在出于说明目的的实例中,视频解码器30可以基于在isobmff的章节4.8(avc)、章节6.5.5(svc)、章节7.5.3(mvc)和章节8.4.3(hevc)中阐述的限制确定样本中的任一者是否是同步样本。

基于确定样本不是同步样本,即,样本是非同步样本,视频解码器30或另一装置可以仅从对应于非同步样本的样本条目、非同步样本本身、按解码次序出现在非同步样本之前并且是同步样本的先前样本中,或从按解码次序出现在非同步样本与先前同步样本之间的一或多个样本中确定(例如,通过解析、解码、检索或以其它方式获取)非同步样本的参数集数据(184)。举例来说,视频解码器30可以被限制到位流的某些位置,从所述位置中样本的参数集数据可以得到解码。对于具有按解码次序布置的样本的给定位流,视频解码器30可以并不从除了对应于非同步样本的样本条目、非同步样本本身、按解码次序在非同步样本之前作为同步样本经解码的先前样本,或按解码次序出现在非同步样本之前但是按解码次序在作为同步样本经解码的先前样本之后的样本之外的任何位置中解码用于非同步样本的视频数据的参数集数据。解码非同步样本的视频数据所需的所有参数集数据包含在对应于非同步样本的样本条目、非同步样本本身、按解码次序在非同步样本之前作为同步样本经解码的先前样本中,或在按解码次序出现在非同步样本之前但是按解码次序在作为同步样本经解码的先前样本之后的样本中。

换句话说,对于不是同步样本的当前样本,视频解码器30可以确定仅包含在非同步样本的样本条目中或仅包含在从先前同步样本到当前非同步样本(包含)的样本中的任一者中的参数集数据,即,包含先前同步样本、在先前同步样本之后但是在当前非同步样本之前的样本,并且包含当前非同步样本。视频解码器30可经配置以仅从这些受限制的位置中确定非同步样本的参数集数据,这是因为如果样本不是同步样本,那么解码样本所需的所有参数集可以包含在样本的样本条目中或包含在从先前同步样本到样本本身(包含)的样本中的任一者中。举例来说,视频编码器20、封装单元21、解封装单元29和/或视频解码器30或其它装置可经配置使得:如果样本不是同步样本,那么解码样本所需的所有参数集包含于样本的样本条目中或包含于从先前同步样本到样本本身(包含)的样本中的任一者中。

基于确定样本是同步样本,视频解码器30可以仅从同步样本的样本条目或同步样本本身中确定样本的参数集数据(185)。解码同步样本的视频数据所需的所有参数集数据包含于对应于同步样本的样本条目或同步样本本身中。因此,对于同步样本,视频解码器30可以确定同步样本的参数集数据仅在样本条目或样本本身中,并且不在其它样本或位置中。视频解码器30可经配置以仅从这些受限制的位置中确定(例如,通过解析、解码、检索或以其它方式获取)非同步样本的参数集数据,这是因为如果样本是同步样本,那么解码同步样本所需的所有参数集包含在样本的样本条目中或包含在样本本身中。举例来说,视频编码器20、封装单元21、解封装单元29和/或视频解码器30或其它装置可经配置使得:如果样本是同步样本,那么解码样本所需的所有参数集包含于样本的样本条目中或包含于样本本身中。视频解码器30可随后基于所确定的参数集数据解码样本的视频数据(186)。先前同步样本可以是按解码次序最近的同步样本。在一些实例中,视频解码器30可以在接收新同步样本之后丢弃先前存储的参数集。

图6是说明用于在视频位流中编码参数集数据的过程的流程图。虽然出于说明的目的相对于视频编码器20(图1和2)进行描述,但是应理解图6的过程或其部分也可以通过封装单元21(图1)、后处理实体27(图2)或经配置以产生、编码和/或处理视频数据的其它处理单元或装置执行。举例来说,封装单元21或后处理实体27可以执行用于包含用于解码特定位置中的样本的参数集数据的技术,如本发明中所描述并且在图6中说明。

在图6的实例中,视频编码器20可以基于样本的参数集数据编码视频数据的样本(190)。经编码的样本可以对应于视频数据的存取单元。视频编码器20可以编码作为同步样本或非同步样本的一或多个样本中的样本,如由特定视频译码标准所限定。视频编码器20可以产生包含样本的位流以确保与特定视频译码标准的一致性。对于基于在isobmff的章节4.8(avc)、章节6.5.5(svc)、章节7.5.3(mvc)和章节8.4.3(hevc)中所阐述的限制所限定的同步样本,视频编码器20或另一装置可以在对应于同步样本的样本条目中或在同步样本本身中包含解码同步样本所需的所有参数集数据(192)。以此方式,视频编码器20或另一装置可以仅在对应于同步样本的样本条目中或在同步样本本身中包含用于解码同步样本的参数集数据。

对于非同步样本,如基于在isobmff的章节4.8(avc)、章节6.5.5(svc)、章节7.5.3(mvc)和章节8.4.3(hevc)中所阐述的限制所限定的,视频编码器20或另一装置可以在对应于非同步样本的样本条目中、在非同步样本本身中、在按解码次序在非同步样本之前的先前同步样本中,或在按解码次序出现在非同步样本之前并且在先前同步样本之后的样本中包含用于非同步样本的所有参数集数据(194)。以此方式,视频编码器20或另一装置可以仅在对应于非同步样本的样本条目、非同步样本本身、按解码次序的先前同步样本中,或在按解码次序出现在非同步样本之前并且在先前同步样本之后的样本中包含用于解码同步样本的参数集数据。因此,视频编码器20可以将样本的参数集数据限制到某些位置,使得视频解码器30可以并不从除了对应于非同步样本的样本条目、非同步样本本身、作为同步样本经译码的先前样本,或按解码次序出现在非同步样本之前但是按解码次序在作为同步样本经解码的先前样本之后的一或多个样本之外的任何位置中解码非同步样本的参数集数据。换句话说,对于不是同步样本的当前样本,视频编码器20可以仅在样本条目中或在从先前同步样本到当前样本(包含)的样本中的任一者中编码参数集数据,即,包含在先前同步样本之后但是在当前非同步样本之前的样本,并且包含当前非同步样本和先前同步样本。

视频编码器20可随后产生包含视频数据的样本的文件(196)。如上文所述,文件中的样本可以包含同步样本和/或非同步样本。文件可以包含多个样本,包含一或多个同步样本和一或多个非同步样本。以此方式,图6描述了视频编码器20或另一装置的操作的实例以确定视频数据的样本是否是同步样本,并且基于确定样本不是同步样本(即,是非同步样本),仅在非同步样本的样本条目中、在非同步样本本身中、在按解码次序在非同步样本之前并且是同步样本的样本中,或在按解码次序出现在非同步样本与作为同步样本的按解码次序的先前样本之间的一或多个样本中包含用于视频数据的参数集数据。类似地,图6说明视频编码器20或另一装置的操作的实例以确定视频数据的第二样本是否是同步样本,并且基于确定第二样本是同步样本,仅在同步样本的样本条目中或在同步样本中包含用于视频数据的参数集数据。在一些实例中,视频编码器20可以进一步避免参考在按译码次序的同步样本之前经编码的参数集(例如,pps和sps)编码同步样本和后续样本(按译码次序)。

应认识到,取决于实例,本文中所描述的技术中的任一者的某些动作或事件可用不同顺序来执行,可添加、合并或全部省略所述动作或事件(例如,实践所述技术未必需要所有所描述的动作或事件)。此外,在某些实例中,可(例如)通过多线程处理、中断处理或多个处理器同时而非依序地执行动作或事件。

如本发明中所描述,视频译码器可以指视频编码器或视频解码器。类似地,视频译码单元可指视频编码器或视频解码器。类似地,在适用时,视频译码可指视频编码或视频解码。

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

借助于实例而非限制,此类计算机可读存储媒体可包括ram、rom、eeprom、cd-rom或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或可用来存储呈指令或数据结构的形式的所需程序代码并且可由计算机存取的任何其它媒体。并且,恰当地将任何连接称作计算机可读媒体。举例来说,如果使用同轴电缆、光纤电缆、双绞线、数字订户线(dsl)或例如红外线、无线电和微波等无线技术从网站、服务器或其它远程源传输指令,那么同轴电缆、光纤电缆、双绞线、dsl或例如红外线、无线电和微波等无线技术包含在媒体的定义中。然而,应理解,所述计算机可读存储媒体和数据存储媒体并不包含连接、载波、信号或其它暂时性媒体,而是实际上针对于非暂时性有形存储媒体。如本文中所使用,磁盘和光盘包含压缩光盘(cd)、激光光盘、光学光盘、数字多功能光盘(dvd)、软盘及蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘用激光以光学方式再现数据。上述的组合应包含于计算机可读媒体的范围内。

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

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

已经描述了各种实例。这些和其它实例在所附权利要求书的范围内。

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