视频比特流中的并置参考索引指示1.相关申请的交叉引用2.根据适用专利法和/或适用于巴黎公约的规则,本技术及时要求于2020年2月14日提交的第pct/cn2020/075194号国际专利申请的优先权和权益。出于法律上的所有目的,上述申请的全部公开内容通过引用并入本技术公开的一部分。
技术领域:
:3.本专利文档涉及图片编码和解码以及视频编码和解码。
背景技术:
::4.数字视频占互联网和其它数字通信网络上的最大带宽使用。随着能够接收和显示视频的连接用户装置的数目增加,预期数字视频使用的带宽需求将继续增长。技术实现要素:5.本文档公开了可以由视频编码器和解码器用于视频处理的技术,其中在视频的编解码表示和视频的像素值之间执行转换。6.在一个示例方面,公开了一种视频处理方法。该方法包括执行包括具有视频条带的视频图片的视频和视频的比特流之间的转换。比特流符合格式规则,该格式规则规定视频条带的条带类型确定来自视频图片的图片标头的特定信息被视频条带的条带标头继承的方式。7.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行包括具有视频条带的视频图片的视频和视频的比特流之间的转换。该比特流符合格式规则,该格式规则规定视频条带的条带类型确定视频条带标头中的第一语法元素的值。第一语法元素规定用于时域运动矢量预测的并置图片的参考索引。8.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行包括具有视频条带的视频图片的视频和视频的比特流之间的转换。比特流符合格式规则,该格式规则规定,在视频条带的条带类型为p类型并且启用时域运动矢量预测的情况下,禁用对并置参考图片列表中的参考图片使用参考图片重采样(rpr)。参考图片由用于时域运动矢量预测的视频条带的并置图片的参考索引指示。9.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行包括具有视频条带的视频图片的视频和视频的比特流之间的转换。该比特流符合格式规则,该格式规则规定在视频条带标头中的语法元素指示视频条带未与参考图片列表0并置的情况下,视频条带的条带类型排除类型p。10.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行包括具有一个或多个子图片的视频图片的视频和视频的比特流之间的转换。比特流符合格式规则,该格式规则规定响应于视频图片中的多个子图片选择性地包括指示是否跨编解码层视频序列中的子图片的边界执行操作的第一语法元素。11.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行包括具有一个或多个子图片的视频图片的视频和视频的比特流之间的转换。比特流符合格式规则,该格式规则规定比特流中的视频图片中的多个子图片受比特流中的约束标志约束。12.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行包括具有一个或多个子图片的视频图片的视频和视频的比特流之间的转换。比特流符合格式规则,该格式规则规定子图片中的条带数确定信令通知指示条带的宽度的语法元素的方式,其中条带的宽度被规定为片列数。13.在另一个示例方面中,公开了一种视频处理方法。该方法包括根据格式规则执行包括具有一个或多个子图片的视频图片的视频和视频的比特流之间的转换,该格式规则规定基于约束标志确定视频图片中的一个或多个子图片中的每一个是否包括单个条带。14.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行包括视频图片的视频和视频的比特流之间的转换。视频图片中的至少一个包括一个或多个子图片。比特流符合格式规则,该格式规则规定,为了在转换的子图片子比特流提取过程中确定一个或多个目标子图片的输出子比特流,跨不同视频图片的每个目标子图片使用相同的子图片索引。15.在另一个示例方面中,公开了一种视频处理方法。该方法包括通过从包括视频图片的视频的比特流中提取一个或多个目标子图片的子比特流来确定输出子比特流。视频图片中的至少一个包括一个或多个子图片,并且输出子比特流符合规定一个或多个目标子图片被表示为输出子比特流中的单个子图片的格式规则。16.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行包括瞬时解码刷新(idr)图片的视频和视频的比特流之间的转换。该比特流符合格式规则,该格式规则规定与参考图片列表相关联的一个或多个语法元素存在于idr图片的条带标头中。17.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行包括亮度视频块和色度视频块的视频与视频的比特流之间的转换。根据亮度分割树对亮度视频块进行分割,并且根据色度分割树对色度视频块进行分割。比特流包括指示亮度分割树的亮度块划分信息和指示色度分割树的色度块划分信息。比特流符合规定允许色度块划分信息不同于亮度块划分信息的规则。18.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行包括具有一个或多个子图片的视频图片的视频和视频的比特流之间的转换。比特流符合格式规则,该格式规则规定一个或多个语法结构基于包括常规约束信息的语法元素的约束标志进行约束。19.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行包括具有视频条带的视频图片的视频和视频的比特流之间的转换。比特流符合格式规则,该格式规则规定视频条带的条带类型确定来自视频图片的图片标头的特定信息被视频条带的条带标头继承的方式。20.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行视频的视频区域中的视频单元和视频的编解码表示之间的转换,其中编解码表示符合语法规则。该规则规定视频图片级的第一指示符和视频区域级的第二指示符指示在转换期间使用时域运动矢量预测编解码工具。该规则规定在编解码表示中省略第一指示符和/或第二指示符的条件。21.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行视频的视频区域中的视频单元和视频的编解码表示之间的转换,其中编解码表示符合语法规则;其中,语法规则规定将视频区域级的标头的信息推断为视频单元级的标头的信息。22.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行包括组织为逐层视频序列的多个图片的视频的视频区域中的视频单元与视频的编解码表示之间的转换;其中,编解码表示中的一个或多个字段指示视频单元中的多个子图片。23.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行包括组织为逐层视频序列的多个图片的视频的视频区域中的视频单元与视频的编解码表示之间的转换;其中,编解码表示符合格式规则,该格式规则规定指示视频单元中子图片数目的第二字段的值控制第二字段是否对转换指示跨子图片编解码工具的适用性。24.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行包括组织为逐层视频序列的多个图片的视频的视频区域中的视频单元与视频的编解码表示之间的转换;其中,编解码表示符合格式规则,该格式规则规定每个视频单元的子图片数目控制编解码表示中的语法元素的值。25.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行包括组织为逐层视频序列的多个图片的视频的视频区域中的视频单元与视频的编解码表示之间的转换,其中,编解码表示符合格式规则,该格式规则规定指示视频单元中是否出现单个视频条带的字段值控制视频的矩形条带的编解码特性。26.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行包括组织为逐层视频序列的多个图片的视频的视频区域中的视频单元与视频的编解码表示之间的转换;其中,编解码表示符合语法规则,语法规则使得在层宽视频序列的编解码表示中的跨不同图片的提取子图片具有相同的子图片索引。27.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行包括组织为逐层视频序列的多个图片的视频的视频区域中的视频单元与视频的编解码表示之间的转换;其中,编解码表示符合语法规则,即为子图片子比特流提取的子比特流符合单个子图片的格式。28.在另一个示例方面中,公开了一种视频处理方法。该方法包括执行包括组织为逐层视频序列的多个图片的视频的视频区域中的视频单元与视频的编解码表示之间的转换;其中,编解码表示符合格式规则,该格式规则规定包括一个或多个约束标志,该约束标志控制编解码表示中的语法结构中一个或多个语法元素的出现。29.在又一个示例方面中,公开了一种视频编码器装置。视频编码器包括配置为实施上述方法的处理器。30.在又一个示例方面中,公开了一种视频解码器装置。视频解码器包括配置为实施上述方法的处理器。31.在又一个示例方面中,公开了一种其上存储有代码的计算机可读介质。该代码以处理器可执行代码的形式体现了本文描述的方法之一。32.本文档中描述了这些特征和其他特征。附图说明33.图1是示例视频处理系统的框图。34.图2是视频处理装置的框图。35.图3是视频处理的示例方法的流程图。36.图4是示出根据本公开的一些实施例的视频编解码系统的框图。37.图5是示出根据本公开的一些实施例的编码器的框图。38.图6是示出根据本公开的一些实施例的解码器的框图。39.图7是根据本技术的视频处理方法的流程图表示。40.图8是根据本技术的另一种视频处理方法的流程图表示。41.图9是根据本技术的另一种视频处理方法的流程图表示。42.图10是根据本技术的另一种视频处理方法的流程图表示。43.图11是根据本技术的另一种视频处理方法的流程图表示。44.图12是根据本技术的另一种视频处理方法的流程图表示。45.图13是根据本技术的另一种视频处理方法的流程图表示。46.图14是根据本技术的另一种视频处理方法的流程图表示。47.图15是根据本技术的另一种视频处理方法的流程图表示。48.图16是根据本技术的另一种视频处理方法的流程图表示。49.图17是根据本技术的另一种视频处理方法的流程图表示。50.图18是根据本技术的另一种视频处理方法的流程图表示。51.图19是根据本技术的又一种视频处理方法的流程图表示。具体实施方式52.在本文档中使用章节标题是为了便于理解,并且不限制每个章节中公开的技术和实施例仅适用于该章节。此外,在一些说明书中使用h.266术语只是为了便于理解,而不是为了限制所公开技术的范围。这样,本文所描述的技术也适用于其它视频编解码器协议和设计。此外,使用vcc标准的当前版本如何可以通过插入新文本(高亮)或删除当前文本(删除线)来修改的示例对一些技术进行描述。53.本文档与视频编解码技术有关。具体地,它是关于视频编解码中的高级别语法(hls)和相关技术。它可以应用于例如hevc之类的现有视频编解码标准或要被完成的标准(通用视频编解码)。它还可以适用于未来视频编解码标准或视频编解码器。54.视频编解码标准主要是通过著名的itu-t和iso/iec标准的发展而发展起来的。itu-t制作了h.261和h.263,iso/iec制作了mpeg-1和mpeg-4visual,并且这两个组织联合制作了h.262/mpeg-2视频标准和h.264/mpeg-4高级视频编解码(avc)标准以及h.265/hevc标准。自h.262以来,视频编解码标准基于混合视频编解码结构,其中,使用了时域预测加变换编解码。为了探索hevc之外的未来视频编解码技术,vceg和mpeg于2015年联合成立了联合视频探索小组(jvet)。此后,许多新方法被jvet采用,并被应用到名为联合探索模型(jem)的参考软件中。jvet会议每季度同时举行一次,并且新的编解码标准的目标是比hevc降低50%的比特率。在2018年4月的jvet会议上,新的视频编解码标准被正式命名为通用视频编解码(vvc),并且当时发布了vvc测试模型(vtm)的第一个版本。随着致力于vvc标准化的不断努力,每次jvet会议都会为vcc标准采用新的编解码技术。55.示例定义56.本文档中使用了以下定义。57.访问单元(au):属于不同层的pu集合,并且包含与同一时间相关联的编解码图片以用于从dpb输出。58.自适应环路滤波器(alf):作为解码过程的一部分应用并且由aps中传送的参数控制的滤波过程。59.ac变换系数:两个维度中至少一个维度的频率索引为非零的任何变换系数。60.alfaps:控制alf过程的aps。61.自适应参数集合(aps):包含语法元素的语法结构,该语法元素如由条带标头中发现的零个或多个语法元素确定地适用于零个或多个条带。62.(特定的图片的)相关联的irap图片:解码顺序中具有与特定的图片相同的nuh_layer_id值的前一个irap图片(当存在时)。63.相关联的非vclnal单元:vclnal单元的非vclnal单元(当存在时),其中vclnal单元是非vclnal单元的相关联的vclnal单元。64.相关联的vclnal单元:nal_unit_type等于eos_nut、eob_nut、suffix_aps_nut、suffix_sei_nut、fd_nut、rsv_nvcl_27或unspec_30…unspec_31范围内的非vclnal单元的解码顺序中的前一个vclnal单元;或解码顺序中的下一个vclnal单元。65.二进制位:二进制位字符串的一位。66.二值化:二进制位字符串的集合,用于语法元素的所有可能值。67.二值化过程:将语法元素的所有可能值映射到二进制位字符串的集合上的唯一映射过程。68.二元划分:将样点的矩形mxn块划分为两个块,其中垂直划分产生第一个(m/2)xn块和第二个(m/2)xn块,并且水平划分产生第一个mx(n/2)块和第二个mx(n/2)块。69.二进制位字符串:来自语法元素的二进制化的语法元素值的中间二进制表示。70.双预测(b)条带:使用帧内预测或使用最多两个运动矢量和参考索引的帧间预测进行解码的条带,以预测每个块的样点值。71.比特流:以nal单比特流或字节流的形式的比特序列,其形成au序列的标识,au序列形成一个或多个编解码视频序列(cvs)。72.块:样点的mxn(m列xn行)阵列,或变换系数的mxn阵列。73.块矢量:用于ibc预测的二维矢量,其提供从当前编解码块的坐标到同一解码图片中的预测块坐标的偏移量。74.字节:8位的序列,当作为位值序列写入或读取时,其中最左边和最右边的位分别表示最高有效位和最低有效位。75.字节对齐:当位置是比特流中第一个位的位置的8位整数倍时,比特流中的位置是字节对齐的;并且当位或字节或语法元素出现在比特流中的位置是字节对齐的时,则称其为字节对齐的。76.字节流:包含起始代码前缀和nal单元的nal单元流的封装。77.可以:一个术语,用于指允许但不一定需要的行为。78.色度:一个形容词,由符号cb和cr表示,规定样点阵列或单个样点表示与原色相关的两个色差信号之一。需要注意的是,使用术语色度(chroma)而不是术语色度(chrominance),以避免使用通常与术语色度(chrominance)相关联的线性光传送特性的含义。79.清洁随机存取(cra)pu:其中编解码图片为cra图片的pu。80.清洁随机存取(cra)图片:每个vclnal单元的nal_unit_type等于cra_nut的irap图片。需要注意的是,cra图片在其解码过程中不指除了用于帧间预测的自身以外的任何图片,并且可以是解码顺序中的比特流中的第一个图片,或者可以稍后出现在比特流中。cra图片可能具有相关联的radl或rasl图片。当cra图片的nooutputbeforerecoveryflag等于1时,解码器不会输出相关联的rasl图片,因为它们可能不可解码,这是由于它们可能包含对比特流中不存在的图片的引用。81.编解码层视频序列(clvs):具有相同nuh_layer_id值的pu序列按解码顺序由clvsspu组成,后跟零个或多个非clvsspu的pu,包括所有后续pu,但不包括作为clvsspu的任何后续pu。需要注意的是,clvsspu可以是idrpu、crapu或gdrpu。对于每个idrpu、handlecraascvsstartflag等于1的每个crapu、以及作为按照解码顺序的比特流层中的第一个pu或按照解码顺序的eosnal单元之后的比特流层中的第一个pu的每个cra或gdrpu,nooutputbeforerecoveryflag的值等于1。82.编解码层视频序列开始(clvss)pu:其中编解码图片为clvss图片的pu。83.编解码层视频序列开始(clvss)图片:作为irap图片的编解码图片,其中nooutputbeforerecoveryflag等于1,或nooutputbeforerecoveryflag等于1的gdr图片。84.编解码图片:图片的编解码表示,包括在au内具有nuh_layer_id的特定的值的vclnal单元,并包含图片的所有ctu。85.编解码图片缓冲器(cpb):先进先出的缓冲器,包含假设参考解码器中规定的按照解码顺序的du。86.编解码表示:按照其编解码形式表示的数据元素。87.编解码视频序列(cvs):按解码顺序由cvssau组成的au序列,后跟零个或多个非cvssau的au,包括所有后续au,但不包括作为cvssau的任何后续au。88.编解码视频序列开始(cvss)au:其中cvs中的每一层都有pu的au,并且每个pu中的编解码图片是clvss图片。89.编解码块:一些m值和n值的样点的mxn块,这样将ctb划分为编解码块就是一种分割。90.编解码树块(ctb):某个n值的n×n的样点块,这样将分量划分为ctb就是一种分割。91.编解码树单元(ctu):亮度样点的ctb、具有三个样点阵列的图片的色度样点的两个对应ctb、或单色图片的样点的ctb、或使用三个单独的颜色平面和用于编解码样点的语法结构进行编解码的图片。92.编解码单元(cu):亮度样点的编解码块、具有三个样点阵列的图片的色度样点的两个对应编解码块、或单色图片的样点的编解码块、或使用三个单独的颜色平面和用于编解码样点的语法结构进行编解码的图片。93.分量:阵列或构成4:2:0、4:2:2或4:4:4颜色格式图片的三个阵列(亮度和两个色度)中的单个样点,或阵列或构成单色格式图片的阵列中的单个样点。94.上下文变量:通过包含最近解码的二进制位的等式,为二进制位的自适应二进制算术解码过程规定的变量。95.去方块滤波器:作为解码过程的一部分应用的滤波过程,以便最小化块之间边界处的视觉伪像的出现。96.解码图片:通过对编解码图片应用解码过程产生的图片。97.解码图片缓冲器(dpb):保存解码图片的缓冲器,用于假设参考解码器规定的引用、输出重新排序或输出延迟。98.解码器:解码过程的实施例。99.解码顺序:解码过程处理语法元素的顺序。100.解码过程:本说明书中规定的读取比特流并从中推导解码图片的过程。101.解码单元(du):如果decodingunithrdflag等于0,则为au,否则为au的子集,由au中的一个或多个vclnal单元和相关联的非vclnal单元组成。102.仿真防止字节:当比特流的语法元素以确保nal单元中连续字节对齐的字节序列不能包含起始代码前缀的方式形成某些字节值的模式时,nal单元中存在的等于0x03的字节。103.编码器:编码过程的实施例。104.编码过程:本说明书中未规定的产生符合本说明书的比特流的过程。105.填充数据nal单元:nal_unit_type等于fd_nut的nal单元。106.标志:可以采用两个可能值中的一个:0和1的变量或单个比特语法元素。107.频率索引:在解码过程中应用变换之前,与变换系数相关联的一维或二维索引。108.渐进解码刷新(gdr)au:其中每个当前pu中的编解码图片是gdr图片的au。109.渐进解码刷新(gdr)pu:其中编解码图片为gdr图片的pu。110.渐进解码刷新(gdr)图片:每个vclnal单元的nal_unit_type等于gdr_nut的图片。111.假设参考解码器(hrd):规定编码过程可能产生的一致nal单元流或一致字节流的可变性约束的假设解码器模型。112.假设流调度器(hss):用于检查比特流或解码器在将比特流输入假设参考解码器的定时和数据流方面的一致性的假设解码器模型。113.信息性:用于指本说明书中提供的一个术语,该术语未建立任何与本说明书一致的强制性要求,并且因此不被视为本说明书的组成部分。114.瞬时解码刷新(idr)pu:其中编解码图片为idr图片的pu。115.瞬时解码刷新(idr)图片:每个vclnal单元的nal_unit_type等于idr_w_radl或idr_n_lp的irap图片。注意,idr图片在其解码过程中不参考用于帧间预测的除自身以外的任何图片,并且可以是解码顺序的比特流中的第一个图片,或者可以稍后出现在比特流中。每个idr图片是按解码顺序的cvs的第一个图片。当每个vclnal单元的nal_unit_type等于idr_w_radl的idr图片时,它可能具有相关联的radl图片。当每个vclnal单元的nal_unit_type等于idr_n_lp的idr图片时,它没有任何相关联的前导图片。idr图片没有相关联的rasl图片。116.层间参考图片(ilrp):与当前图片位于同一au中的图片,其中nuh_layer_id小于当前图片的nuh_layer_id,并且被标记为“用于长期参考”。117.帧间编解码:对使用帧间预测的编解码块、条带或图片进行的编解码。118.帧间预测:以依赖于一个或多个参考图片的数据元素(例如,样点值或运动矢量)的方式导出的预测。119.块内复制(ibc)预测:以依赖于同一解码条带而不参考参考图片的数据元素(例如,样点值或块矢量)的方式导出的预测。120.帧内编解码:对使用帧内预测的编解码块、条带或图片进行的编解码。121.帧内预测:仅从同一解码条带的数据元素(例如,样点值)导出而不参考参考图片的预测。122.帧间随机访问点(irap)au:其中cvs中每一层都有pu并且每个pu中的编解码图片是irap图片的au。123.帧内随机访问点(irap)pu:其中编解码图片为irap图片的pu。124.帧内随机访问点(irap)图片:其中所有vclnal单元在idr_w_radl到cra_nut(含)的范围内具有相同的nal_unit_type值的编解码图片。注意,irap图片在其解码过程中不指代用于帧间预测的自身以外的任何图片,并且可以是cra图片或idr图片。比特流中按解码顺序的第一张图片必须是irap或gdr图片。如果必要的参数集在需要被参考时可用,则可以正确解码irap图片和cvs中解码顺序的所有后续非rasl图片,而无需按解码顺序对irap图片之前的任何图片执行解码处理。还应当注意的是,irap图片的mixed_nalu_types_in_pic_flag的值等于0。当图片的mixed_nalu_types_in_pic_flag等于0,并且图片的任何条带的nal_unit_type在idr_w_radl到cra_nut(含)的范围内时,图片的所有其他条带都具有相同的nal_unit_type值,并且该图片被称为irap图片。125.帧内(i)条带:仅使用帧内预测进行解码的条带。126.层:全部具有nuh_layer_id的特定值的vclnal单元集合以及相关联的非vclnal单元。127.前置图片:与相关联irap图片位于同一层中并且在输出顺序中位于相关联irap图片之前的图片。128.叶:作为深度为0的树的根节点的树的终止节点。129.级别:对本规范的语法元素和变量可能采用的值或缩放前变换系数值的约束的定义集合。需要注意的是,所有简档都定义了相同的级别集合,其中每个级别定义的大多数方面在不同简档中是通用的。在规定的约束范围内,各个实现可以为每个受支持的简档支持不同的级别。130.列表0(列表1)运动矢量:与指向参考图片列表0(列表1)的参考索引相关联的运动矢量。131.列表0(列表1)预测:使用指向参考图片列表0(列表1)的参考索引对条带内容进行的帧间预测。132.lmcsaps:控制lmcs过程的aps。133.长期参考图片(ltrp):nuh_layer_id等于当前图片的nuh_layer_id并标记为“用于长期参考”的图片。134.亮度:一个形容词,用符号或下标y或l表示,规定样点阵列或单个样点代表与原色相关的单色信号。注意,使用术语亮度(luma)而不是术语亮度(luminance),以避免使用通常与术语亮度(luminance)相关联的线性光传送特性的含义。有时使用符号l代替符号y,以避免与用于垂直位置的符号y混淆。135.具有色度缩放的亮度映射(lmcs):作为解码过程的一部分应用的过程,该过程将亮度样点映射到特定值,并可以对色度样点的值应用缩放操作。136.可能:用于指代允许但不一定需要的行为的术语。注意,在一些旨在强调所描述行为的可选性质的地方,使用短语“可能或不可能”来强调。本文档中使用该术语只是为了强调该要求被编解码标准采用的示例实施例,而不限制所公开技术的范围。137.运动矢量:用于帧间预测的二维矢量,其提供从解码图片中的坐标到参考图片中的坐标的偏移量。138.多类型树:一种树,其中父节点可以使用二元划分被划分为两个子节点,也可以使用三元划分被划分为三个子节点,每个子节点都可以成为另一个划分为两个或三个子节点的父节点。139.必须:用于表示对本规范其他地方规定的要求或要求含义的观察的术语(仅在信息上下文中使用)。本文档中使用该术语只是为了强调该要求被编解码标准采用的示例实施例,而不是限制所公开技术的范围。140.网络抽象层(nal)单元:一种语法结构,包含要遵循的数据类型的指示,以及包含以rbsp形式的必要时散布有仿真预防字节的该数据的字节。141.网络抽象层(nal)单元流:nal单元序列。142.注意:用于前缀信息性备注的术语(仅在信息性上下文中使用)。143.操作点(op):ols的时域子集,由ols索引和temporalid的最高值标识。144.输出层:输出的输出层集合的层。145.输出层集(ols):由规定层集组成的层级,其中层集中的一个或多个层被规定为输出层。146.输出图层集(ols)层索引:ols中的层到ols中的层列表的索引。147.输出顺序:从dpb输出解码图片的顺序(用于将从dpb输出的解码图片)。148.输出时间:根据输出定时dpb操作,hrd规定的将从dpb输出解码图片的时间(用于将从dpb输出的解码图片)。149.参数:序列参数集(sps)或图片参数集(pps)的语法元素,或定义术语量化参数的第二个字。150.分割:将集合划分为子集,使得集合的每个元素恰好位于其中一个子集中。151.图片:单色格式的亮度样点阵列或4:2:0、4:2:2和4:4:4颜色格式的亮度样点阵列和两个对应的色度样点阵列。注意,图片可以是帧或字段。然而,在一个cvs中,要么所有图片都是帧,要么所有图片都是字段。152.图片标头(ph):包含适用于编解码图片的所有条带的语法元素的语法结构。153.图片级条带索引:当rect_slice_flag等于1时,按照在pps中信令通知的顺序,条带到图片中的条带列表的索引。154.图片顺序计数(poc):与每个图片相关联的变量,唯一标识clvs中所有图片中的相关联图片,并且当相关联图片将从dpb输出时,指示相关联图片在输出顺序中相对于将从dpb输出的相同clvs中其他图片的输出顺序位置的位置。155.图片参数集(pps):一种语法结构,如由每个条带标头中的语法元素确定的,包含适用于零个或多个完整编解码图片的语法元素。156.图片单元(pu):根据规定的分类规则相互关联的nal单元集,在解码顺序上是连续的,并且仅包含一个编解码图片。157.预测:预测过程的实施例。158.预测过程:使用预测值对当前正在解码的数据元素(例如,样点值或运动矢量)进行估计。159.预测(p)条带:使用帧内预测或使用帧间预测(最多一个运动矢量和参考索引)进行解码以预测每个块的样点值的条带。160.预测值:在后续数据元素的解码过程中使用的规定值或先前解码的数据元素(例如,样点值或运动矢量)的组合。161.简档:本规范的语法的规定子集。162.四叉树:一种树,其中父节点可以划分为四个子节点,每个子节点可以成为另一个划分为四个子节点的父节点。163.量化参数:解码过程用于缩放变换系数级别的变量。164.随机存取:在流起始点以外的点开始比特流解码过程的行为。165.随机存取可解码前导(radl)pu:其中编解码图片为radl图片的pu。166.随机存取可解码前导(radl)图片:每个vclnal单元的nal_unit_type等于radl_nut的编解码图片。注意,所有radl图片都是前导图片。radl图片不用作相同关联irap图片的后续图片的解码过程的参考图片。当field_seq_flag等于0时,所有radl图片(如果存在)将按解码顺序先于相同关联irap图片的所有非前导图片。167.随机存取跳过前导(rasl)pu:编解码图片为rasl图片的pu。168.随机访问跳过前导(rasl)图片:每个vclnal单元的nal_unit_type等于rasl_nut的编解码图片。注意,所有rasl图片都是相关联cra图片的前导图片。当相关联cra图片的nooutputbeforerecoveryflag等于1时,rasl图片不会输出,并且可能无法正确解码,这是由于rasl图片可能包含对比特流中不存在的图片的引用。rasl图片不用作非rasl图片的解码过程的参考图片。当field_seq_flag等于0时,所有rasl图片(如果存在)将按解码顺序先于相同关联cra图片的所有非前导图片。169.光栅扫描:矩形二维图案到一维图案的映射,使得一维图案中的第一个条目是从左至右扫描的二维图案的第一顶行开始的,然后是每个从左至右扫描的图案的第二、第三等行(向下)。170.原始字节序列有效载荷(rbsp):一种语法结构,包含封装在nal单元中的整数个字节,并且其为空或具有包含语法元素的数据位字符串的形式,其后跟rbsp停止位和零个或多个等于0的后续位。171.原始字节序列有效载荷(rbsp)停止位:原始字节序列有效载荷(rbsp)中的等于1的位,位于一串数据位之后,可以通过从rbsp末端搜索rbsp停止位(rbsp中的最后一个非零位)来识别rbsp内的末端的位置。172.参考索引:参考图片列表的索引。173.参考图片:作为短期参考图片、长期参考图片或层间参考图片的图片。注意,参考图片包含可以在后续图片的解码过程中按解码顺序用于帧间预测的样点。174.参考图片列表:用于p条带或b条带的帧间预测的参考图片列表。注意,为非idr图片的每个条带生成两个参考图片列表,参考图片列表0和参考图片列表1。与图片相关联的两个参考图片列表中的所有条目所参考的唯一图片集由所有参考图片组成,这些参考图片可以用于以解码顺序对相关联图片或相关联图片之后的任何图片进行帧间预测。对于p条带的解码处理,仅参考图片列表0用于帧间预测。对于b条带的解码处理,参考图片列表0和参考图片列表1都用于帧间预测。对于i条带的条带数据的解码,没有用于帧间预测的参考图片列表。175.参考图片列表0:用于p的帧间预测的参考图片列表或用于b条带的帧间预测的第一参考图片列表。176.参考图片列表1:用于b条带的帧间预测的第二参考图片列表。177.保留:一个术语,可以用于规定特定语法元素的一些值供itu-t|iso/iec未来使用,并且不应当用于符合本规范本版本的比特流,但可以用于符合itut|iso/iec对本规范的未来扩展的比特流。178.残差:样点或数据元素的预测与其解码值之间的解码差。179.缩放:将变换系数级别乘以一个因子得到变换系数的过程。180.缩放列表:将每个频率索引与缩放过程的缩放因子相关联的列表。181.缩放列表aps:具有用于构建缩放列表的语法元素的aps。182.序列参数集(sps):包含适用于零个或多个完整clvs的语法元素的语法结构,如由每个图片标头中的语法元素所参考的pps中找到的语法元素的内容确定的。183.应当:用于表示符合本规范的强制性要求的术语。注意,当用于表示对语法元素的值或对通过规定解码过程的操作获得的结果的强制约束时,编码器有责任确保满足约束。当参考解码过程执行的操作使用时,产生与本规范中描述的解码过程输出的相同裁剪解码图片的任何解码过程都符合本规范的解码过程要求。本文档中使用该术语只是为了强调编解码标准采用该要求的示例实施例,而不是限制所公开技术的范围。184.短期参考图片(strp):nuh_layer_id等于当前图片的nuh_layer_id并标记为“用于短期参考”的图片。185.应该:一个术语,用于指代在预期的正常情况下鼓励遵循的实施的行为,但不是符合本规范的强制性要求。本文档中使用该术语只是为了强调编解码标准采用该要求的示例实施例,而不是限制所公开技术的范围。186.条带:仅包含在单个nal单元中的图片的片内的整数个完整片或整数个连续完整ctu行。187.条带标头:编解码条带的一部分,包含与条带中表示的片内的所有片或ctu行相关的数据元素。188.来源:编码前用于描述视频材料或其某些属性的术语。189.起始代码前缀:嵌入字节流中作为每个nal单元的前缀的等于0x000001的三个字节的唯一序列。注意,起始代码前缀的位置可以由解码器用于识别新nal单元的开始和先前nal单元的结束。通过包含仿真防止字节,可以防止nal单元内起始代码前缀的模拟。190.逐步时域子层访问(stsa)pu:其中编解码图片为stsa图片的pu。191.逐步时域子层访问(stsa)图片:每个vclnal单元的nal_unit_type等于stsa_nut的编解码图片。注意,对于帧间预测参考,stsa图片不使用与stsa图片具有相同temporalid的图片。对于帧间预测参考,以与stsa图片具有相同的temporalid的解码顺序的stsa图片之后的图片不使用以与stsa图片具有相同的temporalid的解码顺序的stsa图片之前的图片。stsa图片使得能够在stsa图片处从紧邻的较低子层向上切换到包含stsa图片的子层。stsa图片的temporalid必须大于0。192.数据位串(sodb):表示原始字节序列有效载荷停止位之前的原始字节序列有效载荷内存在的语法元素的一些位数的序列,其中最左边的位被视为第一位和最高有效位,并且最右边的位被视为最后一位和最低有效位。193.子比特流提取过程:一种规定过程,通过该过程,从比特流中删除不属于目标集(由目标ols索引和目标最高temporalid确定)的比特流中的nal单元,其中输出子比特流由属于目标集的比特流中的nal单元组成。194.子层:时域可伸缩比特流的时域可伸缩层,由具有temporalid变量的特定值的vclnal单元和相关联的非vclnal单元组成。195.子层表示:由特定子层和较低子层的nal单元组成的比特流子集。196.子图片:图片内的一个或多个条带的矩形区域。197.子图片级条带索引:当rect_slice_flag等于1时,按照pps中信令通知的顺序的条带到子图片中的条带列表的索引。198.补充增强信息(sei)消息:具有规定语义的语法结构,其传递解码过程不需要的信息,以确定解码图片中的样点的值。199.语法元素:比特流中表示的数据元素。200.语法结构:以规定顺序一起出现在比特流中的零个或多个语法元素。201.三元划分:将样点的矩形mxn块划分为三个块,其中垂直划分产生第一个(m/4)xn块、第二个(m/2)xn块、第三个(m/4)xn块,并且水平划分产生第一个mx(n/4)块、第二个mx(n/2)块、第三个mx(n/4)块。202.层级:对比特流中语法元素的值施加的规定类别的级别约束,其中级别约束嵌套在层级中,并且符合某个层级和级别的解码器将能够对符合该级别的同一层级或更低层或该级别下的任何级别的所有比特流进行解码。203.片:图片中的特定片列和特定片行内的ctu的矩形区域。204.片列:ctu的矩形区域,其高度等于图片的高度,并且宽度由图片参数集中的语法元素规定。205.片行:ctu的矩形区域,其高度由图片参数集中的语法元素规定,并且宽度等于图片的宽度。206.片扫描:分割图片的ctu的特定序列顺序,其中ctu在片中的ctu光栅扫描中连续排序,而图片中的片在图片的片的光栅扫描中连续排列。207.后续图片:以输出顺序跟随相关联irap图片的非irap图片,且不是stsa图片。注意,与irap图片相关联的后续图片也按照解码顺序跟随irap图片。不允许以输出顺序跟随相关联irap图片且以解码顺序在相关联irap图片之前的图片。208.变换:解码过程的一部分,通过该部分将变换系数的块转换为空域值的块。209.变换块:解码过程中根据变换产生的矩形mxn样点块。210.变换系数:在解码过程中,与变换中的特定一维频率索引或二维频率索引相关联被认为处于频域中的标量。211.变换系数级别:一个整数,表示在计算变换系数值的缩放之前,在解码过程中与特定的二维频率索引相关联的值。212.变换单元(tu):当对亮度和色度使用单个编解码单元树时,图片的亮度样点的变换块和色度样点的两个对应变换块;或者,当对亮度和色度使用两个单独的编解码单元树时,亮度样点的变换块或色度样点的两个变换块,以及用于变换变换块样点的语法结构。213.树:具有唯一根节点的有限节点集的树。214.未规定:一个术语,可以用于规定特定语法元素的一些值,以指示这些值在本规范中没有规定的含义,并且在将来不会作为本规范的未来版本的组成部分而具有规定的含义。215.视频编解码层(vcl)nal单元:编解码条带nal单元和nal单元子集的统称,这些nal单元具有在本规范中被分类为vclnal单元的nal_unit_type的保留值。216.一些示例比特流和图片格式、分区、扫描过程和邻近关系被描述如下。217.6.3图片、子图片、条带、片和ctu的分区218.6.3.2块、四叉树和多类型树结构219.样点以ctb为单位进行处理。每个亮度ctb在宽度和高度上的阵列尺寸都是ctbsizey(以样点为单位)。每个色度ctb的阵列的宽度和高度分别为ctbwidthc和ctbheightc(以样点为单位)。220.每个ctb被指派一个分割信令,以识别用于帧内预测或帧间预测以及变换编解码的块尺寸。分割是递归四叉树分割。四叉树的根与ctb相关联。四叉树被划分,直到到达叶,这被称为四叉树叶。当分量宽度不是ctb尺寸的整数倍时,则右侧分量边界处的ctb不完整。当分量高度不是ctb尺寸的整数倍时,底部分量边界处的ctb不完整。221.编解码块是两个树(预测树和变换树)的根节点。预测树规定预测块的位置和尺寸。变换树规定变换块的位置和尺寸。亮度和色度的划分信息对于预测树是相同的,并且对于变换树可能相同也可能不相同。222.块和相关联语法结构被分组为“单元”结构,如下所示:223.–一个变换块(单色图片或separate_colour_plane_flag等于1)或三个变换块(4:2:0、4:2:2或4:4:4颜色格式的图片的亮度和色度分量)以及相关联的变换语法结构单元与变换单元相关联。224.–一个编解码块(单色图片或separate_colour_plane_flag等于1)或三个编解码块(亮度和色度),相关联的编解码语法结构和相关联的变换单元与编解码单元关联。225.–一个ctb(单色图片或separate_colour_plane_flag等于1)或三个ctb(亮度和色度),相关联的编解码树语法结构和相关联的编解码单元与ctu相关联。226.7语法和语义227.7.3表格形式的语法228.7.3.1nal单元语法229.7.3.1.1通用nal单元语法[0230][0231]7.3.1.2nal单元标头语法[0232][0233]7.3.2原始字节序列有效载荷、后续位和字节对齐语法[0234]7.3.2.1解码能力信息rbsp语法[0235][0236]7.3.2.2视频参数集rbsp语法[0237][0238][0239][0240]7.3.2.3序列参数集rbsp语法[0241][0242][0243][0244][0245][0246][0247][0248]7.3.2.4图片参数集rbsp语法[0249][0250][0251][0252][0253]7.3.2.5自适应参数集rbsp语法[0254][0255][0256]7.3.2.6图片标头rbsp语法[0257][0258]7.3.2.7图片标头结构语法[0259][0260][0261][0262][0263][0264]7.3.2.8补充增强信息rbsp语法[0265][0266]7.3.2.9au分隔符rbsp语法[0267][0268]7.3.2.10序列rbsp语法的结尾[0269][0270]7.3.2.11比特流rbsp语法的结尾[0271][0272]7.4语义[0273]7.4.1概述[0274]与语法结构以及与这些结构中的语法元素相关联的语义在本节中规定。当使用表格或一组表格规定语法元素的语义时,除非本规范中另有规定,否则表格中未规定的任何值不应当出现在比特流中。[0275]7.4.2nal单元语义[0276]7.4.2.1通用nal单元语义[0277]numbytesinnalunit以字节为单位规定nal单元的尺寸。nal单元的解码需要此值。nal单元边界的某种形式的划界有必要实现对numbytesinnalunit的推断。字节流格式的一种这样的划界方法。可以在本规范之外规定其他划界方法。[0278]注1–视频编解码层(vcl)被规定为有效地表示视频数据的内容。nal被规定为格式化该数据并以适合在各种通信信道或存储介质上传递的方式提供标头信息。所有数据都包含在nal单元中,每个nal单元包含整数个字节。nal单元规定一种通用格式,用于面向数据包和比特流系统。面向数据包的传输和字节流的nal单元的格式是相同的,只是每个nal单元前面可以在字节流格式中以起始代码前缀和额外填充字节开头。[0279]rbsp_byte[i]是rbsp的第i个字节。rbsp被规定为有序的字节序列,如下所示:[0280]rbsp包含一串数据位(sodb),如下所示:[0281]–如果sodb为空(即长度为零位),则rbsp也为空。[0282]–否则,rbsp包含sodb,如下所示:[0283]1)rbsp的第一个字节包含sodb的第一个(最有效、最左边)八位;rbsp的下一个字节包含sodb的下个八位,以此类推,直到剩下的sodb少于八位为止。[0284]2)rbsp_trailing_bits()语法结构位于sodb之后,如下所示:[0285]i)最后的rbsp字节的第一(最有效、最左边)位包含sodb的其余位(如果有)。[0286]ii)下一位由等于1的单个位组成(即rbsp_stop_one_bit)。[0287]iii)当rbsp_stop_one_bit不是字节对齐字节的最后一位时,会出现一个或多个零值位(即rbsp_alignment_zero_bit的实例)以导致字节对齐。[0288]3)在某些rbsp中,在rbsp结尾处的rbsp_training_bits()之后,可能存在一个或多个等于0x0000的cabac_zero_word16位语法元素。[0289]语法表中使用“_rbsp”后缀表示具有这些rbsp属性的语法结构。这些结构作为rbsp_byte[i]数据字节的内容在nal单元中承载。rbsp语法结构与nal单位的关联如表5所规定。[0290]注2–当rbsp的边界已知时,解码器可以通过串联rbsp字节的位并丢弃rbsp_stop_one_bit(等于1的最后一个(最低有效,最右边)位)以及丢弃等于0的其后的任何跟随(较低有效,更靠右)位来从rbsp提取sodb。解码过程所需的数据被包含在rbsp的sodb部分中。[0291]emulation_prevention_three_byte是等于0x03的字节。当nal单元中存在emulation_prevention_three_byte时,其应当被解码过程丢弃。[0292]nal单元的最后一个字节不应等于0x00。[0293]在nal单元内,以下三字节序列不应当出现在任何字节对齐位置:[0294]–0x000000[0295]–0x000001[0296]–0x000002[0297]在nal单元内,除以下序列外,以0x000003开头的任何四字节序列不应当出现在任何字节对齐位置:[0298]–0x00000300[0299]–0x00000301[0300]–0x00000302[0301]–0x00000303[0302]7.4.2.2nal单元标头语义[0303]forbidden_zero_bit应等于0。[0304]nuh_reserved_zero_bit应等于0。nuh_reserved_zero_bit的值1可能在将来由itu-t|iso/iec规定。解码器应忽略(即从比特流中删除并丢弃)nuh_reserved_zero_bit等于1的nal单元。[0305]nuh_layer_id规定vclnal单元所属层的标识符或非vclnal单元所应用层的标识符。nuh_layer_id的值应在0到55(含)的范围内。nuh_layer_id的其他值被保留以供itu-t|iso/iec将来使用。[0306]对于编解码图片的所有vclnal单元,nuh_layer_id的值应当相同。编解码图片或pu的nuh_layer_id的值是编解码图片或pu的vclnal单元的nuh_layer_id的值。[0307]aud、ph、eos和fdnal单元的nuh_layer_id值受以下约束:[0308]–如果nal_unit_type等于aud_nut,nuh_layer_id应等于vps_layer_id[0]。[0309]–否则,当nal_unit_type等于ph_nut、eos_nut或fd_nut时,nuh_layer_id应等于相关联vclnal单元的nuh_layer_id。[0310]注1–dci、vps和eobnal单元的nuh_layer_id值不受限制。[0311]对于cvssau的所有图片,nal_unit_type的值应相同。[0312]nal_unit_type规定nal单元类型,即表5中规定的nal单元中包含的rbsp数据结构的类型。[0313]nal_unit_type在unspec_28…unspec_31(含)范围内的nal单元(未规定语义)不应影响本规范中规定的解码过程。[0314]注2–unspec_28…unspec_31(含)范围内的nal单元类型可以如通过应用确定来使用。本规范中未规定nal_unit_type的这些值的解码过程。由于不同的应用可能出于不同的目的使用这些nal单元类型,因此在设计使用这些nal_unit_type值生成nal单元的编码器时,以及在设计使用这些nal_unit_type值解释nal单元内容的解码器时,必须特别小心。本规范未定义对这些值的任何管理。这些nal_unit_type值可能仅适用于以下上下文中:使用“冲突”(即,相同nal_unit_type值的nal单元内容含义的不同定义)不重要、不可能或在控制应用或传输规范中受管理(例如定义或管理),或者通过控制比特流分布的环境。[0315]出于除以下目的外的目的:确定比特流解码器的du中的数据量应忽略(从比特流中删除并丢弃)使用nal_unit_type保留值的所有nal单元的内容。[0316]注3–此要求允许将来定义本规范的可兼容扩展。[0317]表5–nal单元类型代码和nal单元类型类别[0318][0319][0320]注4–清洁随机存取(cra)图片可能具有比特流中存在的相关联的rasl或radl图片。[0321]注5–具有等于idr_n_lp的nal_unit_type的瞬时解码刷新(idr)图片在比特流中没有相关联的前导图片。nal_unit_type等于idr_w_radl的idr图片没有在比特流中存在的相关联的rasl图片,但在比特流中可能有相关联的radl图片。[0322]对于任何特定图片的vclnal单元,以下内容适用:[0323]–如果mixed_nalu_types_in_pic_flag等于0,则对于图片的所有编解码条带nal单元,nal_unit_type的值应相同。图片或pu被称为具有与图片或pu的编解码条带nal单元相同的nal单元类型。[0324]–否则(mixed_nalu_types_in_pic_flag等于1),图片中一个或多个子图片的vclnal单元都有一个nal_unit_type的特定值,该值等于stsa_nut、radl_nut、rasl_nut、idr_w_radl、idr_n_lp或cra_nut,而图片中的其他vclnal单元都有一个不同的nal_unit_type的特定值,该值等于trail_nut、radl_nut或rasl_nut。[0325]对于单层比特流,以下约束适用:[0326]–除了按解码顺序的比特流中的第一张图片之外,每个图片都被认为与按解码顺序的前一张irap图片相关联。[0327]–当图片是irap图片的前导图片时,其应为radl图片或rasl图片。[0328]–当图片是irap图片的后续图片时,其不应是radl图片或rasl图片。[0329]–与idr图片相关联的比特流中不应当存在rasl图片。[0330]–与nal_unit_type等于idr_n_lp的idr图片相关联的比特流中不应当存在radl图片。[0331]注6:如果每个参数集在被引用时可用(在比特流中或通过本规范中未规定的外部方式),则可以通过丢弃irappu之前的所有pu在irappu位置执行随机访问(并以解码顺序正确解码irap图片和所有后续非rasl图片)。[0332]–解码顺序中位于irap图片之前的任何图片应当在输出顺序中位于irap图片之前,并且应当在输出顺序中位于与irap图片相关联的任何radl图片之前。[0333]–与cra图片相关联的任何rasl图片应当在输出顺序中位于与cra图片相关联的任何radl图片之前。[0334]–任何与cra图片相关联的rasl图片应当在输出顺序中紧跟在解码顺序中位于cra图片之前的任何irap图片之后。[0335]–如果field_seq_flag等于0,并且当前图片是与irap图片相关联的前导图片,则其应当在解码顺序中位于与同一irap图片相关联的所有非前导图片之前。否则,令pica和picb分别是与irap图片相关联的解码顺序中的第一个和最后一个前导图片,在解码顺序中pica之前最多应有一个非前导图片,并且在解码顺序中pica和picb之间不应有非前导图片。[0336]num_temporal_id_plus1减1规定nal单元的时域标识符。[0337]nuh_temporal_id_plus1的值不应等于0。[0338]按照如下方式推导变量temporalid:[0339]temporalid=nuh_temporal_id_plus1-1ꢀꢀꢀꢀ(36)[0340]当nal_unit_type在idr_w_radl到rsv_irap_12(含)的范围内时,temporalid应等于0。[0341]当nal_unit_type等于stsa_nut且vps_independent_layer_flag[generallayeridx[nuh_layer_id]]等于1时,temporalid不应等于0。[0342]对于au的所有vclnal单元,temporalid的值应相同。编解码图片pu或au的temporalid值是编解码图片pu或au的vclnal单元的temporalid值。子层表示的temporalid值是子层表示中所有vclnal单元的temporalid的最大值。[0343]非vclnal单元的temporalid值受以下约束:[0344]–如果nal_unit_type等于dci_nut、vps_nut或sps_nut,则temporalid应等于0,且包含nal单元的au的temporalid应等于0。[0345]-否则,如果nal_unit_type等于ph_nut,则temporalid应等于包含nal单元的pu的temporalid。[0346]–否则,如果nal_unit_type等于eos_nut或eob_nut,则temporalid应等于0。[0347]–否则,如果nal_unit_type等于aud_nut、fd_nut、prefix_sei_nut或suffix_sei_nut,则temporalid应等于包含nal单元的au的temporalid。[0348]–否则,当nal_unit_type等于pps_nut、prefix_aps_nut或suffix_aps_nut时,temporalid应大于或等于包含nal单元的pu的temporalid。[0349]注7-当nal单元为非vclnal单元时,temporalid的值等于非vclnal单元适用的所有au的temporalid值的最小值。当nal_unit_type等于pps_nut、prefix_aps_nut或suffix_aps_nut时,temporalid可以大于或等于包含au的temporalid,这是由于所有pps和aps都可以被包括在比特流的开头(例如,当它们被传送出带,并且接收器将它们放置在比特流的开头),其中第一个编解码图片的temporalid等于0。[0350]7.4.2.3在rbsp内封装sodb(信息性)[0351]本条款不形成本规范的组成部分。[0352]出于以下目的,描述了rbsp内sodb的封装形式以及在nal单元内使用rbsp的封装的emulation_prevention_three_byte:[0353]–防止在nal单元内模拟启动代码,同时允许在nal单元内表示任意sodb,[0354]–通过在rbsp中搜索从rbsp结尾开始的rbsp_stop_one_bit,使得能够识别nal单元内的sodb结尾,[0355]–在某些情况下(使用一个或多个cabac_zero_word语法元素),使得能够nal单元的尺寸大于sodb的尺寸。[0356]编码器可以通过以下程序从rbsp产生nal单元:[0357]1.在rbsp数据中搜索以下二进制模式的字节对齐位:[0358]‘0000000000000000000000xx’(其中’xx’表示任何两位模式:“00”、“01”、“10”或“11”),[0359]并插入等于0x03的字节,以将位模式替换为模式:[0360]'000000000000000000000011000000xx',[0361]并且最后,当rbsp数据的最后一个字节等于0x00时(仅当rbsp以cabac_zero_word结尾时才会出现),将等于0x03的最后一个字节附加到数据的结尾。在rbsp数据中搜索具有上面规定的二进制模式的字节对齐位的下一次出现时,将考虑rbsp中字节对齐的三字节序列0x000000的最后一个零字节(其被替换为四字节序列0x00000300)。[0362]2.生成的字节序列然后以nal单元标头为前缀,其中nal_unit_type指示nal单元中rbsp数据结构的类型。[0363]上面规定的过程导致整个nal单元的构造。[0364]此过程可以允许在nal单元中表示任何sodb,同时确保以下两项:[0365]–nal单元内未模拟字节对齐的起始代码前缀。[0366]–在nal单元内,无论字节对齐方式如何,都不会模拟8个零值位后跟起始代码前缀的序列。[0367]7.4.2.4比特流中nal单元的顺序[0368]7.4.2.4.1概述[0369]条款7.4.2.4的子条款规定了对比特流中nal单元顺序的限制。[0370]比特流中服从这些约束的nal单元的任何顺序在本文中被称为nal单元的解码顺序。[0371]在nal单元内,条款7.3和d.2条中的语法规定了语法元素的解码顺序。当本规范中规定的nal单元中包括了itu-th.sei|iso/iec23002-7中规定的vui参数或任何sei消息时,itu-th.sei|iso/iec23002-7中规定的vui参数或sei消息的语法规定了那些语法元素的解码顺序。解码器应能够按照解码顺序接收nal单元及其语法元素。[0372]7.4.2.4.2au的顺序及其与cvs的关联[0373]比特流由一个或多个cvs组成。[0374]cvs由一个或多个au组成。条款7.4.2.4.3中描述了pu的顺序及其与au的关联。[0375]cvs的第一个au是cvssau,其中,每个当前pu是clvsspu,其是nooutputbeforerecoveryflag等于1的irappu或nooutputbeforerecoveryflag等于1的gdrpu。[0376]对于cvs中存在的每一层,每个cvssau应具有pu。[0377]比特流一致性要求,当存在时,包含eosnal单元的au之后的下一个au应为cvssau。[0378]7.4.2.4.3pu的顺序及其与au的关联[0379]au由一个或多个pu按nuh_layer_id的递增顺序组成。条款7.4.2.4.4中描述了nal单元和编解码图片的顺序及其与pu的关联。[0380]au中最多可以有一个audnal单元。当audnal单元存在于au中时,它应为au的第一个nal单元,并且因此,它是au的第一个pu的第一个nal单元。[0381]au中最多可以有一个eobnal单元。当eobnal单元存在于au中时,它应为au的最后一个nal单元,并且因此,它是au的最后一个pu的最后一个nal单元。[0382]当vclnal单元是phnal单元之后的第一个vclnal单元且以下一个或多个条件成立时,vclnal单元是au的第一个vclnal单元(并且因此,包含vclnal单元的pu是au的第一个pu):[0383]-vclnal单元的nuh_layer_id的值小于解码顺序中前一张图片的nuh_layer_id。[0384]–vclnal单元的ph_pic_order_cnt_lsb的值在解码顺序上不同于前一张图片的ph_pic_order_cnt_lsb。[0385]–为vclnal单元推导的picordercntval在解码顺序上不同于前一张图片的picordercntval。[0386]设firstvclnalunitinau为au的第一个vclnal单元。在firstvclnalunitinau之前以及在firstvclnalunitinau之前的最后一个vclnal单元(如果有)之后的以下任何nal单元中的第一个规定了新au的开始:[0387]–audnal单元(如果存在),[0388]–dcinal单元(如果存在),[0389]–vpsnal单元(如果存在),[0390]–spsnal单元(如果存在),[0391]–ppsnal单元(如果存在),[0392]–前缀apsnal单元(如果存在),[0393]–phnal单元(如果存在),[0394]–前缀seinal单元(如果存在),[0395]–nal_unit_type等于rsv_nvcl_26的nal单元(如果存在),[0396]–nal_unit_type在unspec28..unspec29范围内的nal单元(如有)。[0397]注:在firstvclnalunitinau之前和在firstvclnalunitinau之前的最后一个vclnal单元之后的第一个nal单元(如有)只能是上面列出的nal单元之一。[0398]比特流一致性的一个要求是,当存在时,在属于同一层且包含eosnal单元的pu之后的特定层的下一个pu应为clvsspu,其是nooutputbeforerecoveryflag等于1的irappu或nooutputbeforerecoveryflag等于1的gdrpu。[0399]7.4.2.4.4nal单元和编解码图片的顺序及其与pu的关联[0400]pu由零个或一个phnal单元、一个编解码图片(包括一个或多个vclnal单元)以及零个或多个其他非vclnal单元组成。vclnal单元与编解码图片的关联在条款7.4.2.4.5中描述。[0401]当图片由多于一个vclnal单元组成时,pu中应存在phnal单元。[0402]如果pu中存在phnal单元,则图片的第一vclnal单元是按照图片的解码顺序跟随phnal单元的第一vclnal单元。否则(pu中不存在phnal单元),图片的第一个vclnal单元是图片的唯一vclnal单元。[0403]pu内非vclnal单元(aud和eobnal单元除外)的顺序应遵守以下约束:[0404]–当pu中存在phnal单元时,它应位于pu的第一个vclnal单元之前。[0405]–当任何dcinal单元、vpsnal单元、spsnal单元、ppsnal单元、前缀apsnal单元、前缀seinal单元、nal_unit_type等于rsv_nvcl_26的nal单元、或nal_unit_type在unspec_28..unspec_29范围内的nal单元存在于pu中时,它们不应跟随pu的最后一个vclnal单元。[0406]–当任何dcinal单元、vpsnal单元、spsnal单元或ppsnal单元存在于pu中时,它们应位于pu的phnal单元(如果存在)之前,并应位于pu的第一个vclnal单元之前。[0407]–nal_unit_type等于suffix_aps_nut、suffix_sei_nut、fd_nut或rsv_nvcl_27、或在unspec_30..unspec_31范围内的pu中的nal单元不应位于pu的第一个vclnal单元之前。[0408]–当eosnal单元存在于pu中时,它应是除eobnal单元(存在时)以外的所有nal单元中的最后一个nal单元。[0409]7.4.2.4.5vclnal单元的顺序及其与编解码图片的关联[0410]编解码图片内vclnal单元的顺序受以下约束:[0411]–对于编解码图片的任何两个编解码条带nal单元a和b,设subpicidxa和subpicidxb为其子图片级索引值,并且sliceaddra和sliceddrb为其slice_address值。[0412]–当以下任一条件为真时,编解码条带nal单元a应位于编解码条带nal单元b之前:[0413]–subpicidxa小于subpicidxb。[0414]–subpicidxa等于subpicidxb,并且sliceaddra小于sliceaddrb。[0415]7.4.3.原始字节序列有效载荷、尾随位和字节对齐语义[0416]7.4.3.1解码能力信息rbsp语义[0417]dcirbsp可以通过存在于比特流中、包括在比特流的至少第一au中或通过外部手段提供而对解码器可用。[0418]注1–dcirbsp中包含的信息对于解码过程的操作不是必需的。[0419]当存在时,比特流中的所有dcinal单元应具有相同的内容。[0420]dci_max_sublayers_minus1加1规定可能存在于比特流的每个cvs中的层中的时域子层的最大数目。dci_max_sublayers_minus1的值应在0到6之间,包括0和6。[0421]dci_reserved_zero_bit在符合本规范本版本的比特流中应等于0。dci_reserved_zero_bit的值1被保留以供itu-t|iso/iec将来使用。[0422]dci_num_ptls_minus1加1规定dcinal单元中profile_tier_level()语法结构的数目。[0423]比特流一致性的要求是,比特流中的cvs中的每个ols应符合dcinal单元中的至少一个profile_tier_level()语法结构。[0424]注2:dcinal单元可以包括ptl信息,可能以多个profile_tier_level()语法结构承载,这些信息共同适用于多个ols,并且不需要单独包括每个ols的ptl信息。[0425]等于0的dci_extension_flag规定dcirbsp语法结构中不存在dci_extension_data_flag语法元素。dci_extension_flag等于1规定dcirbsp语法结构中存在dci_extension_data_flag语法元素。[0426]dci_extension_data_flag可以有任何值。它的存在和值不会影响解码器与简档的一致性。符合本规范本版本的解码器应忽略所有dci_extension_data_flag语法元素。[0427]7.4.3.2视频参数设置rbsp语义[0428]vpsrbsp在被引用、被包括在至少一个temporalid等于0的au中或通过外部方式提供之前应可用于解码过程。[0429]cvs中具有vps_video_parameter_set_id特定值的所有vpsnal单元应具有相同的内容。[0430]vps_video_parameter_set_id为vps提供标识符以供其他语法元素引用。vps_video_parameter_set_id的值应大于0。[0431]vps_max_layers_minus1加1规定引用vps的每个cvs中的最大允许层数。[0432]vps_max_sublayers_minus1加1规定在引用vps的每个cvs中的层中可能存在的时域子层的最大数目。vps_max_sublayers_minus1的值应在0到6之间(包括0和6)。[0433]vps_all_layers_same_num_sublayers_flag等于1规定每个cvs中引用vps的所有层的时域子层数目相同。vps_all_layers_same_num_sublayers_flag等于0规定每个cvs中引用vps的层可能具有或可能不具有相同数目的时域子层。当不存在时,则vps_all_layers_same_num_sublayers_flag的值被推断为等于1。[0434]vps_all_independent_layers_flag等于1规定在不使用层间预测的情况下对cvs中的所有层进行独立编解码。vps_all_independent_layers_flag等于0规定cvs中的一个或多个层可以使用层间预测。当不存在时,vps_all_independent_layers_flag的值被推断为等于1。[0435]vps_layer_id[i]规定第i层的nuh_layer_id值。对于m和n的任意两个非负整数值,当m小于n时,vps_layer_id[m]的值应小于vps_layer_id[n]。[0436]vps_independent_layer_flag[i]等于1规定索引为i的层不使用层间预测。vps_independent_layer_flag[i]等于0规定索引为i的层可以使用层间预测,并且语法元素vps_direct_ref_layer_flag[i][j](j在0到i-1(含)的范围内)存在于vps中。当不存在时,vps_independent_layer_flag[i]的值被推断为等于1。[0437]vps_direct_ref_layer_flag[i][j]等于0规定索引为j的层不是索引为i的层的直接引用层。vps_direct_ref_layer_flag[i][j]等于1规定索引为j的层是索引为i的层的直接引用层。当vps_direct_ref_layer_flag[i][j](i和j在0到vps_max_layers_minus1(含)的范围内)不存在时,其被推断为等于0。当vps_independent_layer_flag[i]等于0时,在0到i-1(含)的范围内至少应有一个j值,使得vps_direct_ref_layer_flag[i][j]的值等于1。[0438]变量numdirectreflayers[i]、directreflayeridx[i][d]、numreflayers[i]、reflayeridx[i][r]和layerusedasreflayerflag[j]的推导如下:[0439][0440][0441]按照如下方式推导规定nuh_layer_id等于vps_layer_id[i]的层的层索引的变量generallayeridx[i]:[0442]for(i=0;i《=vps_max_layers_minus1;i++)ꢀꢀꢀꢀꢀꢀ(38)[0443]generallayeridx[vps_layer_id[i]]=i[0444]对于在0到vps_max_layers_minus1(含)范围内的任意两个不同的i和j值,当dependencyflag[i][j]等于1时,比特流一致性要求适用于第i层的chroma_format_idc和bit_depth_minus8的值应分别等于适用于第j层的chroma_format_idc和bit_depth_minus8的值。[0445]max_tid_ref_present_flag[i]等于1规定语法元素max_tid_il_ref_pics_plus1[i]存在。max_tid_ref_present_flag[i]等于0规定语法元素max_tid_il_ref_pics_plus1[i]不存在。[0446]max_tid_il_ref_pics_plus1[i]等于0规定第i层的非irap图片不使用层间预测。max_tid_il_ref_pics_plus1[i]大于0规定,对于解码第i层的图片,没有temporalid大于max_tid_il_ref_pics_plus1[i]-1的图片用作ilrp。当不存在时,max_tid_il_ref_pics_plus1[i]的值被推断为等于7。[0447]each_layer_is_an_ols_flag等于1规定每个ols仅包含一个层,并且引用vps的cvs中的每个层本身是ols,其中单个包括层是唯一的输出层。each_layer_is_an_ols_flag等于0表示ols可能包含多个层。如果vps_max_layers_minus1等于0,则each_layer_is_an_ols_flag的值被推断为等于1。否则,当vps_all_independent_layers_flag等于0时,each_layer_is_an_ols_flag的值被推断为等于0。[0448]ols_mode_idc等于0规定vps规定的ols总数等于vps_max_layers_minus1+1,第i个ols包括层索引为0到i(含)的层,并且对于每个ols,仅输出ols中的最高层。[0449]ols_mode_idc等于1规定vps规定的ols总数等于vps_max_layers_minus1+1,第i个ols包括层索引为0到i(含)的层,并且对于每个ols,输出ols中的所有层。[0450]ols_mode_idc等于2规定vps规定的ols总数被显式地信令通知,并且对于每个ols,输出层被显式地信令通知,并且其他层是ols的输出层的直接或间接引用层。[0451]ols_mode_idc的值应在0到2(含)的范围内。ols_mode_idc的值3被保留以供itu-t|iso/iec将来使用。[0452]当vps_all_independent_layers_flag等于1且each_layer_is_an_ols_flag等于0时,ols_mode_idc的值被推断为等于2。[0453]num_output_layer_sets_minus1加1规定当ols_mode_idc等于2时vps规定的ols的总数。[0454]按照如下方式推导规定vps规定的ols总数的变量totalnumolss:[0455]if(vps_max_layers_minus1==0)[0456]totalnumolss=1[0457]elseif(each_layer_is_an_ols_flag||ols_mode_idc==0||ols_mode_idc[0458]==1)[0459]totalnumolss=vps_max_layers_minus1+1ꢀꢀꢀꢀꢀ(39)[0460]elseif(ols_mode_idc==2)[0461]totalnumolss=num_output_layer_sets_minus1+1[0462]ols_output_layer_flag[i][j]等于1规定,当ols_mode_idc等于2时,nuh_layer_id等于vps_layer_id[j]的层是第i个ols的输出层。ols_output_layer_flag[i][j]等于0规定,当ols_mode_idc等于2时,nuh_layer_id等于vps_layer_id[j]的层不是第i个ols的输出层。[0463]按照如下方式推导规定第i个ols中的输出层数目的变量numoutputlayersinols[i]、规定第i个ols中第j个层中的子层数目的变量numsublayersinlayerinols[i][j]、规定第i个ols中第j个输出层的nuh_layer_id值的变量outputlayeridinols[i][j]、以及规定第k层是否在至少一个ols中用作输出层的变量layerusedasoutputlayerflag[k]:[0464][0465][0466]对于0到vps_max_layers_minus1(含)范围内的每个i值,layerusedasreflayerflag[i]和layerusedasoutputlayerflag[i]的值不应同时等于0。换句话说,不应存在既不是至少一个ols的输出层也不是任何其他层的直接引用层的层。[0467]对于每个ols,至少应有一个作为输出层的层。换句话说,对于0到totalnumolss-1(含)范围内的任何i值,numoutputlayersinols[i]的值应大于或等于1。[0468]按照如下方式推导规定第i个ols中的层数的变量numlayersinols[i]以及规定第i个ols中第j个层的nuh_layer_id值的变量layeridinols[i][j]:[0469][0470][0471]注1–第0个ols仅包含最低层(即nuh_layer_id等于vps_layer_id[0]的层),并且对于第0个ols,仅输出包含的层。[0472]按照如下方式推导规定nuh_layer_id等于layeridinols[i][j]的层的ols层索引的变量olslayeridx[i][j]:[0473]for(i=0;i《totalnumolss;i++)[0474]forj=0;j《numlayersinols[i];j++)ꢀꢀꢀꢀꢀꢀꢀꢀꢀ(42)[0475]olslayeridx[i][layeridinols[i][j]]=j[0476]每个ols中的最低层应为独立层。换句话说,对于0到totalnumolss-1(含)范围内的每个i,vps_independent_layer_flag[generallayeridx[layeridinols[i][0]]的值应等于1。[0477]每个层应被包括在vps规定的至少一个ols中。换句话说,对于nuh_layer_id的特定值nuhlayerid等于vps_layer_id[k](对于0到vps_max_layers_minus1(含)范围内的k)中的一个的每个层,应当有至少有一对i和j的值,其中i在0到totalnumolss-1(含)的范围内,并且j在numlayersinols[i]-1(含)范围内,使得layeridinols[i][j]的值等于nuhlayerid。[0478]vps_num_ptls_minus1加1规定了vps中profile_tier_level()语法结构的数目。vps_num_ptls_minus1的值应当小于totalnumolss。[0479]pt_present_flag[i]等于1规定了vps中的第i个profile_tier_level()语法结构中存在简档、层级和常规约束信息。pt_present_flag[i]等于0规定vps中的第i个profile_tier_level()语法结构中不存在简档、层级和常规约束信息。pt_present_flag[0]的值被推断为等于1。当pt_present_flag[i]等于0时,vps中第i个profile_tier_level()语法结构的简档、层级和常规约束信息被推断为与vps中的第(i-1)个profile_tier_level()语法结构相同。[0480]ptl_max_temporal_id[i]规定了vps中第i个profile_tier_level()语法结构中存在级别信息的最高子层表示的temporalid。ptl_max_temporal_id[i]的值应在0到vps_max_sublayers_minus1(含)的范围内。当vps_max_sublayers_minus1等于0时,ptl_max_temporal_id[i]的值被推断为等于0。当vps_max_sublayers_minus1大于0且vps_all_layers_same_num_sublayers_flag等于1时,ptl_max_temporal_id[i]的值被推断为等于vps_max_sublayers_minus1。[0481]vps_ptl_alignment_zero_bit应等于0。[0482]ols_ptl_idx[i]规定vps中profile_tier_level()语法结构列表中适用于第i个ols的profile_tier_level()语法结构的索引。当存在时,ols_ptl_idx[i]的值应在0到vps_num_ptls_minus1(含)的范围内。当vps_num_ptls_minus1等于0时,ols_ptl_idx[i]的值被推断为等于0。[0483]当numlayersinols[i]等于1时,适用于第i个ols的profile_tier_level()语法结构也存在于第i个ols中的层所引用的sps中。比特流一致性的一个要求是,当numlayersinols[i]等于1时,vps和sps中为第i个ols信令通知的profile_tier_level()语法结构应相同。[0484]vps_num_dpb_params规定vps中dpb_parameters()语法结构的数目。vps_num_dpb_params的值应在0到16(含)之间。当不存在时,vps_num_dpb_params的值被推断为等于0。[0485]vps_sublayer_dpb_params_present_flag用于控制vps中dpb_parameters()语法结构中max_dec_pic_buffering_minus1[]、max_num_reorder_pics[]和max_latency_increase_plus1[]语法元素的存在。当不存在时,vps_sub_dpb_params_info_present_flag被推断为等于0。[0486]dpb_max_temporal_id[i]规定最高子层表示的temporalid,对于该表示,dpb参数可能存在于vps中的第i个dpb_parameters()语法结构中。dpb_max_temporal_id[i]的值应在0到vps_max_sublayers_minus1(含)的范围内。当vps_max_sublayers_minus1等于0时,dpb_max_temporal_id[i]的值被推断为等于0。当vps_max_sublayers_minus1大于0且vps_all_layers_same_num_sublayers_flag等于1时,dpb_max_temporal_id[i]的值被推断为等于vps_max_sublayers_minus1。[0487]ols_dpb_pic_width[i]规定第i个ols的每个图片存储缓冲区的宽度,以亮度样点为单位。[0488]ols_dpb_pic_height[i]规定第i个ols的每个图片存储缓冲区的高度,以亮度样点为单位。[0489]ols_dpb_params_idx[i]规定vps中dpb_parameters()语法结构列表中,当numlayersinols[i]大于1时适用于第i个ols的dpb_parameters()语法结构的索引。当存在时,ols_dpb_params_idx[i]的值应在0到vps_num_dpb_params-1(含)的范围内。当ols_dpb_params_idx[i]不存在时,ols_dpb_params_idx[i]的值被推断为等于0。[0490]当numlayersinols[i]等于1时,适用于第i个ols的dpb_parameters()语法结构存在于第i个ols中的层所引用的sps中。[0491]vps_general_hrd_params_present_flag等于1规定语法结构general_hrd_parameters()和其他hrd参数存在于vpsrbsp语法结构中。等于0的vps_general_hrd_params_present_flag规定语法结构general_hrd_parameters()和其他hrd参数不存在于vpsrbsp语法结构中。当不存在时,vps_general_hrd_params_present_flag的值被推断为等于0。[0492]当numlayersinols[i]等于1时,适用于第i个ols的general_hrd_parameters()语法结构出现在第i个ols中的层所引用的sps中。[0493]vps_sublayer_cpb_params_present_flag等于1规定vps中的第i个ols_hrd_parameters()语法结构包含子层表示的hrd参数,其中temporalid在0到hrd_max_tid[i](含)之间。vps_sublayer_cpb_params_present_flag等于0规定vps中的第i个ols_hrd_parameters()语法结构包含子层表示的hrd参数,其中temporalid仅等于hrd_max_tid[i]。当vps_max_sublayers_minus1等于0时,vps_sublayer_cpb_params_present_flag的值被推断为等于0。[0494]当vps_sublayer_cpb_params_present_flag等于0时,temporalid在0到hrd_max_tid[i]-1(含)范围内的子层表示的hrd参数被推断为与temporalid等于hrd_max_tid[i]的子层表示的hrd参数相同。这些包括从fixed_pic_rate_general_flag[i]语法元素开始直到ols_hrd_parameters语法结构中“if(general_vcl_hrd_params_present_flag)”条件下的sublayer_hrd_parameters(i)语法结构的hrd参数。[0495]num_ols_hrd_params_minus1加1规定当vps_general_hrd_params_present_flag等于1时,在general_hrd_parameters()语法结构中存在的ols_hrd_parameters()语法结构的数目。num_ols_hrd_params_minus1的值应在0到totalnumolss-1(含)的范围内。[0496]hrd_max_tid[i]规定最高子层表示的temporalid,对于该表示hrd参数被包含在第i个ols_hrd_parameters()语法结构中。hrd_max_tid[i]的值应在0到vps_max_sublayers_minus1(含)的范围内。当vps_max_sublayers_minus1等于0时,hrd_max_tid[i]的值被推断为等于0。当vps_max_sublayers_minus1大于0且vps_all_layers_same_num_sublayers_flag等于1时,hrd_max_tid[i]的值被推断为等于vps_max_sublayers_minus1。[0497]ols_hrd_idx[i]规定当numlayersinols[i]大于1时vps中ols_hrd_parameters()语法结构列表中适用于第i个ols的ols_hrd_parameters()语法结构的索引。ols_hrd_idx[[i]的值应在0到num_ols_hrd_params_minus1(含)的范围内。[0498]当numlayersinols[i]等于1时,适用于第i个ols的ols_hrd_parameters()语法结构出现在第i个ols中的层所引用的sps中。[0499]如果num_ols_hrd_param_minus1+1的值等于totalnumolss,则ols_hrd_idx[i]的值被推断为等于i。否则,当numlayersinols[i]大于1且num_ols_hrd_params_minus1等于0时,ols_hrd_idx[i]的值被推断为等于0。[0500]vps_extension_flag等于0规定没有vps_extension_data_flag语法元素存在于vpsrbsp语法结构中。vps_extension_flag等于1规定vpsrbsp语法结构中存在vps_extension_data_flag语法元素。[0501]vps_extension_data_flag可以有任何值。其存在和值不影响解码器与本规范本版本中规定的简档的一致性。符合本规范本版本的解码器应当忽略所有vps_extension_data_flag语法元素。[0502]7.4.3.3序列参数集rbsp语义[0503]spsrbsp应在被引用、被包括在至少一个au中(其中temporalid等于0)或通过外部方式提供之前可用于解码过程。[0504]cvs中具有sps_seq_parameter_set_id特定值的所有spsnal单元应具有相同的内容。[0505]sps_seq_parameter_set_id为sps提供标识符以供其他语法元素参考。[0506]无论nuh_layer_id值是多少,spsnal单元都共享sps_seq_parameter_set_id的相同值空间。[0507]设spslayerid为特定的spsnal单元的nuh_layer_id值,并且vcllayerid为特定vclnal单元的nuh_layer_id的值。特定的vclnal单元不应指代特定的spsnal单元,除非spslayerid小于或等于vcllayerid并且nuh_layer_id等于spslayerid的层被包括在至少一个ols中,该ols包括nuh_layer_id等于vcllayerid的层。[0508]sps_video_parameter_set_id当大于0时,规定sps引用的vps的vps_video_parameter_set_id的值。[0509]当sps_video_parameter_set_id等于0时,以下内容适用:[0510]–sps不指代vps。[0511]–当对引用sps的每个clvs进行解码时,没有vps被引用。[0512]–vps_max_layers_minus1的值被推断为等于0。[0513]–cvs应当仅包含一个层(即,cvs中的所有vclnal单元应具有相同的nuh_layer_id值)。[0514]–generallayeridx[nuh_layer_id]的值被推断为等于0。[0515]–vps_independent_layer_flag[generallayeridx[nuh_layer_id]]的值被推断为等于1。[0516]当vps_independent_layer_flag[generallayeridx[nuh_layer_id]]等于1时,具有特定nuh_layer_id值nuhlayerid的clvs引用的sps的nuh_layer_id应等于nuhlayerid。[0517]在cvs中由clvs引用的所有sps中,sps_video_parameter_set_id的值应当相同。[0518]sps_max_sublayers_minus1加1规定引用sps的每个clvs中可能存在的时域子层的最大数目。sps_max_sublayers_minus1的值应在0到vps_max_sublayers_minus1(含)的范围内。[0519]sps_reserved_zero_4bits在符合本规范本版本的比特流中应等于0。sps_reserved_zero_4bits的其他值被保留以供itu-t|iso/iec将来使用。[0520]sps_ptl_dpb_hrd_params_present_flag等于1规定sps中存在profile_tier_level()语法结构和dpb_parameters()语法结构,并且sps中也可能存在general_hrd_parameters()语法结构和ols_hrd_parameters()语法结构。sps_ptl_dpb_hrd_params_present_flag等于0规定sps中不存在这四个语法结构。sps_ptl_dpb_hrd_params_present_flag的值应等于vps_independent_layer_flag[generallayeridx[nuh_layer_id]]。[0521]gdr_enabled_flag等于1规定gdr图片可能存在于引用sps的clvs中。gdr_enabled_flag等于0规定gdr图片不存在于引用sps的clvs中。[0522]chroma_format_idc规定了条款6.2中规定的相对于亮度采样的色度采样。[0523]separate_colour_plane_flag等于1规定4:4:4色度格式的三个颜色分量被分别编解码。separate_colour_plane_flag等于0规定颜色分量不被单独编解码。当separate_colour_plane_flag不存在时,则其被推断为等于0。当separate_colour_plane_flag等于1时,编解码图片由三个单独的分量组成,每个分量由一个颜色平面(y、cb或cr)的编解码样点组成,并使用单色编解码语法。在这种情况下,每个颜色平面都与specific_color_plane_id值相关联。[0524]注1–具有不同color_plane_id值的颜色平面之间的解码过程没有依赖性。例如,具有一个color_plane_id值的单色图片的解码过程不使用来自具有不同color_plane_id值的单色图片的任何数据进行帧间预测。[0525]根据separate_colour_plane_flag的值,按照如下方式分配变量chromaarraytype的值:[0526]–如果separate_colour_plane_flag等于0,则chromaarraytype设置为等于chroma_format_idc。[0527]–否则(separate_colour_plane_flag等于1),chromaarraytype设置为等于0。[0528]res_change_in_clvs_allowed_flag等于1规定图片空域分辨率可能会在引用sps的clvs内发生变化。res_change_in_clvs_allowed_flag等于0规定图片空域分辨率在引用sps的任何clvs内不会改变。[0529]pic_width_max_in_luma_samples规定引用sps的每个解码图片的最大宽度,以亮度样点为单位。pic_width_max_in_luma_samples应当不等于0,且应为max(8,mincbsizey)的整数倍。[0530]比特流一致性的一个要求是,对于包含一个或多个引用sps层的ols索引i的任何ols,pic_width_max_in_luma_samples的值应小于或等于ols_dpb_pic_width[i]的值。[0531]pic_height_max_in_luma_samples规定引用sps的每个解码图片的最大高度,以亮度样点为单位。pic_height_max_in_luma_samples应当不等于0,且应为max(8,mincbsizey)的整数倍。[0532]比特流一致性的一个要求是,对于包含一个或多个引用sps的层的ols索引i的任何ols,pic_height_max_in_luma_samples的值应小于或等于ols_dpb_pic_height[i]的值。[0533]sps_conformance_window_flag等于1指示一致性裁剪窗口偏移参数在sps中紧跟其后。sps_conformance_window_flag等于0指示sps中不存在一致性裁剪窗口偏移参数。[0534]sps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset和sps_conf_win_bottom_offset指定应用于图片的裁剪窗口,其中pic_width_in_luma_samples等于pic_width_max_in_luma_samples且pic_height_in_luma_samples等于pic_height_max_in_luma_samples。当sps_conformance_window_flag等于0时,sps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset和sps_conf_win_bottom_offset的值被推断为等于0。[0535]一致性裁剪窗口包含亮度样点,其中水平图片坐标从subwidthc*sps_conf_win_left_offset到pic_width_max_in_luma_samples-(subwidthc*sps_conf_win_right_offset+1)且垂直图片坐标从subheightc*sps_conf_win_top_offset到pic_height_max_in_luma_samples-(subheightc*sps_conf_win_bottom_offset+1)(含)。[0536]subwidthc*(sps_conf_win_left_offset+sps_conf_win_right_offset)的值应小于pic_width_max_in_luma_samples,并且subheightc*(sps_conf_win_top_offset+sps_conf_win_bottom_offset)的值应小于pic_height_max_in_luma_samples。[0537]当chromaarraytype不等于0时,两个色度阵列的对应指定样点是具有图片坐标(x/subwidthc,y/subheightc)的样点,其中(x,y)是指定亮度样点的图片坐标。[0538]注2–一致性裁剪窗口偏移参数仅应用于输出。所有内部解码过程都应用于未裁剪的图片尺寸。[0539]sps_log2_ctu_size_minus5加5规定每个ctu的亮度编解码树块尺寸。sps_log2_ctu_size_minus5的值应在0到2(含)的范围内。sps_log2_ctu_size_minus5的值3被保留以供itu-t|iso/iec将来使用。[0540]变量ctblog2sizey和ctbsizey的推导如下:[0541]ctblog2sizey=sps_log2_ctu_size_minus5+5ꢀꢀꢀꢀꢀꢀꢀꢀ(43)[0542]ctbsizey=1《《ctblog2sizeyꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(44)[0543]subpic_info_present_flag等于1规定存在clvs的子图片信息,并且clvs的每个图片中可能有一个或多个子图片。subpic_info_present_flag等于0规定不存在clvs的子图片信息,并且clvs的每个图片中只有一个子图片。[0544]当res_change_in_clvs_allowed_flag等于1时,subpic_info_present_flag的值应等于0。[0545]注3–当比特流是子比特流提取过程的结果,并且仅包含子比特流提取过程的输入比特流的子图片的子集时,可能需要在sps的rbsp中将subpic_info_present_flag的值设置为等于1。[0546]sps_num_subpics_minus1加1规定clvs中每个图片中的子图片的数目。sps_num_subpics_minus1的值应在0到ceil(pic_width_max_in_luma_samples÷ctbsizey)*ceil(pic_height_max_in_luma_samples÷ctbsizey)–1(含)的范围内。当不存在时,则sps_num_subpics_minus1的值被推断为等于0。[0547]sps_independent_subpics_flag等于1规定没有帧内预测、帧间预测和环路滤波操作可以跨clvs中的任何子图片边界执行。sps_independent_subpics_flag等于0规定可以允许跨clvs中的子图片边界进行帧间预测或环路滤波操作。当不存在时,sps_independent_subpics_flag的值被推断为等于0。[0548]subpic_ctu_top_left_x[i]规定以ctb尺寸为单位的第i个子图片的左侧顶部ctu的水平位置。语法元素的长度是ceil(log2((pic_width_max_in_luma_samples+ctbsizey-1)》》ctblog2sizey))位。当不存在时,subpic_ctu_top_left_x[i]的值被推断为等于0。[0549]subpic_ctu_top_left_y[i]规定以ctb尺寸为单位的第i个子图片的左侧顶部ctu的垂直位置。语法元素的长度是ceil(log2((pic_height_max_in_luma_samples+ctbsizey-1)》》ctblog2sizey))位。当不存在时,subpic_ctu_top_left_y[i]的值被推断为等于0。[0550]subpic_width_minus1[i]加1规定第i个子图片的宽度,以ctbsizey为单位。语法元素的长度是ceil(log2((pic_width_max_in_luma_samples+ctbsizey-1)》》ctblog2sizey))位。当不存在时,subpic_width_minus1[i]的值被推断为等于((pic_width_max_in_luma_samples+ctbsizey-1)》》ctblog2sizey)-subpic_ctu_top_left_x[i]-1。[0551]subpic_height_minus1[i]加1规定第i个子图片的高度,以ctbsizey为单位。语法元素的长度是ceil(log2((pic_height_max_in_luma_samples+ctbsizey-1)》》ctblog2sizey))位。当不存在时,subpic_height_minus1[i]的值被推断为等于((pic_height_max_in_luma_samples+ctbsizey-1)》》ctblog2sizey)-subpic_ctu_top_left_y[i]-1。[0552]subpic_treated_as_pic_flag[i]等于1规定clvs中每个编解码图片的第i个子图片在解码过程中被视为图片,不包括环路滤波操作。subpic_treated_as_pic_flag[i]等于0规定clvs中每个编解码图片的第i个子图片在解码过程中不被视为图片,不包括环路滤波操作。当不存在时,subpic_treated_as_pic_flag[i]的值被推断为等于sps_independent_subpics_flag。[0553]当subpic_treated_as_pic_flag[i]等于1时,比特流一致性的要求是,在包括包含作为输出层的第i个子图片的层的ols中,每个输出层及其参考层的以下所有条件均为真:[0554]–输出层及其参考层中的所有图片应具有相同的pic_width_in_luma_samples值和相同的pic_height_in_luma_samples值。[0555]–输出层及其参考层引用的所有sps应具有相同的sps_num_subpics_minus1值,并且应分别具有相同的subpic_ctu_top_left_x[j]、subpic_ctu_top_left_y[j]、subpic_width_minus1[j]、subpic_height_minus1[j]和loop_filter_across_subpic_enabled_flag[j]值(对于0到sps_num_subpics_minus1(含)的范围内的每个j值)。[0556]–对于0到sps_num_subpics_minus1(含)的范围内的每个j值,输出层及其参考层中每个访问单元中的所有图片应具有相同的subpicidval[j]值。[0557]loop_filter_across_subpic_enabled_flag[i]等于1规定可以跨clvs中每个编解码图片中的第i个子图片的边界执行环路滤波操作。[0558]loop_filter_across_subpic_enabled_flag[i]等于0固定不跨clvs中每个编解码图片中的第i个子图片的边界执行环路滤波操作。当不存在时,loop_filter_across_subpic_enabled_pic_flag[i]的值被推断为等于1-sps_independent_subpics_flag。[0559]比特流一致性的一个要求是,子图片的形状应使得每个子图片在被解码时应有由图片边界或先前解码子图片的边界组成的其整个左边界和整个上边界。[0560]sps_subpic_id_len_minus1加1规定用于表示语法元素sps_subpic_id[i]、语法元素pps_subpic_id[i](如果存在)和语法元素slice_subpic_id(如果存在)的位数。sps_subpic_id_len_minus1的值应在0到15(含)之间。1《《(sps_subpic_id_len_minus1+1)的值应大于或等于sps_num_subpics_minus1+1。[0561]subpic_id_mapping_explicitly_signalled_flag等于1规定在sps或clvs的编解码图片引用的pps中显式信令通知子图片id映射。subpic_id_mapping_explicitly_signalled_flag等于0规定不为clvs显式信令通知子图片id映射。当不存在时,subpic_id_mapping_explicitly_signalled_flag的值被推断为等于0。[0562]subpic_id_mapping_in_sps_flag等于1规定当subpic_id_mapping_explicitly_signalled_flag等于1时,在sps中信令通知子图片id映射。subpic_id_mapping_in_sps_flag等于0规定当subpic_id_mapping_explicitly_signalled_flag等于1时,在clvs的编解码图片所引用的pps中信令通知子图片id映射。[0563]sps_subpic_id[i]规定第i个子图片的子图片id。sps_subpic_id[i]语法元素的长度为sps_subpic_id_len_minus1+1位。[0564]bit_depth_minus8规定亮度阵列和色度阵列的样点的位深度bitdepth,以及亮度和色度量化参数范围偏移量的值qpbdoffset,如下所示:[0565]bitdepth=8+bit_depth_minus8ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(45)[0566]qpbdoffset=6*bit_depth_minus8ꢀꢀꢀꢀꢀꢀꢀꢀꢀ(46)[0567]bit_depth_minus8应在0到8(含)的范围内。[0568]sps_entropy_coding_sync_enabled_flag等于1规定在解码ctu之前调用上下文变量的特定同步过程,该ctu包括引用sps的每个图片中每个片中的ctb行的第一个ctb,并且在解码ctu之后调用上下文变量的特定存储过程,该ctu包括引用sps的每个图片中的每个片中的ctb行的第一个ctb。[0569]sps_entropy_coding_sync_enabled_flag等于0规定在解码ctu之前不需要调用上下文变量的特定同步过程,该ctu包括引用sps的每个图片中的每个片中的ctb行的第一个ctb,并且在解码ctu之后不需要调用上下文变量的特定存储过程,该ctu包括引用sps的每个图片中的每个片中的ctb行的第一个ctb。[0570]sps_wpp_entry_point_offsets_present_flag等于1规定当sps_entropy_coding_sync_enabled_flag等于1时,ctu行的入口点偏移的信令可能会出现在引用sps的图片的条带标头中。sps_wpp_entry_point_offsets_present_flag等于0规定在引用sps的图片的条带标头中不存在ctu行的入口点偏移的信令。当不存在时,sps_wpp_entry_point_offsets_present_flag的值被推断为等于0。[0571]sps_weighted_pred_flag等于1规定加权预测可以被应用于引用sps的p条带。sps_weighted_pred_flag等于0规定加权预测不被应用于引用sps的p条带。[0572]sps_weighted_bipred_flag等于1规定显式加权预测可以被应用于引用sps的b条带。sps_weighted_bipred_flag等于0规定显式加权预测不被应用于引用sps的b条带。[0573]log2_max_pic_order_cnt_lsb_minus4规定解码过程中用于图片顺序计数的变量maxpicordercntlsb的值,如下所示:[0574]maxpicordercntlsb=2(log2_max_pic_order_cnt_lsb_minus4+4)ꢀꢀꢀꢀꢀꢀꢀ(47)[0575]log2_max_pic_order_cnt_lsb_minus4的值应在0到12(含)之间。[0576]sps_poc_msb_flag等于1规定ph_poc_msb_present_flag语法元素存在于引用sps的ph中。sps_poc_msb_flag等于0规定引用sps的ph中不存在ph_poc_msb_present_flag语法元素。[0577]poc_msb_len_minus1加1规定当出现在引用sps的ph中时poc_msb_val语法元素的长度(以位为单位)。poc_msb_len_minus1的值应在0到32-log2_max_pic_order_cnt_lsb_minus4-5(含)之间。[0578]num_extra_ph_bits_bytes规定引用sps的编解码图片的ph语法结构中额外位的字节数。在符合本规范本版本的比特流中,num_extra_ph_bits_bytes的值应等于0。尽管本规范本版本中要求num_extra_ph_bits_bytes的值等于0,但符合本规范本版本的解码器应允许语法中出现num_extra_ph_bits_bytes的值等于1或2。[0579]num_extra_sh_bits_bytes规定引用sps的编解码图片的条带标头中额外位的字节数。在符合本规范本版本的比特流中,num_extra_sh_bits_bytes的值应等于0。尽管本规范本版本中要求num_extra_sh_bits_bytes的值等于0,但符合本规范本版本的解码器应允许语法中出现num_extra_sh_bits_bytes的值等于1或2。[0580]sps_sublayer_dpb_params_flag用于控制sps中dpb_parameters()语法结构中的max_dec_pic_buffering_minus1[i]、max_num_reorder_pics[i]和max_latency_increase_plus1[i]语法元素的存在。当不存在时,sps_sub_dpb_params_info_present_flag的值被推断为等于0。[0581]long_term_ref_pics_flag等于0规定没有ltrp用于clvs中任何编解码图片的帧间预测。long_term_ref_pics_flag等于1规定ltrp可以用于clvs中的一个或多个编解码图片的帧间预测。[0582]inter_layer_ref_pics_present_flag等于0规定没有ilrp用于clvs中任何编解码图片的帧间预测。inter_layer_ref_pic_flag等于1规定ilrp可以用于clvs中一个或多个编解码图片的帧间预测。当sps_video_parameter_set_id等于0时,inter_layer_ref_pics_present_flag的值被推断为等于0。当vps_independent_layer_flag[generallayeridx[nuh_layer_id]]等于1时,inter_layer_ref_pics_present_flag的值应等于0。[0583]sps_idr_rpl_present_flag等于1规定参考图片列表语法元素存在于idr图片的条带标头中。sps_idr_rpl_present_flag等于0规定参考图片列表语法元素不存在于idr图片的条带标头中。[0584]rpl1_same_as_rpl0_flag等于1规定语法元素num_ref_pic_lists_in_sps[1]和语法结构ref_pic_list_struct(1,rplsidx)不存在,并且以下内容适用:[0585]–num_ref_pic_lists_in_sps[1]的值被推断为等于num_ref_pic_lists_in_sps[0]的值。[0586]–ref_pic_list_struct(1,rplsidx)中每个语法元素的值被推断为等于rplsidx的ref_pic_list_struct(0,rplsidx)中对应语法元素的值,范围从0到num_ref_pic_lists_in_sps[0]-1。[0587]num_ref_pic_lists_in_sps[i]规定包含在sps中的listidx等于i的ref_pic_list_struct(listidx,rplsidx)语法结构的数目。num_ref_pic_lists_in_sps[i]的值应在0到64(含)之间。[0588]注4–对于listidx的每个值(等于0或1),由于当前图片的条带标头中可能有直接信令通知的一个ref_pic_list_struct(listidx,rplsidx)语法结构,因此解码器应为num_ref_pic_lists_in_sps[i]+1ref_pic_list_struct(listidx,rplsidx)语法结构的总数分配内存。[0589]qtbtt_dual_tree_intra_flag等于1规定,对于i条带,每个ctu使用隐式四叉树划分被拆分为具有64×64个亮度样点的编解码单元,并且这些编解码单元是亮度和色度的两个单独编解码树语法结构的根。qtbtt_dual_tree_intra_flag等于0规定单独的编解码树语法结构不用于i条带。当qtbtt_dual_tree_intra_flag不存在时,其被推断为等于0。[0590]log2_min_luma_coding_block_size_minus2加2规定最小亮度编解码块尺寸。log2_min_luma_coding_block_size_minus2的值范围应在0到min(4,sps_log2_ctu_size_minus5+3)(含)的范围内。[0591]变量mincblog2sizey、mincbsizey、ibcbufwidthy、ibcbufwidthc和vsize的推导如下:[0592]mincblog2sizey=log2_min_luma_coding_block_size_minus2+2ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(48)[0593]mincbsizey=1《《mincblog2sizey[0594](49)[0595]ibcbufwidthy=256*128/ctbsizey[0596](50)[0597]ibcbufwidthc=ibcbufwidthy/subwidthcꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(51)[0598]vsize=min(64,ctbsizey)ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(52)[0599]mincbsizey的值应小于或等于vsize。[0600]按照如下方式推导分别规定每个色度ctb的阵列的宽度和高度的变量ctbwidthc和ctbheightc:[0601]–如果chroma_format_idc等于0(单色)或separate_colour_plane_flag等于1,则ctbwidthc和ctbheightc均等于0。[0602]–否则,按照如下方式推导ctbwidthc和ctbheightc:[0603]ctbwidthc=ctbsizey/subwidthcꢀꢀꢀꢀꢀꢀꢀ(53)[0604]ctbheightc=ctbsizey/subheightcꢀꢀꢀꢀꢀꢀꢀ(54)[0605]对于范围在0到4(含)之间的log2blockwidth和范围在0到4(含)之间的log2blockheight,使用1《《log2blockwidth和1《《log2blockheight作为输入调用条款6.5.2中规定的右上对角线扫描顺序阵列初始化过程,并将输出分配给diagscanorder[log2blockwidth][log2blockheight]。[0606]对于范围在0到6(含)之间的log2blockwidth和范围在0到6(含)之间的log2blockheight,使用1《《log2blockwidth和1《《log2blockheight作为输入调用条款6.5.3中规定的水平和垂直遍历扫描顺序阵列初始化过程,并将输出分配给hortravscanorder[log2blockwidth][log2blockheight]和vertravscanorder[log2blockwidth][log2blockheight]。[0607]partition_constraints_override_enabled_flag等于1规定在引用sps的ph中存在partition_constraints_override_flag。partition_constraints_override_enabled_flag等于0规定在引用sps的ph中不存在partition_constraints_override_flag。[0608]sps_log2_diff_min_qt_min_cb_intra_slice_luma规定由ctu的四叉树划分产生的亮度叶块的亮度样点中最小尺寸的基2对数与条带中亮度cu的亮度样点中最小编解码块尺寸的基2对数之间的默认差值,其中slice_type等于引用sps的2(i)。当partition_constraints_override_enabled_flag等于1时,默认差值可以由引用sps的ph中存在的ph_log2_diff_min_qt_min_cb_luma覆盖。sps_log2_diff_min_qt_min_cb_intra_slice_luma的值应在0到ctblog2sizey-mincblog2sizey(含)的范围内。按照如下方式推导由ctu的四叉树划分产生的亮度叶块的亮度样点中最小尺寸的基2对数:[0609]minqtlog2sizeintray=sps_log2_diff_min_qt_min_cb_intra_slice_luma+mincblog2sizey(55)[0610]sps_max_mtt_hierarchy_depth_intra_slice_luma规定编解码单元的默认最大层次深度,该编解码单元是由四叉树叶在slice_type等于引用sps的2(i)的条带中的四叉树划分产生的。当partition_constraints_override_enabled_flag等于1时,默认最大层次深度可以由引用sps的ph中的ph_max_mtt_hierarchy_depth_intra_slice_luma覆盖。sps_max_mtt_hierarchy_depth_intra_slice_luma的值应在0到2*(ctblog2sizey-mincblog2sizey)(含)的范围内。[0611]sps_log2_diff_max_bt_min_qt_intra_slice_luma规定可以使用二元划分的亮度编解码块的亮度样点中的最大尺寸(宽度或高度)的基2对数与亮度叶块的亮度样点中的最小尺寸(宽度或高度)之间的默认差值,亮度叶块是由slice_type等于引用sps的2(i)的条带中的ctu的四叉树划分产生的。当partition_constraints_override_enabled_flag等于1时,可以通过引用sps的ph中存在的ph_log2_diff_max_bt_min_qt_luma来覆盖默认差值。sps_log2_diff_max_bt_min_qt_intra_slice_luma的值应在0到ctblog2sizey-minqtlog2sizeintray(含)的范围内。当sps_log2_diff_max_bt_min_qt_intra_slice_luma不存在时,sps_log2_diff_max_bt_min_qt_intra_slice_luma的值被推断为等于0。[0612]sps_log2_diff_max_tt_min_qt_intra_slice_luma规定可以使用三元划分的亮度编解码块的亮度样点中的最大尺寸(宽度或高度)的基2对数与亮度叶块的亮度样点中的最小尺寸(宽度或高度)之间的默认差值,亮度叶块是由slice_type等于引用sps的2(i)的ctu的四叉树划分产生的。当partition_constraints_override_enabled_flag等于1时,可以通过引用sps的ph中存在的ph_log2_diff_max_tt_min_qt_luma来覆盖默认差值。sps_log2_diff_max_tt_min_qt_intra_slice_luma的值应在0到ctblog2sizey-minqtlog2sizeintray(含)的范围内。当sps_log2_diff_max_tt_min_qt_intra_slice_luma不存在时,sps_log2_diff_max_tt_min_qt_intra_slice_luma的值被推断为等于0。[0613]sps_log2_diff_min_qt_min_cb_inter_slice规定由ctu的四叉树划分产生的亮度叶块的亮度样点中最小尺寸的基2对数与条带中的亮度cu的亮度样点中最小亮度编解码块尺寸的基2对数之间的默认差值,其中slice_type等于引用sps的0(b)或1(p)。当partition_constraints_override_enabled_flag等于1时,默认差值可以由引用sps的ph中存在的ph_log2_diff_min_qt_min_cb_luma覆盖。sps_log2_diff_min_qt_min_cb_inter_slice的值应在0到ctblog2sizey-mincblog2sizey(含)的范围内。由ctu的四叉树划分产生的亮度叶块的亮度样点中最小尺寸的基2对数推导如下:[0614]minqtlog2sizeintery=sps_log2_diff_min_qt_min_cb_inter_slice+mincblog2sizey(56)[0615]sps_max_mtt_hierarchy_depth_inter_slice规定编解码单元的默认最大层次深度,该编解码单元是在slice_type等于引用sps的0(b)或1(p)的条带中对四叉树叶进行多类型树划分后生成的。当partition_constraints_override_enabled_flag等于1时,默认的最大层次结构深度可以由引用sps的ph中存在的ph_max_mtt_hierarchy_depth_inter_slice覆盖。sps_max_mtt_hierarchy_depth_inter_slice的值应在0到2*(ctblog2sizey-mincblog2sizey)(含)的范围内。[0616]sps_log2_diff_max_bt_min_qt_inter_slice规定可以使用二元划分的亮度编解码块的亮度样点中的最大尺寸(宽度或高度)的基2对数与亮度叶块的亮度样点中的最小尺寸(宽度或高度)之间的默认差值,亮度叶块是由slice_type等于引用0(b)或1(p)的条带中的ctu的四叉树划分产生的。当partition_constraints_override_enabled_flag等于1时,可以通过引用sps的ph中存在的ph_log2_diff_max_bt_min_qt_luma来覆盖默认差值。sps_log2_diff_max_bt_min_qt_inter_slice的值应在0到ctblog2sizey-minqtlog2sizeintery(含)的范围内。当sps_log2_diff_max_bt_min_qt_inter_slice不存在时,sps_log2_diff_max_bt_min_qt_inter_slice的值被推断为等于0。[0617]sps_log2_diff_max_tt_min_qt_inter_slice规定可以使用三元划分的亮度编解码块的亮度样点中的最大尺寸(宽度或高度)的基2对数与亮度叶块的亮度样点中的最小尺寸(宽度或高度)之间的默认差值,亮度叶块是在slice_type等于引用sps的0(b)或1(p)的条带中对ctu进行四叉树划分产生的。当partition_constraints_override_enabled_flag等于1时,可以通过引用sps的ph中存在的ph_log2_diff_max_tt_min_qt_luma来覆盖默认差值。sps_log2_diff_max_tt_min_qt_inter_slice的值应在0到ctblog2sizey-minqtlog2sizeintery(含)的范围内。当sps_log2_diff_max_tt_min_qt_inter_slice不存在时,sps_log2_diff_max_tt_min_qt_inter_slice的值被推断为等于0。[0618]sps_log2_diff_min_qt_min_cb_intra_slice_chroma规定从色度ctu的四叉树划分(其中treetype等于dual_tree_chroma)产生的色度叶块的亮度样点中最小尺寸的基2对数与slice_type等于引用sps的2(i)的条带中的treetype等于dual_tree_chroma的色度cu的亮度样点中最小编解码块尺寸的基2对数之间的默认差值。当partition_constraints_override_enabled_flag等于1时,可以通过引用sps的ph中存在的ph_log2_diff_min_qt_min_cb_chroma来覆盖默认差值。sps_log2_diff_min_qt_min_cb_intra_slice_chroma的值应在0到ctblog2sizey-mincblog2sizey(含)的范围内。当不存在时,sps_log2_diff_min_qt_min_cb_intra_slice_chroma的值被推断为等于0。由treetype等于dual_tree_chroma的ctu的四叉树划分产生的色度叶块的亮度样点中最小尺寸的基2对数推导如下:[0619]minqtlog2sizeintrac=sps_log2_diff_min_qt_min_cb_intra_slice_chroma+mincblog2sizeyꢀꢀꢀꢀ(57)[0620]sps_max_mtt_hierarchy_depth_intra_slice_chroma规定色度编解码单元的默认最大层次深度,该色度编解码单元是由slice_type等于引用sps的2(i)的条带中的treetype等于dual_tree_chroma的色度四叉树叶的多类型树划分产生的。当partition_constraints_override_enabled_flag等于1时,默认的最大层次深度可以由引用sps的ph中存在的ph_max_mtt_hierarchy_depth_chroma覆盖。sps_max_mtt_hierarchy_depth_intra_slice_chroma的值应在0到2*(ctblog2sizey-mincblog2sizey)(含)的范围内。当不存在时,sps_max_mtt_hierarchy_depth_intra_slice_chroma的值被推断为等于0。[0621]sps_log2_diff_max_bt_min_qt_intra_slice_chroma规定可以使用二元划分的色度编解码块的亮度样点中的最大尺寸(宽度或高度)的基2对数与色度叶块的亮度样点中的最小尺寸(宽度或高度)之间的默认差值,色度叶块是由slice_type等于引用sps的2(i)的条带中treetype等于dual_tree_chroma的色度ctu的四叉树划分产生的。当partition_constraints_override_enabled_flag等于1时,可以通过引用sps的ph中存在的ph_log2_diff_max_bt_min_qt_chroma来覆盖默认差值。sps_log2_diff_max_bt_min_qt_intra_slice_chroma的值应在0到ctblog2sizey-minqtlog2sizeintrac(含)的范围内。当sps_log2_diff_max_bt_min_qt_intra_slice_chroma不存在时,sps_log2_diff_max_bt_min_qt_intra_slice_chroma的值被推断为等于0。[0622]sps_log2_diff_max_tt_min_qt_intra_slice_chroma规定可以使用三元划分的色度编解码块的亮度样点中的最大尺寸(宽度或高度)的基2对数与slice_type等于引用sps的2(i)的条带中treetype等于dual_tree_chroma的色度ctu的四叉树划分产生的色度叶块的亮度样点中的最小尺寸(宽度或高度)之间的默认差值,当partition_constraints_override_enabled_flag等于1时,可以通过引用sps的ph中存在的ph_log2_diff_max_tt_min_qt_chroma覆盖默认差值。sps_log2_diff_max_tt_min_qt_intra_slice_chroma的值应当在0到ctblog2sizey-minqtlog2sizeintrac(含)的范围内。当sps_log2_diff_max_tt_min_qt_intra_slice_chroma不存在时,sps_log2_diff_max_tt_min_qt_intra_slice_chroma的值被推断为等于0。[0623]sps_max_luma_transform_size_64_flag等于1规定亮度样点中的最大变换尺寸等于64。sps_max_luma_transform_size_64_flag等于0规定亮度样点中的最大变换尺寸等于32。[0624]当ctbsizey小于64时,sps_max_luma_transform_size_64_flag的值应当等于0。[0625]按照如下方式推导变量mintblog2sizey、maxtblog2sizey、mintbsizey和maxtbsizey:[0626]mintblog2sizey=2ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(58)[0627]maxtblog2sizey=sps_max_luma_transform_size_64_flag?6:5ꢀꢀꢀꢀꢀꢀ(59)[0628]mintbsizey=1《《mintblog2sizeyꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(60)[0629]maxtbsizey=1《《maxtblog2sizeyꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(61)[0630]sps_joint_cbcr_enabled_flag等于0规定禁用色度残差的联合编解码。sps_joint_cbcr_enabled_flag等于1规定启用色度残差的联合编解码。当不存在时,sps_joint_cbcr_enabled_flag的值被推断为等于0。[0631]当sps_joint_cbcr_enabled_flag等于1时,same_qp_table_for_chroma等于1规定仅信令通知一个色度qp映射表,并且此表适用于cb和cr残差,并且另外还适用于联合cb-cr残差。same_qp_table_for_chroma等于0规定,当sps_joint_cbcr_enabled_flag等于1时,在sps中信令通知色度qp映射表,两个用于cb和cr,另一个用于联合cb-cr。当比特流中不存在same_qp_table_for_chroma时,same_qp_table_for_chroma的值被推断为等于1。[0632]qp_table_start_minus26[i]加26规定用于描述第i个色度qp映射表的起始亮度和色度qp。qp_table_start_minus26[i]的值应在-26-qpbdoffset到36(含)的范围内。当比特流中不存在qp_table_start_minus26[i]时,qp_table_start_minus26[i]的值被推断为等于0。[0633]num_points_in_qp_table_minus1[i]加1规定用于描述第i个色度qp映射表的点数。num_points_in_qp_table_minus1[i]的值应在0到63+qpbdoffset(含)的范围内。当比特流中不存在num_points_in_qp_table_minus1[0]中时,num_points_in_qp_table_minus1[0]的值被推断为等于0。[0634]delta_qp_in_val_minus1[i][j]规定用于推导第i个色度qp映射表的第j个枢轴点的输入坐标的增量值。当比特流中不存在delta_qp_in_val_minus1[0][j]时,delta_qp_in_val_minus1[0][j]的值被推断为等于0。[0635]delta_qp_diff_val[i][j]规定用于推导第i个色度qp映射表的第j个枢轴点的输出坐标的增量值。[0636]按照如下方式推导第i个色度qp映射表chromaqptable[i](对于i=0…numqptables-1):[0637][0638][0639]当same_qp_table_for_chroma等于1时,chromaqptable[1][k]和chromaqptable[2][k]被设置为等于chromaqptable[0][k](对于范围为-qpbdoffset到63(含)内的k)。[0640]比特流一致性的要求是qpinval[i][j]和qpoutval[i][j]的值应在-qpbdoffset到63(含)的范围内,对于在0到numqptables-1(含)范围内的i,以及在0到num_points_in_qp_table_minus1[i]+1(含)范围内的j。[0641]sps_sao_enabled_flag等于1规定在去方块滤波过程之后,采样自适应偏移过程被应用于重构图片。sps_sao_enabled_flag等于0规定在去方块滤波过程之后,采样自适应偏移过程不应用于重构图片。[0642]sps_alf_enabled_flag等于0规定禁用跨分量自适应环路滤波器。sps_alf_enabled_flag等于1规定启用自适应环路滤波器。[0643]sps_ccalf_enabled_flag等于0规定禁用跨分量自适应环路滤波器。sps_ccalf_enabled_flag等于1规定可以启用跨分量自适应环路滤波器。[0644]sps_transform_skip_enabled_flag等于1规定transform_skip_flag可能存在于变换单元语法中。sps_transform_skip_enabled_flag等于0规定transform_skip_flag不存在于变换单元语法中。[0645]log2_transform_skip_max_size_minus2规定用于变换跳过的最大块尺寸,并且应在0到3(含)的范围内。[0646]变量maxtssize被设置为等于1《《(log2_transform_skip_max_size_minus2+2)。[0647]sps_bdpcm_enabled_flag等于1规定帧内编解码单元的编解码单元语法中可能存在intra_bdpcm_luma_flag和intra_bdpcm_chroma_flag。sps_bdpcm_enabled_flag等于0规定帧内编解码单元的编解码单元语法中不存在intra_bdpcm_luma_flag和intra_bdpcm_chroma_flag。当不存在时,sps_bdpcm_enabled_flag的值被推断为等于0。[0648]sps_ref_wraparound_enabled_flag等于1规定在帧间预测中应用水平环绕运动补偿。sps_ref_wraparound_enabled_flag等于0规定不应用水平环绕运动补偿。当(ctbsizey/mincbsizey+1)的值大于(pic_width_in_luma_samples/mincbsizey-1)时,其中pic_width_in_luma_samples是引用sps的任何pps中pic_width_in_luma_samples的值,sps_ref_wraparound_enabled_flag的值应等于0。[0649]sps_temporal_mvp_enabled_flag等于1规定可以在clvs中使用时域运动矢量预测值。sps_temporal_mvp_enabled_flag等于0规定clvs中不使用时域运动矢量预测值。[0650]sps_sbtmvp_enabled_flag等于1规定基于子块的时域运动矢量预测值可以用于解码图片,其中clvs中所有条带的slice_type不等于i。sps_sbtmvp_enabled_flag等于0规定clvs中不使用基于子块的时域运动矢量预测值。当sps_sbtmvp_enabled_flag不存在时,其被推断为等于0。[0651]sps_amvr_enabled_flag等于1规定在运动矢量编解码中使用自适应运动矢量差分辨率。amvr_enabled_flag等于0规定在运动矢量编解码中不使用自适应运动矢量差分辨率。[0652]sps_bdof_enabled_flag等于0规定禁用双向光学流帧间预测。sps_bdof_enabled_flag等于1规定启用双向光学流帧间预测。[0653]sps_bdof_pic_present_flag等于1规定ph_disable_bdof_flag存在于引用sps的ph中。sps_bdof_pic_present_flag等于0规定在引用sps的ph中不存在ph_disable_bdof_flag。当sps_bdof_pic_present_flag不存在时,sps_bdof_pic_present_flag的值被推断为等于0。[0654]sps_smvd_enabled_flag等于1规定对称运动矢量差可以用于运动矢量解码。sps_smvd_enabled_flag等于0规定运动矢量编解码中不使用对称运动矢量差。[0655]sps_dmvr_enabled_flag等于1规定启用基于帧间双预测的解码器运动矢量优化。sps_dmvr_enabled_flag等于0规定禁用基于帧间双预测的解码器运动矢量优化。[0656]sps_dmvr_pic_present_flag等于1规定引用sps的ph中存在ph_disable_dmvr_flag。sps_dmvr_pic_present_flag等于0规定引用sps的ph中不存在ph_disable_dmvr_flag。当sps_dmvr_pic_present_flag不存在时,sps_dmvr_pic_present_flag的值被推断为等于0。[0657]sps_mmvd_enabled_flag等于1规定启用具有运动矢量差的merge模式。sps_mmvd_enabled_flag等于0指定禁用具有运动矢量差的merge模式。[0658]sps_isp_enabled_flag等于1规定启用具有子分区的帧内预测。sps_isp_enabled_flag等于0规定禁用具有子分区的帧内预测。[0659]sps_mrl_enabled_flag等于1规定启用具有多条参考线的帧内预测。sps_mrl_enabled_flag等于0规定禁用具有多条参考线的帧内预测。[0660]sps_mip_enabled_flag等于1规定启用基于矩阵的帧内预测。sps_mip_enabled_flag等于0规定禁用基于矩阵的帧内预测。[0661]sps_cclm_enabled_flag等于0规定禁用从亮度分量到色度分量的跨分量线性模型帧内预测。sps_cclm_enabled_flag等于1规定启用从亮度分量到色度分量的跨分量线性模型帧内预测。当sps_cclm_enabled_flag不存在时,其被推断为等于0。[0662]sps_chroma_horizontal_collocated_flag等于1规定预测过程以设计用于色度样点位置的方式操作,该位置相对于对应的亮度样点位置不进行水平移动。sps_chroma_horizontal_collocated_flag等于0规定预测过程以针对色度样点位置设计的方式操作,该色度样点位置相对于对应的亮度样点位置以亮度样点为单位向右移动0.5。当sps_chroma_horizontal_collocated_flag不存在时,其被推断为等于1。[0663]sps_chroma_vertical_collocated_flag等于1规定预测过程以针对色度样点位置设计的方式操作,该位置相对于对应的亮度样点位置没有进行垂直移动。sps_chroma_vertical_collocated_flag等于0规定预测过程以针对色度样点位置设计的方式操作,该位置相对于对应的亮度样点位置以亮度样点为单位向下移动0.5。当sps_chroma_vertical_collocated_flag不存在时,其被推断为等于1。[0664]sps_mts_enabled_flag等于1规定序列参数集rbsp语法中存在sps_explicit_mts_intra_enabled_flag,并且序列参数集rbsp语法中存在sps_explicit_mts_inter_enabled_flag。sps_mts_enabled_flag等于0规定sps_explicit_mts_intra_enabled_flag不存在于序列参数集rbsp语法中,并且sps_explicit_mts_inter_enabled_flag不存在于序列参数集rbsp语法中。[0665]sps_explicit_mts_intra_enabled_flag等于1规定mts_idx可能存在于帧内编解码单元语法中。sps_explicit_mts_intra_enabled_flag等于0规定mts_idx在帧内编解码单元语法中不存在。当不存在时,sps_explicit_mts_intra_enabled_flag的值被推断为等于0。[0666]sps_explicit_mts_inter_enabled_flag等于1规定mts_idx可能存在于帧间编解码单元语法中。sps_explicit_mts_inter_enabled_flag等于0规定mts_idx在帧间编解码单元语法中不存在。当不存在时,sps_explicit_mts_inter_enabled_flag的值被推断为等于0。[0667]six_minus_max_num_merge_cand规定从6中减去sps中支持的最大merging运动矢量预测(mvp)候选数。按照如下方式推导mergingmvp候选的最大数目maxnummergecand如下所示:[0668]maxnummergecand=6-six_minus_max_num_merge_candꢀꢀꢀꢀꢀ(63)[0669]maxnummergecand的值应在1到6(含)的范围内。[0670]sps_sbt_enabled_flag等于0规定禁用帧间预测cu的子块变换。sps_sbt_enabled_flag等于1规定启用帧间预测cu的子块变换。[0671]sps_affine_enabled_flag规定基于仿射模型的运动补偿是否可以用于帧间预测。如果sps_affine_enabled_flag等于0,则应限制语法,使得在clvs中不使用基于仿射模型的运动补偿,并且在clvs的编解码单元语法中不存在inter_affine_flag和cu_affine_type_flag。否则(sps_affine_enabled_flag等于1),基于仿射模型的运动补偿可以用于clvs。[0672]five_minus_max_num_subblock_merge_cand规定从5减去sps中支持的基于子块的merging运动矢量预测候选的最大数目。[0673]sps_affine_type_flag规定基于6参数仿射模型的运动补偿是否可以用于帧间预测。如果sps_affine_type_flag等于0,则应限制语法,使得在clvs中不使用基于6参数仿射模型的运动补偿,并且clvs中的编解码单元语法中不存在cu_affine_type_flag。否则(sps_affine_type_flag等于1),可以在clvs中使用基于6参数仿射模型的运动补偿。当不存在时,sps_affine_type_flag的值被推断为等于0。[0674]sps_affine_amvr_enabled_flag等于1规定在仿射帧间模式的运动矢量编解码中使用自适应运动矢量差分辨率。sps_affine_amvr_enabled_flag等于0规定在仿射帧间模式的运动矢量编解码中不使用自适应运动矢量差分辨率。当不存在时,sps_affine_amvr_enabled_flag的值被推断为等于0。[0675]sps_affine_prof_enabled_flag规定使用光学流的预测优化是否可以用于仿射运动补偿。如果sps_affine_prof_enabled_flag等于0,则仿射运动补偿不应使用光学流进行优化。否则(sps_affine_prof_enabled_flag等于1),仿射运动补偿可以使用光学流进行优化。当不存在时,sps_affine_prof_enabled_flag的值被推断为等于0。[0676]sps_prof_pic_present_flag等于1规定在引用sps的ph中存在ph_disable_prof_flag。sps_prof_pic_present_flag等于0规定在引用sps的ph中不存在ph_disable_prof_flag。当sps_prof_pic_present_flag不存在时,sps_prof_pic_present_flag的值被推断为等于0。[0677]sps_palette_enabled_flag等于1规定编解码单元语法中可能存在pred_mode_plt_flag。sps_palette_enabled_flag等于0规定编解码单元语法中不存在pred_mode_plt_flag。当sps_palette_enabled_flag不存在时,其被推断为等于0。[0678]sps_act_enabled_flag等于1规定可以使用自适应颜色变换,并且cu_act_enabled_flag可以出现在编解码单元语法中。sps_act_enabled_flag等于0规定不使用自适应颜色变换,并且编解码单元语法中不存在cu_act_enabled_flag。当sps_act_enabled_flag不存在时,其被推断为等于0。[0679]min_qp_prime_ts_minus4规定变换跳过模式的最小允许量化参数如下所示:[0680]qpprimetsmin=4+min_qp_prime_ts_minus4ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(64)[0681]min_qp_prime_ts_minus4的值应在0到48(含)的范围内。[0682]sps_bcw_enabled_flag规定是否可以将具有cu权重的双预测用于帧间预测。如果sps_bcw_enabled_flag等于0,则应限制语法,使得在clvs中不使用cu权重的双预测,并且在clvs的编解码单元语法中不存在bcw_idx。否则(sps_bcw_enabled_flag等于1),可以在clvs中使用具有cu权重的双预测。[0683]sps_ibc_enabled_flag等于1规定ibc预测模式可以用于clvs中图片的解码。sps_ibc_enabled_flag等于0规定在clvs中不使用ibc预测模式。当sps_ibc_enabled_flag不存在时,其被推断为等于0。[0684]six_minus_max_num_ibc_merge_cand规定从6中减去sps中支持的ibcmerging块矢量预测(bvp)候选的最大数。[0685]按照如下方式推导ibcmergingbvp候选的最大数目maxnumibcmergecand:[0686]if(sps_ibc_enabled_flag)[0687]maxnumibcmergecand=6-six_minus_max_num_ibc_merge_candꢀꢀꢀꢀ(65)[0688]else[0689]maxnumibcmergecand=0[0690]sps_ciip_enabled_flag规定ciip_flag可能出现在用于帧间编解码单元的编解码单元语法中。sps_ciip_enabled_flag等于0规定ciip_flag不存在于用于帧间编解码单元的编解码单元语法中。[0691]sps_fpel_mmvd_enabled_flag等于1规定具有运动矢量差的merge模式使用整数样点精度。sps_fpel_mmvd_enabled_flag等于0规定具有运动矢量差的merge模式可以使用分数样点精度。[0692]sps_gpm_enabled_flag规定基于几何分割的运动补偿是否可以用于帧间预测。sps_gpm_enabled_flag等于0规定应约束语法,使得在clvs中不使用基于几何分割的运动补偿,并且在clvs的编解码单元语法中不存在merge_gpm_partition_idx、merge_gpm_idx0和merge_gpm_idx1。sps_gpm_enabled_flag等于1规定基于几何分割的运动补偿可以在clvs中使用。当不存在时,sps_gpm_enabled_flag的值被推断为等于0。[0693]max_num_merge_cand_minus_max_num_gpm_cand规定从maxnummergecand中减去的sps中支持的几何分割merge模式候选的最大数目。[0694]如果sps_gpm_enabled_flag等于1且maxnummergecand大于或等于3,则按照如下方式推导几何分割merge模式候选的最大数目maxnumgeomergecand:[0695][0696][0697]maxnumgeomergecand的值应在2到maxnummergecand(含)的范围内。[0698]sps_lmcs_enabled_flag等于1规定在clvs中使用具有色度缩放的亮度映射。sps_lmcs_enabled_flag等于0规定在clvs中不使用具有色度缩放的亮度映射。[0699]sps_lfnst_enabled_flag等于1规定lfnst_idx可能存在于帧内编解码单元语法中。sps_lfnst_enabled_flag等于0规定lfnst_idx在帧内编解码单元语法中不存在。[0700]sps_ladf_enabled_flag等于1规定在sps中存在sps_num_ladf_intervals_minus2、sps_ladf_lowest_interval_qp_offset、sps_ladf_qp_offset[i]和sps_ladf_delta_threshold_minus1[i]。[0701]sps_num_ladf_interval_minus2加1规定sps中存在的sps_ladf_delta_threshold_minus1[i]和sps_ladf_qp_offset[i]语法元素的数目。sps_num_ladf_intervals_minus2的值应在0到3(含)的范围内。[0702]sps_ladf_lowest_interval_qp_offset规定用于推导条款8.8.3.6.1中规定的变量qp的偏移量。sps_ladf_lowest_interval_qp_offset的值应在-63至63(含)的范围内。[0703]sps_ladf_qp_offset[i]规定用于推导条款8.8.3.6.1中规定的变量qp的偏移阵列。sps_ladf_qp_offset[i]的值应在-63至63(含)的范围内。[0704]sps_ladf_delta_threshold_minus1[i]用于计算spsladfintervallowerbound[i]的值,该值规定第i个亮度强度级别间隔的下界。sps_ladf_delta_threshold_minus1[i]的值应在0到2bitdepth-3(含)的范围内。[0705]spsladfintervallowerbound[0]的值被设置为等于0。[0706]对于0到sps_num_ladf_intervals_minus2(含)范围内的每个i值,按照如下方式推导变量spsladfintervallowerbound[i+1]:[0707]spsladfintervallowerbound[i+1]=spsladfintervallowerbound[i]ꢀꢀꢀꢀ(67)[0708]+sps_ladf_delta_threshold_minus1[i]+1[0709]log2_parallel_merge_level_minus2加2规定变量log2parmrglevel的值,该值用于条款8.5.2.3中规定的空域merging候选的推导过程、条款8.5.5.2中规定的子块merge模式中的运动矢量和参考索引的推导过程、以及用于控制条款8.5.2.1中基于历史的运动矢量预测值列表更新过程的调用。log2_parallel_merge_level_minus2的值应在0到ctblog2sizey-2(含)的范围内。按照如下方式推导变量log2parmrglevel:[0710]log2parmrglevel=log2_parallel_merge_level_minus2+2(68)[0711]sps_scaling_list_enabled_flag等于1规定缩放列表用于变换系数的缩放过程。sps_scaling_list_enabled_flag等于0规定缩放列表不用于变换系数的缩放过程。[0712]sps_dep_quant_enabled_flag等于0规定对引用sps的图片禁用相关量化。sps_dep_quant_enabled_flag等于1规定可以为引用sps的图片启用相关量化。[0713]sps_sign_data_hiding_enabled_flag等于0规定对引用sps的图片禁用符号位隐藏。sps_sign_data_hiding_enabled_flag等于1规定可以为引用sps的图片启用符号位隐藏。当sps_sign_data_hiding_enabled_flag不存在时,其被推断为等于0。[0714]sps_virtual_boundaries_enabled_flag等于1规定可以在clvs中的编解码图片中应用禁用跨虚拟边界的环路滤波。sps_virtual_boundaries_enabled_flag等于0规定在clvs中的编解码图片中不应用禁用跨虚拟边界的环路滤波。环路滤波操作包括去方块滤波器、采样自适应偏移滤波器和自适应环路滤波器操作。[0715]sps_virtual_boundaries_present_flag等于1规定在sps中信令通知虚拟边界的信息。sps_virtual_boundaries_present_flag等于0规定在sps中不信令通知虚拟边界的信息。当sps中有一个或多个虚拟边界信令通知时,在引用sps的图片中跨虚拟边界禁用环路滤波操作。环路滤波操作包括去方块滤波器、采样自适应偏移滤波器和自适应环路滤波器操作。[0716]比特流一致性的一个要求是,当res_change_in_clvs_allowed_flag的值等于1时,sps_virtual_boundaries_present_flag的值应等于0。[0717]sps_num_ver_virtual_boundaries规定sps中存在的sps_virtual_boundaries_pos_x[i]语法元素的数目。当sps_num_ver_virtual_boundaries不存在时,其被推断为等于0。[0718]sps_virtual_boundaries_pos_x[i]规定以亮度样点除以8为单位的第i个垂直虚拟边界的位置。sps_virtual_boundaries_pos_x[i]的值应在1到ceil(pic_width_in_luma_samples÷8)-1(含)的范围内。[0719]sps_num_hor_virtual_boundaries规定sps中存在的sps_virtual_boundaries_pos_y[i]语法元素的数目。当sps_num_hor_virtual_boundaries不存在时,其被推断为等于0。[0720]当sps_virtual_boundaries_enabled_flag等于1且sps_virtual_boundaries_present_flag等于1时,sps_num_ver_virtual_boundaries和sps_num_hor_virtual_boundaries之和应大于0。[0721]sps_virtual_boundaries_pos_y[i]规定以亮度样点除以8为单位的第i个水平虚拟边界的位置。sps_virtual_boundaries_pos_y[i]的值应在1到ceil(pic_height_in_luma_samples÷8)-1(含)的范围内。[0722]sps_general_hrd_params_present_flag等于1规定语法结构general_hrd_parameters()存在于spsrbsp语法结构中。sps_general_hrd_params_present_flag等于0规定spsrbsp语法结构中不存在语法结构general_hrd_parameters()。[0723]sps_sublayer_cpb_params_present_flag等于1规定spsrbsp中的语法结构old_hrd_parameters()包括子层表示的hrd参数,其中temporalid在0到sps_max_sublayers_minus1(含)的范围内。sps_sublayer_cpb_params_present_flag等于0规定spsrbsp中的语法结构ols_hrd_parameters()包括子层表示的hrd参数,其中temporalid仅等于sps_max_sublayers_minus1。当sps_max_sublayers_minus1等于0时,sps_sublayer_cpb_params_present_flag的值被推断为等于0。[0724]当sps_sublayer_cpb_params_present_flag等于0时,子层表示的hrd参数(其中temporalid在0到sps_max_sublayers_minus1-1(含)的范围内)被推断为与子层表示的hrd参数(其中temporalid等于sps_max_sublayers_minus1)相同。这些包括从fixed_pic_rate_general_flag[i]语法元素开始直到ols_hrd_parameters语法结构中“if(general_vcl_hrd_params_present_flag)”条件下的sublayer_hrd_parameters(i)语法结构的hrd参数。[0725]field_seq_flag等于1指示clvs传达表示字段的图片。field_seq_flag等于0指示clvs传达表示帧的图片。当general_frame_only_constraint_flag等于1时,field_seq_flag的值应等于0。[0726]当field_seq_flag等于1时,应当为clvs中的每个编解码图片呈现帧字段信息sei消息。[0727]注5–规定的解码过程不会以不同方式处理表示字段或帧的图片。因此,表示字段的图片序列将使用单个字段的图片维度进行编解码。例如,表示1080i字段的图片将通常具有1920x540的裁剪输出维度,而序列图片速率将通常表示源字段的速率(通常在50和60hz之间),而不是源帧速率(通常在25和30hz之间)。[0728]vui_parameters_present_flag等于1规定语法结构vui_parameters()存在于spsrbsp语法结构中。vui_parameters_present_flag等于0规定spsrbsp语法结构中不存在语法结构vui_parameters()。[0729]sps_extension_flag等于0规定spsrbsp语法结构中不存在sps_extension_data_flag语法元素。sps_extension_flag等于1规定spsrbsp语法结构中存在sps_extension_data_flag语法元素。[0730]sps_extension_data_flag可以有任何值。其存在和值不影响解码器与本规范本版本中规定的简档的一致性。符合本规范本版本的解码器应忽略所有sps_extension_data_flag语法元素。[0731]7.4.3.4图片参数集rbsp语义[0732]ppsrbsp在被引用、包括在至少一个au中(其中temporalid小于或等于ppsnal单元的temporalid)、或通过外部方式提供之前,应当可用于解码过程。[0733]pu内具有pps_pic_parameter_set_id特定值的所有ppsnal单元应具有相同的内容。[0734]pps_pic_parameter_set_id标识pps,以供其他语法元素引用。pps_pic_parameter_set_id的值应在0到63(含)的范围内。[0735]无论nuh_layer_id值如何,ppsnal单元都共享pps_pic_parameter_set_id的相同值空间。[0736]设ppslayerid为特定ppsnal单元的nuh_layer_id的值,以及设vcllayerid为特定vclnal单元的nuh_layer_id的值。特定vclnal单元应当不引用特定ppsnal单元,除非ppslayerid小于或等于vcllayerid,且nuh_layer_id等于ppslayerid的层被包括在至少一个ols中,该ols包括nuh_layer_id等于vcllayerid的层。[0737]pps_seq_parameter_set_id规定用于sps的sps_seq_parameter_set_id的值。pps_seq_parameter_set_id的值应在0到15(含)的范围内。pps_seq_parameter_set_id的值应在由clvs中编解码图片引用的所有pps中相同。[0738]mixed_nalu_types_in_pic_flag等于1规定引用pps的每个图片都有多个vclnal单元,vclnal单元不具有相同的nal_unit_type值,并且图片不是irap图片。mixed_nalu_types_in_pic_flag等于0规定引用pps的每个图片具有一个或多个vclnal单元,并且引用pps的每个图片的vclnal单元具有相同的nal_unit_type值。[0739]当no_mixed_nalu_types_in_pic_constraint_flag等于1时,mixed_nalu_types_in_pic_flag的值应当等于0。[0740]对于图片pica中具有idr_w_radl到cra_nut(含)范围内的nal_unit_type值nalunittypea的每个条带,该图片pica同样包含具有另一个nal_unit_type值的一个或多个条带(即,图片pica的mixed_nalu_types_in_pic_flag的值等于1),以下内容适用:[0741]–条带应属于子图片subpica,其对应subpic_treated_as_pic_flag[i]的值等于1。[0742]–条带应当不属于包含vclnal单元的pica的子图片,其中nal_unit_type不等于nalunittypea。[0743]–如果nalunittypea等于cra,则对于在解码顺序和输出顺序中clvs中当前图片之后的所有后续pu,那些pu中subpica中条带的refpiclist[0]和refpiclist[1]均不应当在活动条目中包括解码顺序中pica之前的任何图片。[0744]–否则(即nalunittypea等于idr_w_radl或idr_n_lp),对于解码顺序中当前图片之后的clvs中的所有pu,那些pu中subpica中条带的refpiclist[0]或refpiclist[1]均不应当在活动条目中包括解码顺序中pica之前的任何图片。[0745]注1–mixed_nalu_types_in_pic_flag等于1指示引用pps的图片包含具有不同nal单元类型的条带,例如,源于子图片比特流merging操作的编解码图片,编码器必须确保匹配比特流结构以及原始比特流的参数的进一步对齐。这些对齐的一个示例如下:当sps_idr_rpl_flag的值等于0且mixed_nalu_types_in_pic_flag等于1时,引用pps的图片不能具有nal_unit_type等于idr_w_radl或idr_n_lp的条带。[0746]pic_width_in_luma_samples规定以亮度样点为单位的引用pps的每个解码图片的宽度。pic_width_in_luma_samples应当不等于0,应当为max(8,mincbsizey)的整数倍,且应当小于或等于pic_width_max_in_luma_samples。[0747]当res_change_in_clvs_allowed_flag等于0时,pic_width_in_luma_samples的值应等于pic_width_max_in_luma_samples。[0748]pic_height_in_luma_samples规定以亮度样点为单位的引用pps的每个解码图片的高度。pic_height_in_luma_samples应当不等于0,且应为max(8,mincbsizey)的整数倍,且应小于或等于pic_height_max_in_luma_samples。[0749]当res_change_in_clvs_allowed_flag等于0时,pic_height_in_luma_samples的值应等于pic_height_max_in_luma_samples。[0750]按照如下方式推导变量picwidthinctbsy、picheightinctbsy、picsizeinctbsy、picwidthinmincbsy、picheightinmincbsy、picsizeinmincbsy、picsizeinsamplesy、picwidthinsamplesc和picheightinsamplesc:[0751]picwidthinctbsy=ceil(pic_width_in_luma_samples÷ctbsizey)ꢀꢀꢀ(69)[0752]picheightinctbsy=ceil(pic_height_in_luma_samples÷ctbsizey)ꢀꢀꢀꢀ(70)[0753]picsizeinctbsy=picwidthinctbsy*picheightinctbsyꢀꢀꢀꢀ(71)[0754]picwidthinmincbsy=pic_width_in_luma_samples/mincbsizeyꢀꢀꢀꢀꢀ(72)[0755]picheightinmincbsy=pic_height_in_luma_samples/mincbsizeyꢀꢀꢀꢀꢀ(73)[0756]picsizeinmincbsy=picwidthinmincbsy*picheightinmincbsyꢀꢀꢀꢀ(74)[0757]picsizeinsamplesy=pic_width_in_luma_samples*pic_height_in_luma_samplesꢀꢀꢀꢀꢀꢀ(75)[0758]picwidthinsamplesc=pic_width_in_luma_samples/subwidthcꢀꢀꢀꢀ(76)[0759]picheightinsamplesc=pic_height_in_luma_samples/subheightcꢀꢀꢀꢀ(77)[0760]pps_conformance_window_flag等于1指示pps中紧随其后的一致性裁剪窗口偏移参数。pps_conformance_window_flag等于0指示pps中不存在一致性裁剪窗口偏移参数。[0761]pps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset和pps_conf_win_bottom_offset规定解码过程中输出的clvs中图片的样点,以图片坐标中规定的矩形区域为输出。当pps_conformance_window_flag等于0时,pps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset和pps_conf_win_bottom_offset的值被推断为等于0。[0762]一致性裁剪窗口包含具有从subwidthc*pps_conf_win_left_offset到pic_width_in_luma_samples-(subwidthc*pps_conf_win_right_offset+1)的水平图片坐标以及从subheightc*pps_conf_win_top_offset到pic_height_in_luma_samples-(subheightc*pps_conf_win_bottom_offset+1)(含)的垂直图片坐标的亮度样点。[0763]subwidthc*(pps_conf_win_left_offset+pps_conf_win_right_offset)的值应小于pic_width_in_luma_samples,且subweightc*(pps_conf_win_top_offset+pps_conf_win_bottom_offset)的值应小于pic_height_in_luma_samples。[0764]当chromaarraytype不等于0时,两个色度阵列的对应规定样点是具有图片坐标(x/subwidthc,y/subheightc)的样点,其中(x,y)是规定亮度样点的图片坐标。[0765]注2–一致性裁剪窗口偏移参数仅应用于输出。所有内部解码过程都应用于未裁剪的图片尺寸。[0766]让ppsa和ppsb是引用相同sps的任意两个pps。比特流一致性的一个要求是,当ppsa和ppsb分别具有相同的pic_width_in_luma_samples和pic_height_in_luma_samples值时,ppsa和ppsb应分别具有相同的pps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset和pps_conf_win_bottom_offset值。[0767]当pic_width_in_luma_samples等于pic_width_max_in_luma_samples且pic_height_in_luma_samples等于pic_height_max_in_luma_samples时,比特流一致性的一个要求是pps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset和pps_conf_win_bottom_offset分别等于sps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset、,和sps_conf_win_bottom_offset。[0768]scaling_window_explicit_signalling_flag等于1规定pps中存在缩放窗口偏移参数。scaling_window_explicit_signalling_flag等于0规定pps中不存在缩放窗口偏移参数。当res_change_in_clvs_allowed_flag等于0时,scaling_window_explicit_signalling_flag的值应等于0。[0769]scaling_win_left_offset、scaling_win_right_offset、scaling_win_top_offset和scaling_win_bottom_offset规定应用于缩放比计算的图片尺寸的偏移量。当不存在时,scaling_win_left_offset、scaling_win_right_offset、scaling_win_top_offset和scaling_win_bottom_offset的值被分别推断为等于subwidthc*conf_win_left_offset、subwidthc*conf_win_right_offset、subheightc*conf_win_top_offset和subheightc*conf_win_bottom_offset。[0770]subwidthc*(scaling_win_left_offset+scaling_win_right_offset)的值应小于pic_width_in_luma_samples,并且subheightc*(scaling_win_top_offset+scaling_win_bottom_offset)的值应小于pic_height_in_luma_samples。[0771]按照如下方式推导变量picoutputwidthl和picoutputheightl:[0772]picoutputwidthl=pic_width_in_luma_samples‑ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(78)[0773]subwidthc*(scaling_win_right_offset+scaling_win_left_offset)[0774]picoutputheightl=pic_height_in_luma_samples‑ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(79)[0775]subwidthc*(scaling_win_bottom_offset+scaling_win_top_offset)[0776]让refpicoutputwidthl和refpicoutputheightl分别为引用此pps的当前图片的参考图片的picoutputwidthl和picoutputheightl。是满足所有以下条件的比特流一致性要求:[0777]–picoutputwidthl*2应大于或等于refpicwidthinlumasamples。[0778]–picoutputheightl*2应大于或等于refpicheightinlumasamples。[0779]–picoutputwidthl应小于或等于refpicwidthinlumasamples*8。[0780]–picoutputheightl应小于或等于refpicheightinlumasamples*8。[0781]–picoutputwidthl*pic_width_max_in_luma_samples应大于或等于refpicoutputwidthl*(pic_width_in_luma_samples-max(8,mincbsizey))。[0782]–picoutputheightl*pic_height_max_in_luma_samples应大于或等于refpicoutputheightl*(pic_height_in_luma_samples-max(8,mincbsizey))。[0783]output_flag_present_flag等于1指示pic_output_flag语法元素存在于引用pps的条带标头中。output_flag_present_flag等于0指示pic_output_flag语法元素不存在于引用pps的条带标头中。[0784]subpic_id_mapping_in_pps_flag等于1规定在pps中信令通知子图片id映射。subpic_id_mapping_in_pps_flag等于0规定pps中不信令通知子图片id映射。如果subpic_id_mapping_explicitly_signalled_flag为0或subpic_id_mapping_in_sps_flag等于1,则subpic_id_mapping_in_pps_flag的值应等于0。否则(subpic_id_mapping_explicitly_signalled_flag等于1且subpic_id_mapping_in_sps_flag等于0),subpic_id_mapping_in_pps_flag的值应等于1。[0785]pps_num_subpics_minus1应等于sps_num_subpics_minus1。[0786]pps_subpic_id_len_minus1应等于sps_subpic_id_len_minus1。[0787]pps_subpic_id[i]规定第i个子图片的子图片id。pps_subpic_id[i]语法元素的长度为pps_subpic_id_len_minus1+1位。[0788]对于0到sps_num_subpics_minus1(含)范围内的每个i值,变量subpicidval[i]的推导如下:[0789][0790]比特流一致性的要求为以下两个约束应用:[0791]–对于0到sps_num_subpics_minus1(含)范围内的i和j的任何两个差值,subpicidval[i]应当不等于subpicidval[j]。[0792]–在当前图片不是clvs的第一张图片时,对于0到sps_num_subpics_minus1(含)范围内的每个i值,如果subpicidval[i]的值不等于同一层中解码顺序中的前一张图片的subpicidval[i]的值,则当前图片中具有子图片索引i的子图片的所有编解码条带nal单元的nal_unit_type应等于idr_w_radl到cra_nut(含)范围内的特定值。[0793]no_pic_partition_flag等于1规定没有图片分割被应用于引用pps的每个图片。no_pic_partition_flag等于0规定引用pps的每个图片可以被分割为多个片或条带。[0794]比特流一致性的一个要求是,对于clvs中编解码图片引用的所有pps,no_pic_partition_flag的值应相同。[0795]比特流一致性的一个要求是当sps_num_subpics_minus1+1的值大于1时,no_pic_partition_flag的值应当不等于1。[0796]pps_log2_ctu_size_minus5加5规定每个ctu的亮度编解码树块尺寸。[0797]pps_log2_ctu_size_minus5应等于sps_log2_ctu_size_minus5。[0798]num_exp_tile_columns_minus1加1规定显式提供的片列宽的数目。num_exp_tile_columns_minus1的值应在0到picwidthinctbsy-1(含)的范围内。当no_pic_partition_flag等于1时,num_exp_tile_columns_minus1的值被推断为等于0。[0799]num_exp_tile_rows_minus1加1规定显式提供的片行高度的数目。num_exp_tile_rows_minus1的值应在0到picheightinctbsy-1(含)的范围内。当no_pic_partition_flag等于1时,num_tile_rows_minus1的值被推断为等于0。[0800]tile_column_width_minus1[i]加1规定以ctb为单位的第i个片列的宽度,对于0到num_exp_tile_columns_minus1-1(含)范围内的i。[0801]tile_column_width_minus1[num_exp_tile_columns_minus1]用于推导索引大于或等于num_exp_tile_columns_minus1的片列的宽度,如条款6.5.1所规定的。tile_column_width_minus1[i]的值应在0到picwidthinctbsy-1(含)的范围内。当不存在时,tile_column_width_minus1[0]的值被推断为等于picwidthinctbsy-1。[0802]tile_row_height_minus1[i]加1规定以ctb为单位的第i个片行的高度,对于0到num_exp_tile_rows_minus1-1(含)范围内的i。tile_row_height_minus1[num_exp_tile_rows_minus1]用于推导索引大于或等于num_exp_tile_rows_minus1的片行的高度,如条款6.5.1所规定的。tile_row_height_minus1[i]的值应在0到picheightinctbsy-1(含)的范围内。当不存在时,tile_row_height_minus1[0]的值被推断为等于picheightinctbsy-1。[0803]rect_slice_flag等于0规定每个条带内的片按照光栅扫描顺序,并且在pps中不信令通知条带信息。rect_slice_flag等于1规定每个条带内的片覆盖图片的矩形区域,并且在pps中信令通知条带信息。当不存在时,rect_slice_flag被推断为等于1。当subpic_info_present_flag等于1时,rect_slice_flag的值应等于1。[0804]single_slice_per_subpic_flag等于1规定每个子图片由一个且仅一个矩形条带组成。single_slice_per_subpic_flag等于0规定每个子图片可以由一个或多个矩形条带组成。当single_slice_per_subpic_flag等于1时,num_slices_in_pic_minus1被推断为等于sps_num_subpics_minus1。当不存在时,single_slice_per_subpic_flag的值被推断为等于0。[0805]num_slices_in_pic_minus1加1规定引用pps的每个图片中的矩形条带数。num_slices_in_pic_minus1的值应在0到maxslicesperpicture-1(含)的范围内,其中maxslicesperpicture。当no_pic_partition_flag等于1时,num_slices_in_pic_minus1的值被推断为等于0。[0806]tile_idx_delta_present_flag等于0规定tile_idx_delta值不存在于pps中,并且根据条款6.5.1中定义的过程,以光栅顺序规定引用pps的图片中的所有矩形条带。tile_idx_delta_present_flag等于1规定tile_idx_delta值可能存在于pps中,并且根据条款6.5.1中定义的过程按照光栅顺序规定引用pps的图片中的所有矩形条带。当不存在时,tile_idx_delta_present_flag的值被推断为等于0。[0807]slice_width_in_tiles_minus1[i]加1规定以片列为单位的第i个矩形条带的宽度。slice_width_in_tiles_minus1[i]的值应在0到numtilecolumns-1(含)的范围内。[0808]当slice_width_in_tiles_minus1[i]不存在时,以下内容适用:[0809]–如果numtilecolumns等于1,则slice_width_in_tiles_minus1[i]的值被推断为等于0。[0810]–否则,根据条款6.5.1的规定推断slice_width_in_tiles_minus1[i]的值。[0811]slice_height_in_tiles_minus1[i]加1规定以片行为单位的第i个矩形条带的高度。slice_height_in_tiles_minus1[i]的值应在0到numtilerows-1(含)的范围内。[0812]当slice_height_in_tiles_minus1[i]不存在时,以下内容适用:[0813]–如果numtilerows等于1,或者tile_idx_delta_present_flag等于0,并且tileidx%numtilecolumns大于0,则slice_height_in_tiles_minus1[i]的值被推断为等于0。[0814]–否则(numtilerows不等于1,并且tile_idx_delta_present_flag等于1或tileidx%numtilecolumns等于0),当tile_idx_delta_present_flag等于1或tileidx%numtilecolumns等于0时,slice_height_in_tiles_minus1[i]的值被推断为等于slice_height_in_tiles_minus1[i-1]。[0815]num_exp_slices_in_tile[i]规定包含多个矩形条带的当前片中显式提供的条带高度的数目。num_exp_slices_in_tile[i]的值应在0到rowheight[tiley]-1(含)的范围内,其中tiley是包含第i个条带的片行索引。当不存在时,num_exp_slices_in_tile[i]的值被推断为等于0。当num_exp_slices_in_tile[i]等于0时,变量numslicesintile[i]的值被推断为等于1。[0816]exp_slice_height_in_ctus_minus1[j]加1规定以ctu行为单位的当前片中的第j个矩形条带的高度。exp_slice_height_in_ctus_minus1[j]的值应在0到rowheight[tiley]-1(含)的范围内,其中tiley是当前片的片行索引。[0817]当num_exp_slices_in_tile[i]大于0时,按照如下方式推导变量numslicesintile[i]和sliceheightinctusminus1[i+k](对于0到numslicesintile[i]-1(含)的范围内的k):[0818][0819]tile_idx_delta[i]规定第i个矩形条带中第一个片的片索引与第(i+1)个矩形条带中第一个片的片索引之间的差值。tile_idx_delta[i]的值应在-numtilesinpic+1到numtilesinpic–1(含)的范围内。当不存在时,tile_idx_delta[i]的值被推断为等于0。当存在时,tile_idx_delta[i]的值应当不等于0。[0820]loop_filter_across_tiles_enabled_flag等于1规定可以在引用pps的图片中跨片边界执行环路滤波操作。loop_filter_across_tiles_enabled_flag等于0规定在引用pps的图片中不会跨片边界执行环路滤波操作。环路滤波操作包括去方块滤波器、采样自适应偏移滤波器和自适应环路滤波器操作。当不存在时,loop_filter_across_tiles_enabled_flag的值被推断为等于1。[0821]loop_filter_across_slices_enabled_flag等于1规定可以在引用pps的图片中跨条带边界执行环路滤波操作。loop_filter_across_slice_enabled_flag等于0规定在引用pps的图片中不会跨条带边界执行环路滤波操作。环路滤波操作包括去方块滤波器、采样自适应偏移滤波器和自适应环路滤波器操作。当不存在时,loop_filter_across_slices_enabled_flag的值被推断为等于0。[0822]cabac_init_present_flag等于1规定cabac_init_flag存在于引用pps的条带标头中。cabac_init_present_flag等于0规定在引用pps的条带标头中不存在cabac_init_flag。[0823]num_ref_idx_default_active_minus1[i]加1(当i等于0时)规定p或b条带的变量numrefidxactive[0]的推断值(其中num_ref_idx_active_override_flag等于0),并且当i等于1时,规定b条带的numrefidxactive[1]的推断值(其中num_ref_idx_active_override_flag等于0)。num_ref_idx_default_active_minus1[i]的值应在0到14(含)的范围内。[0824]rpl1_idx_present_flag等于0规定引用pps的图片的ph语法结构或条带标头中不存在ref_pic_list_sps_flag[1]和ref_pic_list_idx[1]。rpl1_idx_present_flag等于1规定ref_pic_list_sps_flag[1]和ref_pic_list_idx[1]可能存在于引用pps的图片的ph语法结构或条带标头中。[0825]init_qp_minus26加26规定引用pps的每个条带的sliceqpy的初始值。当解码ph_qp_delta的非零值时,在图片级别处修改sliceqpy的初始值,或者当解码slice_qp_delta的非零值时,在条带级别处修改sliceqpy的初始值。init_qp_minus26的值应在-(26+qpbdoffset)到+37(含)的范围内。[0826]cu_qp_delta_enabled_flag等于1规定引用pps的ph中存在ph_cu_qp_delta_subdiv_intra_slice和ph_cu_qp_delta_subdiv_inter_slice语法元素,并且cu_qp_delta_abs可能存在于变换单元语法中。cu_qp_delta_enabled_flag等于0规定ph_cu_qp_delta_subdiv_intra_slice和ph_cu_qp_delta_subdiv_inter_slice语法元素不存在于引用pps的ph中,并且cu_qp_delta_abs不存在于变换单元语法中。[0827]pps_chroma_tool_offsets_present_flag等于1规定与色度工具偏移相关的语法元素存在于ppsrbsp语法结构中。pps_chroma_tool_offsets_present_falg等于0规定在ppsrbsp语法结构中不存在与色度工具偏移相关的语法元素。当chromaarraytype等于0时,pps_chroma_tool_offsets_present_flag的值应等于0。[0828]pps_cb_qp_offset和pps_cr_qp_offset规定分别用于推导qp'cb和qp'cr的亮度量化参数qp'y的偏移量。pps_cb_qp_offset和pps_cr_qp_offset的值应在-12至+12(含)的范围内。当chromaarraytype等于0时,解码过程中不使用pps_cb_qp_offset和pps_cr_qp_offset,并且解码器应忽略其值。当不存在时,pps_cb_qp_offset和pps_cr_qp_offset的值被推断为等于0。[0829]pps_joint_cbcr_qp_offset_present_flag等于1规定pps_joint_cbcr_qp_offset_value和joint_cbcr_qp_offset_list[i]存在于ppsrbsp语法结构中。pps_joint_cbcr_qp_offset_present_flag等于0规定pps_joint_cbcr_qp_offset_value和joint_cbcr_qp_offset_list[i]不存在于ppsrbsp语法结构中。当chromaarraytype等于0或sps_joint_cbcr_enabled_flag等于0时,pps_joint_cbcr_qp_offset_present_flag的值应等于0。当不存在时,pps_joint_cbcr_qp_offset_present_flag的值被推断为等于0。[0830]pps_joint_cbcr_qp_offset_value规定用于推导qp'cbcr的亮度量化参数qp'y的偏移量。pps_joint_cbcr_qp_offset_value的值应在-12至+12(含)的范围内。当chromaarraytype等于0或sps_joint_cbcr_enabled_flag等于0时,解码过程中不使用pps_joint_cbcr_qp_offset_value,并且解码器应忽略其值。当pps_joint_cbcr_qp_offset_present_flag等于0时,pps_joint_cbcr_qp_offset_value不存在且被推断为等于0。[0831]pps_slice_chroma_qp_offsets_present_flag等于1规定slice_cb_qp_offset和slice_cr_qp_offset语法元素存在于相关联的条带标头中。pps_slice_chroma_qp_offsets_present_flag等于0规定slice_cb_qp_offset和slice_cr_qp_offset语法元素不存在于相关联的条带标头中。当不存在时,pps_slice_chroma_qp_offsets_present_flag的值被推断为等于0。[0832]pps_cu_chroma_qp_offset_list_enabled_flag等于1规定ph_cu_chroma_qp_offset_subdiv_intra_slice和ph_cu_chroma_qp_offset_subdiv_inter_slice语法元素存在于引用pps的ph中,并且cu_chroma_qp_offset_flag可能存在于变换单元语法和调色板编解码语法中。pps_cu_chroma_qp_offset_list_enabled_flag等于0规定ph_cu_chroma_qp_offset_subdiv_intra_slice和ph_cu_chroma_qp_offset_subdiv_inter_slice语法元素不存在于引用pps的ph中,并且cu_chroma_qp_offset_flag不存在于变换单元语法和调色板编解码语法中。当不存在时,pps_cu_chroma_qp_offset_list_enabled_flag的值被推断为等于0。[0833]chroma_qp_offset_list_len_minus1加1规定ppsrbsp语法结构中存在的cb_qp_offset_list[i]、cr_qp_offset_list[i]和joint_cbcr_qp_offset_list[i]语法元素的数目。chroma_qp_offset_list_len_minus1的值应在0到5(含)的范围内。[0834]cb_qp_offset_list[i]、cr_qp_offset_list[i]和joint_cbcr_qp_offset_list[i]规定分别用于qp'cb、qp'cr和qp'cbcr的推导的偏移量。cb_qp_offset_list[i]、cr_qp_offset_list[i]和joint_cbcr_qp_offset_list[i]的值应在-12至+12(含)的范围内。当pps_joint_cbcr_qp_offset_present_flag等于0时,joint_cbcr_qp_offset_list[i]不存在并被推断为等于0。[0835]pps_weighted_pred_flag等于0规定加权预测不应用于引用pps的p条带。pps_weighted_pred_flag等于1规定加权预测被应用于引用pps的p条带。当sps_weighted_pred_flag等于0时,pps_weighted_pred_flag的值应等于0。[0836]pps_weighted_bipred_flag等于0规定显式加权预测不应用于引用pps的b条带。pps_weighted_bipred_flag等于1规定显式加权预测被应用于引用pps的b条带。当sps_weighted_bipred_flag等于0时,pps_weighted_bipred_flag的值应等于0。[0837]deblocking_filter_control_present_flag等于1规定pps中是否存在去方块滤波器控制语法元素。deblocking_filter_control_present_flag等于0规定pps中不存在去方块滤波器控制语法元素。[0838]deblocking_filter_override_enabled_flag等于1规定在引用pps的ph中存在ph_deblocking_filter_override_flag,或在引用pps的条带标头中存在slice_deblocking_filter_override_flag。deblocking_filter_override_enabled_flag等于0规定在引用pps的ph中不存在ph_deblocking_filter_override_flag,或在引用pps的条带标头中不存在slice_deblocking_filter_override_flag。当不存在时,deblocking_filter_override_enabled_flag的值被推断为等于0。[0839]pps_deblocking_filter_disabled_flag等于1规定去方块过滤器的操作不应用于引用pps的条带,其中slice_deblocking_filter_disabled_flag不存在。[0840]pps_deblocking_filter_disabled_flag等于0规定去方块过滤器的操作不应用于引用pps的条带,其中slice_deblocking_filter_disabled_flag不存在。当不存在时,pps_deblocking_filter_disabled_flag的值被推断为等于0。[0841]pps_beta_offset_div2和pps_tc_offset_div2规定应用于引用pps的条带的亮度分量的β和tc(除以2)的默认去方块参数偏移量,除非默认去方块参数偏移量被引用pps的条带的图片标头或条带标头中存在的去方块参数偏移量覆盖。pps_beta_offset_div2和pps_tc_offset_div2的值均应在-12至12(含)的范围内。当不存在时,pps_beta_offset_div2和pps_tc_offset_div2的值都被推断为等于0。[0842]pps_cb_beta_offset_div2和pps_cb_tc_offset_div2规定应用于引用pps的条带的cb分量的β和tc(除以2)的默认去方块参数偏移量,除非默认去方块参数偏移量被引用pps的条带的图片标头或条带标头中存在的去方块参数偏移量覆盖。pps_cb_beta_offset_div2和pps_cb_tc_offset_div2的值均应在-12至12(含)的范围内。当不存在时,pps_cb_beta_offset_div2和pps_cb_tc_offset_div2的值都被推断为等于0。[0843]pps_cr_beta_offset_div2和pps_cr_tc_offset_div2规定应用于引用pps的条带的cr分量的β和tc(除以2)的默认去方块参数偏移量,除非默认去方块参数偏移量被引用pps的条带的图片标头或条带标头中存在的去方块参数偏移量覆盖。pps_cr_beta_offset_div2和pps_cr_tc_offset_div2的值均应在-12至12(含)的范围内。当不存在时,pps_cr_beta_offset_div2和pps_cr_tc_offset_div2的值都被推断为等于0。[0844]rpl_info_in_ph_flag等于1规定参考图片列表信息存在于ph语法结构中,而不存在于引用不包含ph语法结构的pps的条带标头中。rpl_info_in_ph_flag等于0规定参考图片列表信息不存在于ph语法结构中,并且可能存在于引用不包含ph语法结构的pps的条带标头中。[0845]dbf_info_in_ph_flag等于1规定去方块滤波器信息存在于ph语法结构中,而不存在于引用不包含ph语法结构的pps的条带标头中。dbf_info_in_ph_flag等于0规定去方块滤波器信息不存在于ph语法结构中,并且可能存在于引用不包含ph语法结构的pps的条带标头中。当不存在时,dbf_info_in_ph_flag的值被推断为等于0。[0846]sao_info_in_ph_flag等于1规定sao滤波器信息存在于ph语法结构中,而不存在于引用不包含ph语法结构的pps的条带标头中。sao_info_in_ph_flag等于0规定sao滤波器信息不存在于ph语法结构中,并且可能存在于引用不包含ph语法结构的pps的条带标头中。[0847]alf_info_in_ph_flag等于1规定alf信息存在于ph语法结构中,而不存在于引用不包含ph语法结构的pps的条带标头中。alf_info_in_ph_flag等于0规定alf信息不存在于ph语法结构中,并且可能存在于引用不包含ph语法结构的pps的条带标头中。[0848]wp_info_in_ph_flag等于1规定加权预测信息可能存在于ph语法结构中,而不存在于引用不包含ph语法结构的pps的条带标头中。wp_info_in_ph_flag等于0规定加权预测信息不存在于ph语法结构中,并且可能存在于引用不包含ph语法结构的pps的条带标头中。当不存在时,wp_info_in_ph_flag的值被推断为等于0。[0849]qp_delta_info_in_ph_flag等于1规定qp增量信息存在于ph语法结构中,而不存在于引用不包含ph语法结构的pps的条带标头中。qp_delta_info_in_ph_flag等于0规定qp增量信息不存在于ph语法结构中,并且可能存在于引用不包含ph语法结构的pps的条带标头中。[0850]pps_ref_wraparound_enabled_flag等于1规定在帧间预测中应用水平环绕运动补偿。pps_ref_wraparound_enabled_flag等于0规定不应用水平环绕运动补偿。当ctbsizey/mincbsizey+1的值大于pic_width_in_luma_samples/mincbsizey-1时,pps_ref_wraparound_enabled_flag的值应等于0。当sps_ref_wraparound_enabled_flag等于0时,pps_ref_wraparound_enabled_flag的值应等于0。[0851]pps_ref_wraparound_offset加(ctbsizey/mincbsizey)+2规定用于计算以mincbsizey亮度样点为单位的水平环绕位置的偏移量。pps_ref_wraparound_offset的值应在0到(pic_width_in_luma_samples/mincbsizey)-(ctbsizey/mincbsizey)-2(含)的范围内。[0852]变量ppsrefwraparoundoffset被设置为等于pps_ref_wraparound_offset+(ctbsizey/mincbsizey)+2。[0853]picture_header_extension_present_flag等于0规定在引用pps的ph中不存在ph扩展语法元素。picture_header_extension_present_flag等于1规定ph扩展语法元素存在于引用pps的ph中。picture_header_extension_present_flag在符合本规范版本的比特流中应等于0。[0854]slice_header_extension_present_flag等于0规定引用pps的编解码图片的条带标头中不存在条带标头扩展语法元素。slice_header_extension_present_flag等于1规定引用pps的编解码图片的条带标头中存在条带标头扩展语法元素。slice_header_extension_present_flag在符合本规范版本的比特流中应等于0。[0855]pps_extension_flag等于0规定没有pps_extension_data_flag语法元素存在于ppsrbsp语法结构中。pps_extension_flag等于1规定pps_extension_data_flag语法元素存在于ppsrbsp语法结构中。[0856]pps_extension_data_flag可以有任何值。其存在和值不影响解码器与本规范本版本中规定的简档的一致性。符合本规范本版本的解码器应忽略所有pps_extension_data_flag语法元素。[0857]7.4.3.5自适应参数集语义[0858]每个apsrbsp在被引用、被包括在至少一个au中(其temporalid小于或等于引用它的编解码条带nal单元的temporalid)或通过外部方式提供之前应可用于解码过程。[0859]pu内具有adaptation_parameter_set_id特定值和aps_params_type特定值的所有apsnal单元,无论它们是前缀还是后缀apsnal单元,都应具有相同的内容。[0860]adaptation_parameter_set_id为aps提供一个标识符以供其他语法元素引用。[0861]当aps_params_type等于alf_aps或scaling_aps时,adaptation_parameter_set_id的值应在0到7(含)的范围内。[0862]当aps_params_type等于lmcs_aps时,adaptation_parameter_set_id的值应在0到3(含)的范围内。[0863]设apslayerid为特定apsnal单元的nuh_layer_id的值,以及vcllayerid为特定vclnal单元的nuh_layer_id的值。特定vclnal单元应当不引用特定的apsnal单元,除非apslayerid小于或等于vcllayerid,且nuh_layer_id等于apslayerid的层被包括在至少一个ols中,该ols包括nuh_layer_id等于vcllayerid的层。[0864]aps_params_type规定aps中携带的aps参数类型,如表6所示。[0865]表6–aps参数类型代码和aps参数类型[0866][0867]所有具有aps_params_type的特定值的apsnal单元,无论nuh_layer_id值如何,都为adaptation_parameter_set_id共享相同的值空间。具有aps_params_type的不同值的apsnal单元为adaptation_parameter_set_id使用单独的值空间。[0868]注1–apsnal单元(具有adaptation_parameter_set_id的特定值和aps_params_type的特定值)可以在图片之间共享,并且图片内的不同条带可以引用不同的alfaps。[0869]注2–与特定vclnal单元相关联的后缀apsnal单元(此vclnal单元在解码顺序上位于后缀apsnal单元之前)不供特定的vclnal单元使用,而是供解码顺序上位于后缀apsnal单元之后的vclnal单元使用。[0870]aps_extension_flag等于0规定apsrbsp语法结构中不存在aps_extension_data_flag语法元素。aps_extension_flag等于1规定apsrbsp语法结构中存在aps_extension_data_flag语法元素。[0871]aps_extension_data_flag可以有任何值。其存在和值不影响解码器与本规范本版本中规定的简档的一致性。符合本规范本版本的解码器应忽略所有aps_extension_data_flag语法元素。[0872]7.4.3.6图片标头rbsp语义[0873]phrbsp包含ph语法结构,即picture_header_structure()。[0874]7.4.3.7图片标头结构语义[0875]ph语法结构包含与ph语法结构相关联的编解码图片的所有条带的通用信息。[0876]gdr_or_irap_pic_flag等于1规定当前图片是gdr或irap图片。gdr_or_irap_pic_flag等于0规定当前图片可能是也可能不是gdr或irap图片。[0877]gdr_pic_flag等于1规定与ph相关联的图片为gdr图片。gdr_pic_flag等于0规定与ph相关联的图片不是gdr图片。当不存在时,gdr_pic_flag的值被推断为等于0。当gdr_enabled_flag等于0时,gdr_pic_flag的值应等于0。[0878]ph_inter_slice_allowed_flag等于0规定图片的所有编解码条带的slice_type等于2。ph_inter_slice_allowed_flag等于1规定图片中可能存在或不存在一个或多个slice_type等于0或1的编解码条带。[0879]ph_intra_slice_allowed_flag等于0规定图片的所有编解码条带的slice_type等于0或1。ph_intra_slice_allowed_flag等于1规定图片中可能有也可能没有一个或多个slice_type等于2的编解码条带。当不存在时,ph_intra_slice_allowed_flag的值被推断为等于1。[0880]注1–对于支持基于子图片的比特流merging而无需更改phnal单元的比特流,编码器被期望将ph_inter_slice_allowed_flag和ph_intra_slice_allowed_flag的值设置为等于1。[0881]non_reference_picture_flag等于1规定与ph相关联的图片从不用作参考图片。non_reference_picture_flag等于0规定与ph相关联的图片可能或可能不用作参考图片。[0882]ph_pic_parameter_set_id规定正在使用的pps的pps_pic_parameter_set_id的值。ph_pic_parameter_set_id的值应在0到63(含)的范围内。[0883]比特流一致性的一个要求是,ph的temporalid值应大于或等于pps_pic_parameter_set_id等于ph_pic_parameter_set_id的pps的temporalid值。[0884]ph_pic_order_cnt_lsb规定当前图片的图片顺序计数模maxpicordercntlsb。ph_pic_order_cnt_lsb语法元素的长度为log2_max_pic_order_cnt_lsb_minus4+4位。ph_pic_order_cnt_lsb的值应在0到maxpicordercntlsb-1(含)的范围内。[0885]在解码不是比特流中的第一个图片的clvss图片之后,no_output_of_prior_pics_flag会影响dpb中先前解码的图片的输出。[0886]recovery_poc_cnt按输出顺序规定解码图片的恢复点。如果当前图片是与ph相关联的gdr图片,并且在clvs中存在解码顺序中跟随当前gdr图片的图片pica,其picordercntval等于当前gdr图片的picordercntval加上recovery_poc_cnt的值,则图片pica被称为恢复点图片。否则,输出顺序中picordercntval大于当前图片的picordercntval加上recovery_poc_cnt值的第一个图片称为恢复点图片。在解码顺序中,恢复点图片不得位于当前gdr图片之前。recovery_poc_cnt的值应在0到maxpicordercntlsb-1(含)的范围内。[0887]在当前图片是gdr图片时,按照如下方式推导变量rppicordercntval:[0888]rppicordercntval=picordercntval+recovery_poc_cntꢀꢀꢀ(82)[0889]注2–当gdr_enabled_flag等于1且当前图片的picordercntval大于或等于相关联gdr图片的rppicordercntval时,当前和后续解码图片按输出顺序与通过从先前irap图片(如果存在)开始解码过程产生的对应图片完全匹配,在解码顺序中位于相关gdr图片之前。[0890]ph_extra_bit[i]可以等于1或0。符合本规范本版本的解码器应忽略ph_extra_bit[i]的值。其值不影响解码器与本规范版本中规定的简档的一致性。[0891]ph_poc_msb_present_flag等于1规定语法元素poc_msb_val存在于ph中。ph_poc_msb_present_flag等于0规定语法元素poc_msb_val不存在于ph中。当vps_independent_layer_flag[generallayeridx[nuh_layer_id]]等于0且当前层的参考层中的当前au中存在图片时,ph_poc_msb_present_flag的值应等于0。[0892]poc_msb_val规定当前图片的pocmab值。语法元素poc_msb_val的长度是poc_msb_len_minus1+1位。[0893]ph_alf_enabled_flag等于1规定对与ph相关联的所有条带启用自适应环路过滤器,并可以应用于条带中的y、cb或cr颜色分量。ph_alf_enabled_flag等于0规定可以对与ph相关联的一个、多个或所有条带禁用自适应环路滤波器。当不存在时,ph_alf_enabled_flag被推断为等于0。[0894]ph_num_alf_aps_ids_luma规定与ph相关联的条带所引用的alfaps的数目。[0895]ph_alf_aps_id_luma[i]规定与ph相关联的条带的亮度分量所引用的第i个alfaps的adaptation_parameter_set_id。[0896]aps_params_type等于alf_aps且adaptation_parameter_set_id等于ph_alf_aps_id_luma[i]的apsnal单元的alf_luma_filter_signal_flag的值应等于1。[0897]aps_params_type等于alf_aps且adaptation_parameter_set_id等于ph_alf_aps_id_luma[i]的apsnal单元的temporalid应小于或等于与ph相关联的图片的temporalid。[0898]ph_alf_chroma_idc等于0规定自适应环路滤波器不应用于cb和cr颜色分量。ph_alf_chroma_idc等于1指示自适应环路滤波器应用于cb颜色分量。ph_alf_chroma_idc等于2指示自适应环路滤波器应用于cr颜色分量。ph_alf_chroma_idc等于3指示自适应环路滤波器应用于cb和cr颜色分量。当ph_alf_chroma_idc不存在时,其被推断为等于0。[0899]ph_alf_aps_id_chroma规定与ph相关联的条带的色度分量所引用的alfaps的adaptation_parameter_set_id。[0900]aps_params_type等于alf_aps且adaptation_parameter_set_id等于ph_alf_aps_id_chroma的apsnal单元的alf_chroma_filter_signal_flag值应等于1。[0901]aps_params_type等于alf_aps且adaptation_parameter_set_id等于ph_alf_aps_id_chroma的apsnal单元的temporalid应小于或等于与ph相关联的图片的temporalid。[0902]ph_cc_alf_cb_enabled_flag等于1规定对与ph相关联的所有条带启用cb颜色分量的交叉分量滤波器,并可以应用于条带中的cb颜色分量。ph_cc_alf_cb_enabled_flag等于0规定可以对与ph相关联的一个或多个或所有条带禁用cb颜色分量的交叉分量过滤器。当不存在时,ph_cc_alf_cb_enabled_flag被推断为等于0。[0903]ph_cc_alf_cb_aps_id规定与ph相关联的条带的cb颜色分量所引用的alfaps的adaptation_parameter_set_id。[0904]aps_params_type等于alf_aps且adaptation_parameter_set_id等于ph_cc_alf_cb_aps_id的apsnal单元的alf_cc_cb_filter_signal_flag值应等于1。[0905]ph_cc_alf_cr_enabled_flag等于1规定对与ph相关联的所有条带启用cr颜色分量的交叉分量滤波器,并可以应用于条带中的cr颜色分量。ph_cc_alf_cr_enabled_flag等于0规定可以对与ph相关联的一个或多个或所有条带禁用cr颜色分量的交叉分量滤波器。当不存在时,ph_cc_alf_cr_enabled_flag被推断为等于0。[0906]ph_cc_alf_cr_aps_id规定与ph相关联的条带的cr颜色分量所引用的alfaps的adaptation_parameter_set_id。[0907]aps_params_type等于alf_aps且adaptation_parameter_set_id等于ph_cc_alf_cr_aps_id的apsnal单元的alf_cc_cr_filter_signal_flag的值应等于1。[0908]ph_lmcs_enabled_flag等于1规定对与ph相关联的所有条带启用具有色度缩放的亮度映射。ph_lmcs_enabled_flag等于0规定可以对与ph相关联的一个或多个或所有条带禁用具有色度缩放的亮度映射。当不存在时,ph_lmcs_enabled_flag的值被推断为等于0。[0909]ph_lmcs_aps_id规定与ph相关联的条带所引用的lmcsaps的adaptation_parameter_set_id。aps_params_type等于lmcs_aps且adaptation_parameter_set_id等于ph_lmcs_aps_id的apsnal单元的temporalid应小于或等于与ph相关联的图片的temporalid。[0910]ph_chroma_residual_scale_flag等于1规定对与ph相关联的所有条带启用色度残差缩放。ph_chroma_residual_scale_flag等于0规定可以对与ph相关联的一个或多个或所有条带禁用色度残差缩放。当ph_chroma_residual_scale_flag不存在时,其被推断为等于0。[0911]ph_scaling_list_present_flag等于1规定用于与ph相关联的条带的缩放列表数据是基于参考缩放列表aps中包含的缩放列表数据推导的。ph_scaling_list_present_flag等于0规定用于与ph相关联的条带的缩放列表数据被设置为等于16。当不存在时,ph_scaling_list_present_flag的值被推断为等于0。[0912]ph_scaling_list_aps_id规定缩放列表aps的adaptation_parameter_set_id。aps_params_type等于scaling_aps且adaptation_parameter_set_id等于ph_scaling_list_aps_id的apsnal单元的temporalid应小于或等于与ph相关联的图片的temporalid。[0913]ph_virtual_boundaries_present_flag等于1规定在ph中信令通知虚拟边界的信息。ph_virtual_boundaries_present_flag等于0规定在ph中不信令通知虚拟边界的信息。当ph中信令通知一个或多个虚拟边界时,跨图片中的虚拟边界禁用环路滤波操作。环路滤波操作包括去方块滤波器、采样自适应偏移滤波器和自适应环路滤波器操作。当不存在时,ph_virtual_boundaries_present_flag的值被推断为等于0。[0914]比特流一致性的一个要求是,当subpic_info_present_flag等于1时,ph_virtual_boundaries_present_flag的值应等于0。[0915]按照如下方式推导变量virtualboundariespresentflag:[0916]virtualboundariespresentflag=0[0917]if(sps_virtual_boundaries_enabled_flag)[0918]virtualboundariespresentflag=sps_virtual_boundaries_present_flag||[0919]ph_virtual_boundaries_present_flagꢀꢀꢀꢀꢀꢀꢀꢀꢀ(83)[0920]ph_num_ver_virtual_boundaries规定ph中存在的ph_virtual_boundaries_pos_x[i]语法元素的数目。当ph_num_ver_virtual_boundaries不存在时,其被推断为等于0。[0921]按照如下方式推导变量numvervirtualboundaries:[0922]numvervirtualboundaries=0[0923]if(sps_virtual_boundaries_enabled_flag)[0924]numvervirtualboundaries=sps_virtual_boundaries_present_flag?[0925]sps_num_ver_virtual_boundaries:ph_num_ver_virtual_boundariesꢀꢀ(84)[0926]ph_virtual_boundaries_pos_x[i]规定第i个垂直虚拟边界的位置,以亮度样点除以8为单位。ph_virtual_boundaries_pos_x[i]的值应在1到ceil(pic_width_in_luma_samples÷8)-1(含)的范围内。[0927]按照如下方式推导列表virtualboundariesposx[i](对于从0到numvirtualboundaries-1(含)范围内的i),以亮度样点为单位,规定垂直虚拟边界的位置:[0928]for(i=0;i《numvervirtualboundaries;i++)[0929]virtualboundariesposx[i]=(sps_virtual_boundaries_present_flag?[0930]sps_virtual_boundaries_pos_x[i]:ph_virtual_boundaries_pos_x[i])*8[0931](85)[0932]任何两个垂直虚拟边界之间的距离应大于或等于ctbsizey亮度样点。[0933]ph_num_hor_virtual_boundaries规定ph中存在的ph_virtual_boundaries_pos_y[i]语法元素的数目。当ph_num_hor_virtual_boundaries不存在时,其被推断为等于0。[0934]按照如下方式推导参数numhorvirtualboundaries:[0935]numhorvirtualboundaries=0[0936]if(sps_virtual_boundaries_enabled_flag)[0937]numhorvirtualboundaries=sps_virtual_boundaries_present_flag?[0938]sps_num_hor_virtual_boundaries:ph_num_hor_virtual_boundaries[0939](86)[0940]当sps_virtual_boundaries_enabled_flag等于1且ph_virtual_boundaries_present_flag等于1时,ph_num_ver_virtual_boundaries和ph_num_hor_virtual_boundaries之和应大于0。[0941]ph_virtual_boundaries_pos_y[i]规定第i个水平虚拟边界的位置,以亮度样点除以8为单位。ph_virtual_boundaries_pos_y[i]的值应在1到ceil(pic_height_in_luma_samples÷8)-1(含)的范围内。[0942]按照如下方式推导列表virtualboundariesposy[i](对于从0到numvirtualboundaries-1(含)范围内的i),以亮度样点为单位,规定水平虚拟边界的位置:[0943]for(i=0;i《numhorvirtualboundaries;i++)[0944]virtualboundariesposy[i]=(sps_virtual_boundaries_present_flag?[0945]sps_virtual_boundaries_pos_y[i]:ph_virtual_boundaries_pos_y[i])*8[0946](87)[0947]任何两个水平虚拟边界之间的距离应大于或等于ctbsizey亮度样点。[0948]pic_output_flag影响解码图片输出和删除过程。当pic_output_flag不存在时,其被推断为等于1。[0949]partition_constraints_override_flag等于1规定分区约束参数存在于ph中。partition_constraints_override_flag等于0规定分区约束参数不存在于ph中。当不存在时,partition_constraints_override_flag的值被推断为等于0。[0950]ph_log2_diff_min_qt_min_cb_intra_slice_luma规定由ctu的四叉树划分而产生的亮度叶块的亮度样点中最小尺寸的基2对数和与ph相关联的slice_type等于2的条带中的亮度cu的亮度样点中最小编解码块尺寸的基2对数之间的差值。ph_log2_diff_min_qt_min_cb_intra_slice_luma的值应在0到ctblog2sizey-mincblog2sizey(含)的范围内。当不存在时,ph_log2_diff_min_qt_min_cb_luma的值被推断为等于sps_log2_diff_min_qt_min_cb_intra_slice_luma。[0951]ph_max_mtt_hierarchy_depth_intra_slice_luma规定由与ph相关联的slice_type等于2(i)的条带中的四叉树叶的多类型树划分而产生的编解码单元的最大层次深度。ph_max_mtt_hierarchy_depth_intra_slice_luma的值应在0到2*(ctblog2sizey-mincblog2sizey)(含)的范围内。当不存在时,ph_max_mtt_hierarchy_depth_intra_slice_luma的值被推断为等于sps_max_mtt_hierarchy_depth_intra_slice_luma。[0952]ph_log2_diff_max_bt_min_qt_intra_slice_luma规定可以使用二元划分的亮度编解码块的亮度样点中的最大尺寸(宽度或高度)的基2对数与由与ph相关联的slice_type等于2(i)的条带中的ctu的四叉树划分产生的亮度叶块的亮度样点中的最小尺寸(宽度或高度)之间的差。ph_log2_diff_max_bt_min_qt_intra_slice_luma的值应在0到ctblog2sizey-minqtlog2sizeintray(含)的范围内。当不存在时,ph_log2_diff_max_bt_min_qt_intra_slice_luma的值被推断为等于sps_log2_diff_max_bt_min_qt_intra_slice_luma。[0953]ph_log2_diff_max_tt_min_qt_intra_slice_luma规定可以使用三元划分的亮度编解码块的亮度样点中的最大尺寸(宽度或高度)的基2对数和由与ph相关联的slice_type等于2(i)的条带中的ctu的四叉树划分产生的亮度叶块的亮度样点中的最小尺寸(宽度或高度)之间的差。ph_log2_diff_max_tt_min_qt_intra_slice_luma的值应在0到ctblog2sizey-minqtlog2sizeintray(含)的范围内。当不存在时,ph_log2_diff_max_tt_min_qt_intra_slice_luma的值被推断为等于sps_log2_diff_max_tt_min_qt_intra_slice_luma。[0954]ph_log2_diff_min_qt_min_cb_intra_slice_chroma规定由treetype等于dual_tree_chroma的色度ctu的四叉树划分而产生的色度叶块的亮度样点中最小尺寸的基2对数和与ph值相关联的slice_type等于2(i)的条带中的treetype等于dual_tree_chroma的色度cu的亮度样点中最小编解码块尺寸的基2对数之间的差。ph_log2_diff_min_qt_min_cb_intra_slice_chroma的值应在0到ctblog2sizey-mincblog2sizey(含)的范围内。当不存在时,ph_log2_diff_min_qt_min_cb_intra_slice_chroma的值被推断为等于sps_log2_diff_min_qt_cb_intra_slice_chroma。[0955]ph_max_mtt_hierarchy_depth_intra_slice_chroma规定与ph相关联的slice_type等于2(i)的条带中的treetype等于dual_tree_chroma的色度四叉树叶的多类型树划分产生的色度编解码单元的最大层次深度。ph_max_mtt_hierarchy_depth_intra_slice_chroma的值应在0到2*(ctblog2sizey-mincblog2sizey)(含)的范围内。当不存在时,ph_max_mtt_hierarchy_depth_intra_slice_chroma的值被推断为等于sps_max_mtt_hierarchy_depth_intra_slice_chroma。[0956]ph_log2_diff_max_bt_min_qt_intra_slice_chroma规定可以使用二元划分的色度编解码块的亮度样点中的最大尺寸(宽度或高度)的基2对数和与ph相关联的slice_type等于2(i)的条带中treetype等于dual_tree_chroma的色度ctu的四叉树划分产生的色度叶块的亮度样点中的最小尺寸(宽度或高度)之间的差。ph_log2_diff_max_bt_min_qt_intra_slice_chroma的值应在0到ctblog2sizey-minqtlog2sizeintrac(含)的范围内。当不存在时,ph_log2_diff_max_bt_min_qt_intra_slice_chroma的值被推断为等于sps_log2_diff_max_bt_min_qt_intra_slice_chroma。minqtlog2sizeintery(含)的范围内。当不存在时,ph_log2_diff_max_tt_min_qt_inter_slice的值被推断为等于sps_log2_diff_max_tt_min_qt_inter_slice。[0966]ph_cu_qp_delta_subdiv_inter_slice规定在表示cu_qp_delta_abs和cu_qp_delta_sign_flag帧间条带中的编解码单元的最大cbsubdiv值。ph_cu_qp_delta_subdiv_inter_slice的值应在0到2*(ctblog2sizey-minqtlog2sizeintery+ph_max_mtt_hierarchy_depth_inter_slice)(含)的范围内。[0967]当不存在时,ph_cu_qp_delta_subdiv_inter_slice的值被推断为等于0。[0968]ph_cu_chroma_qp_offset_subdiv_inter_slice规定表示cu_chroma_qp_offset_flag的帧间条带中编解码单元的最大cbsubdiv值。ph_cu_chroma_qp_offset_subdiv_inter_slice的值应在0到2*(ctblog2sizey-minqtlog2sizeintery+ph_max_mtt_hierarchy_depth_inter_slice)(含)的范围内。[0969]当不存在时,ph_cu_chroma_qp_offset_subdiv_inter_slice的值被推断为等于0。[0970]ph_temporal_mvp_enabled_flag规定时域运动矢量预测值是否可以用于与ph相关联的条带的帧间预测。如果ph_temporal_mvp_enabled_flag等于0,则与ph相关联的条带的语法元素应受到约束,使得在条带的解码中不使用时域运动矢量预测值。否则(ph_temporal_mvp_enabled_flag等于1),时域运动矢量预测值可以用于解码与ph相关联的条带。当不存在时,ph_temporal_mvp_enabled_flag的值被推断为等于0。当dpb中没有参考图片具有与当前图片相同的空域分辨率时,ph_temporal_mvp_enabled_flag的值应等于0。[0971]按照如下方式推导基于子块的mergingmvp候选的最大数目maxnumsubblockmergecand:[0972]if(sps_affine_enabled_flag)[0973]maxnumsubblockmergecand=5-five_minus_max_num_subblock_merge_cand[0974](88)[0975]else[0976]maxnumsubblockmergecand=sps_sbtmvp_enabled_flag&&ph_temporal_mvp_[0977]enable_flag[0978]maxnumsubblockmergecand的值应在0到5(含)的范围内。[0979]ph_collocated_from_l0_flag等于1规定用于时域运动矢量预测的并置图片从参考图片列表0导出。ph_collocated_from_l0_flag等于0规定用于时域运动矢量预测的并置图片从参考图片列表1导出。[0980]ph_collocated_ref_idx规定用于时域运动矢量预测的并置图片的参考索引。[0981]当ph_collocated_from_l0_flag等于1时,ph_collocated_ref_idx指代参考图片列表0中的条目,并且ph_collocated_ref_idx的值应在0到num_ref_entries[0][picrplsidx[0]]-1(含)的范围内。[0982]当ph_collocated_from_l0_flag等于0时,ph_collocated_ref_idx指代参考图片列表1中的条目,并且ph_collocated_ref_idx的值应在0到num_ref_entries[1][picrplsidx[1]]-1(含)的范围内。[0983]当不存在时,ph_collocated_ref_idx的值被推断为等于0。[0984]mvd_l1_zero_flag等于1指示未解析mvd_coding(x0,y0,1)语法结构,并且对于compidx=0..1且cpidx=0..2,mvdl1[x0][y0][compidx]和mvdcpl1[x0][y0][cpidx][compidx]被设置为等于0。mvd_l1_zero_flag等于0指示mvd_coding(x0,y0,1)语法结构被解析。[0985]ph_fpel_mmvd_enabled_flag等于1规定具有运动矢量差的merge模式在与ph相关联的条带中使用整数样点精度。ph_fpel_mmvd_enabled_flag等于0规定具有运动矢量差的merge模式可以在与ph相关联的条带中使用分数样点精度。当不存在时,ph_fpel_mmvd_enabled_flag的值被推断为0。[0986]ph_disable_bdof_flag等于1规定在与ph相关联的条带中禁用基于双向光流帧间预测的帧间双向预测。ph_disable_bdof_flag等于0规定在与ph相关联的条带中可以启用也可以不启用基于双向光流帧间预测的帧间双向预测。[0987]当ph_disable_bdof_flag不存在时,以下内容适用:[0988]–如果sps_bdof_enabled_flag等于1,则ph_disable_bdof_flag的值被推断为等于0。[0989]–否则(sps_bdof_enabled_flag等于0),ph_disable_bdof_flag的值被推断为等于1。[0990]ph_disable_dmvr_flag等于1规定在与ph相关联的条带中禁用基于解码器运动矢量优化的帧间双向预测。ph_disable_dmvr_flag等于0规定在与ph相关联的条带中可以启用也可以不启用基于解码器运动矢量优化的帧间双向预测。[0991]当ph_disable_dmvr_flag不存在时,以下内容适用:[0992]–如果sps_dmvr_enabled_flag等于1,ph_disable_dmvr_flag的值被推断为等于0。[0993]–否则(sps_dmvr_enabled_flag等于0),ph_disable_dmvr_flag的值被推断为等于1。[0994]ph_disable_prof_flag等于1规定在与ph相关联的条带中禁用具有光流的预测优化。ph_disable_prof_flag等于0规定在与ph相关联的条带中可以启用或不启用具有光流的预测优化。[0995]当ph_disable_prof_flag不存在时,以下内容适用:[0996]–如果sps_affine_prof_enabled_flag等于1,则ph_disable_prof_flag的值被推断为等于0。[0997]–否则(sps_affine_prof_enabled_flag等于0),则ph_disable_prof_flag的值被推断为等于1。[0998]ph_qp_delta规定要用于图片中的编解码块的qpy的初始值,直到被编解码单元层中的cuqpdeltaval的值修改为止。[0999]当qp_delta_info_in_ph_flag等于1时,按照如下方式推导图片的所有条带的qpy量化参数的初始值sliceqpy:[1000]sliceqpy=26+init_qp_minus26+ph_qp_deltaꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(89)[1001]sliceqpy的值应在-qpbdoffset到+63(含)的范围内。[1002]ph_joint_cbcr_sign_flag规定在tu_joint_cbcr_residual_flag[x0][y0]等于1的变换单元中,两个色度分量的并置残差样点是否具有倒符号。当tu_joint_cbcr_residual_flag[x0][y0]对于变换单元等于1时,ph_joint_cbcr_sign_flag等于0规定cr(或cb)分量的每个残差样点的符号与并置cb(或cr)残差样点的符号相同,并且ph_joint_cbcr_sign_flag等于1规定cr(或cb)分量的每个残差样点的符号由并置cb(或cr)残差样点的倒符号给出。[1003]ph_sao_luma_enabled_flag等于1规定在与ph相关联的所有条带中为亮度分量启用sao;ph_sao_luma_enabled_flag等于0规定可以对与ph相关联的一个或多个或所有条带禁用亮度分量的sao。当ph_sao_luma_enabled_flag不存在时,其被推断为等于0。[1004]ph_sao_chroma_enabled_flag等于1规定为与ph相关联的所有条带中的色度分量启用sao;ph_sao_chroma_enabled_flag等于0规定可以对与ph相关联的一个或多个或所有条带禁用色度分量的sao。当ph_sao_chroma_enabled_flag不存在时,其被推断为等于0。[1005]ph_dep_quant_enabled_flag等于0规定为当前图片禁用相关量化。ph_dep_quant_enabled_flag等于1规定为当前图片启用相关量化。当ph_dep_quant_enabled_flag不存在时,其被推断为等于0。[1006]pic_sign_data_hiding_enabled_flag等于0规定对当前图片禁用符号位隐藏。pic_sign_data_hiding_enabled_flag等于1规定为当前图片启用符号位隐藏。当pic_sign_data_hiding_enabled_flag不存在时,其被推断为等于0。[1007]ph_deblocking_filter_override_flag等于1规定ph中存在去方块参数。ph_deblocking_filter_override_flag等于0规定ph中不存在去方块参数。当不存在时,ph_deblocking_filter_override_flag的值被推断为等于0。[1008]ph_deblocking_filter_disabled_flag等于1规定去方块滤波器的操作不被应用于与ph相关联的条带。ph_deblocking_filter_disabled_flag等于0规定去方块滤波器的操作不被应用于与ph相关联的条带。当ph_deblocking_filter_disabled_flag不存在时,其被推断为等于pps_deblocking_filter_disabled_flag。[1009]ph_beta_offset_div2和ph_tc_offset_div2规定应用于与ph相关联的条带的亮度分量的β和tc(除以2)的去方块参数偏移量。ph_beta_offset_div2和ph_tc_offset_div2的值均应在-12至12(含)的范围内。当不存在时,ph_beta_offset_div2和ph_tc_offset_div2的值分别被推断为等于pps_beta_offset_div2和pps_tc_offset_div2。[1010]ph_cb_beta_offset_div2和ph_cb_tc_offset_div2规定应用于与ph相关联的条带的cb分量的β和tc(除以2)的去方块参数偏移。ph_cb_beta_offset_div2和ph_cb_tc_offset_div2的值均应在-12至12(含)的范围内。当不存在时,ph_cb_beta_offset_div2和ph_cb_tc_offset_div2的值分别被推断为等于pps_cb_beta_offset_div2和pps_cb_tc_offset_div2。[1011]ph_cr_beta_offset_div2和ph_cr_tc_offset_div2规定应用于与ph相关联的条带的cr分量的β和tc(除以2)的去方块参数偏移量。ph_cr_beta_offset_div2和ph_cr_tc_offset_div2的值均应在-12至12(含)的范围内。当不存在时,ph_cr_beta_offset_div2和ph_cr_tc_offset_div2的值被分别推断为等于pps_cr_beta_offset_div2和pps_cr_tc_offset_div2。[1012]ph_extension_length规定以字节为单位的ph扩展数据的长度,不包括用于信令通知ph_extension_length本身的位。ph_extension_length的值应在0到256(含)的范围内。当不存在时,ph_extension_length的值被推断为等于0。[1013]ph_extension_data_byte可以具有任何值。符合本规范本版本的解码器应忽略ph_extension_data_byte的值。其值不影响解码器与本规范版本中规定的简档的一致性。[1014]7.4.8条带标头语义[1015]7.4.8.1通用条带标头语义[1016]变量cuqpdeltaval被设置为等于0,其规定包含cu_qp_delta_abs的编解码单元的量化参数与其预测之间的差。规定在确定包含cu_chroma_qp_offset_flag的编解码单元的qp'cb、qp'cr和qp'cbcr量化参数的各自值时要使用的值的变量cuqpoffsetcb、cuqpoffsetcr和cuqpoffsetcbcr都被设置为等于0。[1017]picture_header_in_slice_header_flag等于1规定ph语法结构存在于条带标头中。picture_header_in_slice_header_flag等于0规定ph语法结构不存在于条带标头中。[1018]比特流一致性的一个要求是,clvs中所有编解码条带中的picture_header_in_slice_header_flag的值应相同。[1019]当编解码条带的picture_header_in_slice_header_flag等于1时,比特流一致性的要求是没有nal_unit_type等于ph_nut的vclnal单元应当存在于clvs中。[1020]当picture_header_in_slice_header_flag等于0时,当前图片中的所有编解码条带的picture_header_in_slice_header_flag应等于0,并且当前pu应具有phnal单元。[1021]slice_subpic_id规定包含条带的子图片的子图片id。如果存在slice_subpic_id,则推导变量currsubpicidx的值以使得subpicidval[currsubpicidx]等于slice_subpic_id。否则(slice_subpic_id不存在),则currsubpicidx被推导为等于0。slice_subpic_id的长度为sps_subpic_id_len_minus1+1位。[1022]slice_address规定条带的条带地址。当不存在时,slice_address的值被推断为等于0。当rect_slice_flag等于1且numslicesinsubpic[currsubicidx]等于1时,slice_address的值被推断为等于0。[1023]如果rect_slice_flag等于0,则以下内容适用:[1024]-条带地址是光栅扫描片索引。[1025]-slice_address的长度为ceil(log2(numtilesinpic))位。[1026]-slice_address的值应在0到numtilesinpic-1(含)的范围内。[1027]否则(rect_slice_flag等于1),以下内容适用:[1028]-条带地址是条带的子图片级条带索引。[1029]-slice_address的长度为ceil(log2(numslicesinsubpic[currsubpicidx]))位。[1030]-slice_address的值应在0到numslicesinsubpic[currsubpicidx]-1(含)的范围内。[1031]比特流一致性的要求是应用以下约束:[1032]-如果rect_slice_flag等于0或subpic_info_present_flag等于0,则slice_address的值应当不等于同一编解码图片的任何其它编解码条带nal单元的slice_address的值。[1033]-否则,slice_subpic_id和slice_address值对应当不等于同一编解码图片的任何其它编解码条带nal单元的slice_subpic_id和slice_address值对。[1034]-图片的条带的形状应当使得每个ctu在被解码时应使其整个左边界和整个顶部边界由图片边界或先前解码的ctu边界组成。[1035]sh_extra_bit[i]可以等于1或0。符合本规范本版本的解码器应忽略sh_extra_bit[i]的值。其值不影响解码器与本规范版本中规定的简档的一致性。[1036]num_tiles_in_slice_minus1加1(当存在时)规定条带中的片的数目。num_tiles_in_slice_minus1的值应在0到numtilesinpic-1(含)的范围内。[1037]按照如下方式推导规定当前条带中ctu的数目的变量numctusincurrslice以及规定条带内第i个ctb的图片光栅扫描地址的列表ctbaddrincurrslice[i](对于0到numctusincurrslice-1(含)范围内的i):[1038][1039]按照如下方式推导变量subpicleftboundarypos、subpictopboundarypos、[1040][1041]slice_type规定根据表格9的条带的编解码类型。[1042]表格9—与slice_type的名称关联[1043]slice_typeslice_type的名称0b(b条带)1p(p条带)2i(i条带)[1044]当不存在时,slice_type的值被推断为等于2。[1045]当ph_intra_slice_allowed_flag等于0时,slice_type的值应当等于0或1。当nal_unit_type在idr_w_radl到cra_nut(含)的范围内且vps_independent_layer_flag[generallayeridx[nuh_layer_id]]等于1时,slice_type应当等于2。[1046]按照如下方式推导变量minqtlog2sizey、minqtlog2sizec、minqtsizey、minqtsizec、maxbtsizey、maxbtsizec、minbtsizey、maxttsizey、maxttsizec、minttsizey、maxmttdepthy和maxmttdepthc:ifslice_typeequalto2(i),[1047]minqtlog2sizey=[1048]mincblog2sizey+ph_log2_diff_min_qt_min_cb_intra_slice_luma(119)[1049]minqtlog2sizec=[1050]mincblog2sizey+ph_log2_diff_min_qt_min_cb_intra_slice_chroma(120)[1051]maxbtsizey=1《《[1052](minqtlog2sizey+ph_log2_diff_max_bt_min_qt_intra_slice_luma)ꢀꢀ(121)[1053]maxbtsizec=1《《[1054](minqtlog2sizec+ph_log2_diff_max_bt_min_qt_intra_slice_chroma)ꢀꢀ(122)[1055]maxttsizey=1《《[1056](minqtlog2sizey+ph_log2_diff_max_tt_min_qt_intra_slice_luma)ꢀꢀ(123)[1057]maxttsizec=1《《[1058](minqtlog2sizec+ph_log2_diff_max_tt_min_qt_intra_slice_chroma)ꢀꢀ(124)[1059]maxmttdepthy=ph_max_mtt_hierarchy_depth_intra_slice_lumaꢀꢀꢀ(125)[1060]maxmttdepthc=ph_max_mtt_hierarchy_depth_intra_slice_chromaꢀꢀ(126)[1061]cuqpdeltasubdiv=ph_cu_qp_delta_subdiv_intra_sliceꢀꢀꢀꢀꢀꢀ(127)[1062]cuchromaqpoffsetsubdiv=ph_cu_chroma_qp_offset_subdiv_intra_sliceꢀꢀ(128)otherwise(slice_typeequalto0(b)or1(p)),[1063]minqtlog2sizey=mincblog2sizey+ph_log2_diff_min_qt_min_cb_inter_slice[1064](129)[1065]minqtlog2sizec=mincblog2sizey+ph_log2_diff_min_qt_min_cb_inter_slice[1066](130)[1067]maxbtsizey=1《《[1068](minqtlog2sizey+ph_log2_diff_max_bt_min_qt_inter_slice)ꢀꢀꢀꢀ(131)[1069]maxbtsizec=1《《[1070](minqtlog2sizec+ph_log2_diff_max_bt_min_qt_inter_slice)ꢀꢀꢀꢀꢀ(132)[1071]maxttsizey=1《《[1072](minqtlog2sizey+ph_log2_diff_max_tt_min_qt_inter_slice)ꢀꢀꢀꢀ(133)[1073]maxttsizec=1《《[1074](minqtlog2sizec+ph_log2_diff_max_tt_min_qt_inter_slice)ꢀꢀꢀꢀꢀꢀ(134)[1075]maxmttdepthy=ph_max_mtt_hierarchy_depth_inter_sliceꢀꢀꢀꢀꢀꢀꢀꢀ(135)[1076]maxmttdepthc=ph_max_mtt_hierarchy_depth_inter_sliceꢀꢀꢀꢀꢀꢀꢀ(136)[1077]cuqpdeltasubdiv=ph_cu_qp_delta_subdiv_inter_sliceꢀꢀꢀꢀꢀꢀꢀꢀꢀ(137)[1078]cuchromaqpoffsetsubdiv=ph_cu_chroma_qp_offset_subdiv_inter_slice(138)minqtsizey=1《《minqtlog2sizey[1079](139)[1080]minqtsizec=1《《minqtlog2sizec[1081](140)[1082]minbtsizey=1《《mincblog2sizey[1083](141)[1084]minttsizey=1《《mincblog2sizey[1085](142)[1086]slice_alf_enabled_flag等于1规定自适应环路滤波器被启用并可以应用于条带中的y、cb或cr颜色分量。slice_alf_enabled_flag等于0规定对条带中的所有颜色分量禁用自适应环路滤波器。当不存在时,slice_alf_enabled_flag的值被推断为等于ph_alf_enabled_flag。[1087]slice_num_alf_aps_ids_luma规定条带引用的alfaps的数目。当slice_alf_enabled_flag等于1且slice_num_alf_aps_ids_luma不存在时,slice_num_alf_aps_ids_luma的值被推断为等于ph_num_alf_aps_ids_luma的值。[1088]slice_alf_aps_id_luma[i]规定条带的亮度分量所引用的第i个alfaps的adaptation_parameter_set_id。aps_params_type等于alf_aps且adaptation_parameter_set_id等于slice_alf_aps_id_luma[i]的apsnal单元的temporalid应小于或等于编解码的条带nal单元的temporalid。当slice_alf_enabled_flag等于1且slice_alf_aps_id_luma[i]不存在时,slice_alf_aps_id_luma[i]的值被推断为等于ph_alf_aps_id_luma[i]的值。[1089]aps_params_type等于alf_aps且adaptation_parameter_set_id等于slice_alf_aps_id_luma[i]的apsnal单元的alf_luma_filter_signal_flag的值应等于1。[1090]slice_alf_chroma_idc等于0规定自适应环路滤波器不被应用于cb和cr颜色分量。slice_alf_chroma_idc等于1指示自适应环路滤波器被应用于cb颜色分量。slice_alf_chroma_idc等于2指示自适应环路滤波器被应用于cr颜色分量。slice_alf_chroma_idc等于3指示自适应环路滤波器被应用于cb和cr颜色分量。当slice_alf_chroma_idc不存在时,其被推断为等于ph_alf_chroma_idc。[1091]slice_alf_aps_id_chroma规定条带的色度分量所引用的alfaps的adaptation_parameter_set_id。aps_params_type等于alf_aps且adaptation_parameter_set_id等于slice_alf_aps_id_chroma的apsnal单元的temporalid应小于或等于编解码的条带nal单元的temporalid。当slice_alf_enabled_flag等于1且slice_alf_aps_id_chroma不存在时,slice_alf_aps_id_chroma的值被推断为等于ph_alf_aps_id_chroma的值。[1092]aps_params_type等于alf_aps且adaptation_parameter_set_id等于slice_alf_aps_id_chroma的apsnal单元的alf_chroma_filter_signal_flag值应等于1。[1093]slice_cc_alf_cb_enabled_flag等于0规定交叉分量滤波器不被应用于cb颜色分量。slice_cc_alf_cb_enabled_flag等于1指示交叉分量滤波器已启用,并且可以应用于cb颜色分量。当slice_cc_alf_cb_enabled_flag不存在时,其被推断为等于ph_cc_alf_cb_enabled_flag。[1094]slice_cc_alf_cb_aps_id规定条带的cb颜色分量所引用的adaptation_parameter_set_id。[1095]aps_params_type等于alf_aps且adaptation_parameter_set_id等于slice_cc_alf_cb_aps_id的apsnal单元的temporalid应小于或等于编解码的条带nal单元的temporalid。当slice_cc_alf_cb_enabled_flag等于1且slice_cc_alf_cb_aps_id不存在时,slice_cc_alf_cb_aps_id的值被推断为等于ph_cc_alf_cb_aps_id的值。[1096]aps_params_type等于alf_aps且adaptation_parameter_set_id等于slice_cc_alf_cb_aps_id的apsnal单元的alf_cc_cb_filter_signal_flag的值应等于1。[1097]slice_cc_alf_cr_enabled_flag等于0规定交叉分量滤波器不被应用于cr颜色分量。slice_cc_alf_cb_enabled_flag等于1指示交叉分量自适应环路滤波器已启用,并且可以应用于cr颜色分量。当slice_cc_alf_cr_enabled_flag不存在时,其被推断为等于ph_cc_alf_cr_enabled_flag。[1098]slice_cc_alf_cr_aps_id规定条带的cr颜色分量所引用的adaptation_parameter_set_id。aps_params_type等于alf_aps且adaptation_parameter_set_id等于slice_cc_alf_cr_aps_id的apsnal单元的temporalid应小于或等于编解码的条带nal单元的temporalid。当slice_cc_alf_cr_enabled_flag等于1且slice_cc_alf_cr_aps_id不存在时,slice_cc_alf_cr_aps_id的值被推断为等于ph_cc_alf_cr_aps_id的值。[1099]aps_params_type等于alf_aps且adaptation_parameter_set_id等于slice_cc_alf_cr_aps_id的apsnal单元的alf_cc_cr_filter_signal_flag的值应等于1。[1100]当separate_colour_plane_flag等于1时,colour_plane_id标识与当前条带相关联的颜色平面。colour_plane_id的值应在0到2(含)的范围内。colour_plane_id值0、1和2分别对应于y、cb和cr平面。colour_plane_id的值3被保留以供itu-t|iso/iec将来使用。[1101]注1–一张图片的不同颜色平面的解码过程之间没有相关性。[1102]num_ref_idx_active_override_flag等于1规定存在语法元素num_ref_idx_active_minus1[0]用于p和b条带,并且存在语法元素num_ref_idx_active_minus1[1]用于b条带。num_ref_idx_active_override_flag等于0规定语法元素num_ref_idx_active_minus1[0]和num_ref_idx_active_minus1[1]不存在。当不存在时,num_ref_idx_active_override_flag的值被推断为等于1。[1103]num_ref_idx_active_minus1[i]用于推导等式143规定的变量numrefidxactive[i]。num_ref_idx_active_minus1[i]的值应在0到14(含)的范围内。[1104]对于i等于0或1,在当前条带为b条带,num_ref_idx_active_override_flag等于1,且num_ref_idx_active_minus1[i]不存在时,num_ref_idx_active_minus1[i]被推断为等于0。[1105]在当前条带为p条带,num_ref_idx_active_override_flag等于1,且num_ref_idx_active_minus1[0]不存在时,num_ref_idx_active_minus1[0]被推断为等于0。[1106]按照如下方式推导变量numrefidxactive[i]:[1107][1108]numrefidxactive[i]-1的值规定可以用于解码条带的参考图片列表i的最大参考索引。当numrefidxactive[i]的值等于0时,没有参考图片列表i的参考索引可以用于解码条带。[1109]在当前条带为p条带时,numrefidxactive[0]的值应大于0。[1110]在当前条带为b条带时,numrefidxactive[0]和numrefidxactive[1]都应大于0。[1111]cabac_init_flag规定用于确定上下文变量初始化过程中使用的初始化表格的方法。当cabac_init_flag不存在时,其被推断为等于0。[1112]slice_collocated_from_l0_flag等于1规定从参考图片列表0推导用于时域运动矢量预测的并置图片。slice_collocated_from_l0_flag等于0规定从参考图片列表1推导用于时域运动矢量预测的并置图片。[1113]当slice_type等于b或p、ph_temporal_mvp_enabled_flag等于1且slice_collocated_from_l0_flag不存在时,以下内容适用:[1114]–如果rpl_info_in_ph_flag等于1,则slice_collocated_from_l0_flag被推断为等于ph_collocated_from_l0_flag。[1115]–否则(rpl_info_in_ph_flag等于0且如果slice_type等于p,则slice_collocated_from_l0_flag的值被推断为等于1。[1116]slice_collocated_ref_idx规定用于时域运动矢量预测的并置图片的参考索引。[1117]当slice_type等于p或slice_type等于b且collocated_from_l0_flag等于1时,slice_collocated_ref_idx指代参考图片列表0中的条目,且slice_collocated_ref_idx的值应在0到numrefidxactive[0]-1(含)的范围内。[1118]当slice_type等于b且slice_collocated_from_l0_flag等于0时,slice_collocated_ref_idx指代参考图片列表1中的条目,且slice_collocated_ref_idx的值应在0到numrefidxactive[1]-1(含)的范围内。[1119]当slice_collocated_ref_idx不存在时,以下内容适用:[1120]–如果rpl_info_in_ph_flag等于1,则slice_collocated_ref_idx的值被推断为等于ph_collocated_ref_idx。[1121]–否则(rpl_info_in_ph_flag等于0),slice_collocated_ref_idx的值被推断为等于0。[1122]比特流一致性的一个要求是,slice_collocated_ref_idx所引用的图片对于编解码图片的所有条带都应相同。[1123]比特流一致性的一个要求是,由slice_collocated_ref_idx所引用的参考图片的pic_width_in_luma_samples和pic_height_in_luma_samples的值应分别等于当前图片的pic_width_in_luma_samples和pic_height_in_luma_samples的值,并且rprconstraintsactive[slice_collocated_from_l0_flag?0:1][slice_collocated_ref_idx]应等于0。[1124]slice_qp_delta规定用于条带中编解码块的qpy的初始值,直到被编解码单元层中的cuqpdeltaval值修改为止。[1125]当qp_delta_info_in_ph_flag等于0时,按照如下方式推导条带的qpy量化参数的初始值sliceqpy:[1126]sliceqpy=26+init_qp_minus26+slice_qp_delta(144)[1127]sliceqpy的值应在-qpbdoffset到+63(含)的范围内。[1128]当以下任一条件为真时:[1129]–wp_info_in_ph_flag的值等于1,pps_weighted_pred_flag的值等于1,且slice_type的值等于p。[1130]–wp_info_in_ph_flag的值等于1,pps_weighted_bipred_flag的值等于1,且slice_type的值等于b。[1131]以下内容适用:[1132]–numrefidxactive[0]的值应小于或等于numweightsl0的值。[1133]–对于每个参考图片索引refpiclist[0][i](对于0到numrefidxactive[0]-1(含)范围内的i),应用于参考图片索引的亮度权重、cb权重和cr权重分别为lumaweightl0[i]、chromaweightl0[0][i]和chromaweightl0[1][i]。[1134]当wp_info_in_ph_flag等于1、pps_weighted_bipred_flag等于1且slice_type等于b时,以下内容适用:[1135]–numrefidxactive[1]的值应小于或等于numweightsl1的值。[1136]–对于每个参考图片索引refpiclist[1][i](对于0到numrefidxactive[1]-1(含)范围内的i),应用于参考图片索引的亮度权重、cb权重和cr权重分别为lumaweightl1[i]、chromaweightl1[0][i]和chromaweightl1[1][i]。[1137]slice_cb_qp_offset规定在确定qp'cb量化参数的值时要添加到pps_cb_qp_offset的差值。slice_cb_qp_offset的值应在-12至+12(含)的范围内。当slice_cb_qp_offset不存在时,其被推断为等于0。pps_cb_qp_offset+slice_cb_qp_offset的值应在-12至+12(含)的范围内。[1138]slice_cr_qp_offset规定在确定qp'cr量化参数的值时要添加到pps_cr_qp_offset的差值。slice_cr_qp_offset的值应在-12至+12(含)的范围内。当slice_cr_qp_offset不存在时,其被推断为等于0。pps_cr_qp_offset+slice_cr_qp_offset的值应在-12至+12(含)的范围内。[1139]slice_joint_cbcr_qp_offset规定在确定qp'cbcr的值时,要添加到pps_joint_cbcr_qp_offset_value的差值。slice_joint_cbcr_qp_offset的值应在-12至+12(含)的范围内。当slice_joint_cbcr_qp_offset不存在时,其被推断为等于0。pps_joint_cbcr_qp_offset_value+slice_joint_cbcr_qp_offset的值应在-12至+12(含)的范围内。[1140]cu_chroma_qp_offset_enabled_flag等于1规定cu_chroma_qp_offset_flag可能存在于变换单元和调色板编解码语法中。cu_chroma_qp_offset_enabled_flag等于0规定变换单元或调色板编解码语法中不存在cu_chroma_qp_offset_flag。当不存在时,cu_chroma_qp_offset_enabled_flag的值被推断为等于0。[1141]slice_sao_luma_flag等于1规定为当前条带中的亮度分量启用sao;slice_sao_luma_flag等于0规定为当前条带中的亮度分量禁用sao。当slice_sao_luma_flag不存在时,其被推断为等于ph_sao_luma_enabled_flag。[1142]slice_sao_chroma_flag等于1规定为当前条带中的色度分量启用sao;slice_sao_chroma_flag等于0规定为当前条带中的色度分量禁用sao。当slice_sao_chroma_flag不存在时,其被推断为等于ph_sao_chroma_enabled_flag。[1143]slice_deblocking_filter_override_flag等于1规定条带标头中存在去方块参数。slice_deblocking_filter_override_flag等于0规定条带标头中不存在去方块参数。当不存在时,slice_deblocking_filter_override_flag的值被推断为等于ph_deblocking_filter_override_flag。[1144]slice_deblocking_filter_disabled_flag等于1规定为当前条带不应用去方块滤波器的操作。slice_deblocking_filter_disabled_flag等于0规定为当前条带应用去方块滤波器的操作。当slice_deblocking_filter_disabled_flag不存在时,其被推断为等于ph_deblocking_filter_disabled_flag。[1145]slice_beta_offset_div2和slice_tc_offset_div2规定应用于当前条带的亮度分量的β和tc(除以2)的去方块参数偏移。slice_beta_offset_div2和slice_tc_offset_div2的值均应在-12至12(含)的范围内。当不存在时,slice_beta_offset_div2和slice_tc_offset_div2的值分别被推断为等于ph_beta_offset_div2和ph_tc_offset_div2。[1146]slice_cb_beta_offset_div2和slice_cb_tc_offset_div2规定应用于当前条带的cb分量的β和tc(除以2)的去方块参数偏移。slice_cb_beta_offset_div2和slice_cb_tc_offset_div2的值均应在-12至12(含)的范围内。当不存在时,slice_cb_beta_offset_div2和slice_cb_tc_offset_div2的值分别被推断为等于ph_cb_beta_offset_div2和ph_cb_tc_offset_div2。[1147]slice_cb_beta_offset_div2和slice_cb_tc_offset_div2规定应用于当前条带的cr分量的β和tc(除以2)的去方块参数偏移。slice_cr_beta_offset_div2和slice_cr_tc_offset_div2的值均应在-12至12(含)的范围内。当不存在时,slice_cr_beta_offset_div2和slice_cr_tc_offset_div2的值分别被推断为等于ph_cr_beta_offset_div2和ph_cr_tc_offset_div2。[1148]slice_ts_residual_coding_disabled_flag规定residual_coding()语法结构用于解析当前条带的变换跳过块的残差样点。slice_ts_residual_coding_disabled_flag等于0规定residual_ts_coding()语法结构用于解析当前条带的变换跳过块的残差样点。当slice_ts_residual_coding_disabled_flag不存在时,其被推断为等于0。[1149]slice_lmcs_enabled_flag等于1规定为当前条带启用具有色度缩放的亮度映射。slice_lmcs_enabled_flag等于0规定不为当前条带启用具有色度缩放的亮度映射。当slice_lmcs_enabled_flag不存在时,其被推断为等于0。[1150]slice_scaling_list_present_flag等于1规定用于当前条带的缩放列表数据是基于aps_params_type等于scaling_aps且adaptation_parameter_set_id等于ph_scaling_list_aps_id的引用缩放列表aps中包含的缩放列表数据推导的。slice_scaling_list_present_flag等于0规定用于当前图片的缩放列表数据是条款7.4.3.21中规定推导的默认缩放列表数据。当不存在时,slice_scaling_list_present_flag的值被推断为等于0。[1151]按照如下方式推导规定当前条带中入口点的数目的变量numentrypoints:[1152][1153]offset_len_minus1加1规定entry_point_offset_minus1[i]语法元素的长度(以位为单位)。offset_len_minus1的值应在0到31(含)的范围内。[1154]entry_point_offset_minus1[i]加1规定第i个入口点偏移(以字节为单位),并由offset_len_minus1加1位表示。条带标头后面的条带数据由numentrypoints+1个子集组成,其中子集索引值范围为从0到numentrypoints(含)。条带数据的第一个字节被视为字节0。当存在时,出于子集识别的目的,出现在编解码条带nal单元的条带数据部分中的仿真防止字节被计数为条带数据的一部分。子集0由编解码条带数据的字节0到entry_point_offset_minus1[0](含)组成,子集k由编解码条带数据的字节firstbyte[k]到lastbyte[k](含)组成(其中k在1到numentrypoints-1(含)的范围内),其中firstbyte[k]和lastbyte[k]被定义为:[1155][1156]lastbyte[k]=firstbyte[k]+entry_point_offset_minus1[k]ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(147)[1157]最后一个子集(子集索引等于numentrypoints)由编解码条带数据的剩余字节组成。[1158]当sps_entropy_coding_sync_enabled_flag等于0且条带包含一个或多个完整的片时,每个子集应由该条带中位于同一片内的所有ctu的所有编解码位组成,并且子集的数目(即numentrypoints+1的值)应等于该条带中的片的数目。[1159]当sps_entropy_coding_sync_enabled_flag等于0且该条带包含来自单个片的ctu行的子集时,numentrypoints应为0并且子集的数目应为1。子集应由条带中所有ctu的所有编解码位组成。[1160]当sps_entropy_coding_sync_enabled_flag等于1时,每个子集k(其中k在0到numentrypoints范围内(含))应由片内ctu行中的所有ctu的所有编解码位组成,并且子集的数目(即numentrypoints+1的值)应等于条带中特定于片的ctu行的总数。[1161]slice_header_extension_length规定以字节为单位的条带标头扩展数据的长度,不包括用于信令通知slice_header_extension_length本身的位。slice_header_extension_length的值应在0到256(含)的范围内。当不存在时,slice_header_extension_length的值被推断为等于0。[1162]slice_header_extension_data_byte[i]可以有任何值。符合本规范本版本的解码器应忽略所有slice_header_extension_data_byte[i]语法元素的值。其值不影响解码器与本规范版本中规定的简档的一致性。[1163]公开的技术解决方案解决的示例技术问题[1164]hls的当前设计中存在若干潜在问题,其被描述如下。[1165](1)sps、图片标头和条带标头中的时域预测标志的控制使得p条带和/或b条带出现问题。[1166]a)时域预测标志的图片标头和条带级别控制可能导致p条带的未初始化的并置图片和/或并置参考索引。[1167]b)slice_collocated_ref_idx指代参考图片列表1中的条目可以用于p条带。[1168]c)对于p条带,slice_collocated_ref_idx的值指代参考图片列表0中的条目可能超出o到numrefidxactive[0]-1的范围。[1169]d)图片级和条带级时域预测标志是关于并置图片是来自l0还是l1,以及引用哪些参考图片,但是没有诸如是否允许时域预测之类的高级控制,这可能不够清楚。[1170](2)考虑到相关语法元素的交互作用,可能需要修改子图片相关语法元素的语义,以获得更准确的解释。[1171]a)当只有一个子图片时,sps_independent_subpics_flag可能等于0。[1172]b)当子图片中只有一个条带时,仍然需要计算而不是推断slice_width_in_tiles_minus1的值。[1173]c)当图片中只有一个条带和/或一个片时,single_slice_per_subpic_flag可能等于0。[1174]d)当不存在single_slice_per_subpic_flag,例如当no_pic_partition_flag等于1时,则会将single_slice_per_subpic_flag推断为0。比特流一致性的一个要求是当sps_num_subpics_minus1+1的值大于1时,no_pic_partition_flag的值不应等于1。因此一张图片中只有一个子图片。并且由于子图片中只有一个条带,因此在这种情况下,single_slice_per_subpic_flag应等于1。[1175](3)在子图片子比特流提取过程中,一些语法元素没有被正确设置。[1176]a)未写入从子比特流提取过程中提取的子图片的语法元素,如sps_independent_subpics_flag、subpic_treated_as_pic_flag、loop_filter_across_subpic_enabled_flag和no_pic_partition_flag,这可能是不期望的。[1177]b)子图片子比特流提取过程取决于子图片id,其可以在不同图片的基础上改变。这将导致从不同图片中提取不同的子图片索引,这可能是不期望的。[1178]c)子图片子比特流提取过程的输出流的sps_num_subpics_minus1和pps_num_subpics_minus1被写入1,这指示应该一次提取两个子图片,这可能不是期望的。[1179](4)参考图片列表上的语法元素可能会出现在idr图片中,而无需任何使用。[1180](5)对于预测树的亮度和色度,划分信息被认为是相同的,这是不正确的。[1181](6)编解码工具的语法元素不受对应的通用约束标志的限制或约束,并且一些通用约束标志的值不受相关约束的限制,这可能会导致一些冲突。[1182]a)res_change_in_clvs_allowed_flag不受通用约束标志no_res_change_in_clvs_constraint_flag的值约束。[1183]b)scaling_window_explicit_signalling_flag不受no_res_change_in_clvs_constraint_flag的约束。[1184]c)scaling_window_explicit_signalling_flag不受res_change_in_clvs_allowed_flag的约束。[1185]d)sps_num_subpics_minus1的值不受one_subpic_per_pic_constraint_flag的约束。[1186]e)subpic_treated_as_pic_flag不受one_subpic_per_pic_constraint_flag和/或sps_num_subpics_minus1和/或pps_num_subpics_minus1的约束。[1187]f)loop_filter_across_subpic_enabled_flag不受one_subpic_per_pic_constraint_flag和/或sps_num_subpics_minus1和/或pps_num_subpics_minus1的约束。[1188]g)one_subpic_per_pic_constraint_flag不受one_slice_per_pic_constraint_flag的约束。[1189]h)no_bdpcm_constraint_flag不受no_transform_skip_constraint_flag的约束。[1190]i)num_slices_in_pic_minus1不受one_slice_per_pic_constraint_flag的约束。[1191]j)num_tiles_in_slice_minus1不受one_slice_per_pic_constraint_flag的约束。[1192]示例技术和实施例[1193]以下详细发明应被视为解释一般概念的示例。这些发明不应被狭隘地解释。此外,这些发明可以以任何方式组合。在下面的描述中,删除的部分标记在[[]]之间,并且添加的部分被标记为带下划线的粗体斜体。[1194]时域预测相关hls[1195]1.可以利用tmvp的两个级别控制,并且一个是图片级别,另一个是条带/片/子图片/砖级别。[1196]a)在一个示例中,可以在图片级信令通知指示是否存在引用该标志的至少一个帧间编解码条带的第一语法元素来启用tmvp(例如,由ph_temporal_mvp_allowed_flag表示)。[1197]i.在一个示例中,它可以在图片标头或pps中被信令通知。[1198]ii.在一个示例中,它可以被有条件地信令通知,例如根据在sps中启用的tmvp和/或当前图片包含在当前图片标头中存在的至少一个帧间编解码条带和/或rpl。[1199]b)在一个示例中,可以在条带级信令通知指示当前条带是否启用tmvp的第二语法元素(例如,由sh_temporal_mvp_allowed_flag表示),这可能取决于第一语法元素。[1200]i.在一个示例中,仅当ph_temporal_mvp_allowed_flag等于1时,才可以信令通知sh_temporal_mvp_allowed_flag。否则,其被推断为0。[1201]ii.在一个示例中,只有当ph_temporal_mvp_allowed_flag等于0时,才可以信令通知sh_temporal_mvp_allowed_flag。否则,其被推断为1。[1202]c)在一个示例中,可以在条带级别信令通知指示当前条带是否启用tmvp的第二语法元素(例如,由sh_temporal_mvp_allowed_flag表示),这可能取决于当前条带标头中存在的rpl和/或sps中启用的tmvp和/或当前条带是帧间编解码的条带。[1203]d)在一个示例中,信令通知第三个语法元素(例如,tmvp_info_in_ph_flag),以指示tmvp信息是在图片标头还是在条带标头中信令通知。[1204]i.tmvp信息可以包括是否启用tmvp的信息。[1205]ii.tmvp信息可以包括并置的参考图片的信息。[1206]iii.在一个示例中,仅当tmvp在序列级别启用时,tmvp_info_in_ph_flag才被信令通知。(例如,sps_temporal_mvp_enabled_flag等于1)。[1207]e)在一个示例中,第二语法元素在不存在时被推断为等于默认值(例如第一语法元素的值)。例如,当不存在时,sh_temporal_mvp_allowed_flag被推断为等于ph_temporal_mvp_allowed_flag。[1208]2.是否和/或如何从ph到sh继承并置图片信息(例如,并置图片来自列表0;并置图片的参考图片索引)至少取决于条带类型以及参考图片列表信息是否存在于ph语法结构中(例如,rpl_info_in_ph_flag为1)。[1209]a)在一个示例中,当slice_type等于p,rpl_info_in_ph_flag等于1(或/和ph_temporal_mvp_enabled_flag等于1)时,slice_collocated_from_l0_flag被设置为1,而与ph_collocated_from_l0_flag的值无关。[1210]i.可替代地,当slice_type等于p时,无论其他条件如何,slice_collocated_from_l0_flag都可以被推断为等于1。[1211]b)在另一个示例中,当slice_type等于b且slice_collocated_from_l0_flag等于1时,slice_collocated_ref_idx引用参考图片列表0中的条目,并且slice_collocated_ref_idx的值应在0到numrefidxactive[0]-1(含)的范围内。[1212]c)在一个示例中,当slice_type等于p时,当启用tmvp时,slice_collocated_from_l0_flag可以被推断为1。[1213]d)在一个示例中,当slice_type等于p且启用了tmvp且slice_collocated_ref_idx在0到numrefidxactive[0]-1(含)的范围内时。[1214]e)在一个示例中,当slice_type等于p并且启用了tmvp时,p条带的rprconstraintsactive[0][slice_collocated_ref_idx]可能需要等于0。[1215]f)在一个示例中,可以引入下面的示例修改。[1216]slice_collocated_ref_idx规定用于时域运动矢量预测的并置图片的参考索引。[1217]当slice_type等于p或slice_type等于b且slice_collocated_from_l0_flag等于1时,slice_collocated_ref_idx引用参考图片列表0中的条目,1时,slice_collocated_ref_idx引用参考图片列表0中的条目,并且slice_collocated_ref_idx的值应在0到numrefidxactive[0]-1(含)的范围内。[1218]当slice_type等于b且slice_collocated_from_l0_flag等于0时,slice_collocated_ref_idx指代参考图片列表1中的条目,并且slice_collocated_ref_idx的值应在0到numrefidxactive[1]-1(含)的范围内。[1219]当slice_collocated_ref_idx不存在时,以下内容适用:[1220]–如果rpl_info_in_ph_flag等于1,则slice_collocated_ref_idx的值被推断为等于ph_collocated_ref_idx。[1221]–否则(rpl_info_in_ph_flag等于0),slice_collocated_ref_idx的值被推断为等于0。[1222]比特流一致性的一个要求是,slice_collocated_ref_idx所引用的图片对于编解码图片的所有条带都应相同。[1223]比特流一致性的一个要求是,由slice_collocated_ref_idx引用的参考图片的pic_width_in_luma_samples和pic_height_in_luma_samples的值应分别等于当前图片的pic_width_in_luma_samples和pic_height_in_luma_samples的值,并且rprconstraintsactive[slice_collocated_from_l0_flag?0:1][slice_collocated_ref_idx]应等于0。[1224]g)在一个示例中,当ph_collocated_from_l0_flag等于0时,可能要求图片不包含p条带。[1225]i.在一个示例中,可以引入下面的示例修改。[1226]slice_type根据表9规定条带的编解码类型。[1227]表9-slice_type的名称关联[1228]slice_typeslice_type的名称0b(b条带)1p(p条带)2i(i条带)[1229]当不存在时,slice_type的值被推断为等于2。[1230]当ph_intra_slice_allowed_flag等于0时,slice_type的值应等于0或1。当nal_unit_type在idr_w_radl到cra_nut(含)的范围内,并且vps_independent_layer_flag[generallayeridx[nuh_layer_id]]等于1时,slice_type应等于2。[1231][1232]ii.可替代地,是否信令通知条带类型可能取决于并置的图片是否来自列表0。[1233]1.在一个示例中,如果以下所有条件均为真,则可以跳过针对引用当前图片标头的条带的条带类型的信令。[1234]–rpl_info_in_ph_flag等于1[1235]–ph_temporal_mvp_enabled_flag等于1[1236]–ph_intra_slice_allowed_flag等于0[1237]–ph_collocated_from_l0_flag等于0[1238]可替代地,此外,条带类型可以被推断为b条带。[1239]h)在一个示例中,当ph_temporal_mvp_enabled_flag等于1且rpl_info_in_ph_flag等于1时,p条带的slice_collocated_from_l0_flag的值可以始终被推断等于1。可以引入下面的示例修改。[1240]slice_collocated_from_l0_flag等于1规定从参考图片列表0推导用于时域运动矢量预测的并置图片。slice_collocated_from_l0_flag等于0规定从参考图片列表1推导用于时域运动矢量预测的并置图片。[1241][[当slice_type等于b或p,ph_temporal_mvp_enabled_flag等于1,并且slice_collocated_from_l0_flag不存在时,以下内容适用:[1242]–如果rpl_info_in_ph_flag等于1,slice_collocated_from_l0_flag被推断为等于ph_collocated_from_l0_flag。[1243]–否则(rpl_info_in_ph_flag等于0且slice_type等于p),slice_collocated_from_l0_flag的值被推断为等于1。]][1244][1245]i)在一个示例中,当slice_type等于p并且slice_collocated_from_l0_flag等于0时,slice_collocated_ref_idx可以被认为是指参考图片列表1中的非活动条目,并且可能需要参考图片列表1中该非活动条目所引用的参考图片也应由参考图片列表0中的活动条目引用。可以引入下面的示例修改。[1246]slice_collocated_ref_idx规定用于时域运动矢量预测的并置图片的参考索引。[1247]当slice_type等于p或slice_type等于b且等于1时,slice_collocated_ref_idx指代参考图片列表0中的条目,并且slice_collocated_ref_idx的值应在0到numrefidxactive[0]-1(含)的范围内。[1248]当slice_type等于b且slice_collocated_from_l0_flag等于0时,slice_collocated_ref_idx指代参考图片列表1中的条目,并且slice_collocated_ref_idx的值应在0到numrefidxactive[1]-1(含)的范围内。[1249][1250]当slice_collocated_ref_idx不存在时,以下内容适用:[1251]–如果rpl_info_in_ph_flag等于1,则slice_collocated_ref_idx的值被推断为等于ph_collocated_ref_idx。[1252]–否则(rpl_info_in_ph_flag等于0),slice_collocated_ref_idx的值被推断为等于0。[1253]比特流一致性的一个要求是,slice_collocated_ref_idx所引用的图片对于编解码图片的所有条带都应相同。[1254]比特流一致性的一个要求是,由slice_collocated_ref_idx引用的参考图片的pic_width_in_luma_samples和pic_height_in_luma_samples的值应分别等于当前图片的pic_width_in_luma_samples和pic_height_in_luma_samples的值,并且rprconstraintsactive[slice_collocated_from_l0_flag?0:1][slice_collocated_ref_idx]应等于0。[1255]j)可替代地,引用相同图片标头的b和p条带可以使用不同的并置图片。[1256]i.在一个示例中,即使在图片标头中信令通知rpl,并置图片的参考图片索引也可以在条带标头中被进一步信令通知。[1257]1.在一个示例中,当当前条带为p条带时,在图片标头中信令通知rpl信号,启用时域运动矢量预测(例如,ph_temporal_mvp_enabled_flag为真),并且ph_collocated_from_l0_flag等于0,可以进一步信令通知并置图片的参考图片索引。[1258]a)可替代地,此外,它还指向参考图片列表0。[1259]ii.在一个示例中,可以信令通知或推导两个并置的参考图片索引,并且其中一个用于b条带,另一个用于引用相同图片标头的p条带。[1260]1.在一个示例中,只有当ph_collocated_from_l0_flag等于0时,才可以信令通知这两个索引。[1261]k)在一个示例中,可以信令通知是否存在引用相同图片标头的b条带和p条带的指示。[1262]i.可替代地,可以在图片标头中信令通知引用相同图片标头的条带的类型的指示。[1263]ii.可替代地,可以信令通知是否仅存在引用相同图片标头的b条带(排除p条带)。[1264]iii.可替代地,可以信令通知是否仅存在引用相同图片标头的p条带(排除b条带)的指示。[1265]iv.可替代地,可以信令通知是否仅存在引用相同图片标头的b条带和i条带的指示。[1266]v.可替代地,可以信令通知是否仅存在引用相同图片标头的p条带和i条带的指示。[1267]vi.可替代地,仅当在图片标头中信令通知rpl时,才可以在图片标头中信令通知引用相同图片标头的条带类型的指示。[1268]vii.可替代地,仅当在图片标头中信令通知引用相同图片标头的条带类型时,才在图片标头中信令通知rpl。[1269]l)可替代地,当slice_type等于p且slice_collocated_from_l0_flag等于0时,可以在使用slice_collocated_ref_idx之前进行修改,例如映射到0到numrefidxactive[0]-1(含)范围内的索引。[1270]i.在一个示例中,当slice_type等于p且slice_collocated_from_l0_flag等于0时,slice_collocated_ref_idx引用参考图片列表0中的条目,并且slice_collocated_ref_idx被设置为(slice_collocated_ref_idx》(numrefidxactive[0]1)?default_col_ref_idx:slice_collocated_ref_idx),其中变量default_col_ref_idx在0到numrefidxactive[0]-1(含)的范围内。[1271]1.在一个示例中,变量default_col_ref_idx被设置为0。[1272]2.在一个例子中,可以信令通知变量。[1273]m)在一致性比特流中,可能不允许与一个图片标头相关联的两个条带,但其中一个是p条带,另一个是b条带。[1274]n)在一致性比特流中,可能不允许与信令通知rpl的一个图片标头相关联的两个条带,但其中一个是p条带,另一个是b条带。[1275]o)在一致性比特流中,可能不允许与使用两个参考图片列表信令通知rpl的一个图片标头相关联的条带,但该条带是p条带。[1276]子图片相关的hls[1277]3.clvs中每个图片中的子图片数目(例如,sps_num_subpics_minus1和/或pps_num_subpics_minus1)可以由通用约束标志(例如,one_subpic_per_pic_constraint_flag)进行调节。[1278]a)在一个示例中,当通用约束标志(例如,one_subpic_per_pic_constraint_flag)等于1时,可能要求sps_num_subpics_minus1和/或pps_num_subpics_minus1的值等于0。[1279]b)在一个示例中,可以引入下面的示例修改。[1280]sps_num_subpics_minus1加1规定clvs中每个图片中的子图片的数目。sps_num_subpics_minus1的值应在0到ceil(pic_width_max_in_luma_samples÷ctbsizey)*ceil(pic_height_max_in_luma_samples÷ctbsizey)-1(含)的范围内。当不存在时,sps_num_subpics_minus1的值被推断为等于0。subpics_minus1的值被推断为等于0。[1281]4.是否信令通知规定“跨clvs中的任何子图片边界执行的无帧内预测、无帧间预测和无环路滤波操作”的语法元素(例如,sps_independent_subpics_flag)的语法元素可能取决于clvs中每个图片中的子图片数(例如,sps_num_subpics_minus1)。[1282]a)在一个示例中,当clvs中的每个图片中只有一个子图片时,语法元素sps_independent_subpics_flag可能不被信令通知并被推断为1。[1283]b)在一个示例中,可以引入下面的示例修改。[1284]sps_independent_subpics_flag等于1规定不能跨clvs中的任何子图片边界执行帧内预测、帧间预测和环路滤波操作。sps_independent_subpics_flag等于0规定可以允许跨clvs中的子图片边界的帧间预测或环路滤波操作。当不存在时,sps_independent_subpics_flag的值被推断为等于[[0]]。[1285]c)在一个示例中,可以引入下面的示例修改。[1286]sps_independent_subpics_flag等于1规定不能跨clvs中的任何子图片边界执行帧内预测、帧间预测和环路滤波操作。sps_independent_subpics_flag等于0规定可以允许跨clvs中的子图片边界的帧间预测或环路滤波操作。当不存在时,sps_independent_subpics_flag的值被推断为等于0。[1287]5.subpic_treated_as_pic_flag的值可能取决于图片中是否只有一个子图片。[1288]a)在一个示例中,如果one_subpic_per_pic_constraint_flag等于1,则subpic_treated_as_pic_flag的值可能需要等于1,或推断为等于1。[1289]b)在一个示例中,如果sps_num_subpics_minus1等于0,则subpic_treated_as_pic_flag的值可能需要等于1,或推断为等于1。[1290]c)在一个示例中,如果pps_num_subpics_minus1等于0,则subpic_treated_as_pic_flag的值可能需要等于1。[1291]6.loop_filter_across_subpic_enabled_flag的值可能取决于图片中是否只有一个子图片。[1292]a)在一个示例中,如果one_subpic_per_pic_constraint_flag等于1,则loop_filter_across_subpic_enabled_flag的值可能需要等于0,或推断为等于0。[1293]b)在一个示例中,如果sps_num_subpics_minus1等于0,则loop_filter_across_subpic_enabled_flag的值可能需要等于0,或推断为等于0。[1294]c)在一个示例中,如果pps_num_subpics_minus1等于0,则loop_filter_across_subpic_enabled_flag的值可能需要等于0。[1295]7.是否规定了以片列为单位的第i个矩形条带的宽度(例如,slice_width_in_tiles_minus1),可能取决于single_slice_per_subpic_flag。[1296]a)在一个示例中,当slice_width_in_tiles_minus1不存在但single_slice_per_subpic_flag等于1时,则可能不会设置slice_width_in_tiles_minus1的值。[1297]b)在一个示例中,可以引入下面的示例修改。[1298]slice_width_in_tiles_minus1[i]加1规定以片列为单位的第i个矩形条带的宽度。slice_width_in_tiles_minus1[i]的值应在0到numtilecolumns-1(含)的范围内。[1299]当slice_width_in_tiles_minus1[i]不存在当slice_width_in_tiles_minus1[i]不存在以下内容适用:[1300]–如果numtilecolumns等于1,则slice_width_in_tiles_minus1[i]的值被推断为等于0。[1301]–否则,根据条款6.5.1的规定推断slice_width_in_tiles_minus1[i]的值。[1302]8.每个子图片是否由一个且仅由一个矩形条带组成(例如,single_slice_per_subpic_flag),可以通过通用约束标志(例如,one_slice_per_pic_constraint_flag)进行调节。[1303]a)在另一个示例中,当语法元素single_slice_per_subpic_flag不存在时,single_slice_per_subpic_flag的值可以被推断为等于1。[1304]b)在另一个示例中,当语法元素single_slice_per_subpic_flag不存在时,可以根据当前图片是否被分割(例如,no_pic_partition_flag)来推断single_slice_per_subpic_flag的值。[1305]c)在一个示例中,可以引入下面的示例修改。[1306]single_slice_per_subpic_flag等于1规定每个子图片由一个且仅一个矩形条带组成。single_slice_per_subpic_flag等于0规定每个子图片可以由一个或多个矩形条带组成。当single_slice_per_subpic_flag等于1时,num_slices_in_pic_minus1被推断为等于sps_num_subpics_minus1。[[当不存在时,single_slice_per_subpic_flag的值被推断为等于0。]][1307]d)在一个示例中,可以引入下面的示例修改。[1308]single_slice_per_subpic_flag等于1规定每个子图片由一个且仅一个矩形条带组成。single_slice_per_subpic_flag等于0规定每个子图片可以由一个或多个矩形条带组成。当single_slice_per_subpic_flag等于1时,num_slice_in_pic_minus1被推断为等于sps_num_subpics_minus1。当不存在时,single_slice_per_subpic_flag的值被推断为等于0。0。[1309]e)在一个示例中,可以引入下面的示例修改。[1310]single_slice_per_subpic_flag等于1规定每个子图片由一个且仅一个矩形条带组成。single_slice_per_subpic_flag等于0规定每个子图片可以由一个或多个矩形条带组成。当single_slice_per_subpic_flag等于1时,num_slices_in_pic_minus1被推断为等于sps_num_subpics_minus1。当不存在时,single_slice_per_subpic_flag的值被推断为等于0。等于0。[1311]f)在一个示例中,可以引入下面的示例修改。[1312]single_slice_per_subpic_flag等于1规定每个子图片由一个且仅一个矩形条带组成。single_slice_per_subpic_flag等于0规定每个子图片可以由一个或多个矩形条带组成。当single_slice_per_subpic_flag等于1时,num_slices_in_pic_minus1被推断为等于sps_num_subpics_minus1。当不存在时,single_slice_per_subpic_flag的值被推断为等于0。等于0。[1313]g)在一个示例中,可以引入下面的示例修改。[1314]single_slice_per_subpic_flag等于1规定每个子图片由一个且仅一个矩形条带组成。single_slice_per_subpic_flag等于0规定每个子图片可以由一个或多个矩形条带组成。当single_slice_per_subpic_flag等于1时,num_slices_in_pic_minus1被推断为等于sps_num_subpics_minus1。当不存在时,single_slice_per_subpic_flag的值被推断为等于[[0]][1315]9.在一个示例中,关于在子图片子比特流提取期间输出子比特流的推导,跨clvs中的不同图片的提取子图片可能需要具有相同的子图片索引。[1316]a)例如,可能需要提取子图片的目标子图片id可以引用clvs中不同图片之间的相同子图片索引。[1317]b)例如,如果subpic_id_mapping_explicitly_signalled_flag等于1,并且当处理子图片子比特流提取时,可能需要在pps中不信令通知子图片id映射(例如,subpic_id_mapping_in_pps_flag等于0)。[1318]i.在一个示例中,如果subpic_id_mapping_explicitly_signalled_flag等于1,并且当处理子图片子比特流提取时,可能需要在sps中信令通知子图片id映射(例如,subpic_id_mapping_in_sps_flag等于1)。[1319]c)例如,在子图片子比特流提取过程中提取哪个子图片可能取决于子图片索引。[1320]d)例如,在子图片子比特流提取过程中重写和/或移除哪些语法元素可能取决于子图片索引。[1321]e)在一个示例中,可以引入下面的示例修改。[1322]c.7子图片子比特流提取过程[1323]此过程的输入是比特流inbitstream、目标ols索引targetolsidx、目标最高temporalid值tidtarget、以及每个层subpicidxtarget[]的目标子图片[[id]]值的阵列。[1324]此过程的输出是子比特流outbitstream。[1325]输入比特流的比特流一致性的要求是,满足以下所有条件的任何输出子比特流都应是一致的比特流:[1326]–输出子比特流是本条款中规定的过程的输出,其中比特流targetolsidx等于vps规定的ols列表的索引,并且subpicidxtarget[]等于ols中存在的子图片id,作为输入。[1327]–输出子比特流包含至少一个vclnal单元,其中nuh_layer_id等于layeridinols[targetolsidx]中的每个nuh_layer_id值。[1328]–输出子比特流包含至少一个temporalid等于tidtarget的vclnal单元。[1329]注-一致性比特流包含一个或多个temporalid等于0的编解码条带nal单元,但不必包含nuh_layer_id等于0的编解码条带nal单元。[1330]–输出子比特流包含至少一个vclnal单元,其中nuh_layer_id等于layeridinols[targetolsidx][i],并且其中slice_subpic_id等于subpicidxtarget[i]中的值(对于0到numlayersinols[targetolsidx]-1范围内每个i)。[1331]按照如下方式推导输出子比特流outbitstream:[1332]–附件c.6中规定的子比特流提取过程以inbitstream、targetolsidx和tidtarget作为输入进行调用,并将该过程的输出分配给outbitstream。[1333]–如果本规范中未规定的一些外部手段可用于为子比特流outbitstream提供替换参数集,则用替换参数集替换所有参数集。[1334]–否则,当inbitstream中存在子图片级信息sei消息时,以下内容适用:[1335]–针对由子图片id等于subpicidxtarget[]的所有条目,将所有引用vpsnal单元中profile_tier_level()语法结构列表中第ols_ptl_idx[targetolsidx]个条目中的general_level_idc值重写为等于d.3.8中推导的subpicsetlevelidc。[1336]针对由子图片id等于subpicidxtarget[]中所有条目的子图片组成的子图片集并且j的范围为0到hrd_cpb_cnt_minus1,将所有引用的vpsnal单元中的ols_hrd_parameters()语法结构列表中的第ols_hrd_idx[targetolsidx]个条目中的第j个cpb的cpb_size_value_minus1[tidtarget][j]和bit_rate_value_minus1[tidtarget][j]的值进行重写,以对应于d.3.8中推导的subpicsetcpbsizevcl[0]、subpicsetcpbsizenal[0]、subpicsetbitratevcl[0]和subpicsetbitratenal[0]。[1337]对于i在0到numlayersinols[targetolsidx]-1范围内的第i层,以下内容适用。[1338]–subpicidx被设置为等于subpicidxtarget[i]的值。[1339]–对于由subpicture[[id]]等于subpicidx的子图片组成的子图片的集合,将所有引用的spsnal单元中profile_tier_level()语法结构中general_level_idc的值进行重写,其中等于1的sps_ptl_dpb_hrd_params_present_flag将等于d.3.8中推导的subpicsetlevelidc。[1340]–对所有引用的spsnal单元中ols_hrd_parameters()语法结构列表第ols_hrd_idx[targetolsidx]个条目中第j个cpb的cpb_size_value_minus1[tidtarget][j]和bit_rate_value_minus1[tidtarget][j]的值,以对应于subpiccpbsizevcl[0][subpicidxlist[subpicidx]]、subpicbitratevcl[0][subpicidxlist[subpicidx]]和subpicbitratenal[0][subpicidxlist[subpicidx]],如d.3.8中针对subpicture[[id]]等于subpicidx的子图片且范围为0到hrd_cpb_cnt_minus1的j所推导。[1341]–将所有引用的spsnal单元中的pic_width_max_in_luma_samples和pic_height_max_in_luma_samples的值,以及所有引用的ppsnal单元中的pic_width_in_luma_samples和pic_height_in_luma_samples的值,使其等于subpic_width_minus1[subpicidxlist[subpicidx]]和subpic_height_minus1[subpicidxlist[subpicidx]]。[1342]将所有引用的spsnal单元中的sps_num_subpics_minus1和所有引用ppsnal单元中的pps_num_subpics_minus1的值重写为1。[1343]将引用的spsnal单元中的语法元素subpic_ctu_top_left_x[subpicidxlist[subpicidx]]、subpic_ctu_top_left_y[subpicidxlist[subpicidx]]重写为0(如果存在)。[1344]对于subpicidxlist[j]不等于subpicidx的每个j,删除所有引用的spsnal单元中的语法元素subpic_ctu_top_left_x[j]、subpic_ctu_top_left_y[j]、subpic_width_minus1[j]、subpic_height_minus1[j]、subpic_treated_as_pic_flag[j]、loop_filter_across_subpic_enabled_flag[j]和sps_subpic_id[j]。[1345]将所有引用的pps中与片和条带结构相关的语法元素进行重写,以删除与子图片id等于subpicidx的子图片无关的所有片行、片列和条带。[1346]从outbitstream中删除nuh_layer_id等于第i层的nuh_layer_id且slice_subpic_id不等于subpicidx的所有vclnal单元。[1347]当sli_cbr_constraint_flag等于1时,删除nal_unit_type等于fd_nut的所有nal单元以及与subpicidxtarget[]中子图片的vclnal单元不关联的滤波器有效载荷sei消息,并设置所有引用的vpsnal单元和spsnal单元中的ols_hrd_parameters()语法结构列表中第ols_hrd_idx[targetolsidx]个条目中第j个cpb的等于1的cbr_flag[tidtarget][j],并且j在0到hrd_cpb_cnt_minus1的范围内。否则,(sli_cbr_constraint_flag等于0),删除nal_unit_type等于fd_nut的所有nal单元和滤波器有效载荷sei消息,并将cbr_flag[tidtarget][j]设置为等于0。[1348]–当outbitstream包含适用于outbitstream的可扩展嵌套sei消息的seinal单元(其中nesting_ols_flag等于1并且nesting_subpic_flag等于1)时,从可扩展嵌套sei消息提取适当的非可扩展嵌套sei消息,其中payloadtype等于1(图片计时)或130(解码单元信息),并将提取的sei消息放入outbitstream中。[1349]10.在一个示例中,关于在子图片子比特流提取期间输出子比特流的推导,所提取的子比特流可以被视为输出比特流中的单个子图片。[1350]a)在一个示例中,对于引用具有提取子图片的输出子比特流的语法结构,语法元素sps_independent_subpics_flag可以重写为等于1。[1351]b)在一个示例中,可能不会从输出子比特流的语法结构中信令通知(例如,可以移除)在所有输出层中引用所提取子图片的语法元素subpic_treated_as_pic_flag和/或loop_filter_across_subpic_enabled_flag。[1352]i.在一个示例中,对于引用具有提取子图片的输出子比特流的语法结构,语法元素subpic_treated_as_pic_flag可以被推断为等于1。[1353]ii.在一个示例中,对于引用具有提取子图片的输出子比特流的语法结构,语法元素loop_filter_across_subpic_enabled_flag可以被推断为等于0。[1354]c)在一个示例中,所有引用的spsnal单元中的sps_num_subpics_minus1的值和具有提取子图片的所有引用的ppsnal单元中的pps_num_subpics_minus1的值可以被重写为等于0。[1355]d)在一个示例中,对于引用具有提取子图片的输出子比特流的语法结构,语法元素no_pic_partition_flag可以被重写。[1356]i.例如,语法元素no_pic_partition_flag是否被重写可能取决于包含所提取子图片的输出比特流中的片/条带的数目。[1357]1.在一个示例中,如果在提取子图片中只有一个片和一个条带,则对于引用具有提取子图片的输出子比特流的语法结构,语法元素no_pic_partition_flag可以被重写为等于1。[1358]2.可替代地,如果提取子图片中的片和/或条带的数目大于1,则对于引用具有提取子图片的输出子比特流的语法结构,语法元素no_pic_partition_flag可以等于0。[1359]e)在一个示例中,可以引入下面的示例修改。[1360]c.7子图片子比特流提取过程[1361]按照如下方式推导输出子比特流outbitstream:[1362]–附件c.6中规定的子比特流提取过程以inbitstream、targetolsidx和tidtarget作为输入进行调用,并将该过程的输出分配给outbitstream。[1363]–如果本规范中未规定的一些外部手段可用于为子比特流outbitstream提供替换参数集,则用替换参数集替换所有参数集。[1364]–否则,当inbitstream中存在子图片级信息sei消息时,以下内容适用:[1365]–针对由子图片id等于subpicidxtarget[]的所有条目,将所有引用vpsnal单元中profile_tier_level()语法结构列表中第ols_ptl_idx[targetolsidx]个条目中的general_level_idc值重写为等于d.3.8中推导的subpicsetlevelidc。[1366]针对由子图片id等于subpicidxtarget[]中所有条目的子图片组成的子图片集并且j的范围为0到hrd_cpb_cnt_minus1,将所有引用的vpsnal单元中的ols_hrd_parameters()语法结构列表中的第ols_hrd_idx[targetolsidx]个条目中的第j个cpb的cpb_size_value_minus1[tidtarget][j]和bit_rate_value_minus1[tidtarget][j]的值进行重写,以对应于d.3.8中推导的subpicsetcpbsizevcl[0]、subpicsetcpbsizenal[0]、subpicsetbitratevcl[0]和subpicsetbitratenal[0]。[1367]对于i在0到numlayersinols[targetolsidx]-1范围内的第i层,以下内容适用。[1368]–subpicid被设置为等于subpicidtarget[i]的值。[1369]–对于由subpictureid等于subpicid的子图片组成的子图片的集合,将所有引用的spsnal单元中profile_tier_level()语法结构中general_level_idc的值进行重写,其中等于1的sps_ptl_dpb_hrd_params_present_flag将等于d.3.8中推导的subpicsetlevelidc。[1370]–对所有引用的spsnal单元中ols_hrd_parameters()语法结构列表第ols_hrd_idx[targetolsidx]个条目中第j个cpb的cpb_size_value_minus1[tidtarget][j]和bit_rate_value_minus1[tidtarget][j]的值,以对应于subpiccpbsizevcl[0][subpicidxlist[subpicidx]]、subpicbitratevcl[0][subpicidxlist[subpicidx]]和subpicbitratenal[0][subpicidxlist[subpicidx]],如d.3.8中针对子图片id等于subpicid的子图片且范围为0到hrd_cpb_cnt_minus1的j所推导。[1371]–将所有引用的spsnal单元中的pic_width_max_in_luma_samples和pic_height_max_in_luma_samples的值,以及所有引用的ppsnal单元中的pic_width_in_luma_samples和pic_height_in_luma_samples的值,使其等于subpic_width_minus1[subpicidxlist[subpicidx]]和subpic_height_minus1[subpicidxlist[subpicidx]]。[1372]将所有引用的spsnal单元中的sps_num_subpics_minus1和所有引用ppsnal单元中的pps_num_subpics_minus1的值重写为1。[1373]将引用的spsnal单元中的语法元素subpic_ctu_top_left_x[subpicidlist[subpicidx]]、subpic_ctu_top_left_y[subpicidlist[subpicidx]]重写为0(如果存在)。[1374][1375][1376]对于subpicidlist[j]不等于subpicid的每个j,删除所有引用的spsnal单元中的语法元素subpic_ctu_top_left_x[j]、subpic_ctu_top_left_y[j]、subpic_width_minus1[j]、subpic_height_minus1[j]、subpic_treated_as_pic_flag[j]、loop_filter_across_subpic_enabled_flag[j]和sps_subpic_id[j]。[1377]对所有引用的pps中与片和条带结构相关的语法元素进行重写,以删除与子图片id等于subpicid的子图片无关的所有片行、片列和条带。[1378]从outbitstream中删除nuh_layer_id等于第i层的nuh_layer_id且slice_subpic_id不等于subpicid的所有vclnal单元。[1379]当sli_cbr_constraint_flag等于1时,删除nal_unit_type等于fd_nut的所有nal单元以及与subpicidxtarget[]中子图片的vclnal单元不关联的滤波器有效载荷sei消息,并设置所有引用的vpsnal单元和spsnal单元中的ols_hrd_parameters()语法结构列表中第ols_hrd_idx[targetolsidx]个条目中第j个cpb的等于1的cbr_flag[tidtarget][j],并且j在0到hrd_cpb_cnt_minus1的范围内。否则,(sli_cbr_constraint_flag等于0),删除nal_unit_type等于fd_nut的所有nal单元和滤波器有效载荷sei消息,并将cbr_flag[tidtarget][j]设置为等于0。[1380]nal单元相关的hls[1381]11.参考图片列表语法元素可以存在于idr图片的条带标头中,即,对于比特流merging的情况,sps_idr_rpl_present_flag可以等于1。[1382]a)在一个示例中,当在比特流merging期间从两个输入比特流merge输出比特流(例如,mixed_nalu_types_in_pic_flag等于1)时,并且输入比特流之一的nal单元类型可能是irapvclnal单元类型,例如idr,可能需要idr比特流的rpl应当可用(即,对于该idr输入比特流,sps_idr_rpl_present_flag等于1)。[1383]b)在一个示例中,可以引入下面的示例修改。[1384]sps_idr_rpl_present_flag等于1规定参考图片列表语法元素存在于idr图片的条带标头中。sps_idr_rpl_present_flag等于0规定参考图片列表语法元素不存在于idr图片的条带标头中。[1385][1386]划分相关[1387]12.对于预测树,亮度和色度的块(即,ctb、tb、pb、cb等)划分信息可能不同。[1388]a)在一个示例中,在色度双树的情况下,用于亮度和色度的块划分结构和/或划分语法元素可能不同。[1389]b)在一个示例中,在局部双树的情况下,用于亮度和色度的块划分结构和/或划分语法元素可能不同。[1390]c)在一个示例中,可以引入下面的示例修改。[1391]编解码块是两棵树(预测树和变换树)的根节点。预测树规定预测块的位置和尺寸。变换树规定变换块的位置和尺寸。对于预测树,亮度和色度的划分信息并且对于变换树,也可能相同或不相同。[1392]通用约束标志[1393]13.参数集(例如sps/vps/pps)和/或图片标头和/或条带标头中的语法元素可能受到通用约束标志的调节。[1394]a)在一个示例中,编解码工具的启用标志可以由对应的通用约束标志来调节。[1395]i.在一个示例中,当对应的通用约束标志为1时,启用标志应等于0。[1396]ii.在一个示例中,启用标志可以被对应的通用约束标志覆盖。例如,如果通用约束标志为1,则对应的启用标志可以被设置为0。[1397]b)在一个示例中,是否信令通知启用标志可能取决于对应的通用约束标志。[1398]i.在一个示例中,如果对应的通用约束标志为1,则启用标志可能不存在。[1399]ii.在一个示例中,如果启用标志不存在,则其可以被推断为0。[1400]14.图片空域分辨率是否可能在引用sps的clvs内发生变化(例如,res_change_in_clvs_allowed_flag),可能会受到通用约束标志(例如no_res_change_in_clvs_constraint_flag)的限制。[1401]a)在一个示例中,当语法no_res_change_in_clvs_constraint_flag等于1时,res_change_in_clvs_allowed_flag可能不存在。[1402]b)在一个示例中,当语法res_change_in_clvs_allowed_flag不存在时,res_change_in_clvs_allowed_flag可以被推断为等于0。[1403]15.缩放窗口偏移参数是否存在于pps中(例如scaling_window_explicit_signalling_flag)可能取决于图片空域分辨率是否在引用sps的clvs内发生变化(例如res_change_in_clvs_allowed_flag)和/或通用约束标志(例如no_res_change_in_clvs_constraint_flag)。[1404]a)在一个示例中,当语法scaling_window_explicit_signalling_flag不存在时,scaling_window_explicit_signalling_flag可以被推断为等于0。[1405]b)在一个示例中,当res_change_in_clvs_allowed_flag等于0时,scaling_window_explicit_signalling_flag可能不存在。[1406]c)在一个示例中,当no_res_change_in_clvs_constraint_flag等于1时,scaling_window_explicit_signalling_flag可能不存在。[1407]16.是否存在one_subpic_per_pic_constraint_flag可能取决于语法one_slice_per_pic_constraint_flag。[1408]a)在一个示例中,当one_slice_per_pic_constraint_flag等于1时,one_subpic_per_pic_constraint_flag可能不存在,并且可以被推断为1。[1409]b)在一个示例中,当one_slice_per_pic_constraint_flag等于0时,可能存在one_subpic_per_pic_constraint_flag。[1410]17.通用约束标志no_bdpcm_constraint_flag可以由通用约束标志no_transform_skip_constraint_flag进行调节。[1411]a)在一个示例中,如果通用约束标志no_transform_skip_constraint_flag等于1,则通用约束标志no_bdpcm_constraint_flag应为1。[1412]b)在一个示例中,是否信令通知通用约束标志no_bdpcm_constraint_flag可能取决于语法no_transform_skip_constraint_flag。[1413]i.在一个示例中,当no_transform_skip_constraint_flag等于1时,通用约束标志no_bdpcm_constraint_flag可能不存在。[1414]ii.在一个示例中,当不存在no_bdpcm_constraint_flag时,语法no_bdpcm_constraint_flag被推断为1。[1415]18.一个是否信令通知通用约束标志可能取决于其他通用约束标志。[1416]a)在一个示例中,可以定义若干约束组标志,并且其他一般约束标志可以由这些约束组标志进行调节。[1417]i.在一个示例中,约束标志可以根据工具类型(包括但不限于预测、变换、量化、帧间、帧内)或简档分组。[1418]ii.在一个示例中,可以从对应的约束组标志推导属于一个组的约束标志。[1419]iii.在一个示例中,是否信令通知属于一个组的约束标志可能取决于对应的约束组标志。例如,当约束组标志为0时,属于该组的约束标志可能不会被信令通知。[1420]通用约束标志的语义[1421]19.在一个示例中,可以引入下面的示例修改。[1422]one_tile_per_pic_constraint_flag等于1规定每个图片应当仅包含一个片,one_tile_per_pic_constraint_flag等于1规定每个图片应当仅包含一个片,one_tile_per_pic_constraint_flag等于0不会施加此类约束。[1423]20.在一个示例中,可以引入下面的示例修改。[1424]one_slice_per_pic_constraint_flag等于1规定每个图片应当仅包含一个条带。[1425][1426]one_slice_per_pic_constraint_flag等于0不会施加此类约束。[1427]21.在一个示例中,可以引入下面的示例修改。[1428]one_subpic_per_pic_constraint_flag等于1规定每个图片应当仅包含一个one_subpic_per_pic_constraint_flag等于1规定每个图片应当仅包含一个one_subpic_per_pic_constraint_flag等于0不会施加此类约束。当one_slice_per_pic_constraint_flag等于1时,one_subpic_per_pic_constraint_flag的值应等于1。[1429]图1是示出示例视频处理系统100的框图,其中可以实施本文公开的各种技术。各种实施可以包括系统100的一些或所有组件。系统100可以包括用于接收视频内容的输入102。视频内容可以以原始或未压缩格式接收,例如8或10位多分量像素值,或者可以以压缩或编码格式接收。输入102可以表示网络接口、外围总线接口或存储接口。网络接口的示例包括有线接口(例如以太网、无源光学网络(pon)等)以及无线接口(例如wi-fi或蜂窝接口)。[1430]系统100可以包括编解码组件104,其可以实施本文档中描述的各种编解码或编码方法。编解码组件104可以将视频的平均比特率从输入102降低到编解码组件104的输出,以产生视频的编解码表示。因此,编解码技术有时被称为视频压缩或视频转码技术。编解码组件104的输出可以被存储,也可以通过组件106所表示的连接的通信来传输。在输入102处接收的视频的存储或通信比特流(或编解码)表示可以由组件108用于生成像素值或被发送到显示接口110的可显示视频。从比特流表示生成用户可视视频的过程有时被称为视频解压缩。此外,尽管某些视频处理操作被称为“编解码”操作或工具,但将理解的是,在编码器处使用编解码工具或操作,并且将由解码器执行反转编解码结果的对应解码工具或操作。[1431]外围总线接口或显示接口的示例可以包括通用串行总线(usb)或高清多媒体接口(hdmi)或displayport等。存储接口的示例包括sata(串行高级技术附件)、pci、ide接口等。本文档中描述的技术可以体现在各种电子设备中,例如移动电话、膝上型计算机、智能手机或能够执行数字数据处理和/或视频显示的其他设备。[1432]图2是视频处理装置3600的框图。装置3600可以用于实施本文所述的一种或多种方法。装置3600可以体现在智能手机、平板电脑、计算机、物联网(iot)接收器等中。装置3600可以包括一个或多个处理器3602、一个或多个存储器3604和视频处理硬件3606。处理器3602可以被配置为实施本文档中描述的一个或多个方法。一个或多个存储器3604可以用于存储用于实施本文所述方法和技术的数据和代码。视频处理硬件3606可以用于在硬件电路中实施本文档中描述的一些技术。[1433]图4是示出可以利用本公开技术的示例视频编解码系统100的框图。[1434]如图4所示,视频编解码系统100可以包括源设备110和目的地设备120。源设备110生成可以被称为视频编码设备的编码视频数据。目的地设备120可以对源设备110生成的编码视频数据进行解码,源设备110可以被称为视频解码设备。[1435]源设备110可以包括视频源112、视频编码器114和输入/输出(i/o)接口116。[1436]视频源112可以包括诸如视频捕获设备之类的源、从视频内容提供商接收视频数据的接口和/或用于生成视频数据的计算机图形系统,或这些源的组合。视频数据可以包括一个或多个图片。视频编码器114对来自视频源112的视频数据进行编码以生成比特流。比特流可以包括形成视频数据的编解码表示的比特序列。比特流可以包括编解码图片和相关联数据。编解码图片是图片的编解码表示。相关联数据可以包括序列参数集、图片参数集和其他语法结构。i/o接口116可以包括调制器/解调器(调制解调器)和/或发射机。编码的视频数据可以通过网络130a经由i/o接口116直接发送到目的地设备120。编码的视频数据还可以存储在存储介质/服务器130b上,以供目的地设备120访问。[1437]目的地设备120可以包括i/o接口126、视频解码器124和显示设备122。[1438]i/o接口126可以包括接收器和/或调制解调器。i/o接口126可以从源设备110或存储介质/服务器130b获取编码视频数据。视频解码器124可以对编码的视频数据进行解码。显示设备122可以向用户显示解码的视频数据。显示设备122可以与目的地设备120集成,或者可以位于目的地设备120的外部,目的地设备120被配置为与外部显示设备接合。[1439]视频编码器114和视频解码器124可以根据视频压缩标准(例如高效视频编解码(hevc)标准、通用视频编解码(vvm)标准和其他当前和/或进一步的标准)操作。[1440]图5是示出视频编码器200的示例的框图,视频编码器200可以是图4所示的系统100中的视频编码器114。[1441]视频编码器200可以被配置为执行本公开的任何或所有技术。在图5的示例中,视频编码器200包括多个功能组件。本公开中描述的技术可以在视频编码器200的各个组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。[1442]视频编码器200的功能组件可以包括分割单元201、预测单元202(预测单元202可以包括模式选择单元203、运动估计单元204、运动补偿单元205和帧内预测单元206)、残差生成单元207、变换单元208、量化单元209、反量化单元210、反变换单元211,重构单元212、缓冲器213和熵编码单元214。[1443]在其他示例中,视频编码器200可以包括更多、更少或不同的功能组件。在一个示例中,预测单元202可以包括块内复制(ibc)单元。ibc单元可以在ibc模式下执行预测,其中至少一个参考图片是当前视频块所在的图片。[1444]此外,一些组件(例如运动估计单元204和运动补偿单元205)可以被高度集成,但出于解释的目的,在图5的示例中单独表示。[1445]分割单元201可以将图片分割成一个或多个视频块。视频编码器200和视频解码器300可以支持各种视频块尺寸。[1446]模式选择单元203可以例如基于错误结果选择编解码模式中的一种,帧内或帧间,并将得到的帧内或帧间编解码块提供给残差生成单元207以生成残差块数据,并提供给重构单元212以重构编解码块以用作参考图片。在一些示例中,模式选择单元203可以选择帧内预测和帧间预测(ciip)模式的组合,其中预测基于帧间预测信号和帧内预测信号。模式选择单元203还可以在帧间预测的情况下为块选择运动矢量的分辨率(例如,子像素或整数像素精度)。[1447]为了对当前视频块执行帧间预测,运动估计单元204可以通过将来自缓冲器213的一个或多个参考帧与当前视频块进行比较来生成当前视频块的运动信息。运动补偿单元205可以基于运动信息和来自缓冲器213的图片(与当前视频块相关联的图片除外)的解码样点来确定当前视频块的预测视频块。[1448]运动估计单元204和运动补偿单元205可以对当前视频块执行不同的操作,例如,取决于当前视频块是在i条带、p条带还是b条带中。[1449]在一些示例中,运动估计单元204可以对当前视频块执行单向预测,并且运动估计单元204可以搜索列表0或列表1的参考图片以查找当前视频块的参考视频块。然后,运动估计单元204可以生成参考索引,该索引指示包含参考视频块的列表0或列表1中的参考图片,以及指示当前视频块和参考视频块之间的空域位移的运动矢量。运动估计单元204可以输出参考索引、预测方向指示符和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块来生成当前块的预测视频块。[1450]在其他示例中,运动估计单元204可以对当前视频块执行双向预测,运动估计单元204可以在列表0中的参考图片中搜索当前视频块的参考视频块,还可以在列表1中的参考图片中搜索当前视频块的另一参考视频块。然后,运动估计单元204可以生成参考索引,该索引指示包含参考视频块的列表0和列表1中的参考图片,以及指示参考视频块和当前视频块之间的空域位移的运动矢量。运动估计单元204可以输出当前视频块的参考索引和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块来生成当前视频块的预测视频块。[1451]在一些示例中,运动估计单元204可以输出用于解码器的解码处理的全套运动信息。[1452]在一些示例中,运动估计单元204可能不输出当前视频的全套运动信息。相反,运动估计单元204可以参考另一视频块的运动信息来信令通知当前视频块的运动信息。例如,运动估计单元204可以确定当前视频块的运动信息与邻近视频块的运动信息足够类似。[1453]在一个示例中,运动估计单元204可以在与当前视频块相关联的语法结构中指示一个值,该值向视频解码器300指示当前视频块具有与另一视频块相同的运动信息。[1454]在另一个示例中,运动估计单元204可以在与当前视频块相关联的语法结构中识别另一个视频块和运动矢量差(mvd)。运动矢量差指示当前视频块的运动矢量与所指示视频块的运动矢量之间的差。视频解码器300可以使用所指示视频块的运动矢量和运动矢量差来确定当前视频块的运动矢量。[1455]如上所讨论的,视频编码器200可以预测地信令通知运动矢量。可以由视频编码器200实施的预测信令技术的两个示例包括高级运动矢量预测(amvp)和merge模式信令。[1456]帧内预测单元206可以对当前视频块执行帧内预测。当帧内预测单元206对当前视频块执行帧内预测时,帧内预测单元206可以基于同一图片中其他视频块的解码样点生成当前视频块的预测数据。当前视频块的预测数据可以包括预测视频块和各种语法元素。[1457]残差生成单元207可以通过从当前视频块减去(例如,用减号指示)当前视频块的预测视频块来生成当前视频块的残差数据。当前视频块的残差数据可以包括对应于当前视频块中的样点的不同样点分量的残差视频块。[1458]在其他示例中,例如在跳过模式下,当前视频块的当前视频块可能没有残差数据,并且残差生成单元207可能不执行减法操作。[1459]变换处理单元208可以通过将一个或多个变换应用于与当前视频块相关联的残差视频块,来为当前视频块生成一个或多个变换系数视频块。[1460]在变换处理单元208生成与当前视频块相关联的变换系数视频块之后,量化单元209可以基于与当前视频块相关联的一个或多个量化参数(qp)值对与当前视频块相关联的变换系数视频块进行量化。[1461]反量化单元210和反变换单元211可以分别对变换系数视频块应用反量化和反变换,以从变换系数视频块重构残差视频块。重构单元212可以将重构的残差视频块添加到来自预测单元202生成的一个或多个预测视频块的对应样点中,以产生与当前块相关联的重构视频块,以存储在缓冲器213中。[1462]在重构单元212重构视频块之后,可以执行环路滤波操作以减少视频块中的视频块伪像。[1463]熵编码单元214可以从视频编码器200的其他功能组件接收数据。当熵编码单元214接收到数据时,熵编码单元214可以执行一个或多个熵编码操作以生成熵编码数据并输出包括熵编码数据的比特流。[1464]图6是示出视频解码器300的示例的框图,该视频解码器300可以是图4所示的系统100中的视频解码器114。[1465]视频解码器300可以被配置为执行本公开的任何或所有技术。在图6的示例中,视频解码器300包括多个功能组件。本公开中描述的技术可以在视频解码器300的各个组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。[1466]在图6的示例中,视频解码器300包括熵解码单元301、运动补偿单元302、帧内预测单元303、反量化单元304、反变换单元305、以及重构单元306和缓冲器307。在一些示例中,视频解码器300可以执行通常与关于视频编码器200描述的编码过程(图5)相反的解码过程。[1467]熵解码单元301可以取回编码比特流。编码比特流可以包括熵编码视频数据(例如,视频数据的编码块)。熵解码单元301可以对熵编码的视频数据进行解码,并且运动补偿单元302可以从熵解码的视频数据确定运动信息,该运动信息包括运动矢量、运动矢量精度、参考图片列表索引和其他运动信息。例如,运动补偿单元302可以通过执行amvp和merge模式来确定这种信息。[1468]运动补偿单元302可以产生运动补偿块,可能基于插值滤波器执行插值。语法元素中可以包括用于以子像素精度使用的插值滤波器的标识符。[1469]运动补偿单元302可以使用视频编码器20在视频块编码期间使用的插值滤波器来计算参考块的子整数像素的插值。运动补偿单元302可以根据接收到的语法信息确定视频编码器200使用的插值滤波器,并使用插值滤波器来产生预测块。[1470]运动补偿单元302可以使用一些语法信息来确定用于对编码视频序列的帧和/或条带进行编码的块的尺寸、描述如何对编码视频序列的图片的每个宏块进行分割的分割信息、指示如何对每个分区进行编码的模式、每个帧间编码块的一个或多个参考帧(和参考帧列表)、以及用于对编码视频序列进行解码的其他信息。[1471]帧内预测单元303可以使用例如在比特流中接收的帧内预测模式,以从空域上邻近的块形成预测块。反量化单元303对在比特流中提供并由熵解码单元301解码的量化视频块系数进行反量化(即,去量化)。反变换单元303应用反变换。[1472]重构单元306可以将残差块与运动补偿单元202或帧内预测单元303生成的对应预测块求和,以形成解码块。如果需要,还可以应用去方块滤波器来过滤解码块,以便移除块性伪像。解码后的视频块随后被存储在缓冲器307中,该缓冲器307为后续运动补偿/帧内预测提供参考块,并且还产生解码后的视频以在显示设备上呈现。[1473]下面提供一些实施例优选的解决方案列表。[1474]以下解决方案示出了前一节中讨论的技术的示例实施例(例如,项目1)。[1475]1.一种视频处理方法(例如,图3所示的方法3000),包括:执行(3002)视频的视频区域中的视频单元和视频的编解码表示之间转换,其中,编解码表示符合语法规则。该规则规定视频图片级的第一指示符和视频区域级的第二指示符指示在转换期间使用时域运动矢量预测编解码工具。该规则规定了在编解码表示中省略第一个指示符和/或第二个指示符的条件。[1476]2.根据解决方案1所述的方法,其中,第一个指示符指示视频图片中的任何视频区域是否使用时域运动矢量预测编解码工具。[1477]3.根据解决方案1-2中任一项所述的方法,其中,第二个指示符指示在视频区域级别启用时域运动矢量预测编解码工具。[1478]4.根据解决方案1-3中任一项所述的方法,其中,第二个指示符从编解码表示中省略,并且其中,在解码器处,第二个指示符被推断为具有特定值。[1479]以下解决方案示出了前一节中讨论的技术的示例实施例(例如,项目2)[1480]5.一种视频处理方法,包括:执行视频的视频区域中的视频单元和视频的编解码表示之间的转换,其中,编解码表示符合语法规则;其中,语法规则规定视频区域级别处的标头的信息被推断为视频单元级别处的标头信息。[1481]6.根据解决方案1所述的信息,其中,视频单元是视频条带,并且视频区域是视频图片。[1482]以下解决方案示出了前一节中讨论的技术的示例实施例(例如,项目3)[1483]7.一种视频处理方法,包括:执行包括组织为逐层视频序列的多个图片的视频的视频区域中的视频单元与视频的编解码表示之间的转换;其中,编解码表示中的一个或多个字段指示视频单元中的子图片的数目。[1484]8.根据解决方案7所述的方法,其中,视频单元是视频图片。[1485]9.根据解决方案7所述的方法,其中,一个或多个字段的第一个字段指示视频区域级别处的子图片数目的约束,并且在第一个字段指示启用了约束的情况下,第二个字段被限制为零值。[1486]以下解决方案示出了前一节中讨论的技术的示例实施例(例如,第4项)[1487]10.一种视频处理的方法,包括:执行包括组织为逐层视频序列的多个图片的视频的视频区域中的视频单元与视频的编解码表示之间的转换;其中,编解码表示符合格式规则,该格式规则规定指示视频单元中子图片数目的第二字段的值控制第二字段是否指示跨子图片编解码工具对转换的适用性。[1488]11.根据解决方案10所述的方法,其中,视频单元是视频图片。[1489]12.根据解决方案10-11中任一项所述的方法,其中,视频区域是视频序列。[1490]13.根据解决方案10-12中任一项所述的方法,其中,跨子图片编解码工具包括帧内编解码工具、帧间编解码工具或环路滤波工具。[1491]以下解决方案示出了前一节中讨论的技术的示例实施例(例如,项目5、6)[1492]14.一种视频处理的方法,包括:执行包括组织为逐层视频序列的多个图片的视频的视频区域中的视频单元与视频的编解码表示之间的转换;其中,编解码表示符合格式规则,该格式规则规定每个视频单元的子图片数目控制编解码表示中的语法元素的值。[1493]15.根据解决方案14所述的方法,其中,语法元素的值指示子图片是否被视为视频图片。[1494]16.根据解决方案14所述的方法,其中,语法元素的值指示是否跨子图片启用环路滤波。[1495]以下解决方案示出了前一节中讨论的技术的示例实施例(例如项目7、8)[1496]17.一种视频处理的方法,包括:执行包括组织为逐层视频序列的多个图片的视频的视频区域中的视频单元与视频的编解码表示之间的转换;其中,编解码表示符合格式规则,该格式规则规定指示视频单元中是否出现单个视频条带的字段的值控制视频的矩形条带的编解码特性。[1497]18.根据解决方案17所述的方法,其中,编解码特性包括矩形条带的宽度是否以视频单元中的片列为单位规定。[1498]19.根据解决方案17所述的方法,其中,编解码特性包括子图片中是否包括单个条带。[1499]以下解决方案示出了前一节中讨论的技术的示例实施例(例如,项目9)。[1500]20.一种视频处理的方法,包括:执行包括组织为逐层视频序列的多个图片的视频的视频区域中的视频单元与视频的编解码表示之间的转换;其中,编解码表示符合语法规则,该语法规则在层宽视频序列的编解码表示中跨不同图片的提取子图片具有相同的子图片索引。[1501]21.根据解决方案10所述的方法,其中,格式规则规定在基于子图片索引的编解码表示的解码期间提取子图片。[1502]以下解决方案示出了前一节中讨论的技术的示例实施例(例如,项目10)[1503]22.一种视频处理的方法,包括:执行包括组织为逐层视频序列的多个图片的视频的视频区域中的视频单元与视频的编解码表示之间的转换;其中,编解码表示符合语法规则,即为子图片子比特流提取的子比特流符合单个子图片的格式。[1504]以下解决方案示出了前一节中讨论的技术的示例实施例(例如,项目13)[1505]23.一种视频处理的方法,包括:执行包括组织为逐层视频序列的多个图片的视频的视频区域中的视频单元与视频的编解码表示之间的转换;其中,编解码表示符合格式规则,该格式规则规定包括一个或多个约束标志,这些约束标志控制编解码表示中语法结构中一个或多个语法元素的出现。[1506]24.根据解决方案23所述的方法,其中,语法结构是序列参数集或视频参数集或图片参数集或图片标头或条带标头。[1507]以下解决方案示出了前一节中讨论的技术的示例实施例(例如,项目14)。[1508]25.根据解决方案23-24中任一项所述的方法,其中,一个或多个语法元素指示编解码表示内的图片分辨率变化。[1509]以下解决方案示出了前一节中讨论的技术的示例实施例(例如,项目15)。[1510]26.根据解决方案23-24中任一项所述的方法,其中,一个或多个语法元素指示用于转换的缩放窗口偏移参数。[1511]以下解决方案示出了前一节中讨论的技术的示例实施例(例如,项目16)[1512]27.根据解决方案23-24中任一项所述的方法,其中,一个或多个约束标志包括指示是否启用了每个图片约束一个条带的标志。[1513]以下解决方案示出了前一节中讨论的技术的示例实施例(例如,项目17)。[1514]28.根据解决方案23-24中任一项所述的方法,其中,一个或多个约束标志包括指示转换期间是否跳过变换的标志。[1515]以下解决方案示出了前一节中讨论的技术的示例实施例(例如,项目18)。[1516]29.根据解决方案23-28中任一项所述的方法,其中,来自一个或多个约束标志的第一个约束标志控制编解码表示中第二个约束标志的出现。[1517]30.根据解决方案23-29中任一项所述的方法,其中,语法规则规定一个或多个约束标志包括一组约束标志,这些约束标志根据用于视频转换的编解码工具类型或编解码简档进行分组。[1518]31.根据上述解决方案任一项所述的方法,其中,视频单元对应于视频图片。[1519]32.根据上述解决方案任一项所述的方法,其中,视频区域对应于视频序列。[1520]33.根据解决方案1至32中任一项所述的方法,其中,转换包括将视频编码为编解码表示。[1521]34.根据解决方案1至32中任一项所述的方法,其中,转换包括对编解码表示进行解码以生成视频的像素值。[1522]35.一种视频解码装置,包括处理器,该处理器被配置为实施解决方案1至34中的一项或多项所述的方法。[1523]36.一种视频编码装置,包括处理器,该处理器被配置为实施解决方案1至34中的一项或多项所述的方法。[1524]37.一种其上存储有计算机代码的计算机程序产品,该代码当由处理器执行时,使得处理器实施解决方案1至34中任一项所述的方法。[1525]38.本文档中描述的方法、装置或系统。[1526]图7是根据本技术用于视频处理的方法700的流程图表示。在操作710处,方法700包括执行包括视频条带的视频图片的视频与视频的比特流之间的转换。比特流符合格式规则,该格式规则规定视频条带的条带类型确定视频图片的图片标头的特定信息被视频条带的条带标头继承的方式。[1527]在一些实施例中,格式规则规定基于参考图片列表信息是否存在于图片标头中来进一步确定方式。在一些实施例中,某些信息包括以下至少一项:用于时域运动矢量预测的并置图片是来自参考列表0,还是来自并置图片的参考图片索引。在一些实施例中,格式规则规定该方式进一步基于是否为视频条带启用了时域运动矢量预测。在一些实施例中,视频图片的图片标头中的第一语法元素指示是否对视频图片启用了时域运动矢量预测,并且在视频条带的条带类型为p且第一语法元素等于1的情况下,该方式规定,视频条带的条带标头中指示视频条带与哪个参考图片列表并置的第二语法元素的值被推断为1,而与指示视频图片与哪个参考图片列表并置的视频图片的图片标头中的第三语法元素的值无关。在一些实施例中,在视频条带的条带类型为p的情况下,该方式规定视频条带的条带标头中指示视频条带与哪个参考图片列表并置的第二语法元素的值被推断为1,而与其他条件无关。在一些实施例中,在视频条带的条带类型为p的情况下,该方式规定视频条带的条带标头中指示视频条带与哪个参考图片列表并置的第二语法元素的值被推断为1,以响应于为视频条带启用的时域运动矢量预测。[1528]在一些实施例中,视频图片的图片标头中的第一语法元素指示是否为视频图片启用时域运动矢量预测,并且在视频条带的条带类型为b且第一语法元素等于1的情况下,该方式规定,视频条带的条带标头中指示视频条带与哪个参考图片列表并置的第二语法元素的值被推断为等于视频图片的图片标头中指示视频图片与哪个参考图片列表并置的第四语法元素。在一些实施例中,视频图片标头中的语法元素规定用于时域运动矢量预测的视频图片的并置图片的参考索引,并且格式规则规定语法元素的值小于指示参考图片列表0中活动参考条目的数目的变量。[1529]在一些实施例中,视频条带标头中的语法元素规定用于时域运动矢量预测的视频图片的并置图片的参考索引,并且格式规则规定语法元素指代参考图片列表1中的非活动条目。在一些实施例中,格式规则进一步规定与参考图片列表1中的非活动条目相对应的参考图片也由参考图片列表0中的活动条目引用。在一些实施例中,视频条带标头中的语法元素规定在用于转换之前修改用于时域运动矢量预测的视频图片的并置图片的参考索引。在一些实施例中,语法元素被映射到0到参考图片列表0中的活动参考条目数目减1(含)范围内的索引。在一些实施例中,语法元素引用指代图片列表0中的条目,并且在语法元素的值大于或等于参考图片列表0中的活动参考条目的数目的情况下,语法元素被设置为默认并置参考索引。默认并置参考索引在0到参考图片列表中活动参考条目数目减1(含)的范围内。在一些实施例中,默认并置参考索引被设置为0或在比特流中被信令通知。[1530]在一些实施例中,格式规则规定参考相同视频图片标头的第一类型的第一视频条带和第二类型的第二视频条带使用不同的并置图片进行转换。在一些实施例中,第一类型是b类型的视频条带,并且第二类型是p类型的视频条带。在一些实施例中,在视频图片标头中信令通知参考图片列表,并且在视频条带标头中信令通知并置图片的参考图片索引。在一些实施例中,格式规则规定,在(1)条带类型为p,(2)在视频图片标头中信令通知参考图片列表,(3)启用时域运动矢量预测,以及(4)视频图片标头中的第三语法元素为0指示视频图片未与参考图片列表0并置的情况下,在视频条带标头中信令通知并置图片的参考图片索引。在一些实施例中,参考图片索引引用参考图片列表0中的参考图片。[1531]在一些实施例中,格式规则规定为类型b的第一视频条带信令通知或确定第一并置参考图片索引,并且为类型p的第二视频条带信令通知或确定第二并置参考图片索引。在一些实施例中,仅在视频图片标头中的第三语法元素指示视频图片未与参考图片列表0并置时,才信令通知第一并置参考图片索引和第二并置参考图片索引。[1532]在一些实施例中,格式规则规定在比特流中信令通知第一类型的第一视频条带和第二类型的第二视频条带是否引用相同的视频图片标头。在一些实施例中,在视频图片标头中信令通知参考相同视频图片标头的视频条带的类型。在一些实施例中,格式规则规定,仅当在视频图片标头中信令通知参考图片列表时,才在视频图片标头中信令通知参考相同视频图片标头的视频条带的类型。在一些实施例中,格式规则规定,仅当在视频图片标头中信令通知参考相同视频图片标头的视频条带的类型时,才在视频图片标头中信令通知参考图片列表。在一些实施例中,在比特流中信令通知是否仅存在引用相同视频图片标头的b类型视频条带。在一些实施例中,在比特流中信令通知是否仅存在引用相同视频图片标头的p类型视频条带。在一些实施例中,仅存在b类型的视频条带,并且在比特流中信令通知引用相同视频图片标头的i类型的视频条带。在一些实施例中,仅存在p类型的视频条带,并且在比特流中信令通知引用相同视频图片标头的i类型的视频条带。[1533]图8是根据本技术的用于视频处理的方法800的流程图表示。在操作810处,方法800包括执行包括视频条带的视频图片的视频与视频的比特流之间的转换。该比特流符合格式规则,该格式规则规定视频条带的条带类型确定视频条带标头中第一语法元素的值。第一语法元素规定用于时域运动矢量预测的并置图片的参考索引。[1534]在一些实施例中,在视频条带的条带类型是b并且视频条带标头中指示视频条带的第二语法元素的值与参考图片列表0并置的情况下,第一语法元素指代参考图片列表0中的条目。在一些实施例中,第一语法元素在0到(有效参考图片的索引数目-1)(含)的范围内。[1535]在一些实施例中,在视频条带的条带类型是p并且启用了时域运动矢量预测的情况下,第一语法元素在0到(有效参考图片的索引数目-1)(含)的范围内。[1536]图9是根据本技术的视频处理的方法900的流程图。在操作910处,方法900包括执行包括视频条带的视频图片的视频与视频的比特流之间的转换。比特流符合格式规则,该格式规则规定,在视频条带的条带类型为类型p并且启用了时域运动矢量预测的情况下,禁用对并置参考图片列表中的参考图片使用参考图片重采样(rpr)。参考图片由用于时域运动矢量预测的视频条带的并置图片的参考索引指示。[1537]在一些实施例中,基于视频条带标头中的语法元素确定并置参考图片列表,该语法元素指示视频条带是否与参考图片列表0并置。在一些实施例中,在视频条带的条带类型是p并且启用了时域运动矢量预测的情况下,语法元素被推断为等于1。在一些实施例中,并置参考图片列表是参考图片列表0。[1538]图10是根据本技术的用于视频处理的方法1000的流程图表示。在操作1010处,方法1000包括执行包括视频条带的视频图片的视频与视频的比特流之间的转换。该比特流符合格式规则,该格式规则规定在视频条带标头中的语法元素指示视频条带未与参考图片列表0并置的情况下,视频条带的条带类型排除类型p。[1539]在一些实施例中,格式规则进一步规定,在(1)参考图片列表的信息在比特流的视频图片标头中,(2)为视频图片启用时域运动矢量预测,(3)视频图片的所有编解码视频条带具有类型b或类型p的条带类型,以及(4)视频图片未与参考图片列表0并置的情况下,在比特流中省略条带类型的信令。在一些实施例中,视频条带的条带类型被推断为类型b。[1540]图11是根据本技术的用于视频处理的方法1100的流程图表示。在操作1110处,方法1100包括执行包括一个或多个子图片的视频图片的视频与视频的比特流之间的转换。比特流符合格式规则,该格式规则规定响应于视频图片中的子图片数目选择性地包括指示是否跨编解码层视频序列中的子图片的边界执行操作的第一语法元素。[1541]在一些实施例中,格式规则规定第一语法元素进一步指示编解码层视频序列中子图片的所有边界被视为图片边界。在一些实施例中,该操作包括帧内预测、帧间预测或环路滤波操作中的至少一个。在一些实施例中,格式规则规定在视频图片中的子图片数目为1的情况下,在比特流中省略语法元素。在一些实施例中,语法元素的值被推断为1,指示没有跨子图片的边界执行环路滤波操作。在一些实施例中,第一语法元素在序列参数集中。在一些实施例中,第一语法元素包括sps_independent_subpics_flag。[1542]在一些实施例中,格式规则进一步规定,编解码层视频序列中的视频图片中的子图片的数目确定指示第二语法元素的方式,该第二语法元素指示视频图片的一个或多个子图片是否被视为用于转换的一个或多个图片,其中在转换中未应用环路滤波操作。在一些实施例中,在图片中的子图片的数目为1的情况下,第二语法元素的值被推断为1,指示视频图片的子图片被视为用于转换的图片。在一些实施例中,在图片中的子图片的数目为1的情况下,第二语法元素的值需要为1,指示视频图片的子图片被视为用于转换的图片。[1543]在一些实施例中,格式规则进一步规定,编解码层视频序列中的视频图片中的子图片的数目确定了指示第三语法元素的方式,该第三语法元素指示是否跨子图片的边界启用了环路滤波操作。在一些实施例中,第三语法元素进一步指示环路滤波操作是否跨子图片的边界可适用。在一些实施例中,在图片中的子图片的数目为1的情况下,第三语法元素的值需要为0,指示跨子图片的边界禁用环路滤波器操作。在一些实施例中,被推断为0的第三语法元素进一步指示环路滤波操作跨子图片的边界不适用。在一些实施例中,在图片中的子图片的数目为1的情况下,第三语法元素的值需要为0,这指示跨子图片的边界禁用环路滤波器操作。在一些实施例中,要求为0的第三语法元素进一步指示环路滤波操作跨子图片的边界不适用。[1544]在一些实施例中,子图片的数目由语法元素sps_num_subpics_nimus1指示。在一些实施例中,子图片的数目由语法元素one_subpic_per_pic_contraint_flag指示。[1545]图12是根据本技术的用于视频处理的方法1200的流程图表示。在操作1210处,方法1200包括执行包括一个或多个子图片的视频图片的视频与视频的比特流之间的转换。比特流符合格式规则,该格式规则规定比特流中视频图片中的子图片数目受比特流中的约束标志约束。[1546]在一些实施例中,约束标志包括one_subpic_per_pic_contraint_flag。在一些实施例中,在约束标志的值为1的情况下,子图片的数目要求为1。[1547]图13是根据本技术的用于视频处理的方法1300的流程图表示。在操作1310处,方法1300包括执行包括一个或多个子图片的视频图片的视频与视频的比特流之间的转换。比特流符合一种格式规则,该规则规定子图片中的条带数决定了信令通知指示条带宽的语法元素的方式,其中条带宽被规定为片列的数目。[1548]在一些实施例中,在比特流中省略了语法元素,并且在子图片中的条带数为1的情况下推断条带的宽度。在一些实施例中,条带的宽度被推断为1个片列。[1549]图14是根据本技术的用于视频处理的方法1400的流程图表示。方法1400包括,在操作1410处,根据规定基于约束标志确定视频图片中的一个或多个子图片中的每一个子图片是否包括单个条带的格式规则,执行包括一个或多个子图片的视频图片的视频与视频的比特流之间的转换。[1550]在一些实施例中,语法元素指示视频图片中的一个或多个子图片中的每一个是否包括单个条带,并且约束标志指示视频图片是否被分割成多个片或条带。在一些实施例中,单个条带仅指示一个矩形条带。在一些实施例中,在约束标志指示视频图片未被分割为多个片或条带的情况下,语法元素被推断为等于1。在一些实施例中,在约束标志指示没有图片分割被应用于视频图片的情况下,语法元素被推断为等于1。在一些实施例中,在约束标志指示没有图片分割被应用于视频图片的情况下,比特流中不存在语法元素,并且语法元素的值被推断为等于1。在一些实施例中,语法元素被推断为等于约束标志。[1551]在一些实施例中,语法元素指示视频图片中的一个或多个子图片中的每一个子图片是否包括单个条带,约束标志指示视频图片是否包括单个条带,并且在约束标志等于1的情况下,语法元素等于1。在一些实施例中,语法元素指示视频图片中的一个或多个子图片中的每一个子图片是否包括单个条带,约束标志指示视频图片是否包括单个条带,并且在约束标志等于1且单个条带为矩形的情况下,语法元素等于1。在一些实施例中,由语法元素和约束标志控制的所有视频图片引用相同的图片参数集。[1552]图15是根据本技术的用于视频处理的方法1500的流程图表示。在操作1510处,方法1500包括执行包括视频图片的视频与视频的比特流之间的转换。视频图片中的至少一个包括一个或多个子图片。比特流符合格式规则,该格式规则规定,为了在转换的子图片子比特流提取过程中确定一个或多个目标子图片的输出子比特流,不同视频图片中的每个目标子图片使用相同的子图片索引。[1553]在一些实施例中,一个或多个目标子图片的目标子图片索引值的列表用作子图片子比特流提取过程的输入,并且目标子图片索引值的列表在不同的视频图片中是相同的。在一些实施例中,跨不同的视频图片的一个或多个子图片标识符用于子图片子比特流提取处理,并且一个或多个子图片标识符对应于目标子图片索引的相同列表。在一些实施例中,基于子图片索引确定用于确定子图片子比特流提取过程中的输出子比特流的一个或多个目标子图片。[1554]在一些实施例中,基于子图片索引确定修改用于确定子图片子比特流提取过程中的输出子比特流的语法元素的方式。在一些实施例中,修改语法元素的方式包括重写和/或移除语法元素。在一些实施例中,在比特流中显式地信令通知指示子图片标识符映射的语法元素的情况下,在图片参数集中省略子图片标识符映射。在一些实施例中,在比特流中显式地信令通知指示子图片标识符映射的语法元素的情况下,在图片参数集中信令通知子图片标识符映射。[1555]图16是根据本技术的用于视频处理的方法1600的流程图表示。在操作1610处,方法1600包括通过从包括视频图片的视频的比特流中提取一个或多个目标子图片的子比特流来确定输出子比特流。视频图片中的至少一个包括一个或多个子图片,并且输出子比特流符合一种格式规则,该格式规则规定一个或多个目标子图片在输出子比特流中被表示为单个子图片。[1556]在一些实施例中,输出子比特流的一个或多个语法元素被重写和/或移除以用于确定。在一些实施例中,响应于将一个或多个目标子图片表示为输出子比特流中的单个子图片,在输出子比特流中省略了引用所有输出层中的一个或多个目标子图片的一个或多个语法元素。在一些实施例中,一个或多个语法元素包括指示子图片是否被视为图片的第一语法元素。在一些实施例中,第一语法元素被推断为等于1,这指示子图片被视为图片。在一些实施例中,一个或多个语法元素包括第二语法元素,这指示是否跨子图片的边界启用环路滤波器操作。在一些实施例中,第二语法元素被推断为等于0,这指示跨子图片的边界禁用环路滤波器操作。[1557]在一些实施例中,序列参数集的所有引用语法结构中的第三语法元素和图片参数集的所有引用语法结构中的第四语法元素被修改为0,第三语法元素和第四语法元素指示视频图片中的子图片数减1。在一些实施例中,指示是否跨子图片的边界执行操作的第五语法元素被修改为等于1。在一些实施例中,在子比特流中引用的语法结构中修改指示视频图片是否被分割的第六语法元素。在一些实施例中,基于子图片中的片或条带的数目有条件地修改第六语法元素。在一些实施例中,在子图片包括单个片或条带的情况下,第六语法元素被修改为等于1,这指示视频图片没有被分割。在一些实施例中,在子图片中的片或条带的数目大于1的情况下,第六语法元素被修改为等于0,这指示视频图片被分割。[1558]图17是根据本技术的用于视频处理的方法1700的流程图表示。在操作1710处,方法1700包括执行包括瞬时解码刷新(idr)图片的视频与视频的比特流之间的转换。该比特流符合格式规则,该格式规则规定与参考图片列表相关联的一个或多个语法元素存在于idr图片的条带标头中。[1559]在一些实施例中,语法标志指示一个或多个语法元素存在于idr图片的条带标头中。在一些实施例中,语法标志被设置为等于1。[1560]在一些实施例中,转换包括通过merging视频的两个输入比特流来确定输出比特流。两个输入比特流之一的网络抽象层(nal)单元类型是帧内随机接入点(irap)视频编解码层(vcl)nal单元类型,并且idr图片的参考图片列表可用于转换。[1561]图18是根据本技术的用于视频处理的方法1800的流程图表示。在操作1810处,方法1800包括执行包括亮度视频块和色度视频块的视频与视频的比特流之间的转换。根据亮度分割树对亮度视频块进行分割,并且根据色度分割树对色度视频块进行分割。比特流包括指示亮度分割树的亮度块划分信息和指示色度分割树的色度块划分信息。比特流符合一个规则,该规则规定允许色度块划分信息不同于亮度块划分信息。[1562]在一些实施例中,亮度视频块或色度视频块包括编解码树块、变换块、图片块或编解码块。在一些实施例中,色度分割树包括色度双树,并且色度视频块的至少划分结构或划分语法元素不同于亮度视频块的划分结构或划分语法元素。在一些实施例中,亮度分割树包括局部双树,并且色度视频块的至少划分结构或划分语法元素不同于亮度视频块的划分结构或划分语法元素。[1563]图19是根据本技术的用于视频处理的方法1900的流程图表示。在操作1910处,方法1900包括执行包括一个或多个子图片的视频图片的视频与视频的比特流之间的转换。比特流符合格式规则,该规则规定一个或多个语法结构基于包括一般约束信息的语法元素的约束标志进行约束。[1564]在一些实施例中,约束标志包括one_tile_per_pic_constraint_flag,这指示由视频参数集规定的一个或多个输出层集中的每个视频图片是否包括单个片,并且一个或多个语法结构包括指示图片中的片的数目的第一语法结构numtilesinpic,该数目在one_tile_per_pic_constraint_flag等于1的情况下被约束为1。在一些实施例中,约束标志包括指示由视频参数集规定的一个或多个输出层集中的每个视频图片是否包括单个条带的one_slice_per_pic_constraint_flag,并且一个或多个语法结构包括指示每个视频图片中的矩形条带数减1的第二语法元素num_slices_in_pic_minus1。在一些实施例中,在one_slice_per_pic_constraint_flag等于1并且指示视频图片中矩形条带的使用的另一个语法元素rect_slice_flag等于1的情况下,第二语法元素num_slices_in_pic_minus1被约束为0。在一些实施例中,在one_slice_per_pic_constraint_flag等于1并且指示视频图片中矩形条带的使用的另一个语法元素rect_slice_flag等于0的情况下,比特流的每个条带标头中的第二语法元素num_slices_in_pic_minus1被约束为等于视频图片中的片数减1。[1565]在一些实施例中,约束标志包括指示视频图片是否包括单个子图片的one_subpic_per_pic_constraint标志,并且其中一个或多个语法元素包括指示视频图片中的子图片数目的第三语法元素sps_num_subpics_minus1,该数目在one_subpic_per_pic_constraint等于1的情况下被约束为0。在一些实施例中,约束标志包括指示由视频参数集规定的一个或多个输出层集合中的所有图片的sps_subpic_info_present_flag等于0,并且其中一个或多个语法结构包括指示视频图片中的子图片数目的第三语法元素sps_num_subpics_minus1,该数目在one_subpic_per_pic_constraint等于0的情况下被约束为0。在一些实施例中,等于0的sps_subpic_info_present_flag指示每个视频图片包括单个子图片和子图片信息不存在。[1566]在一些实施例中,一个或多个语法元素位于条带参数集、视频参数集、图片参数集、图片标头或条带标头中。在一些实施例中,一个或多个语法元素包括指示是否启用编解码工具的语法标志。在一些实施例中,语法标志被约束为0,这指示在约束标志等于1的情况下禁用编解码工具。在一些实施例中,基于约束标志覆盖语法标志。[1567]在一些实施例中,比特流中是否存在语法标志基于约束标志。在一些实施例中,在约束标志等于1的情况下,在比特流中省略语法标志。在一些实施例中,语法标志被推断为0,这指示编解码工具被禁用。[1568]在一些实施例中,约束标志指示在编解码层视频序列(clvs)中没有分辨率变化,并且其中一个或多个语法元素包括序列参数集中的第一语法元素,这指示clvs中是否允许分辨率变化。在一些实施例中,在约束标志等于1的情况下,在比特流中省略第一语法元素。在一些实施例中,第一语法元素被推断为0,这指示在clvs中不允许分辨率变化。[1569]在一些实施例中,一个或多个语法元素进一步包括指示缩放窗口偏移参数的第二语法元素,并且第二语法元素是否存在于比特流中至少基于约束标志或第一语法元素。在一些实施例中,在第一语法元素等于0的情况下,在比特流中省略第二语法元素,这指示在clvs中不允许分辨率变化。在一些实施例中,在约束标志等于1的情况下,在比特流中省略第二语法元素,这指示clvs中没有分辨率变化。在一些实施例中,第二语法元素被推断为0。[1570]在一些实施例中,约束标志包括指示视频图片是否包括单个条带的one_slice_per_pic_constraint标志,并且一个或多个语法元素包括指示视频图片是否包括单个子图片的语法标志one_subpic_per_pic_constraint_flag。在一些实施例中,在约束标志等于1的情况下,在比特流中省略语法标志one_subpic_per_pic_constraint_flag,并且其中语法标志被推断为1,这指示视频图片包括单个子图片。在一些实施例中,在约束标志等于0的情况下,在比特流中包括语法标志one_subpic_per_pic_constraint_flag。在一些实施例中,约束标志包括no_transform_skip_constraint_flag,这指示变换跳过是否不允许用于转换,并且一个或多个语法元素包括语法标志no_bdpcm_constraint标志,这指示是否不允许块差分脉冲编码调制(bdpcm)编解码工具。在一些实施例中,在约束标志等于1的情况下(这指示不允许变换跳过),语法标志被约束为1(这指示不允许bdpcm编解码工具)。在一些实施例中,在约束标志等于1的情况下(这指示不允许变换跳过),在比特流中省略语法标志。在一些实施例中,语法标志被推断为1,这指示不允许bdpcm编解码工具。[1571]在一些实施例中,比特流中是否存在约束标志基于语法结构中的至少一个其他约束标志。在一些实施例中,至少一个其他约束标志被定义为约束组标志。在一些实施例中,基于视频的简档的编解码工具类型对多个约束标志进行分组。在一些实施例中,基于对应的约束组标志来确定一个组中的约束标志的值。在一些实施例中,基于对应的约束组标志来确定比特流中是否存在约束标志。在一些实施例中,在比特流中省略约束标志的情况下,约束标志被推断为0。[1572]在一些实施例中,转换包括将视频编码为比特流。在一些实施例中,转换包括从比特流解码视频。[1573]在本文档中,术语“视频处理”可以指代视频编码、视频解码、视频压缩或视频解压缩。例如,视频压缩算法可以在从视频的像素表示转换为对应的比特流表示期间应用,反之亦然。例如,当前视频块的比特流(编解码)表示可以对应于在比特流内的不同位置中并置或散布的比特,如由语法所定义的。例如,宏块可以根据变换和编解码的错误残差值进行编码,也可以使用标头中的比特和比特流中的其他字段进行编码。此外,视频编码器可以根据所描述的格式规则执行编码操作,使得由编码操作产生的编解码表示符合格式。类似地,解码器可以利用格式规则的知识解析编解码表示(例如,根据格式规则是否期望存在或缺失某些字段),并执行解码操作以生成视频像素值。[1574]本文档中描述的公开和其他解决方案、示例、实施例、模块和功能操作可以在以下各项中实施:数字电子电路中,或计算机软件、固件或硬件,包括本文档中公开的结构及其结构等同物,或上述各项的一个或多个的组合。所公开的实施例和其他实施例可以被实施为一个或多个计算机程序产品,即编码在计算机可读介质上的计算机程序指令的一个或多个模块,用于由数据处理装置执行或控制其操作。计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储器设备、影响机器可读传播信号的物质的组合物,或者一个或多个它们的组合。术语“数据处理装置”包含用于处理数据的所有装置、设备和机器,例如包括可编程处理器、计算机或多个处理器或计算机。除了硬件之外,该装置还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或其中一个或多个的组合的代码。传播信号是人为生成的信号,例如,机器生成的电气、光学或电磁信号,其被生成用于编码信息以传输到合适的接收器装置。[1575]计算机程序(也被称为程序、软件、软件应用、脚本或代码)可以用任何形式的编程语言编写,包括编译或解释语言,并且可以以任何形式部署,包括作为独立程序或模块、组件、子例程或适合在计算环境中使用的其他单元。计算机程序不一定对应于文件系统中的文件。程序可以被存储在保存其他程序或数据的文件部分(例如,标记语言文档中存储的一个或多个脚本)、专用于相关程序的单个文件或多个协调文件(例如,存储一个或多个模块、子程序或代码部分的文件)。计算机程序可以被部署以在一台计算机上执行,或在位于一个站点或分布在多个站点并通过通信网络互连的多台计算机上执行。[1576]本文档中描述的过程和逻辑流可以由一个或多个可编程处理器执行,这些处理器通过对输入数据进行操作并生成输出来执行一个或多个计算机程序以执行功能。处理和逻辑流还可以由专用逻辑电路执行,并且装置也可以实施为专用逻辑电路,例如fpga(现场可编程门阵列)或asic(专用集成电路)。[1577]适用于执行计算机程序的处理器例如包括通用微处理器和专用微处理器,以及任何类型数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者中接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备(例如,磁、磁光盘或光盘),或被可操作地耦合以从该设备接收数据或向该设备传输数据,或同时接收和传输数据。然而,计算机不需要有这样的设备。适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如eprom、eeprom和闪速存储器设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及cd-rom和dvd-rom光盘。处理器和存储器可以由专用逻辑电路补充或被合并到专用逻辑电路中。[1578]尽管本专利文档包含许多细节,但这些细节不应解释为对任何主题或可能要求保护的内容的范围的限制,而应解释为对可能特定于特定技术的特定实施例的特征的描述。本专利文档中在单独实施例的上下文中描述的某些特征也可以在单个实施例中组合实施。相反,在单个实施例的上下文中描述的各种特征也可以分别在多个实施例中或在任何合适的子组合中实施。此外,尽管特征可以在上面描述为在某些组合中起作用,甚至最初声称为这样,但在某些情况下可以从组合中删除来自所声称的组合的一个或多个特征,并且所声称的组合可以指向子组合或子组合的变体。[1579]类似地,尽管在附图中以特定的顺序描述操作,但这不应被理解为要求以所示的特定的顺序或序列顺序执行这样的操作,或要求执行所有图示操作,以实现预期结果。此外,本专利文件中描述的实施例中各种系统组件的分离不应理解为在所有实施例中都需要这种分离。[1580]仅描述了少数实施和示例,并且可以基于本专利文档中描述和示出的内容进行其他实施、增强和变体。当前第1页12当前第1页12