一种对多层视频数据进行编码的方法、解码的方法和设备、以及存储指令的非暂时性计算机可读存储媒体与流程

文档序号:18922355发布日期:2019-10-19 03:42阅读:291来源:国知局
一种对多层视频数据进行编码的方法、解码的方法和设备、以及存储指令的非暂时性计算机可读存储媒体与流程

技术领域

本发明涉及视频译码中的参数集的译码。



背景技术:

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

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

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



技术实现要素:

本发明涉及用于对参数集进行译码以使得对于一个层集合可译码一个以上输出层集合的技术。在一个实例中,层集合的第一输出层集合和所述层集合的第二输出层集合可用以对视频数据进行译码。举例来说,可针对所述第一输出层集合和所述第二输出层集合译码视频数据。

本发明涉及用于对参数集进行译码的技术。举例来说,视频译码器可对VPS中的所有简档、层次和/或层级信息进行译码,且简档、层次、层级信息可与通过一个简档、层次、层级语法结构在一些实例中以其在无需熵解码的情况下可存取的方式用信号表示的每一输出层集合相关联。在一个实例中,本发明描述用于对例如视频参数集(VPS)扩展语法等参数集扩展语法中的profile_tier_level语法结构进行译码的技术,在一些实例中所述译码是在所述参数集扩展语法内的在无需熵译码的情况下可存取的位置(即,在所述参数集扩展中的任何经熵译码语法元素之前)进行。虽然在一些实例中VPS中的所有简档、层次和/或层级信息可在无需熵译码的情况下可存取,但在其它实例中,VPS中的一些或所有简档、层次和/或层级信息可需要减少量的熵译码或某种有限的熵译码。

在另一个实例中,本发明涉及用于对VPS中的多层视频数据中的层相依性信息进行译码以使得其在无需熵解码的情况下可存取的技术。一些实例可对多层视频数据进行译码,包含在VPS扩展内在参数集扩展语法的经熵编码的语法元素之前的位置处发射或接收未经熵编码层相依性信息。所述技术可包含基于未经熵编码层相依性信息对视频数据层中的一或多者的视频数据进行译码。层相依性信息指示所述层中的一者是否是用于所述层中的另一者的直接参考层。

在另一个实例中,本发明涉及用于对参数集进行译码的技术。举例来说,视频译码器可对VPS中的所有简档、层次和/或层级信息进行译码,且简档、层次、层级信息可与通过一个简档、层次、层级语法结构在某些情况下以其在无需熵解码的情况下可存取的方式用信号表示的每一输出层集合相关联。虽然在一些实例中VPS中的所有简档、层次和/或层级信息可在无需熵译码的情况下可存取,但在其它实例中,VPS中的一些或所有简档、层次和/或层级信息可需要减少量的熵译码或某种有限的熵译码。

在另一个实例中,本发明涉及用于对VPS中每层的视觉信号信息(例如 video_format、video_full_range_flag、colour_primaries、transfer_characteristics、 matrix_coeffs)进行译码的技术。

在另一个实例中,本发明涉及用于具有不同空间分辨率、位深度或颜色格式的层的 SPS共享的技术。

在另一个实例中,本发明涉及用于视频译码以使得在具有大于0的层 ID(nuh_layer_id)的序列参数集(SPS)的视频可用性信息(VUI)中不提供定时信息。

在另一个实例中,本发明涉及用于视频译码以使得针对默认输出层集合不提供目标输出层的显式信令的技术。

在另一个实例中,本发明涉及用于避免可存在于每一经译码视频序列(CVS)中的时间子层的最大数目(sps_max_sub_layers_minus1)或帧间预测是否针对具有大于0的层ID 的SPS中的CVS另外受限(sps_temporal_id_nesting_flag)的信令的技术。

在另一个实例中,本发明涉及用于根据本发明的技术语法元素 output_layer_set_idx[i]可改变为output_layer_set_idx_minus1[i]的技术。

在一个实例中,本发明描述一种对多层视频数据进行解码的方法,所述方法包含:接收视频参数集(VPS),所述VPS包含所述VPS中每层用信号表示的视觉信号信息;以及基于所述VPS中每层用信号表示的所述所接收视觉信号信息对视频数据进行解码。

在另一个实例中,本发明描述一种对多层视频数据进行编码的方法,所述方法包含:基于视频参数集(VPS)中每层用信号表示的视觉信号信息对视频数据进行编码;以及发射所述VPS,所述VPS包含所述VPS中每层用信号表示的所述视觉信号信息。

在另一个实例中,本发明描述一种用于对多层视频数据进行解码的设备,其包含:存储器,其经配置以存储所述视频数据;以及处理器,其经配置以:接收视频参数集 (VPS),所述VPS包含所述VPS中每层用信号表示的视觉信号信息;以及基于所述VPS 中每层用信号表示的所述所接收视觉信号信息对视频数据进行解码。

在另一个实例中,本发明描述一种用于对多层视频数据进行解码的设备,其包含:用于接收视频参数集(VPS)的装置,所述VPS包含所述VPS中每层用信号表示的视觉信号信息;以及用于基于所述VPS中每层用信号表示的所述所接收视觉信号信息对视频数据进行解码的装置。

在另一实例中,本发明描述一种计算机可读存储媒体。所述计算机可读存储媒体具有存储于其上的指令,所述指令在执行后即刻致使一或多个处理器:接收视频参数集 (VPS),所述VPS包含所述VPS中每层用信号表示的视觉信号信息;以及基于所述VPS 中每层用信号表示的所述所接收视觉信号信息对视频数据进行解码。

一或多个实例的细节陈述于附图及以下描述中。其它特征、目标及优点将从所述描述及所述图式以及从权利要求书而显而易见。

附图说明

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

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

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

图4是说明根据本文所描述的系统和方法的用于解码视频数据的实例方法的流程图。

图5是说明根据本文所描述的系统和方法的用于编码视频数据的另一实例方法的流程图。

图6是说明根据本文所描述的系统和方法的用于解码视频数据的实例方法的流程图。

图7是说明根据本文所描述的系统和方法的用于编码视频数据的实例方法的流程图。

图8是说明根据本文所描述的系统和方法的用于解码视频数据的实例方法的流程图。

图9是说明根据本文所描述的系统和方法的用于编码视频数据的实例方法的流程图。

图10是说明根据本文所描述的系统和方法的用于解码视频数据的实例方法的流程图。

图11是说明根据本文所描述的系统和方法的用于编码视频数据的实例方法的流程图。

图12是说明根据本文所描述的系统和方法的用于解码视频数据的实例方法的流程图。

图13是说明根据本文所描述的系统和方法的用于编码视频数据的实例方法的流程图。

具体实施方式

本发明大体上涉及视频译码及压缩的领域。作为一个实例,本发明涉及当前在开发的高效率视频译码(HEVC)标准。术语“译码”指代编码和解码,且所述技术可应用于编码、解码或编码和解码两者。如更详细地描述,所述技术可涉及帧内译码(例如,帧内预测)其中图片内的块是相对于同一图片中的另一块或多个块而预测(即,空间预测)。

在先前视频译码系统中,用于层集合的简档、层次和层级的存取需要熵解码。类似地,在无熵解码的情况下,层相依性信息是不可存取的。输出层集合的信令也可能成问题且低效。

本文所描述的系统、方法和装置的一个实例提供profile_tier_level()语法结构的集合,其将在例如视频参数集(VPS)扩展语法等参数集扩展语法中潜在地在扩展语法内的位置处用信号表示,所述位置可在无需熵译码的情况下(例如,在扩展语法中的熵译码元件之前)和/或以一些减少或有限的熵译码来存取。出于实例的目的将贯穿本发明描述 VPS扩展语法。在一实例中,VPS是含有应用于零或零个以上整个经译码视频序列(CVS) 的语法元素的语法结构,如由每一切片片段标头中找到的语法元素所参考的PPS中找到的语法元素所参考的SPS中找到的语法元素的内容所确定。在一实例中,CVS是存取单元序列,其按解码次序包含具有等于1的NoRaslOutputFlag的IRAP存取单元,随后是并非具有等于1的NoRaslOutputFlag的IRAP存取单元的零或零个以上存取单元,包含多达但不包含作为具有等于1的NoRaslOutputFlag的IRAP存取单元的任何后续存取单元的所有后续存取单元。此外,profile_tier_level()语法结构可与输出层集合而不是层集合相关联,因为层集合可对应于一个以上输出层集合,且对应于一个层集合的不同输出层集合可顺应不同层级。

profile_tier_level()语法结构是提供涉及简档、层次和层级的语法信息的语法结构。简档、层次和层级指定用于实施HEVC标准或HEVC扩展标准的不同符合性点以使得其可跨越可具有类似功能要求的各种应用而互操作。在一些实例中,简档可界定可以用于产生相符位流的译码工具或算法的集合。在一些实例中,层次和层级可对位流的参数中的一些施加约束。在一些实例中,这些参数可对应于解码器处理负载和解码器存储器能力。层级信息可建立对数据处理的限制。举例来说,层级信息可包含最大取样率、最大图片大小、最大位速率、最小压缩比。层级信息还可包含经解码图片缓冲器(DPB)和经译码图片缓冲器(CPB)的能力。CPB在经压缩数据的解码之前保持经压缩数据以用于数据流管理目的。DPB保持经解码图片数据。

本文所描述的系统、方法和装置的另一实例提供对包含视频数据层的多层视频数据进行译码。这些系统、方法和装置可包含发射或接收在例如VPS扩展语法等参数集扩展语法内在所述扩展的经熵编码的语法元素之前的位置处的未经熵编码层相依性信息。另外,所述系统、方法和装置可基于所述未经熵编码层相依性信息对视频数据层中的一或多者的视频数据进行解码。层相依性信息指示所述层中的一者是否是用于所述层中的另一者的直接参考层。再次,出于实例的目的将贯穿本发明描述VPS扩展语法。

如下文更详细地描述,在一个实例中,可针对一个层集合用信号表示一个以上输出层集合。举例来说,如本文中所描述,语法元素output_layer_flag[lsIdx][j]可改变为 output_layer_flag[i][j],且相关语义相应地改变。

如下文更详细地描述,在另一个实例中,简档、层次和层级信息可以其可在无需熵解码的情况下存取的方式在VPS中用信号表示。这在下文的具有参数的表中的一或多者中说明,所述参数具有除ue(v)(ue(v)指示熵译码)外的描述符。举例来说,所述描述符可指示固定长度译码,例如u(n),其中n是1或更大的整数。

如下文更详细地描述,在另一个实例中,层相依性信息可以其可在无需熵的情况下存取的方式在VPS中用信号表示。这在下文具有参数的表中的一或多者中说明,所述参数具有除ue(v)外的描述符。举例来说,所述描述符可指示固定长度译码,例如u(n),其中n是1或更大的整数。

如下文更详细地描述,在另一个实例中,表示格式可潜在地以其可在无需熵解码的情况下或以一些减少或有限的熵译码来存取的方式在VPS中用信号表示。举例来说,例如 chroma_format_vps_idc、separate_colour_plane_vps_flag、pic_width_vps_in_luma_samples、 pic_height_vps_in_luma_samples、bit_depth_vps_luma_minus8和bit_depth_vps_chroma_minus8 等表示格式参数在VPS中用信号表示,且在一些实例中不经熵译码。这在下文的具有这些参数的表中的一或多者中说明,所述参数具有除ue(v)外的描述符。表示格式参数可具有描述符,所述描述符指示特定参数是固定长度译码,例如u(n),其中n是1或更大的整数。在某些情况下,“_vps”已从各种参数名称丢弃,例如,chroma_format_vps_idc也可以称为chroma_format_idc,separate_colour_plane_vps_flag可以称为 separate_colour_plane_flag,pic_width_vps_in_luma_samples可以称为pic_width_in_ luma_samples,pic_heigh_vps_in_luma_samples可以称为pic_height_in_luma_samples, bit_depth_vps_luma_minus8可以称为bit_depth_luma_minus8,且 bit_depth_vps_chroma_minus8可以称为bit_depth_vps_chroma_minus8,以及其它参数。

如下文更详细地描述,在另一个实例中,例如video_format、video_full_range_flag、 colour_primaries、transfer_characteristics或matrix_coeffs等视觉信号信息可在VPS中每层用信号表示。如本文中所描述,例如video_format、video_full_range_flag、 colour_primaries、transfer_characteristics、matrix_coeffs等视觉信号信息可为例如HEVC 标准的附录E中指定的视频可用性信息(VUI)参数的子集。VUI且因此视觉信号信息在 VPS中且可在VPS中每层用信号表示。

如下文更详细地描述,在另一个实例中,可通过具有不同空间分辨率、位深度或颜色格式的层执行序列参数集(SPS)共享。在一实例中,SPS是含有应用于零或零个以上整个CVS中的层的语法元素的语法结构,如由每一切片片段标头中找到的语法元素所参考的PPS中找到的语法元素的内容所确定。在一些实例中,对多层视频数据进行解码的方法可包含接收视频参数集和第一序列参数集。所述方法还可包含接收参考第一序列参数集的第一层,接收具有与所述第一层不同的空间分辨率、位深度和颜色格式中的至少一者的值且参考第一序列参数集的第二层。此外,实例方法可包含基于来自视频参数集和第一序列参数集的信息对第一和第二层的视频数据进行解码。

如下文更详细地描述,在另一个实例中,在具有大于0的层ID(nuh_layer_id)的SPS 的VUI中不译码定时信息。在一些实例中,对于参考具有大于0的层ID的SPS的层,使用在VPS中用信号表示的定时信息。

如下文更详细地描述,在另一个实例中,不使用目标输出层的显式信令用于默认输出层集合。举例来说,因为具有等于0的multiple_output_layer_sets_in_layer_set_flag指定了用于每一层集合的VPS指定仅一个输出层集合,其中最高层为仅有的目标输出层,所以不需要用于默认输出层集合的目标输出层的显式信令。举例来说,当 multiple_output_layer_sets_in_layer_set_flag等于0时不需要用信号表示将输出哪些层,因为对于每一层集合仅存在一个输出层集合且最高层是仅有的目标输出层。

如下文更详细地描述,在另一个实例中,sps_max_sub_layers_minus1和 sps_temporal_id_nesting_flag不在SPS中用信号表示。在一些情况下,当nuh_layer_id_>0 时此信令不出现在SPS中。

如下文更详细地描述,在另一个实例中,语法元素output_layer_set_idx[i]可改变为 output_layer_set_idx_minus1[i]。这是因为用于等于0的output_layer_set_idx[i]的语法元素layer_id_included_flag[i][j]是用于层集合0,而对于层集合0, layer_id_included_flag[i][j]未经界定。另外,用于层集合0的目标输出层始终是层0(基础层)。

以上各种实例可包含具有未经熵译码的各种数据、参数等的方面。因为这一点,所述数据、参数等可在无需熵译码器执行熵译码的情况下对装置可存取。举例来说,在某些情况下,媒体感知网络实体(MANE)可不具有熵译码装置,但将大体上能够对例如数据、参数等未经熵译码信息进行译码(例如,解码)。

被称作“HEVC工作草案10”或“WD10”的HEVC标准的最近草案在布洛斯等人的文献JCTVC-L1003v34“高效率视频译码(HEVC)文本规范草案10(用于FDIS和最后呼叫)”(ITU-T SG16 WP3和ISO/IEC JTC1/SC29/WG11的视频译码联合合作小组(JCT-VC),瑞士日内瓦第12次会议,2013年1月14-23日)中描述,其从2013年10月15日起可从 http://phenix.int-evry.fr/jct/doc_end_user/documents/12_Geneva/wg11/JCTVC-L1003-v34.zip 下载。

被称作“HEVC工作草案6”或“WD6”的HEVC的另一最近工作草案(WD)在布洛斯等人的文献JCTVC-H1003“高效率视频译码(HEVC)文本规范草案6”(ITU-T SG16 WP3和ISO/IEC JTC1/SC29/WG11的视频译码联合合作小组(JCT-VC),美国加利福尼亚圣何塞第8次会议,2012年2月)中描述,其从2013年10月15日起可从 http://phenix.int-evry.fr/jct/doc_end_user/documents/8_San%20Jose/wg11/JCTVC-H1003-v22.zip 下载。

被称作“HEVC工作草案8”或“WD8”的HEVC的另一最近工作草案(WD)在布洛斯等人的文献JCTVC-J1003“高效率视频译码(HEVC)文本规范草案8”(ITU-T SG16 WP3和ISO/IEC JTC1/SC29/WG11的视频译码联合合作小组(JCT-VC),瑞典斯德哥尔摩第10次会议,2012年7月11-20日)中描述,其从2013年10月15日起可从 http://phenix.int-evry.fr/jct/doc_end_user/documents/10_Stockholm/wg11/JCTVC-J1003-v8.zip 下载。

HEVC范围扩展在福林(Flynn)等人的文献JCTVC-N1005_v3“高效率视频译码(HEVC) 范围扩展文本规范:草案4”(ITU-T SG16 WP3和ISO/IEC JTC1/SC29/WG11的视频译码联合合作小组(JCT-VC),韩国仁川第13次会议,2013年4月18-26日)中描述,其从2013年 10月15日起可从http://phenix.it-sudparis.eu/jct/doc_end_user/current_document.php?id=8139 下载。

图1是说明可利用本发明中所描述的技术的实例视频编码和解码系统10的框图。如图1中所示,系统10包含视频编码器20,其产生在稍后时间由视频解码器30解码的经编码视频数据。源装置12及目的地装置14可包括多种多样的装置中的任一者,包含桌上型计算机、笔记型(即,膝上型)计算机、平板计算机、机顶盒、电话手持机(例如所谓的“智能”电话)、所谓的“智能”平板计算机、电视机、相机、显示装置、数字媒体播放器、视频游戏控制台、视频流式传输装置或类似者。在一些情况下,可装备源装置 12和目的地装置14以用于无线通信。

目的地装置14可经由链路16接收待解码的经编码视频数据。链路16可包括能够将经编码视频数据从视频编码器20移动到视频解码器30的任何类型的媒体或装置。在一个实例中,链路16可包括用以使得视频编码器20能够将经编码视频数据直接实时发射到视频解码器30的通信媒体。经编码视频数据可根据通信标准(例如,无线通信协议) 加以调制,并发射到目的地装置14。通信媒体可包括任何无线或有线通信媒体,例如射频(RF)频谱或一或多个物理传输线。通信媒体可形成基于包的网络(例如,局域网、广域网或全球网络,例如因特网)的部分。通信媒体可包含路由器、交换器、基站或任何其它可以用于促进从源装置12到目的地装置14的通信的设备。

替代地,可将经编码数据从输出接口22输出到存储装置34。类似地,输入接口28 可从存储装置34存取经编码数据。存储装置34可包含多种分布式或本地存取的数据存储媒体中的任一者,例如硬盘驱动器、蓝光光盘、DVD、CD-ROM、快闪存储器、易失性或非易失性存储器或用于存储经编码视频数据的任何其它合适的数字存储媒体。在另一实例中,存储装置34可对应于文件服务器或可保持由视频编码器20产生的经编码视频的另一中间存储装置。目的地装置14可经由通过输入接口28的流式传输或下载从存储装置34存取存储的视频数据。文件服务器可以是能够存储经编码视频数据并且将所述经编码视频数据发射到视频解码器30的任何类型的服务器。实例文件服务器包含网页服务器(例如,用于网站)、文件传输协议(FTP)服务器、网络附接存储(NAS)装置,或本地磁盘驱动器。视频解码器30可通过任何标准数据连接(包含因特网连接)存取经编码视频数据。此可包含适合于存取存储于文件服务器上的经编码的视频数据的无线信道(例如,Wi-Fi连接)、有线连接(例如,DSL、电缆调制解调器等)或两者的组合。经编码的视频数据从存储装置34的发射可为流式发射、下载发射或两者的组合。

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

在图1的实例中,源装置12包含视频源18、视频编码器20及输出接口22。在一些情况下,输出接口22可包含调制器/解调器(调制解调器)及/或发射器。视频源18可包含例如视频俘获装置(例如,摄像机)、含有先前俘获的视频的视频存档、用于从视频内容提供者接收视频的视频馈入接口及/或用于产生计算机图形数据作为源视频的计算机图形系统或此类源的组合等源。作为一个实例,如果视频源18是摄像机,那么源装置 12及目的地装置14可以形成所谓的摄像机电话或视频电话。然而,本发明中描述的技术一般可适用于视频译码,且可应用于无线和/或有线应用。

视频编码器20对从视频源18接收的俘获、预先俘获或计算机生成的视频进行编码。所述俘获、预先俘获或计算机生成的视频可根据上述样本格式中的任一者格式化,包含 4:2:0、4:2:2或4:4:4样本格式。视频编码器20可对根据4:2:0、4:2:2或4:4:4样本格式中的任一者格式化的视频执行视频译码。在某些情况下,视频编码器20可对所述俘获、预先俘获或计算机生成的视频进行向上取样或向下取样,作为译码过程的部分。举例来说,俘获的视频可根据4:4:4样本格式格式化,视频编码器20可将俘获的视频向下取样到4:2:2格式且对经向下取样视频执行视频编码。可经由源装置12的输出接口22将经编码视频数据直接发射到目的地装置14。还可(或替代地)将经编码视频数据存储到存储装置34上以供稍后由目的地装置14或其它装置存取以用于解码及/或回放。

目的地装置14包含输入接口28、视频解码器30及显示装置32。在一些情况下,输入接口28可包含接收器及/或调制解调器。目的地装置14的输入接口28经由链路16 接收经编码视频数据。经由链路16传送或在存储装置34上提供的经编码视频数据可包含由视频编码器20所产生的多种语法元素以供由例如视频解码器30的视频解码器用于解码视频数据。此些语法元素可与在通信媒体上发射、存储在存储媒体上或存储在文件服务器中的经编码视频数据包含在一起。

显示装置32可与目的地装置14一起集成或在目的地装置外部。在一些实例中,目的地装置14可包含集成式显示装置,且还经配置以与外部显示装置介接。在其它实例中,目的地装置14可为显示装置。一般来说,显示装置32将经解码视频数据显示给用户,且可包括多种显示装置中的任一者,例如液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。

视频编码器20和视频解码器30可根据例如当前在开发的高效率视频译码(HEVC) 标准等视频压缩标准而操作,且可大体上符合当前HEVC测试模型(HM)或未来HM。

替代地,视频编码器20和视频解码器30可以根据其它专属或行业标准来操作,所述标准例如ITU-T H.264标准,替代地被称为MPEG-4第10部分高级视频编码(AVC),或这些标准的修订或扩展。本发明的技术描述为适用于HEVC扩展,但不一定限于任何特定译码标准。视频压缩标准的其它实例包含MPEG-2及ITU-T H.263。

尽管图1中未展示,但在一些方面中,视频编码器20和视频解码器30可各自与音频编码器和解码器集成,且可包含适当多路复用器-多路分用器(MUX-DEMUX)单元或其它硬件和软件以处置对共同数据流或单独数据流中的音频和视频两者的编码。在一些实例中,如果适用的话,多路复用器-多路分用器单元可以符合ITU H.223多路复用器协议,或例如用户数据报协议(UDP)等其它协议。

视频编码器20和视频解码器30各自可实施为例如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合的多种合适编码器电路中的任一者。当部分地用软件实施所述技术时,装置可将用于所述软件的指令存储于合适的非暂时性计算机可读媒体中且使用一个或一个以上处理器用硬件执行所述指令以执行本发明的技术。视频编码器20和视频解码器30中的每一者可包含在一或多个编码器或解码器中,所述编码器或解码器中的任一者可集成为相应装置中的组合编码器/解码器(编解码器)的一部分。

在图1的所说明的实例中,例如视频编码器20或视频解码器30等视频译码器可发射或接收简档、层次和层级语法结构的未经熵编码集合。举例来说,视频编码器20可发射简档、层次和层级语法结构的未经熵编码集合且视频解码器30可接收例如从视频编码器20发送的简档、层次和层级语法结构的未经熵编码集合。

简档、层次和层级语法结构的未经熵编码集合可位于VPS扩展内在所述VPS扩展的经熵编码的其它语法元素之前的位置处。视频译码器(例如,视频编码器20或视频解码器30)可针对多个输出层集合中的每一者参考所述简档、层次和层级语法结构中的一者,且基于来自针对输出层集合参考的简档、层次和层级语法结构的信息对输出层集合中的一者的视频数据进行解码。举例来说,视频编码器20可针对多个输出层集合中的每一者参考简档、层次和层级语法结构中的一者,且基于来自针对输出层集合参考的简档、层次和层级语法结构的信息对输出层集合中的一者的视频数据进行编码。视频解码器30可针对多个输出层集合中的每一者参考简档、层次和层级语法结构中的一者,且基于来自针对输出层集合参考的简档、层次和层级语法结构的信息对输出层集合中的一者的视频数据进行解码。

在一些实例中,视频译码器可进一步发射或接收具有等于0的nuh_layer_id的序列参数集(SPS),其中SPS包含用于视频数据层的简档、层次和层级语法结构。nuh_layer_id 可用以指示特定层。层可为全部具有nuh_layer_id的特定值的视频译码层(VCL)网络抽象层(NAL)单元和相关联非VCL NAL单元的集合,或具有阶层式关系的依照语法的结构的集合中的一者。在含有仅一个层的位流中nuh_layer_id将等于0。在含有多个层的位流中nuh_layer_id的其它值可出现。在一实例中,NAL单元为含有将跟随的数据类型的指示及含有所述数据的呈按需要穿插有模拟阻止字节的原始字节序列有效负载 (RBSP)的形式的字节的语法结构。在一实例中,RBSP是含有囊封在NAL单元中且为空或具有数据位串的形式的整数数目的字节的语法结构,所述数据位串含有语法元素,接着是RBSP停止位和等于0的零或零个以上后续位。

视频编码器20可发射具有等于0的nuh_layer_id的SPS,其中SPS包含用于视频数据层的简档、层次和层级语法结构。视频解码器30可接收具有等于0的nuh_layer_id 的SPS,其中SPS包含用于视频数据层的简档、层次和层级语法结构。

在一些实例中,当具有大于0的nuh_layer_id的层参考SPS时,视频解码器可能不使用SPS的简档、层次和层级语法结构对具有大于0的nuh_layer_id的层的视频数据进行解码。一些实例可将简档、层次和层级语法结构链接到输出层集合中的相应者。因此,一或多个特定简档、层次和层级语法结构可连接到一或多个特定输出层集合以使得所述一或多个特定简档、层次和层级语法结构可用以对一或多个特定输出层集合进行编码和 /或解码。链接可包含基于表示到简档、层次和层级语法结构的索引的语法元素而识别简档、层次和层级语法结构中的每一者链接到的输出层集合中的每一者。对视频数据进行解码可包含基于来自链接到相应输出层集合的简档、层次和层级语法结构的信息对输出层集合中的一或多者的视频数据进行解码。

在包含多个层的实例中,所有层的位流可分裂成多个顺应位流,例如每一层集合一个位流。这些多个顺应位流中的每一者可被称为层集合。层集合可包含对对特定层以及所述特定层为了解码而取决于的任何参考层的参考。这假定存在特定层取决于的参考层。因此,层集合是可包含与特定层相关联的NAL单元以及用于解码所述特定层所需的任何参考层的NAL单元的顺应位流。

输出层集合是针对其指定目标输出层的列表的层集合。对于层集合,并未指定目标输出层的列表。输出层集合可针对既定输出用于显示的一或多个特定层。在一些实例中,对于一个层集合可用信号表示一个以上输出层集合。

在一些实例中,视频译码器(例如,视频编码器20或视频解码器30)可在适用时发射或接收输出层旗标[i][j],其当等于1时指定层集合中的第j层是第i输出层集合的目标输出层,并且当等于0时指定层集合中的第j层不是第i输出层集合的目标输出层。举例来说,视频编码器20可发射输出层旗标[i][j],其当等于1时指定层集合中的第j 层是第i输出层集合的目标输出层,并且当等于0时指定层集合中的第j层不是第i输出层集合的目标输出层。视频解码器30可发射输出层旗标[i][j],其当等于1时指定层集合中的第j层是第i输出层集合的目标输出层,并且当等于0时指定层集合中的第j层不是第i输出层集合的目标输出层。

视频译码器(例如,视频编码器20或视频解码器30)还可基于输出层旗标[i][j],通过将对应于等于1的输出层旗标[i][j]的层指定为目标输出层的相关联列表而产生输出层集合。举例来说,视频编码器20可基于输出层旗标[i][j]对输出层集合进行编码。视频解码器30可基于输出层旗标[i][j]对输出层集合进行解码。在图1的所说明的实例中,例如视频编码器20或视频解码器30等视频译码器可对包含视频数据层的多层视频数据进行译码。

视频译码器(例如,视频编码器20或视频解码器30)可在VPS扩展内在所述VPS扩展的经熵编码的语法元素之前的位置处发射或接收未经熵编码层相依性信息。这可允许层相依性信息由不包含熵译码器的装置(例如,MANE)编码或解码。另外,其还可允许层相依性信息更早地译码。举例来说,层相依性信息可在解码过程中较早地解码。举例来说,视频编码器20可在VPS扩展内在所述VPS扩展的经熵编码的语法元素之前的位置处发射未经熵编码层相依性信息。视频解码器30可在VPS扩展内在所述VPS扩展的经熵编码的语法元素之前的位置处接收未经熵编码层相依性信息。

视频译码器(例如,视频编码器20或视频解码器30)可基于未经熵编码层相依性信息对视频数据层中的一或多者的视频数据进行译码。举例来说,视频编码器20可基于未经熵编码层相依性信息对视频数据层中的一或多者的视频数据进行编码。视频解码器 30可基于未经熵编码层相依性信息对视频数据层中的一或多者的视频数据进行编码。层相依性信息指示所述层中的一者是否是用于所述层中的另一者的直接参考层。

在一些实例中,层相依性信息包含direct_dependency_flag[i][j],其当等于0时指定具有索引j的层不是用于具有索引I的层的直接参考层,且当等于1时指定具有索引j 的层可为用于具有索引i的层的直接参考层。

本文所描述的系统、方法和装置的一个实例提供将在VPS扩展语法中用信号表示的 profile_tier_level()语法结构的集合。在一些实例中,profile_tier_level()语法结构的集合在VPS扩展语法中在所述VPS扩展语法内可在无需熵译码的情况下存取的位置处、即所述VPS扩展语法中经熵译码元素之前用信号表示。

一些实例提供在VPS扩展语法的经熵译码元素之前的简档、层次和层级语法结构。这些语法结构可链接到输出层集合。在一些实例中,语法元素vps_num_layer_sets_minus1 加1指定由VPS指定的层集合的数目。层集合可为包含一层以及所述层取决于的任何(零或零个以上)其它层的集合。举例来说,可缩放视频译码中用于层2的层集合可包含层0、层1和层2。对于每一层集合,可指定一或多个输出层集合。每一输出层集合经指定为具有简档、层级和层次。

在本发明的一个实例中,VPS语法的一部分可如下表1中所示:

表1-VPS语法的实例部分

如以上在表1的实例中所示,vps_num_layer_sets_minus1如由ue(v)描述符指示在 VPS中经熵译码,且VPS中存在处于vps_num_layer_sets_minus1之前的其它经熵译码语法元素。在一些实例中,熵解码可为非所要的。这对于可执行拼接或流适配(例如,时间速率、质量、空间适配)的中间网络装置来说可能尤其如此。解码器(例如,视频解码器30)将大体上具有熵解码器。然而在许多情况下,可能需要中间网络装置不具有熵解码器。这简化了中间装置,其在某些情况下可减小成本和电力消耗。另外,在任一情况下,可能需要快速存取简档、层次和层级信息而不必执行熵解码。

为了避免熵解码简档、层级和层次语法结构(profile_tier_level()语法),在一些实例中,本发明提出呈现处于VPS扩展语法中处于任何经熵译码元素之前且可在无需剖析经熵译码vps_num_layer_sets_minus1语法元素的情况下可存取的简档、层级和层次语法结构。在一些情况下,可针对例如HEVC视频译码标准等视频译码标准开发扩展。这些扩展可提供视频译码标准不提供或不需要的额外功能性。扩展语法是用于对视频译码标准的这些扩展中的一者的语法。举例来说,VPS扩展语法可包含用于对HEVC视频译码标准的扩展的消息的语法。先前,表现为将在存取每一层时存取这些语法。现在,实施本文所描述的概念中的一或多者的系统、方法或装置可预先存取所有语法,且接着稍后将其链接。

表2-VPS扩展中的实例语法

如表2中所使用,vps_num_profile_tier_level_minus1加1指定VPS中的 profile_tier_level()语法结构的数目。等于1的vps_profile_present_flag[i]指定简档和层次信息存在于第i profile_tier_level()语法结构中。等于0的vps_profile_present_flag[lsIdx] 指定简档和层次信息不存在于第i profile_tier_level()语法结构中,且可针对第i profile_tier_level()语法结构进行推断。

语法元素profile_ref_minus1[i]指定第i profile_tier_level()语法结构的简档和层次信息可推断为等于第(profile_ref_minus1[i]+1)profile_tier_level()语法结构的简档和层次信息。profile_ref_minus1[i]+1的值可小于i。

如表2中所示,在以上语法中,解码器或中间网络装置循环通过profile_tier_level() 语法结构的集合以存取所述语法结构,然后剖析语法的需要熵译码的元素(在VPS扩展语法中较晚)。这些语法结构也可以链接到具有另一循环过程的对应层集合。确切地说, profile_level_tier_idx[i]指定应用于第i输出层集合的profile_tier_level()语法结构的在 VPS中的profile_tier_level()语法结构集合中的索引。

对于另一实例方面,实施本文所描述的一或多个实例的系统、方法和装置可使用 output_layer_set_idx_minus1[i]来指示高于层0(基础层)的层的层集合的索引。

output_layer_set_idx_minus1[i]加1指定第i输出层集合的层集合的索引(lsIdx)。在一实例中,output_layer_set_idx_minus1[i]的值可在0到vps_num_layer_sets_minus1-1(包含0和vps_num_layer_sets_minus1-1)的范围内。output_layer_set_idx_minus1[i]语法元素的长度是Ceil(Log2(vps_num_layer_sets_minus1))个位。

本文所描述的系统、方法和装置的另一实例提供对包含视频数据层的多层视频数据进行译码。这些系统、方法和装置可经配置以执行操作,包含在VPS扩展内在所述VPS 扩展的经熵编码的语法元素之前的位置处发射或接收未经熵编码层相依性信息。另外,所述系统、方法和装置可基于所述未经熵编码层相依性信息对视频数据层中的一或多者的视频数据进行解码。层相依性信息指示所述层中的一者是否是用于所述层中的另一者的直接参考层。

根据一个实例,例如视频编码器20或视频解码器30等视频译码器可根据本发明的技术对一个层集合的一个以上输出层集合进行译码。举例来说,视频编码器20可对一个层集合的一个以上输出层集合进行编码。经编码输出层集合可由输出接口22通过链路16或使用存储装置34用信号表示、发射或另外传送且由输入接口28接收。经编码输出层集合可由视频解码器30解码。

根据另一实例,例如视频编码器20或视频解码器30等视频译码器可根据本发明的技术潜在地以可在无需熵解码的情况下可存取的方式对VPS中的所有简档、层次和/或层级信息进行译码。举例来说,视频编码器20可潜在地以在无需熵解码、即无需熵编码简档、层次和/或层级信息的情况下潜在地可存取的方式对VPS中的所有简档、层次、层级信息进行编码。VPS中的经编码简档、层次和/或层级信息可由输出接口22通过链路16或使用存储装置34用信号表示、发射或另外传送且由输入接口28接收。VPS中的经编码简档、层次和/或层级信息可由视频解码器30解码,其可为不包含熵解码器的装置,例如MANE。一些实例可使用减少或有限的熵编码用于VPS中的简档、层次、层级信息。举例来说,可能VPS中的一些简档、层次、层级信息经熵编码,而VPS中的其它简档、层次、层级信息未经熵编码。

根据另一实例,例如视频编码器20或视频解码器30等视频译码器可根据本发明的技术对VPS中的层相依性信息进行译码以使得其在无需熵解码的情况下可存取。举例来说,视频编码器20可对VPS中的层相依性信息进行编码以使得其在无需熵解码、即无需熵编码层相依性信息的情况下可存取。VPS中的经编码层相依性信息可由输出接口22 通过链路16或使用存储装置34用信号表示、发射或另外传送且由输入接口28接收。 VPS中的经编码层相依性信息可由视频解码器30解码,其可为不包含熵解码器的装置,例如MANE。

根据另一实例,例如视频编码器20或视频解码器30等视频译码器可根据本发明的技术潜在地以其在无需熵解码的情况下可存取的方式对VPS中的表示格式进行译码,且每一层可与特定表示格式相关联。举例来说,视频编码器20可潜在地以其在无需熵解码、即无需熵编码VPS中的表示格式的情况下可存取的方式对VPS中的表示格式进行编码。VPS中的经编码表示格式可由输出接口22通过链路16或使用存储装置34用信号表示、发射或另外传送且由输入接口28接收。VPS中的经编码表示格式可由视频解码器30解码,其可为不包含熵解码器的装置,例如MANE。一些实例可使用减少或有限的熵解码用于VPS中的简档、层次、层级信息。举例来说,可能VPS中的一些简档、层次、层级信息经熵解码,而VPS中的其它简档、层次、层级信息未经熵解码(例如,因为VPS中的一些简档、层次、层级信息经熵编码,而VPS中的其它简档、层次、层级信息未经熵编码)。

根据另一实例,例如视频编码器20或视频解码器30等视频译码器可根据本发明的技术对VPS中每层的视觉信号信息(video_format、video_full_range_flag、 colour_primaries、transfer_characteristics、matrix_coeffs)进行译码。举例来说,视频编码器20可对VPS中每层的视觉信号信息进行编码。经编码视觉信号信息可由输出接口22 通过链路16或使用存储装置34用信号表示、发射或另外传送且由输入接口28接收。 VPS中每层的经编码视觉信号信息可由视频解码器30解码。在一些实例中,video_format 参数指示待译码图片的表示的格式。video_full_range_flag参数指示明度和色度信号的黑色电平和范围。colour_primaries参数指示源原色的色度坐标。transfer_characteristics参数指示源图片的光电传送特性。matrix_coeffs参数描述在从绿、蓝和红原色导出明度和色度信号时使用的矩阵系数。

根据另一实例,根据本发明的技术,SPS可由具有不同空间分辨率、位深度或颜色格式的层共享。例如视频编码器20或视频解码器30等视频译码器可对SPS进行译码。举例来说,视频编码器20可对SPS进行编码。经编码SPS可由输出接口22通过链路 16或使用存储装置34用信号表示、发射或另外传送且由输入接口28接收。经编码SPS 可由视频解码器30解码。

根据另一实例,根据本发明的技术,具有大于0的层ID的SPS的VUI中不提供定时信息。例如视频编码器20或视频解码器30等视频译码器可对具有大于0的层ID的 SPS进行译码,其在VUI中并不包含定时信息。举例来说,视频编码器20可对SPS进行编码。经编码SPS可由输出接口22通过链路16或使用存储装置34用信号表示、发射或另外传送且由输入接口28接收。经编码SPS可由视频解码器30解码。

根据另一实例,根据本发明的技术,针对默认输出层集合不提供目标输出层的显式信令。例如视频编码器20或视频解码器30等视频译码器可对默认输出层集合进行译码,其并不包含用于默认输出层集合的目标输出层的任何显式信令。举例来说,视频编码器 20对默认输出层集合进行编码。经编码默认输出层集合可由输出接口22通过链路16或使用存储装置34用信号表示、发射或另外传送且由输入接口28接收。经编码默认输出层集合可由视频解码器30解码。

根据另一实例,可存在的时间子层的最大数目(sps_max_sub_layers_minus1)以及帧间预测是否另外受限(sps_temporal_id_nesting_flag)的信令不存在于具有大于0的层ID(nuh_layer_id)的SPS中。例如视频编码器20或视频解码器30等视频译码器可对视频数据进行译码而无需在具有大于0的层ID的SPS中对可存在于参考SPS的每一CVS 中的时间子层的最大数目进行译码且无需对帧间预测是否针对参考SPS的CVS另外受限进行译码。举例来说,视频编码器20可对视频数据进行编码而无需在具有大于0的层ID的SPS中对可存在于参考SPS的每一CVS中的时间子层的最大数目以及帧间预测是否针对参考SPS的CVS另外受限进行译码。经编码信息可由输出接口22通过链路16 或使用存储装置34用信号表示、发射或另外传送且由输入接口28接收。经编码信息可由视频解码器30解码。

根据另一实例,根据本发明的技术,语法元素output_layer_set_idx[i]可改变为 output_layer_set_idx_minus1[i]。例如视频编码器20或视频解码器30等视频译码器可对 output_layer_set_idx_minus1[i]进行译码以指示对应于输出层集合的层集合的索引。

图2是说明可实施本发明中描述的技术的实例视频编码器20的框图。视频编码器 20可以执行视频切片内的视频块的帧内译码及帧间译码。帧内译码依赖于空间预测来减少或去除给定视频帧或图片内的视频中的空间冗余。帧间译码依赖于时间预测或层间来减少或移除同一层中的邻近帧或图片内或跨越视频序列的不同层的视频中的时间冗余或层间冗余。帧内模式(I模式)可指代若干基于空间的压缩模式中的任一者。例如单向预测(P模式)或双向预测(B模式)等帧间模式可以指代若干基于时间的压缩模式中的任一者。

在图2的实例中,视频编码器20包含视频数据存储器40、预测处理单元41、参考图片存储器64、求和器50、变换处理单元52、量化处理单元54和熵编码处理单元56。预测处理单元41包含运动估计处理单元42、运动补偿处理单元44,和帧内预测处理单元46。为了视频块重构,视频编码器20还包含逆量化处理单元58、逆变换处理单元60,及求和器62。还可包含解块滤波器(图2中未图示)以便对块边界进行滤波,以从经重构视频移除成块效应假象。在需要时,解块滤波器将通常对求和器62的输出进行滤波。除了解块滤波器之外,还可使用额外环路过滤器(环路内或环路后)。

视频数据存储器40可存储待由视频编码器20的组件编码的视频数据。可(例如)从视频源18获得存储在视频数据存储器40中的视频数据。经解码图片缓冲器(DPB)可为参考图片存储器64,其存储用于由视频编码器20例如在帧内或帧间译码模式中对视频数据进行编码时使用的参考视频数据。视频数据存储器40和DPB(例如,参考图片存储器64)可由多种存储器装置中的任一者形成,例如包含同步DRAM(SDRAM)的动态随机存储器(DRAM)、磁阻式RAM(MRAM)、电阻式RAM(RRAM),或其它类型的存储器装置。视频数据存储器40和DPB(例如,参考图片存储器64)可由同一存储器装置或单独的存储器装置提供。在各种实例中,视频数据存储器101可与视频编码器20的其它组件一起在芯片上,或相对于所述组件在芯片外。

如图2中所示,视频编码器20接收视频数据,且预测处理单元41将所述数据分割成视频块。在一些情况下,预测处理单元41可基于速率失真分析分割视频数据。接收的视频数据可根据上述样本格式中的任一者格式化。举例来说,视频数据可根据4:2:2 样本格式格式化。分割可包含将视频数据分割成切片、瓦片或其它较大单元,以及视频块分割(例如根据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(或在一些实例中为模式选择处理单元)可以从测试模式中选择适当帧内预测模式来使用。

举例来说,帧内预测处理单元46可以使用速率失真分析计算用于各种经测试帧内预测模式的速率失真值,并且从所述经测试模式当中选择具有最佳速率失真特性的帧内预测模式。速率失真分析大体上确定经编码块与经编码以产生所述经编码块的原始未编码块之间的失真(或误差)的量,以及用于产生经编码块的位速率(即,位数目)。帧内预测处理单元46可以从用于各种经编码块的失真及速率计算比率,以确定哪种帧内预测模式对于所述块来说展现最佳速率失真值。应注意,速率失真分析可对颜色分量的组合执行。

在任何状况下,在选择了用于块的帧内预测模式之后,帧内预测处理单元46可以将指示用于所述块的选定帧内预测模式的信息提供到熵编码处理单元56。熵编码处理单元56可根据本发明的技术对指示所选帧内预测模式的信息进行编码。视频编码器20在发射的位流中可包含配置数据,其可包含多个帧内预测模式指数表和多个修改的帧内预测模式指数表(也称为码字映射表),对用于各种块的上下文进行编码的定义,和对最可能帧内预测模式、帧内预测模式指数表和修改的帧内预测模式指数表的指示以用于所述上下文中的每一者。位流还可(或可替代地)存储到存储装置34上用于稍后由目的地装置 14或其它装置存取,用于解码和/或重放。

在预测处理单元41经由帧间预测或帧内预测产生用于当前视频块的预测性块之后,视频编码器20通过从当前视频块减去所述预测性块而形成残余视频块。残余块中的残余视频数据可包含在一或多个变换单元(TU)中且被应用于变换处理单元52。应注意,变换处理单元52指代视频编码器20的组件、模块、一或多个处理器或处理器、或功能单元,且不应与TU混淆,TU是用于变换的量化过程的基本数据单元。变换处理单元52 使用例如离散余弦变换(DCT)或概念上类似的变换等变换将残余视频数据变换成残余变换系数。变换处理单元52可将残余视频数据从像素值域转换到变换域,例如频域。变换处理单元52可将所得变换系数发送到量化处理单元54。

在图2的所说明的实例中,视频编码器20可参考用于多个输出层集合中的每一者的简档、层次和层级语法结构中的一者,且基于来自针对输出层集合参考的简档、层次和层级语法结构的信息对输出层集合中的一者的视频数据进行编码。

视频编码器20可发射简档、层次和层级语法结构的未经熵编码集合。简档、层次和层级语法结构的未经熵编码集合可在VPS扩展内在所述VPS扩展的经熵编码的语法元素之前的位置处,以使得中间联网装置、拼接引擎、媒体感知网络元件或解码器可剖析简档、层次和层级语法结构的未经熵编码集合而不需要熵译码。

在一些实例中,视频编码器20可发射或接收具有等于0的nuh_layer_id的SPS,其中所述SPS包含用于视频数据层的简档、层次和层级语法结构。举例来说,视频编码器 20可发送具有等于0的nuh_layer_id的SPS,其中所述SPS包含用于视频数据层的简档、层次和层级语法结构。

视频编码器20可基于输出层旗标[i][j]对输出层集合进行编码。视频编码器20还可发射输出层旗标[i][j],其当等于1时指定层集合中的第j层是第i输出层集合的目标输出层,并且当等于0时指定层集合中的第j层不是第i输出层集合的目标输出层。

视频编码器20可不对视频数据层中的一或多者的一些视频数据进行熵编码。未经熵编码视频数据可包含层相依性信息。层相依性信息可指示所述层中的一者是否是用于所述层中的另一者的直接参考层。在一些实例中,层相依性信息包含 direct_dependency_flag[i][j],其当等于0时指定具有索引j的层不是用于具有索引I的层的直接参考层,且当等于1时指定具有索引j的层可为用于具有索引I的层的直接参考层。

视频编码器20可在VPS扩展内在所述VPS扩展的经熵编码的语法元素之前的位置处发射未经熵编码层相依性信息。

根据一个实例,视频编码器20可对一个层集合的一个以上输出层集合进行编码。在一些实例中,所述编码可由熵编码处理单元56执行。

根据另一实例,视频编码器20可潜在地以其在无需熵解码、即无需熵编码简档、层次和/或层级信息的情况下可存取的方式对VPS中的所有简档、层次、层级信息进行编码。在一些实例中,所述编码可由熵编码处理单元56执行但不进行熵编码。因此,熵编码处理单元除熵编码之外还可执行其它类型的编码。

根据另一实例,视频编码器20可对VPS中的层相依性信息进行编码以使得其在无需熵解码、即无需熵编码层相依性信息的情况下可存取。在一些实例中,所述编码可由熵编码处理单元56执行但不进行熵编码。因此,熵编码处理单元除熵编码之外还可执行其它类型的编码。

根据另一实例,视频编码器20可潜在地以其在无需熵解码、即无需熵编码VPS中的表示格式的情况下可存取的方式对VPS中的表示格式进行编码。在一些实例中,每一层可与特定表示格式相关联。在一些实例中,所述编码可由熵编码处理单元56执行但不进行熵编码。因此,熵编码处理单元除熵编码之外还可执行其它类型的编码。视频编码器20或可根据本发明的技术潜在地以其在无需熵解码的情况下可存取的方式对VPS 中的表示格式进行编码,且每一层可与特定表示格式相关联。

根据另一实例,视频编码器20可根据本发明的技术对VPS中每层的视觉信号信息 (video_format、video_full_range_flag、colour_primaries、transfer_characteristics、 matrix_coeffs)进行译码。在一些实例中,所述编码可由熵编码处理单元56执行。

根据另一实例,根据本发明的技术,SPS可由具有不同空间分辨率、位深度或颜色格式的层共享。视频编码器20可对SPS进行编码。在一些实例中,所述编码可由熵编码处理单元56执行。

根据另一实例,根据本发明的技术,具有大于0的层ID的SPS的VUI中不提供定时信息。视频编码器20可对SPS进行编码。在一些实例中,所述编码可由熵编码处理单元56执行。

根据另一实例,根据本发明的技术,针对默认输出层集合不提供目标输出层的显式信令。视频编码器20可对默认输出层集合进行编码。在一些实例中,所述编码可由熵编码处理单元56执行。

根据另一实例,可存在的时间子层的最大数目(sps_max_sub_layers_minus1)以及帧间预测是否另外受限(sps_temporal_id_nesting_flag)的信令仅当nuh_layer_id_is等于0时在SPS中发生,即不在具有大于0的层ID的SPS中用信号表示。视频编码器20可对视频数据进行编码而无需在具有大于0的层ID的SPS中对可存在于参考SPS的每一CVS 中的时间子层的最大数目以及帧间预测是否针对参考SPS的CVS另外受限进行译码。在一些实例中,所述编码可由熵编码处理单元56执行。

根据另一实例,根据本发明的技术,语法元素output_layer_set_idx[i]可改变为 output_layer_set_idx_minus1[i]。视频编码器20可对语法元素 output_layer_set_idx_minus1[i]进行编码以指示对应于由VPS指定的第i输出层集合的层集合的索引。在一些实例中,所述编码可由熵编码处理单元56执行。

图3是说明可实施本发明中描述的技术的实例视频解码器30的框图。在图3的实例中,视频解码器30包含视频数据存储器78、熵解码处理单元80、预测处理单元81、逆量化处理单元86、逆变换处理单元88、求和器90和参考图片存储器92。预测处理单元81包含运动补偿处理单元82及帧内预测处理单元84。在一些实例中,视频解码器 30可执行一般与关于图2的视频编码器20描述的编码遍次互逆的解码遍次。

视频数据存储器78可存储待由视频解码器30的组件解码的视频数据,例如经编码视频位流。存储在视频数据存储器78中的视频数据可例如从计算机可读媒体获得,例如经由视频数据的有线或无线网络通信从本地视频源(例如相机)或通过存取物理数据存储媒体而获得。视频数据存储器78可形成存储来自经编码视频位流的经编码视频数据的经译码图片缓冲器(CPB)。经解码图片缓冲器(DPB)可为参考图片存储器92,其存储用于由视频解码器30例如在帧内或帧间译码模式中对视频数据进行解码时使用的参考视频数据。视频数据存储器78和DPB可由多种存储器装置中的任一者形成,例如包含同步DRAM(SDRAM)的动态随机存储器(DRAM)、磁阻式RAM(MRAM)、电阻式RAM(RRAM),或其它类型的存储器装置。视频数据存储器78和DPB可由同一存储器装置或单独的存储器装置提供。在各种实例中,视频数据存储器78可与视频解码器30 的其它组件一起在芯片上,或相对于所述组件在芯片外。

在解码过程期间,视频解码器30从视频编码器20接收表示经编码视频切片的视频块及相关联语法元素的经编码视频位流。视频解码器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、逆整数变换或概念上相似的逆变换过程等逆变换应用于所述变换系数以便产生像素域中的残余块。在一些实例中,逆变换处理单元88可接收由视频编码器基于变换单元分割技术产生的变换系数。

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

如果需要的话,还可应用解块滤波器以对经解码块进行滤波,以便移除成块性假象。其它环路滤波器(译码环路中或译码环路之后)也可用于使像素转变变平滑或以其它方式改善视频质量。接着将给定帧或图片中的经解码视频块存储在参考图片存储器92中,参考图片存储器92存储参考图片用于后续运动补偿。参考图片存储器92还存储经解码视频以供稍后在显示装置(例如图1的显示装置32)上呈现。

在图3的所说明的实例中,视频解码器30可接收简档、层次和层级语法结构的未经熵编码集合。

视频解码器30可针对多个输出层集合中的每一者参考简档、层次和层级语法结构中的一者,且基于来自针对输出层集合参考的简档、层次和层级语法结构的信息对输出层集合中的一者的视频数据进行解码。

在一些实例中,视频译码器可发射或接收具有等于0的nuh_layer_id的SPS,其中所述SPS包含用于视频数据层的简档、层次和层级语法结构。视频解码器30可接收具有等于0的nuh_layer_id的SPS,其中所述SPS包含用于视频数据层的简档、层次和层级语法结构。

在一些实例中,当具有大于0的nuh_layer_id的层参考SPS时,视频解码器30可能不使用所述SPS的简档、层次和层级语法结构对具有大于0的nuh_layer_id的层的视频数据进行解码。

视频解码器30可发射输出层旗标[i][j],其当等于1时指定层集合中的第j层是第i 输出层集合的目标输出层,并且当等于0时指定层集合中的第j层不是第i输出层集合的目标输出层。

视频解码器30还可基于输出层旗标[i][j]产生输出层集合。

在图3的所说明的实例中,视频解码器30可对包含视频数据层的多层视频数据进行解码。

视频解码器30可在VPS扩展内在所述VPS扩展的经熵编码的语法元素之前的位置处接收未经熵编码层相依性信息。

视频解码器30可基于未经熵编码层相依性信息对视频数据层中的一或多者的视频数据进行编码。层相依性信息指示所述层中的一者是否可为用于所述层中的另一者的直接参考层。

在一些实例中,层相依性信息包含direct_dependency_flag[i][j],其当等于0时指定具有索引j的层不是用于具有索引i的层的直接参考层,且当等于1时指定具有索引j 的层可为用于具有索引I的层的直接参考层。

在一些实例中,本发明描述用于HEVC扩展的VPS和SPS的增强设计的方法,包含对用于输出层集合的简档、层次和层级信息的信令、输出层集合的信令以及层相依性的信令的改变。在一些实例中,本发明还描述用于HEVC扩展的VPS和SPS的增强设计的方法,包含对用于会话协商的VPS(扩展)中关于表示格式的信息(空间分辨率、颜色格式和位深度的信令以及具有对不同类别的个别控制的SPS参数的高效信令的改变。

在一些实例中,当前VPS和SPS设计可与至少以下问题相关联:(1)因为语法元素 vps_num_layer_sets_minus1经ue(v)译码且在其之前还存在其它经ue(v)译码语法元素,所以用于层集合的简档、层次和层级的当前存取需要熵解码;(2)类似地,层相依性信息在无熵解码的情况下不可存取;以及(3)输出层集合的信令是成问题的且不是高效的,因为:(a)用于等于0的output_layer_set_idx[i]的语法元素layer_id_included_flag[][]是用于层集合0,而对于层集合0,在HEVC版本1(即HEVC WD10)中未界定 layer_id_included_flag[][],(b)显然无论如何用于层集合0的目标输出层都是层0(基础层),(c)针对每一层集合当前可用信号表示至多一个输出层集合,以及(d)当前,语法使用从0到VPS中的最大可能层ID的层ID的循环是复杂的。

在多视图情形中,情况常常是一个层集合与不同目标输出层的多个集合相关联。因此,语法元素output_layer_flag[lsIdx][j]改变为output_layer_flag[i][j],且相关语义相应地改变,且如上在项目(d)中所提到,当前,语法使用从0到VPS中的最大可能层ID 的层ID的循环是复杂的。仅使用层集合中的层的循环将简单得多,但不包含层集合中的最高层,因为所述层肯定是目标输出层。

根据一个实例,视频解码器30可针对一个层集合对一个以上输出层集合进行解码。在一些实例中,所述解码可由熵编码处理单元80执行。

根据另一实例,视频解码器30可潜在地以其在不必熵解码的情况下可存取的方式对VPS中的所有简档、层次、层级信息进行解码。在一些实例中,所述解码可由熵解码处理单元80执行但不进行熵解码。因此,解码也可以由并不具有熵解码器的装置执行。

根据另一实例,视频解码器30可对VPS中的层相依性信息进行解码以使得其在无需熵解码的情况下可存取。在一些实例中,所述解码可由熵解码处理单元80执行但不进行熵编码。因此,解码也可以由并不具有熵解码器的装置执行。

根据另一实例,视频解码器30可潜在地以在其无需熵解码、即无需熵编码VPS中的表示格式的情况下可存取的方式对VPS中的表示格式进行解码。在一些实例中,所述解码可由熵解码处理单元80执行但不进行熵解码。因此,解码也可以由并不具有熵解码器的装置执行。视频解码器30可根据本发明的技术潜在地在无需熵解码的情况下对 VPS中的表示格式进行解码,且每一层可与特定表示格式相关联。

根据另一实例,视频解码器30可根据本发明的技术对VPS中每层的视觉信号信息 (video_format、video_full_range_flag、colour_primaries、transfer_characteristics、 matrix_coeffs)进行解码。在一些实例中,所述编码可由熵编码处理单元80执行。在一些实例中,video_format参数指示待译码图片的表示的格式。video_full_range_flag参数指示明度和色度信号的黑色电平和范围。colour_primaries参数指示源原色的色度坐标。 transfer_characteristics参数指示源图片的光电传送特性。matrix_coeffs参数描述在从绿、蓝和红原色导出明度和色度信号时使用的矩阵系数。

根据另一实例,根据本发明的技术,SPS可由具有不同空间分辨率、位深度或颜色格式的层共享。视频解码器30可对SPS进行解码。在一些实例中,所述编码可由熵编码处理单元80执行。

根据另一实例,根据本发明的技术,具有大于0的层ID的SPS的VUI中不提供定时信息。视频解码器30可对SPS进行解码。在一些实例中,所述解码可由熵解码处理单元80执行。

根据另一实例,根据本发明的技术,针对默认输出层集合不提供目标输出层的显式信令。视频解码器30可对默认输出层集合进行解码。在一些实例中,所述解码可由熵解码处理单元80执行。

根据另一实例,可存在的时间子层的最大数目(sps_max_sub_layers_minus1)以及帧间预测是否另外受限(sps_temporal_id_nesting_flag)的信令仅当nuh_layer_id_is等于0时在SPS中发生。视频解码器30可对视频数据进行解码而无需在具有大于0的层ID的 SPS中对可存在于参考SPS的每一CVS中的时间子层的最大数目以及帧间预测是否针对参考SPS的CVS另外受限进行译码。在一些实例中,所述解码可由熵解码处理单元 80执行。

根据另一实例,根据本发明的技术,语法元素output_layer_set_idx[i]可改变为 output_layer_set_idx_minus1[i]。视频解码器30可对语法元素 output_layer_set_idx_minus1[i]进行解码以指示对应于由VPS指定的第i输出层集合的层集合的索引。

在以下实例中,加括号的标记(例如,[开始实例A]和[结束实例A])将用以指示涉及所指示实例的文字。可指示相对于从2013年4月2日起可从http://phenix.int-evry.fr/jct/doc_end_user/documents/12_Geneva/wg11/JCTVC-L1008-v1.zip下载的SHVC的当前版本或从2013年4月2日起可从http://phenix.it-sudparis.eu/jct2/doc_end_user/documents/3_Geneva/wg11/JCT3V-C1004-v4.zip下载的MV-HEVC标准的改变。

根据本发明的方面,关于用于层集合的简档、层次和层级信息的信令、输出层集合的信令以及层相依性的信令的若干改变由[开始实例A]和[结束实例A]指示,其在此提交中将用以指示在此包含的实例A。

由于语法元素vps_num_layer_sets_minus1经ue(v)译码(即,经熵编码)且在其之前还存在其它经ue(v)译码语法元素的事实,因此用于层集合的简档、层次和层级的当前存取需要熵解码。为了此信息在无需熵解码的情况下可存取,可在无需熵解码的情况下可存取的位置处用信号表示profile_tier_level()语法结构的集合。可随后参考 profile_tier_level()语法结构的集合用于链接到输出层集合。同一层集合的多个输出层集合可需要不同DPB大小,且因此可符合不同层级。

在一些实例中,语法元素output_layer_set_idx[i]可改变为 output_layer_set_idx_minus1[i],如下所述。当具有大于0的nuh_layer_id的层参考具有等于0的nuh_layer_id的SPS时,所述SPS中的profile_tier_level()语法结构并未应用于所述层。出于如上的类似原因,层相依性的信令上移为在无需熵解码的情况下可存取。语法元素output_layer_set_idx[i]到output_layer_set_idx_minus1[i]的改变是由于以下原因。用于等于0的output_layer_set_idx[i]的语法元素layer_id_included_flag[][]是用于层集合0,而对于层集合0,并未界定layer_id_included_flag[][]。显然用于层集合0的目标输出层是层0(基础层)。

因此,如上可见,每一层需要参考SPS。常规地,具有空间分辨率、位深度或颜色格式的不同值的任何两个层都必须参考两个不同SPS,因为这些表示格式参数是在SPS 中用信号表示。然而,当用于除具有等于0的nuh_layer_id的那些SPS外的所有SPS的这些参数移动到VPS时,且当指定忽略由具有大于0的nuh_layer_id的层参考的具有等于0的nuh_layer_id的SPS中的表示格式参数时,有可能具有空间分辨率、位深度或颜色格式的不同值的层参考相同SPS。换句话说,根据本发明的一些实施方案,具有空间分辨率、位深度或颜色格式的不同值的层可共享相同SPS,与其它SPS一样。

本文所描述的一些实例可改变用于输出层集合信令的语法和语义。在一些情况下,这可解决以下问题中的一或多者,首先当前可针对每一层集合用信号表示至多一个输出层集合。在多视图情形中,情况常常是一个层集合与不同目标输出层的多个集合相关联。因此,语法元素output_layer_flag[lsIdx][j]可改变为output_layer_flag[i][j],且相关语义相应地改变。因此,对于一个层集合可用信号表示一个以上输出层集合。第二,当前,语法使用从0到VPS中的最大可能层ID的层ID的循环,其为复杂的。实际上,仅使用层集合中的层的循环将简单得多,但不包含层集合中的最高层,因为所述层肯定是目标输出层。

关于用于会话协商的VPS(扩展)中的表示格式(空间分辨率、颜色格式和位深度的信息的信令,使用在此提交中将用以指示实例B的加括号的标记[开始实例B]和[结束实例 B]指示其改变。表示格式是通过到此信息的列表的索引针对包含基础层的每一层用信号表示,且不在具有大于0的nuh_layer_id的SPS中用信号表示,与profile_tier_level() 语法结构相同。因此,这也减少在具有大于0的nuh_layer_id的不同SPS中冗余地发送相同的表示格式信息。当具有大于0的nuh_layer_id的层参考具有等于0的nuh_layer_id 的SPS时,语法元素chroma_format_idc、separate_colour_plane_flag、 pic_width_in_luma_samples、pic_height_in_luma_samples、bit_depth_luma_minus8和 bit_depth_chroma_minus8的值不应用于所述层。

当具有对不同类别的个别控制的SPS参数的高效信令时,可包含在SPS中的参数可分类为以下六个类别:(1)Cat1:简档-层次-层级信息,已经在可缩放HEVC视频译码 (SHVC)WD1和多视图HEVC(MV-HEVC)WD3和上文中解决,(2)Cat2:表示格式信息,上文解决,(3)Cat3:子层信息(sps_max_sub_layers_minus1、sps_temporal_id_nesting_flag、 sps_max_dec_pic_buffering_minus1[i]、sps_max_num_reorder_pics[i]和sps_max_latency_ increase_plus1[i])(这些改变由将在此提交中用以指示实例C的加括号的标记[开始实例 C]和[结束实例C]指示,其也被称作Cat3),(4)Cat4:短期参考图片集合(RPS)候选者(对此的改变由在此提交中将用以指示实例D的加括号的标记[开始实例D]和[结束实例D] 指示,其也被称作Cat4,(5)Cat5:视频可用性信息(VUI)参数(对此的改变由在此提交中将用以指示实例E的加括号的标记[开始实例E]和[结束实例E]指示,其也被称作Cat5),以及(6)Cat6:其它SPS参数,对此的改变和共同改变由在此提交中将用以指示实例F的加括号的标记[开始实例F]和[结束实例F]指示,也被称作Cat6。

对于增强层或涉及增强层的层集合,类别3到6的信息可从有效VPS继承或直接在 SPS中用信号表示,而类别1和2的信息由于用于会话协商的重要性而必须在VPS中用信号表示。在具有大于0的nuh_layer_id的SPS中,存在用以用信号表示VPS ID、SPS ID和旗标(用以指示类别3到6(Cat3到Cat6)的数据是否存在于SPS中或从有效VPS继承)的至少仅三个语法元素。此虚设SPS的作用是仅将有效VPS ID传递到图片参数集 (PPS)且随后间接传递到视频译码层(VCL)网络抽象层(NAL)单元。

以下改变是基于MV-HEVC WD3和SHVC WD1且由不同颜色代码识别,即如上所述以不同颜色突出显示,且移除被展示为带删除线的文字。未提到的部分与MV-HEVC WD3和SHVC WD1中相同。

以下表3中说明的是用于原始字节序列有效负载(RBSP)语法和语义的视频参数集 (VPS)的实例语法。这与SHVC WD1和MV-HEVC WD3中相同。为方便起见所述语法在下文是复制的(表3中)。

表3-用于RBSP语法和语义的VPS的实例语法

表4说明视频参数集扩展和语义的实例。

表4-视频参数集扩展语法和语义

[开始实例A]

参数vps_num_profile_tier_level_minus1加1指定VPS中的profile_tier_level()语法结构的数目。等于1的vps_profile_present_flag[i]指定简档和层次信息存在于第i profile_tier_level()语法结构中。等于0的vps_profile_present_flag[lsIdx]指定简档和层次信息不存在于第i profile_tier_level()语法结构中,且可针对第i profile_tier_level()语法结构进行推断。

参数profile_ref_minus1[i]指定第i profile_tier_level()语法结构的简档和层次信息可推断为等于第(profile_ref_minus1[i]+1)profile_tier_level()语法结构的简档和层次信息。profile_ref_minus1[i]+1的值可小于i。

等于0的参数direct_dependency_flag[i][j]指定具有索引j的层不是用于具有索引i 的层的直接参考层。等于1的direct_dependency_flag[i][j]指定具有索引j的层可为用于具有索引i的层的直接参考层。当对于在0到vps_max_layers_minus1的范围内的i和j 来说direct_dependency_flag[i][j]不存在时,其可推断为等于0。

变量NumDirectRefLayers[i]和RefLayerId[i][j]可如下导出:

for(i=1;i<=vps_max_layers_minus1;i++)

for(j=0,NumDirectRefLayers[i]=0;j<i;j++)

if(direct_dependency_flag[i][j]==1)

RefLayerId[i][NumDirectRefLayers[i]++]=

layer_id_in_nuh[j][结束实例A]

[开始实例B]参数vps_num_rep_formats指定VPS中的随后rep_format()语法结构的数目。vps_rep_format_idx[i]指定应用于具有等于layer_id_in_nuh[i]的nuh_layer_id的层的rep_format()语法结构的在VPS中的rep_format()语法结构集合中的索引。当i等于0或vps_num_rep_formats等于1时,vps_rep_format_idx[i]的值可推断为等于0。 vps_rep_format_idx[i]的值可在0到vps_num_rep_formats-1(包含性)的范围内。[结束实例 B]

[开始实例C]等于1的max_sub_layers_vps_predict_flag[i]指定 max_sub_layers_vps_minus1[i]可推断为等于max_sub_layers_vps_minus1[i-1]且[i]存在。等于0的max_sub_layers_vps_predict_flag[i]指定max_sub_layers_vps_minus1[i]显式地用信号表示。max_sub_layers_vps_predict_flag[0]的值可推断为等于0。

参数max_sub_layers_vps_minus1[i]用于SPS语法元素sps_max_sub_layers_minus1 的推断。当max_sub_layers_vps_predict_flag[i]等于1时,max_sub_layers_vps_minus1[i] 可推断为等于max_sub_layers_vps_minus1[i-1]。max_sub_layers_vps_minus1[i]的值可推断为等于vps_max_sub_layers_minus1。[结束实例C][开始实例A]等于1的 multiple_output_layer_sets_in_layer_set_flag指定一个以上输出层集合可由用于每一层集合的VPS指定。等于0的multiple_output_layer_sets_in_layer_set_flag指定用于每一层集合的VPS指定仅一个输出层集合,其中最高层为仅有的目标输出层。因此,因为等于0 的multiple_output_layer_sets_in_layer_set_flag指定了用于每一层集合的VPS指定仅一个输出层集合,其中最高层为仅有的目标输出层,所以不需要用于默认输出层集合的目标输出层的显式信令。举例来说,不需要用信号表示将输出哪些层,因为对于每一层集合仅存在一个输出层集合。

参数num_output_layer_sets_minus1加1指定由VPS指定的输出层集合的数目。 num_output_layer_sets_minus1的值可在0到1023(包含0和1023)的范围内。[结束实例 A]

替代地,可用信号表示除vps_num_layers_sets_minus1+1之外还指示输出层集合的数目的num_addn_output_layer_sets,而不是num_output_layer_sets_minus1。

[开始实例A]参数output_layer_set_idx_minus1[i]加1指定第i输出层集合的层集合的索引。output_layer_set_idx_minus1[i]的值可在0到vps_num_layer_sets_minus1-1(包含0和vps_num_layer_sets_minus1-1)的范围内。output_layer_set_idx_minus1[i]语法元素的长度是Ceil(Log2(vps_num_layer_sets_minus1))个位。

等于1的output_layer_flag[i][j]指定层集合中的第j层是第i输出层集合的目标输出层。等于0的output_layer_flag[i][j]指定层集合中的第j层不是第i输出层集合的目标输出层。

output_layer_flag[i][NumLayersInIdList[lsIdx]-1]的值可推断为等于1,其中 lsIdx等于output_layer_set_idx_minus1[i]+1。[结束实例A]

替代地,output_layer_flag[i][NumLayersInIdList[lsIdx]-1]的值可推断为等于1,其中lsIdx等于output_layer_set_idx_minus1[i]+1且i在0到 vps_num_layer_sets_minus1(包含0和vps_num_layer_sets_minus1)的范围中,且 output_layer_flag[i][j]的值对于在0到vps_num_layer_sets_minus1(包含0和 NumLayerIdInList[lsIdx]-2)的范围内的i和在0到NumLayerIdInList[lsIdx]-2(包含0和 NumLayerIdInList[lsIdx]-2)的范围内的j来说可推断为等于0,且lsIdx等于 output_layer_set_idx_minus1[i]+1。

[开始实例A]参数profile_level_tier_idx[i]指定应用于第i输出层集合的 profile_tier_level()语法结构的在VPS中的profile_tier_level()语法结构集合中的索引。 profile_level_tier_idx[i]语法元素的长度可为Ceil(Log2(vps_num_profile_tier_level_minus1 +1))个位。profile_level_tier_idx[0]的值可推断为等于0。profile_level_tier_idx[i]的值可在0到vps_num_profile_tier_level_minus1(包含0到vps_num_profile_tier_level_minus1) 的范围内。[结束实例A]

[开始实例F]参数vps_num_other_sps_params指定VPS中的随后 other_sps_parameters()语法结构的数目。vps_num_other_sps_params的值可在0到15(包含性)的范围内。[结束实例F]

[开始实例D]参数vps_num_st_rps_candidates指定VPS中的随后 short_term_rps_candidates()语法结构的数目。vps_num_st_rps_candidates的值可在0到 15(包含性)的范围内。[结束实例D]

[开始实例E]参数vps_num_vui_params指定VPS中的随后vui_parameters()语法结构的数目。vps_num_vui_params的值可在0到15(包含性)的范围内。[结束实例E]

[开始实例F]vps_other_sps_params_idx[i]指定应用于具有等于layer_id_in_nuh[i] 的nuh_layer_id的层的other_sps_parameters()语法结构的在VPS中的 other_sps_parameters()语法结构集合中的索引。vps_other_sps_params_idx[i]语法元素的长度可为Ceil(Log2(vps_num_other_sps_params))个位。当vps_num_other_sps_params 等于1时,vps_other_sps_params_idx[i]的值可推断为等于0。vps_other_sps_params_idx[i] 的值可在0到vps_num_other_sps_params-1(包含性)的范围内。[结束实例F]

[开始实例D]参数vps_st_rps_idx[i]指定应用于具有等于layer_id_in_nuh[i]的 nuh_layer_id的层的short_term_rps_candidates()语法结构的在VPS中的 short_term_rps_candidates()语法结构集合中的索引。vps_st_rps_idx[i]语法元素的长度可为Ceil(Log2(vps_num_st_rps_candidates))个位。当vps_num_st_rps_candidates等于1 时,vps_st_rps_idx[i]的值可推断为等于0。vps_st_rps_idx[i]的值可在0到 vps_num_st_rps_candidates-1(包含性)的范围内。[结束实例D]

[开始实例E]参数vps_vui_params_idx[i]指定应用于具有等于layer_id_in_nuh[i]的 nuh_layer_id的层的vui_parameters()语法结构的在VPS中的vui_parameters()语法结构集合中的索引。vps_vui_params_idx[i]语法元素的长度可为 Ceil(Log2(vps_num_vui_params))个位。当vps_num_vui_params等于1时, vps_vui_params_idx[i]的值可推断为等于0。vps_vui_params_idx[i]的值可在0到 vps_num_vui_params-1(包含性)的范围内。[结束实例E]

[开始实例C]针对在0到num_output_layer_sets-1(包含性)的范围内的setId的变量 MaxSubLayers[setId]如下导出:

for(setId=0;setId<num_output_layer_sets;setId++){

lsIdx=outptut_layer_set_idx_minus1[setId]+1//层集合索引

highestLayerId=LayerSetLayerIdList[lsIdx][NumLayersInIdList[lsIdx]-1]

MaxSubLayers[setId]=(max_sub_layers_vps_minus1[highestLayerId]+1)

}

等于1的参数max_sub_layers_vps_predict_flag[i]指定max_sub_layers_vps_minus1[i] 可推断为等于max_sub_layers_vps_minus1[i-1]且sub_layer_vps_ordering_predict_flag[i]存在。等于0的max_sub_layers_vps_predict_flag[i]指定max_sub_layers_vps_minus1[i]显式地用信号表示。max_sub_layers_vps_predict_flag[0]的值可推断为等于0。

等于1的参数sub_layer_vps_buf_info_predict_flag[i]指定 max_vps_dec_pic_buffering_minus1[i][j]针对j的每一值可推断为等于 max_vps_dec_pic_buffering_minus1[i-1][j]。等于0的 sub_layer_vps_buf_info_predict_flag[i]指定针对j的至少一个值的 max_vps_dec_pic_buffering_minus1[i][j]显式地用信号表示。

等于1的参数sub_layer_vps_buf_info_present_flag[i]指定max_vps_dec_pic_ buffering_minus1[i][j]对于MaxSubLayers[i]子层存在。等于0的 sub_layer_vps_buf_info_present_flag[i]指定max_vps_dec_pic_buffering_minus1[i] [MaxSubLayers[i]-1]的值应用于所有子层。

参数max_vps_dec_pic_buffering_minus1[i][j]用于SPS语法元素 sps_max_dec_pic_buffering_minus1[j]的值的推断。当max_vps_dec_pic_buffering_minus1 [i][j]对于在0到MaxSubLayers[i]-2(包含性)的范围内的i来说不存在时,由于 sub_layer_vps_buf_info_present_flag[i]等于0,因此其可推断为等于 max_vps_dec_pic_buffering_minus1[i][MaxSubLayers[i]-1]。

针对j的每一值的max_vps_dec_pic_buffering_minus1[0][j]的值可推断为等于 vps_max_dec_pic_buffering_minus1[j]。

等于1的参数sub_layer_vps_ordering_info_predict_flag[i]指定语法元素 sub_layer_vps_ordering_info_present_flag[i]、max_vps_num_reorder_pics[i][j]和max_vps_ latency_increase_plus1[i][j]分别推断为等于sub_layer_vps_ordering_info_present_flag[i-1]、 max_vps_num_reorder_pics[i-1][j]和max_vps_latency_increase_plus1[i-1][j]。等于0的 sub_layer_vps_ordering_info_predict_flag[i]指示语法元素sub_layer_vps_ordering_info_ present_flag[i]、max_vps_num_reorder_pics[i][j]和max_vps_latency_increase_plus1[i][j]显式地用信号表示。当不存在时,sub_layer_vps_ordering_info_predict_flag[i]的值设定成等于0。

等于1的参数sub_layer_vps_ordering_info_present_flag[i]指定max_vps_num_ reorder_pics[i][j]和max_vps_latency_increase_plus1[i][j]对于max_sub_layers_vps_minus1+1 子层存在。等于0的sub_layer_vps_ordering_info_present_flag[i]指定max_vps_num_ reorder_pics[i][vps_max_sub_layers_minus1]和max_vps_latency_increase_plus1[i] [max_sub_layers_vps_minus1]的值应用于所有子层。

参数max_vps_num_reorder_pics[i][j]用于SPS语法元素sps_max_num_reorder_pics[j] 的值的推断。当max_vps_num_reorder_pics[i][j]对于在0到 max_sub_layers_vps_minus1[i]-1(包含性)的范围内的i来说不存在时,由于 sub_layer_vps_ordering_info_present_flag[i]等于0,因此其可推断为等于 max_vps_num_reorder_pics[i][max_sub_layers_vps_minus1[i]]。

参数max_vps_latency_increase_plus1[i][j]用于SPS语法元素 sps_max_latency_increase_plus1[j]的值的推断。当max_vps_latency_increase_plus1[i][j] 对于在0到max_sub_layers_vps_minus1[i]-1(包含性)的范围内的i来说不存在时,由于 sub_layer_vps_ordering_info_present_flag[i]等于0,因此其可推断为等于 max_vps_latency_increase_plus1[i][max_sub_layers_vps_minus1[i]]。[结束实例C]

[开始实例B]

表5说明代表性格式和语义的实例。

表5-表示格式语法和语义

针对参考VPS的每一SPS,参数chroma_format_vps_idc、separate_colour_plane_ vps_flag、pic_width_vps_in_luma_samples、pic_height_vps_in_luma_samples、 bit_depth_vps_luma_minus8和bit_depth_vps_chroma_minus8可以分别用于SPS语法元素 chroma_format_idc、separate_colour_plane_flag、pic_width_in_luma_samples、 pic_height_in_luma_samples、bit_depth_luma_minus8和bit_depth_chroma_minus8的值的推断。对于这些语法元素中的每一者,应用于对应SPS语法元素的值的所有约束(如果存在)也适用。[结束实例B]表示格式信息可大体上包含例如序列的位深度、色度取样格式、分辨率。如在表5的实例中说明,表示格式可包含chroma_format_vps_idc、 separate_colour_plane_vps_flag、pic_width_vps_in_luma_samples、pic_height_vps_in_ luma_samples、bit_depth_vps_luma_minus8和bit_depth_vps_chroma_minus8。此外,如表5中所示,可执行VPS中的表示格式的信令以使得例如chroma_format_vps_idc、 separate_colour_plane_vps_flag、pic_width_vps_in_luma_samples、pic_height_vps_in_ luma_samples、bit_depth_vps_luma_minus8和bit_depth_vps_chroma_minus8的表示格式在无需熵解码的情况下可存取。换句话说,如表5中所示,chroma_format_vps_idc、 separate_colour_plane_vps_flag、pic_width_vps_in_luma_samples、pic_height_vps_in_ luma_samples、bit_depth_vps_luma_minus8和bit_depth_vps_chroma_minus8未经熵译码,即,描述符不是ue(v)。在一些实例中,每一层可与特定表示格式相关联。

[开始实例F]表6说明其它SPS参数语法和语义的实例。

表6-其它SPS参数语法和语义

对于以下语法元素中的每一者,应用于对应SPS语法元素的值的所有约束(如果存在)也适用:conformance_window_vps_flag、conf_win_vps_left_offset、 conf_win_vps_right_offset、conf_win_vps_top_offset、conf_win_vps_bottom_offset、 log2_vps_max_pic_order_cnt_lsb_minus4、log2_vps_min_luma_coding_block_size_minus3、 log2_vps_diff_max_min_luma_coding_block_size、log2_vps_min_transform_block_size_minus2、 log2_vps_diff_max_min_transform_block_size、max_vps_transform_hierarchy_depth_inter、 max_vps_transform_hierarchy_depth_intra、scaling_list_enabled_vps_flag、sps_scaling_list_ data_present_vps_flag、amp_enabled_vps_flag、sample_adaptive_offset_enabled_vps_flag、 pcm_enabled_vps_flag、pcm_vps_sample_bit_depth_luma_minus1、pcm_vps_sample_bit_ depth_chroma_minus1、log2_vps_min_pcm_luma_coding_block_size_minus3、log2_vps_ diff_max_min_pcm_luma_coding_block_size、pcm_vps_loop_filter_disabled_flag、 long_term_ref_pics_present_vps_flag、num_long_term_ref_pics_vps、lt_ref_pic_poc_ lsb_vps[i]、used_by_curr_pic_lt_vps_flag[i]、temporal_mvp_enabled_vps_flag和 strong_intra_smoothing_enabled_vps_flag可分别用于SPS语法元素 conformance_window_flag、conf_win_left_offset、conf_win_right_offset、 conf_win_top_offset、conf_win_bottom_offset、log2_max_pic_order_cnt_lsb_minus4、 log2_min_luma_coding_block_size_minus3、log2_diff_max_min_luma_coding_block_size、 log2_min_transform_block_size_minus2、log2_diff_max_min_transform_block_size、 max_transform_hierarchy_depth_inter、max_transform_hierarchy_depth_intra、 scaling_list_enabled_flag、sps_scaling_list_data_present_flag、amp_enabled_flag、 sample_adaptive_offset_enabled_flag、pcm_enabled_flag、pcm_sample_bit_depth_luma_minus1、 pcm_sample_bit_depth_chroma_minus1、log2_min_pcm_luma_coding_block_size_minus3、 log2_diff_max_min_pcm_luma_coding_block_size、pcm_loop_filter_disabled_flag、 long_term_ref_pics_present_flag、num_long_term_ref_pics_sps、lt_ref_pic_poc_lsb_sps[i]、 used_by_curr_pic_lt_flag[i]、sps_temporal_mvp_enabled_flag和strong_intra_smoothing_ enabled_flag的值的推断。[结束实例F]

[开始实例D]表7说明短期RPS候选者语法和语义的实例。

表7-短期RPS候选者语法和语义

参数num_short_term_ref_pic_sets指定随后short_term_ref_pic_set()语法结构的数目。num_short_term_ref_pic_sets的值可在0到64(包含性)的范围内。

注释1-解码器应为总数num_short_term_ref_pic_sets+1short_term_ref_pic_set() 的语法结构分配存储器,因为可存在在当前图片的切片标头中直接用信号表示的 short_term_ref_pic_set()语法结构。在当前图片的切片标头中直接用信号表示的 short_term_ref_pic_set()语法结构具有等于num_short_term_ref_pic_sets的索引。

参数pred_st_rps_cand_idx_plus1减1指定用以推断当前short_term_rps_candidates() 语法结构的至少一个short_term_ref_pic_set()语法结构的short_term_rps_candidates()语法结构的在VPS中的short_term_rps_candidates()语法结构集合中的索引。当不存在时, pred_st_rps_cand_idx_plus1可推断为等于0。pred_st_rps_cand_idx_plus1的值可在1到 vps_num_st_rps_candidates-1(包含性)的范围内。

具有等于1的pred_from_rps_cand_list_flag[i]指定当前short_term_rps_candidates() 语法结构的第i short_term_ref_pic_set()语法结构不存在且设定成存在于另一 short_term_rps_candidates()语法结构中的short_term_ref_pic_set()语法结构中的一者。等于0的pred_from_rps_cand_list_flag[i]指定当前short_term_rps_candidates()语法结构的第i short_term_ref_pic_set()语法结构存在。当不存在时,pred_from_rps_cand_list_flag[i] 的值可推断为等于0。[结束实例D]

替代地,等于1的pred_from_rps_cand_list_flag[i]指定对应于第i short_ter_ref_pic_set()的变量DeltaPocS0、DeltaPocS1、UsedByCurrPicS1、 UsedByCurrPicS0、NumPositivePics、NumNegativePics和NumDeltaPocs分别导出为等于对应于另一short_term_rps_candidates()结构的变量DeltaPocS0、DeltaPocS1、 UsedByCurrPicS1、UsedByCurrPicS0、NumPositivePics、NumNegativePics和 NumDeltaPocs。

[开始实例D]参数idx_in_rps_cand[i]指定相同于当前short_term_rps_candidates() 的第i short_term_ref_pic_set()语法结构的short_term_ref_pic_set()语法结构的在VPS中的第(pred_st_rps_cand_idx_plus1-1)short_term_rps_candidates()语法结构的 short_term_ref_pic_set()语法结构集合中的索引。

当pred_from_rps_cand_list_flag[i]等于1时,当前short_term_rps_candidates()语法结构中的第i short_term_ref_pic_set()语法结构设定成与VPS中的第 (pred_st_rps_cand_idx_plus1-1)short_term_rps_candidates()语法结构的第 idx_in_rps_cand[i]short_term_ref_pic_set()语法结构相同。[结束实例D]

替代地,当pred_from_rps_cand_list_flag[i]等于1时,对应于当前 short_term_rps_candidates()语法结构中的第i short_term_ref_pic_set()语法结构的变量 DeltaPocS0、DeltaPocS1、UsedByCurrPicS1、UsedByCurrPicS0、NumPositivePics、 NumNegativePics和NumDeltaPocs设定成分别等于对应于VPS中的第 (pred_st_rps_cand_idx_plus1-1)short_term_rps_candidates()语法结构的第 idx_in_rps_cand[i]short_term_ref_pic_set()语法结构的变量DeltaPocS0、DeltaPocS1、 UsedByCurrPicS1、UsedByCurrPicS0、NumPositivePics、NumNegativePics和 NumDeltaPocs。表8说明VUI参数语法和语义的实例。

表8-VUI参数语法和语义

[开始实例E]当timingParamsPresentFlag等于0时,以下适用:vui_timing_info_ present_flag、vui_num_units_in_tick、vui_time_scale、vui_poc_proportional_to_timing_flag 和vui_num_ticks_poc_diff_one_minus1的值推断为分别等于 vps_timing_info_present_flag、vps_num_units_in_tick、vps_time_scale、 vps_poc_proportional_to_timing_flag和vps_num_ticks_poc_diff_one_minus1。 vui_hrd_parameters_present_flag的值可推断为等于0。

等于1的参数vui_parameters_present_flag指定vui_parameters()语法结构中存在更多语法元素。等于0的vui_parameters_present_flag指定vui_parameters()语法结构中不存在更多语法元素....[结束实例E]

在一个实例中,如表8中可见,视觉信号信息(例如,video_format、 video_full_range_flag、colour_primaries、transfer_characteristics、matrix_coeffs)是VUI 参数的子集。此外,如表4的实例中所示,VUI且因此视觉信号信息在VPS中。通过组合来自表4和表8的信息展示视觉信号信息在VPS中每层用信号表示。

表9说明实例性序列参数集RBSP语法和语义。

表9-序列参数集RBSP语法和语义

[开始实例B]

当SPS的nuh_layer_id等于0时,chroma_format_idc、separate_colour_plane_flag、 pic_width_in_luma_samples、pic_height_in_luma_samples、bit_depth_luma_minus8和 bit_depth_chroma_minus8的值可分别等于有效VPS中的第0rep_format()语法结构的 chroma_format_vps_idc、separate_colour_plane_vps_flag、pic_width_vps_in_luma_samples、 pic_height_vps_in_luma_samples、bit_depth_vps_luma_minus8和bit_depth_vps_chroma_minus8。

对于参考SPS的具有大于0的nuh_layer_id的每一层,假设layerIdx设定成等于其中layer_id_in_nuh[layerIdx]等于所述层的nuh_layer_id的值,以下适用:[结束实例B]

[开始实例A]当SPS的nuh_layer_id等于0时,忽略SPS中的profile_tier_level() 语法结构。[结束实例A]

如表8和表9中所示,例如对于大于层0的任何层,在SPS VUI中不用信号表示定时信息。

[开始实例B]chroma_format_idc、separate_colour_plane_flag、pic_width_in_luma_ samples、pic_height_in_luma_samples、bit_depth_luma_minus8和bit_depth_chroma_minus8 的值推断为分别等于有效VPS中的第vps_rep_format_idx[layerIdx]rep_format()语法结构的chroma_format_vps_idc、separate_colour_plane_vps_flag、pic_width_vps_in_luma_samples、 pic_height_vps_in_luma_samples、bit_depth_vps_luma_minus8和bit_depth_vps_chroma_ minus8,无论这些语法元素是否存在于VPS中。[结束实例B]

[开始实例F]等于1的parameterinherit_sps_params_from_vps_flag指定对于SPS RBSP,除语法元素sps_video_parameter_set_id和sps_seq_parameter_set_id外,直到语法元素sps_extension_flag的所有语法元素和语法结构的值可从有效VPS继承。等于0 的inherit_sps_params_from_vps_flag指定这些值不是从有效VPS继承。当不存在时, inherit_sps_params_from_vps_flag的值可推断为等于0。当vps_num_rep_fromats、 vps_num_other_sps_params、vps_num_st_rps_candidates或vps_num_vui_params等于0 时,inherit_sps_params_from_vps_flag的值可等于0。当inherit_sps_params_from_vps_flag 等于1时,以下适用:[结束实例F]

[开始实例C]参考SPS的每一层的sps_max_sub_layers_minus1的值可推断为等于 max_sub_layers_vps_minus1[layerIdx],其中layerIdx等于其中layer_id_in_nuh[layerIdx] 等于所述层的nuh_layer_id的值。

参考SPS的每一层的sps_max_dec_pic_buffering_minus1[i]的值对于在0到 MaxSubLayers[lxIdx]-1(包含性)的范围内的i来说可推断为等于 max_vps_dec_pic_buffering_minus1[lsIdx][i],其中lsIdx在0到 vps_num_layer_sets_minus1(包含性)的范围中且表示其中层是最高层且是仅有的目标输出层的输出层集合的在由VPS指定的输出层集合的集合中的索引。

用于参考SPS的每一层的sps_max_num_reorder_pics[i]和 sps_max_latency_increase_plus1[i]的值推断为等于max_vps_num_reorder_pics [layerIdx][i]和max_vps_latency_increase_plus1[layerIdx][i],其中对于在0到sps_max_sub_layers_minus1(包含性)的范围内的i,layerIdx等于使得 layer_id_in_nuh[layerIdx]等于层的nuh_layer_id的值。用于参考SPS的每一层的 sps_temporal_id_nesting_flag的值可推断为等于vps_temporal_id_nesting_flag。[结束实例 C]

从以上论述和表9可以看出,当nuh_layer_id_>0时一些实例并不用信号表示sps_max_sub_layers_minus1和sps_temporal_id_nesting_flag。

[开始实例F]用于参考SPS的每一层的conformance_window_flag、 conf_win_left_offset、conf_win_right_offset、conf_win_top_offset、conf_win_bottom_offset、 log2_max_pic_order_cnt_lsb_minus4、log2_min_luma_coding_block_size_minus3、 log2_diff_max_min_luma_coding_block_size、log2_min_transform_block_size_minus2、 log2_diff_max_min_transform_block_size、max_transform_hierarchy_depth_inter、 max_transform_hierarchy_depth_intra、scaling_list_enabled_flag、sps_scaling_list_data_ present_flag、amp_enabled_flag、sample_adaptive_offset_enabled_flag、pcm_enabled_flag、 pcm_sample_bit_depth_luma_minus1、pcm_sample_bit_depth_chroma_minus1、 log2_min_pcm_luma_coding_block_size_minus3、log2_diff_max_min_pcm_luma_coding_ block_size、pcm_loop_filter_disabled_flag、long_term_ref_pics_present_flag、 num_long_term_ref_pics_sps、lt_ref_pic_poc_lsb_sps[i]、used_by_curr_pic_lt_flag[i]、 sps_temporal_mvp_enabled_flag和strong_intra_smoothing_enabled_flag的值推断为分别等于有效VPS中的第vps_other_sps_params_idx[layerIdx]other_sps_parameters()语法结构的conformance_window_vps_flag、conf_win_vps_left_offset、conf_win_vps_right_offset、 conf_win_vps_top_offset、conf_win_vps_bottom_offset、log2_vps_max_pic_order_cnt_ lsb_minus4、log2_vps_min_luma_coding_block_size_minus3、log2_vps_diff_max_min_ luma_coding_block_size、log2_vps_min_transform_block_size_minus2、log2_vps_diff_max_ min_transform_block_size、max_vps_transform_hierarchy_depth_inter、max_vps_transform_ hierarchy_depth_intra、scaling_list_enabled_vps_flag、sps_scaling_list_data_present_vps_flag、amp_enabled_vps_flag、sample_adaptive_offset_enabled_vps_flag、pcm_enabled_vps_flag、 pcm_vps_sample_bit_depth_luma_minus1、pcm_vps_sample_bit_depth_chroma_minus1、 log2_vps_min_pcm_luma_coding_block_size_minus3、log2_vps_diff_max_min_pcm_luma_ coding_block_size、pcm_vps_loop_filter_disabled_flag、long_term_ref_pics_present_vps_flag、 num_long_term_ref_pics_vps、lt_ref_pic_poc_lsb_vps[i]、used_by_curr_pic_lt_vps_flag[i]、 temporal_mvp_enabled_vps_flag和strong_intra_smoothing_enabled_vps_flag,其中 layerIdx等于使得layer_id_in_nuh[layerIdx]等于所述层的nuh_layer_id的值。

当sps_scaling_list_data_present_vps_flag等于1时,用于参考SPS的每一层的语法 strucuture scaling_list_data()的值可推断为等于有效VPS中的第 vps_other_sps_params_idx[layerIdx]other_sps_parameters()语法结构中的语法strucuture scaling_list_data(),其中layerIdx等于使得layer_id_in_nuh[layerIdx]可等于所述层的 nuh_layer_id的值。[结束实例F]

[开始实例D]用于参考SPS的每一层的语法strucuture short_term_rps_candidates() 的值可推断为等于有效VPS中的第vps_st_rps_idx[layerIdx]short_term_rps_candidates() 语法结构,其中layerIdx等于使得layer_id_in_nuh[layerIdx]等于所述层的nuh_layer_id 的值。[结束实例D]

[开始实例E]在一些实例中,用于参考SPS的每一层的语法strucuture vui_parameters()的值可推断为等于有效VPS中的第vps_vui_params_idx[layerIdx] vui_parameters()语法结构,其中layerIdx等于使得layer_id_in_nuh[layerIdx]等于所述层的nuh_layer_id的值。[结束实例E]

...

依据用于输出的图片坐标中指定的矩形区,参数conf_win_left_offset、 conf_win_right_offset、conf_win_top_offset和conf_win_bottom_offset指定经译码视频流 (CVS)中从解码过程输出的图片的样本。当[开始实例F] inherit_sps_params_from_vps_flag等于0且[结束实例F]conformance_window_flag等于0 时,conf_win_left_offset、conf_win_right_offset、conf_win_top_offset和conf_win_bottom_offset 的值可推断为等于0。

符合性裁剪窗含有具有从SubWidthC*conf_win_left_offset到 pic_width_in_luma_samples-(SubWidthC*conf_win_right_offset+1)的水平图片坐标和从SubHeightC*conf_win_top_offset到pic_height_in_luma_samples-(SubHeightC* conf_win_bottom_offset+1)的垂直图片坐标(包含性)的明度样本。

SubWidthC*(conf_win_left_offset+conf_win_right_offset)的值可小于pic_width_in _luma_samples,且SubHeightC*(conf_win_top_offset+conf_win_bottom_offset)的值可小于pic_height_in_luma_samples。

当ChromaArrayType不等于0时,两个色度阵列的对应指定样本是具有图片坐标(x /SubWidthC,y/SubHeightC)的样本,其中(x,y)是指定明度样本的图片坐标。

注释3-符合性裁剪窗偏移参数仅在输出处应用。所有内部解码过程应用于未经裁剪的图片大小。

...

参数sps_sub_layer_ordering_info_present_flag等于1[开始实例C],当 inherit_sps_params_from_vps_flag等于0时,[结束实例C]指定 sps_max_dec_pic_buffering_minus1[i]、sps_max_num_reorder_pics[i]和sps_max_latency_ increase_plus1[i]对于sps_max_sub_layers_minus1+1子层是存在的。 sps_sub_layer_ordering_info_present_flag等于0[开始实例C],当 inherit_sps_params_from_vps_flag等于0时,[结束实例C]指定sps_max_dec_pic_ buffering_minus1[sps_max_sub_layers_minus1]、sps_max_num_reorder_pics[sps_max_sub_ layers_minus1]和sps_max_latency_increase_plus1[sps_max_sub_layers_minus1]的值应用于所有子层。

参数sps_max_dec_pic_buffering_minus1[i]加1指定当HighestTid等于i时用于图片存储缓冲器的单元中的CVS的经解码图片缓冲器的最大所需大小。在一些实例中, sps_max_dec_pic_buffering_minus1[i]的值可在0到MaxDpbSize-1(如子条款A.4中指定)(包含性)的范围内。当i大于0时,sps_max_dec_pic_buffering_minus1[i]可大于或等于sps_max_dec_pic_buffering_minus1[i-1]。对于i的每一值,sps_max_dec_pic_ buffering_minus1[i]的值可小于或等于vps_max_dec_pic_buffering_minus1[i]。当[开始实例C]inherit_sps_params_from_vps_flag等于0且[结束实例C] sps_max_dec_pic_buffering_minus1[i]对于在0到sps_max_sub_layers_minus1-1(包含性)的范围内的i来说不存在时,由于sps_sub_layer_ordering_info_present_flag等于0,因此其可推断为等于sps_max_dec_pic_buffering_minus1[sps_max_sub_layers_minus1]。

参数sps_max_num_reorder_pics[i]指示当HighestTid等于i时在解码次序中可先于 CVS中的任何图片且在输出次序中跟随所述图片的最大允许图片数目。 sps_max_num_reorder_pics[i]的值可在0到sps_max_dec_pic_buffering_minus1[i](包含性) 的范围内。当i大于0时,sps_max_num_reorder_pics[i]可大于或等于 sps_max_num_reorder_pics[i-1]。sps_max_num_reorder_pics[i]的值对于i的每一值来说可小于或等于vps_max_num_reorder_pics[i]。当[开始实例C] inherit_sps_params_from_vps_flag等于0且[结束实例C]sps_max_num_reorder_pics[i] 对于在0到sps_max_sub_layers_minus1-1(包含性)的范围内的i来说不存在时,由于 sps_sub_layer_ordering_info_present_flag等于0,因此其可推断为等于 sps_max_num_reorder_pics[sps_max_sub_layers_minus1]。

不等于0的参数sps_max_latency_increase_plus1[i]用以计算 SpsMaxLatencyPictures[i]的值,其指定当HighestTid等于i时在输出次序中可先于CVS 中的任何图片且在解码次序中跟随所述图片的图片的最大数目。

当sps_max_latency_increase_plus1[i]不等于0时,SpsMaxLatencyPictures[i]的值如下指定:SpsMaxLatencyPictures[i]=sps_max_num_reorder_pics[i]+(7-9)

sps_max_latency_increase_plus1[i]-1

当sps_max_latency_increase_plus1[i]等于0时,不表达对应限制。在一些实例中, sps_max_latency_increase_plus1[i]的值可在0到232-2(包含性)的范围内。在一些实例中,当vps_max_latency_increase_plus1[i]不等于0时,对于i的每一值, sps_max_latency_increase_plus1[i]的值可不等于0且可小于或等于 vps_max_latency_increase_plus1[i]。当[开始实例C]inherit_sps_params_from_vps_flag等于0且[结束实例C]sps_max_latency_increase_plus1[i]对于在0到 sps_max_sub_layers_minus1-1(包含性)的范围内的i来说不存在时,由于 sps_sub_layer_ordering_info_present_flag等于0,因此其可推断为等于 sps_max_latency_increase_plus1[sps_max_sub_layers_minus1]。

...

等于1的参数sps_scaling_list_data_present_flag指定按比例缩放列表数据存在于SPS 中[开始实例F]或从有效VPS继承[结束实例F]。在一些实例中,等于0的 sps_scaling_list_data_present_flag指定按比例缩放列表数据不存在于SPS中[开始实例F] 且不从有效VPS继承[结束实例F]。当[开始实例F]inherit_sps_params_from_vps_flag等于0且sps_scaling_list_data_present_flag[结束实例F]不存在时, sps_scaling_list_data_present_flag的值可推断为等于0。当scaling_list_enabled_flag等于 1且sps_scaling_list_data_present_flag等于0时,默认按比例缩放列表数据用以导出阵列 ScalingFactor,如HEVC标准的子条款7.4.5中指定的按比例缩放列表数据语义中所描述。

参数pcm_loop_filter_disabled_flag如下指定环路滤波器过程是否对具有等于1的 pcm_flag的译码单元中的经重构样本停用:如果pcm_loop_filter_disabled_flag等于1,那么具有等于1的pcm_flag的译码单元中的经重构样本上的解块滤波器和样本自适应偏移滤波器过程停用。否则(pcm_loop_filter_disabled_flag值等于0),具有等于1的pcm_flag 的译码单元中的经重构样本上的解块滤波器和样本自适应偏移滤波器过程不停用。

当[开始实例F]inherit_sps_params_from_vps_flag等于0且[结束实例F] pcm_loop_filter_disabled_flag不存在时,其可推断为等于0。

[开始实例D][结束实例D]

...

参数lt_ref_pic_poc_lsb_sps[i]指定[开始实例F]由[结束实例F]SPS指定的第i 候选长期参考图片的图片次序计数以MaxPicOrderCntLsb取模。用以表示 lt_ref_pic_poc_lsb_sps[i]的位的数目等于log2_max_pic_order_cnt_lsb_minus4+4。

等于0的参数used_by_curr_pic_lt_sps_flag[i]指定[开始实例F]由[结束实例F] SPS指定的第i候选长期参考图片不用于由在其长期RPS中包含[开始实例F]由[结束实例F]SPS指定的第i候选长期参考图片的图片进行参考。

...

[开始实例E][结束实例E]

图4是说明根据本文所描述的系统和方法的用于解码视频数据的实例方法的流程图。在图4的所说明的实例中,视频解码器30可接收简档、层次和层级语法结构的未经熵编码集合(402)。简档、层次和层级语法结构的未经熵编码集合可位于VPS扩展内在所述VPS扩展的经熵编码的语法元素之前的位置处。

视频解码器30可参考用于多个输出层集合中的每一者的简档、层次和层级语法结构中的一者(404),且基于来自针对输出层集合参考的简档、层次和层级语法结构的信息对输出层集合中的一者的视频数据进行解码(406)。举例来说,如果输出层集合的位流的简档、层次和层级指示位流的解码需要比如由解码器的简档、层次和层级指示的视频解码器30的解码能力高的能力,那么视频解码器30可忽略输出层集合。当如由输出层集合的位流的简档、层次和层级指示的所需解码能力并不高于视频解码器30的解码能力时,视频解码器30使用如由位流的简档、层次和层级指示的所需解码过程对输出层集合的位流进行解码。

在一些实例中,视频解码器30可接收具有等于0的nuh_layer_id的SPS,其中所述 SPS包含用于视频数据层的简档、层次和层级语法结构。

在一些实例中,视频解码器30可接收输出层旗标[i][j],其当等于1时指定层集合中的第j层是第i输出层集合的目标输出层,并且当等于0时指定层集合中的第j层不是第i输出层集合的目标输出层。举例来说,视频编码器20可发射输出层旗标[i][j],其当等于1时指定层集合中的第j层是第i输出层集合的目标输出层,并且当等于0时指定层集合中的第j层不是第i输出层集合的目标输出层。视频解码器30可发射输出层旗标 [i][j],其当等于1时指定层集合中的第j层是第i输出层集合的目标输出层,并且当等于0时指定层集合中的第j层不是第i输出层集合的目标输出层。

视频解码器30还可基于输出层旗标[i][j]产生输出层集合。举例来说,视频编码器 20还可基于输出层旗标[i][j]对输出层集合进行编码。

图5是说明根据本文所描述的系统和方法的用于编码视频数据的实例方法的流程图。在图5的所说明的实例中,视频编码器20可基于输出层旗标[i][j]产生输出层集合。举例来说,视频编码器20可参考用于多个输出层集合中的每一者的简档、层次和层级语法结构中的一者(502)。视频编码器20还可基于输出层旗标[i][j]对输出层集合进行编码(504)。

视频编码器20可将VPS与具有简档、层次和层级语法结构的未经熵编码集合的VPS 扩展一起编码(506)。在一些实例中,视频编码器20可发射、存储VPS和具有简档、层次和层级语法结构的未经熵编码集合的VPS扩展或者致使VPS和具有简档、层次和层级语法结构的未经熵编码集合的VPS扩展被存储。简档、层次和层级语法结构的未经熵编码集合可位于VPS扩展内在所述VPS扩展的经熵编码的语法元素之前的位置处。举例来说,视频编码器20可根据选定的简档、层次、层级对视频数据进行编码。视频编码器20还可对VPS中的简档、层次、层级语法进行编码以供解码器使用。

在一些实例中,视频编码器20可对具有等于0的nuh_layer_id的SPS进行编码,其中所述SPS包含用于视频数据层的简档、层次和层级语法结构。举例来说,视频编码器20可发送具有等于0的nuh_layer_id的SPS,其中所述SPS包含用于视频数据层的简档、层次和层级语法结构。当具有大于0的nuh_layer_id的层参考具有等于0的 nuh_layer_id的SPS时,所述SPS中的profile_tier_level()语法结构并未应用于所述层。

因此,如上可见,每一层需要参考SPS。常规地,具有空间分辨率、位深度或颜色格式的不同值的任何两个层都必须参考两个不同SPS,因为这些表示格式参数是在SPS 中用信号表示。然而,当用于除具有等于0的nuh_layer_id的那些SPS外的所有SPS的这些参数移动到VPS时,且当指定忽略由具有大于0的nuh_layer_id的层参考的具有等于0的nuh_layer_id的SPS中的表示格式参数时,有可能具有空间分辨率、位深度或颜色格式的不同值的层参考相同SPS。换句话说,根据本发明的一些实施方案,具有空间分辨率、位深度或颜色格式的不同值的层可共享同一SPS,只要所述层所需的其它SPS 参数是相同的即可。

在一些实例中,视频编码器20可发射输出层旗标[i][j],其当等于1时指定层集合中的第j层是第i输出层集合的目标输出层,并且当等于0时指定层集合中的第j层不是第i输出层集合的目标输出层。举例来说,视频编码器20可发射输出层旗标[i][j],其当等于1时指定层集合中的第j层是第i输出层集合的目标输出层,并且当等于0时指定层集合中的第j层不是第i输出层集合的目标输出层。

图6是说明根据本文所描述的系统和方法的用于解码视频数据的实例方法的流程图。在图6的所说明的实例中,视频解码器30可在VPS扩展内在所述VPS扩展的经熵编码的语法元素之前的位置处接收未经熵编码层相依性信息(602)。

视频解码器30可在经熵编码语法元素之前对所述未经熵编码层相依性信息进行解码(604)。在一实例中,视频解码器30可在任何经熵编码语法元素之前对所述未经熵编码层相依性信息进行解码。

视频解码器30可基于所述未经熵编码层相依性信息对视频数据层中的一或多者的视频数据进行解码(606)。层相依性信息可指示所述层中的一者是否是用于所述层中的另一者的直接参考层。在一些实例中,当层相依性信息指示层中的一者是否为用于所述层中的另一者的直接参考层时,所述层相依性信息还可指示层中的哪一者为用于所述层中的另一者的直接参考层。换句话说,层相依性信息可指示层中的一者是否为用于所述层中的另一者的直接参考层且识别所述层中的作为用于所述层中的另一者的直接参考层的所述一者。在一些实例中,层相依性信息包含direct_dependency_flag[i][j],其当等于 0时指定具有索引j的层不是用于具有索引i的层的直接参考层,且当等于1时指定具有索引j的层可为用于具有索引i的层的直接参考层。当对图片进行解码时,视频解码器 30可基于层相依性信息及其它信息导出层间参考图片集,且可进一步基于层间参考图片集及其它信息导出参考图片列表,且随后可使用从直接参考层中的图片的层间预测对图片进行解码。

图7是说明根据本文所描述的系统和方法的用于编码视频数据的实例方法的流程图。视频编码器20可基于未经熵编码层相依性信息对视频数据层中的一或多者的视频数据进行编码(702)。视频编码器20可在视频参数集(VPS)扩展内在所述VPS扩展的经熵编码的语法元素之前的位置处对未经熵编码层相依性信息进行编码(704)。举例来说,视频编码器20可基于未经熵编码层相依性信息对视频数据层中的一或多者的视频数据进行编码。层相依性信息可指示所述层中的一者是否是用于所述层中的另一者的直接参考层。在一些实例中,视频编码器20可在视频参数集(VPS)扩展内在所述VPS扩展的经熵编码的语法元素之前的位置处发射、存储未经熵编码层相依性信息或致使未经熵编码层相依性信息被存储。

在一些实例中,层相依性信息包含direct_dependency_flag[i][j],其当等于0时指定具有索引j的层不是用于具有索引i的层的直接参考层,且当等于1时指定具有索引j 的层可为用于具有索引i的层的直接参考层。

图8是说明根据本文所描述的系统和方法的用于解码视频数据的实例方法的流程图。在图8的实例中,可对于一个层集合用信号表示一个以上输出层集合。因此,如果对于一个层集合用信号表示一个以上输出层集合,那么视频解码器30例如借助于输入接口28可接收层集合的第一输出层集合(802)。视频解码器30还可接收所述层集合的第二输出层集合(804)。此外,虽然图8的实例说明一个层集合的两个输出层集合,但将理解,对于一层集合可用信号表示三个、四个或甚至更多输出层集合。视频解码器30可对第一输出层集合和第二输出层集合中的至少一者的视频数据进行解码(806)。

图9是说明根据本文所描述的系统和方法的用于编码视频数据的实例方法的流程图。在图9的实例中,可对于一个层集合用信号表示一个以上输出层集合。因此,视频编码器20可对第一输出层集合和第二输出层集合中的至少一者的视频数据进行编码 (902)。因此,输出接口22可发射来自视频编码器20的经编码数据。所发射数据可包含层集合的第一输出层集合(904)和所述层集合的第二输出层集合(906)。在一些实例中,输出接口22可将数据发射到输入接口28。在其它实例中,输出接口22可将数据发射到存储装置34用于存储。

图10是说明根据本文所描述的系统和方法的用于解码视频数据的实例方法的流程图。图10的实例说明潜在地以其在无需熵解码的情况下可存取的方式用信号表示VPS 中的表示格式。换句话说,VPS中的表示格式并未经熵编码。其可例如经固定长度译码。因此,视频解码器30可例如通过输入接口28接收VPS内的未经熵编码表示格式(1002)。所述表示格式可包含色度格式、不同颜色平面是否经单独译码、图片宽度、图片高度、明度位深度和色度位深度中的一或多者。视频解码器30还可基于VPS内的未经熵编码表示格式对视频数据进行解码(1004)。因为表示格式潜在地以其在无需熵解码的情况下可存取的方式处于VPS中,所以并不执行熵译码的装置可具有对所述表示格式的存取,例如在某些情况下媒体感知网络实体(MANE)可不具有熵译码装置。视频解码器30可根据本发明的技术潜在地在无需熵解码的情况下对VPS中的表示格式进行解码,且每一层可与特定表示格式相关联。

图11是说明根据本文所描述的系统和方法的用于编码视频数据的实例方法的流程图。图11的实例说明潜在地以其在无需熵解码的情况下可存取的方式用信号表示VPS 中的表示格式。换句话说,VPS中的表示格式并未经熵编码。其可例如经固定长度译码。因此,视频编码器20可基于VPS内的未经熵编码表示格式对视频数据进行编码(1102)。所述表示格式可包含色度格式、不同颜色平面是否经单独译码、图片宽度、图片高度、明度位深度和色度位深度中的一或多者。视频编码器20可发射VPS内的未经熵编码表示格式(1104)。视频编码器20可根据本发明的技术潜在地以在无需熵解码的情况下可存取的方式对VPS中的表示格式进行编码,且每一层可与特定表示格式相关联。

图12是说明根据本文所描述的系统和方法的用于编码视频数据的实例方法的流程图。图12的实例说明VPS中每层的视觉信号信息(例如,video_format、 video_full_range_flag、colour_primaries、transfer_characteristics、matrix_coeffs)的信令。因此,视频解码器30可接收包含一系列层的VPS,每一层包含视觉信号信息(1002)。视频解码器30还可基于VPS中每层用信号表示的所接收视觉信号信息对视频数据进行解码。

图13是说明根据本文所描述的系统和方法的用于编码视频数据的实例方法的流程图。图13的实例说明VPS中每层的视觉信号信息(例如,video_format、 video_full_range_flag、colour_primaries、transfer_characteristics、matrix_coeffs)的信令。因此,视频编码器20可基于VPS中每层用信号表示的所接收视觉信号信息对视频数据进行编码(1302)。视频编码器20可发射包含一系列层的VPS,每一层包含一系列层中的每一者的视觉信号信息(1304)。

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

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

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

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

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

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