CN115398914A - 视频比特流的图片标头和条带标头之间的相互作用 - Google Patents

视频比特流的图片标头和条带标头之间的相互作用 Download PDF

Info

Publication number
CN115398914A
CN115398914A CN202180017712.2A CN202180017712A CN115398914A CN 115398914 A CN115398914 A CN 115398914A CN 202180017712 A CN202180017712 A CN 202180017712A CN 115398914 A CN115398914 A CN 115398914A
Authority
CN
China
Prior art keywords
slice
equal
flag
picture
specifies
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202180017712.2A
Other languages
English (en)
Inventor
王业奎
邓智玭
张莉
张凯
许继征
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Douyin Vision Co Ltd
ByteDance Inc
Original Assignee
Douyin Vision Co Ltd
ByteDance Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Douyin Vision Co Ltd, ByteDance Inc filed Critical Douyin Vision Co Ltd
Publication of CN115398914A publication Critical patent/CN115398914A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/188Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a video data packet, e.g. a network abstraction layer [NAL] unit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • H04N19/197Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters including determination of the initial value of an encoding parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/58Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • H04N19/635Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by filter definition or implementation details
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/127Prioritisation of hardware or computational resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

提供了一种视频处理方法,包括:在包括多个图片的视频和视频的比特流之间执行转换,每个图片包括至少一个条带,其中比特流符合格式规则;其中格式规则指定比特流中的第一标志指示图片的图片标头语法结构是否被包括在图片的条带的条带标头中;并且其中格式规则指定,响应于与图片相关联的图片参数集中的六个标志中的任何一个等于1,第一标志等于0。

Description

视频比特流的图片标头和条带标头之间的相互作用
相关申请的交叉引用
根据巴黎公约适用的专利法和/或规则,提出本申请是为了及时要求2020年2月29日提交的PCT申请PCT/CN2020/077331的优先权和权益。出于法律规定的所有目的,上述申请的全部公开内容通过引用并入作为本申请的公开内容的部分。
技术领域
本专利文档参考图片和视频编解码和解码。
背景技术
数字视频占互联网和其他数字通信网络上最大的带宽使用。随着能够接收和显示视频的连接用户设备数量的增加,预计数字视频使用的带宽需求将继续增长。
发明内容
本文档公开了可由视频编码器和解码器使用的技术,用于使用对编解码表示的解码有用的控制信息来处理视频的编解码表示。
在一个示例方面,公开了一种视频处理方法。该方法包括执行具有一个或多个图片的视频和视频的编解码表示之间的转换,其中一个或多个图片中的每一个恰好包括一个条带;其中编解码表示符合格式规则;其中格式规则规定,从编解码表示中排除所述图片参数集标志,因为图片恰好具有一个条带。
在另一个示例方面,公开了另一种视频处理方法。该方法包括在视频的视频条带和视频的编解码表示之间执行转换,其中编解码表示符合格式规则,其中格式规则指定包括指示第二字段的存在的第一字段,第二字段标识用于基于条件对条带进行编解码的参考图片的最大索引;其中条件可表示为逻辑表达式“A&(B||C)”,其中:A指示“rpl_info_in_ph_flag=1,或者NAL单位类型不等于IDR,或者sps_idr_rpl_present_flag等于1”,并且“B”指示“slice_type等于P或B,并且参考图片列表0中的参考条目的数量大于1”,并且“C”指示“slice_type等于B,并且参考图片列表1中的参考条目的数量大于1”并且“&”是逻辑“与”运算,并且“||”是逻辑“或”运算。
在另一个示例方面,公开了另一种视频处理方法。该方法包括执行视频的视频区域和视频的编解码表示之间的转换,其中编解码表示符合格式规则,其中格式规则指定控制指示用于视频区域的转换的长期参考图片的图片顺序计数的语法元素的使用的条件。
在另一个示例方面,公开了另一种视频处理方法。该方法包括执行视频的视频区域和视频的编解码表示之间的转换,其中编解码表示符合格式规则,其中格式规则指定当且仅当变量X等于特定值时才包括参考图片相关语法结构,其中X取决于视频区域的条带类型。
在另一个示例方面,公开了另一种视频处理方法。该方法包括执行包括一个或多个图片的视频和该视频的比特流之间的转换;其中比特流符合格式规则;其中,格式规则指定响应于是否指示参考图片参数集的每个图片包括单个条带,指示编解码信息的一个或多个语法元素被选择性地包括在比特流的图片参数集中。
在另一个示例方面,公开了另一种视频处理方法。该方法包括在包括多个图片的视频和视频的比特流之间执行转换,每个图片包括至少一个条带,其中比特流符合格式规则;其中格式规则指定比特流中的第一标志指示图片的图片标头语法结构是否被包括在图片的条带的条带标头中;并且其中格式规则规定,响应于与图片相关联的图片参数集中的六个标志中的任何一个等于1,第一标志等于0。
在另一个示例方面,公开了另一种视频处理方法。该方法包括在包括一个或多个图片的视频和视频的比特流之间执行转换,每个图片包括至少一个条带,其中比特流符合格式规则,其中格式规则指定包括指示第二字段的存在的第一字段,第二字段标识用于基于条件对条带进行编解码的参考图片的最大索引;其中条件可表示为逻辑表达式“A&(B||C)”,其中:A指示指示参考图片列表信息是否被包括在图片标头语法结构中的第一标志等于1,或者网络抽象层(NAL)单元类型不等于瞬时解码刷新(IDR)类型,或者指示参考图片列表信息是否可能存在于具有IDR NAL单元类型的条带的条带标头中的第二标志等于1,B指示条带类型等于P或B,并且参考图片列表0中的参考条目的数量大于1,C指示条带类型等于B,并且参考图片列表1中的参考条目的数量大于1,并且其中“&”是逻辑“与”运算,而“||”是逻辑“或”运算。
在另一个示例方面,公开了另一种视频处理方法。该方法包括执行视频和视频的比特流之间的转换,其中比特流符合格式规则,并且其中格式规则指定控制与长期参考图片的图片顺序计数相关的一个或多个语法元素是否或如何被包括在比特流中的参考图片列表语法结构中的条件。
在另一个示例方面,公开了另一种视频处理方法。该方法包括执行视频和视频的比特流之间的转换,其中比特流符合格式规则,其中格式规则指定与参考图片列表中的参考图片相关的语法元素是否包括在参考图片列表语法结构中。
在又一示例方面,公开了一种视频编解码器装置。视频编解码器包括被配置为实现上述方法的处理器。
在又一示例方面,公开了一种视频解码器装置。视频解码器包括被配置为实现上述方法的处理器。
在又一示例方面,公开了根据本文所述方法生成的比特流。比特流可以存储在计算机可读存储介质上。
在又一示例方面,公开了一种其上存储有代码的计算机可读介质。该代码以处理器可执行代码的形式体现了这里描述的方法之一。
本文档中描述了这些和其他特征。
附图说明
图1是示例视频处理系统的框图。
图2为视频处理装置的框图。
图3为视频处理的示例方法的流程图。
图4是图示根据本公开的一些实施例的视频编解码系统的框图。
图5是图示根据本公开的一些实施例的编码器的框图。
图6是图示根据本公开的一些实施例的解码器的框图。
图7A至7D是视频处理的示例方法的流程图。
具体实施方式
本文档中使用章节标题是为了便于理解并且不将各章节中公开的技术和实施例的适用性仅限制于该章节。此外,在一些描述中使用H.266术语仅仅是为了易于理解,而不是为了限制所公开技术的范围。因此,本文描述的技术也适用于其他视频编解码器协议和设计。
1.初步讨论
本文档涉及视频编解码技术。具体是关于视频编解码中的PPS、PH、SH语法的设计。这些想法可以单独或以各种组合应用于支持多层视频编解码的任何视频编解码标准或非标准视频编解码器,例如正在开发的多功能视频编解码(VVC)。
2.缩写
APS 自适应参数集
AU 访问单元
AUD 访问单元分隔符
AVC 高级视频编解码
CLVS 编解码层视频序列
CPB 编解码图片缓冲器
CRA 清理随机访问
CTU 编解码树单元
CVS 编解码视频序列
DPB 解码图片缓冲器
DPS 解码参数集
EOB 比特流结束
EOS 序列结束
GDR 逐步解码刷新
HEVC 高效视频编解码
HRD 假设参考解码器
IDR 瞬时解码刷新
JEM 联合探索模型
LTRP 长期参考图片
MCTS 运动约束的片集
NAL 网络抽象层
OLS 输出层集
PH 图片标头
PPS 图片参数集
PTL 配置文件、层级、级别
PU 图片单元
RBSP 原始字节序列有效负载
SEI 补充增强信息
SH 条带标头
SPS 序列参数集
STRP 短期参考图片
SVC 可缩放视频编解码
VCL 视频编解码层
VPS 视频参数集
VTM VVC测试模型
VUI 视频可用性信息
VVC 多功能视频编解码
3.视频处理介绍
视频编解码标准主要是通过众所周知的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会议上都被采用到VVC标准中。VVC的工作草案和测试模型VTM在每次会议后都会更新。VVC项目现在的目标是在2020年7月的会议上技术完成(FDIS)。
3.1.PPS语法和语义
在最新的VVC草案文本中,PPS语法和语义如下:
Figure BDA0003821599920000061
Figure BDA0003821599920000071
Figure BDA0003821599920000081
Figure BDA0003821599920000091
PPS RBSP在被引用之前应可用于解码过程,包括在至少一个AU中,其中TemporalId小于或等于PPS NAL单元的TemporalId,或通过外部方式提供。
PU内具有pps_pic_parameter_set_id的特定值的所有PPS NAL单元应具有相同的内容。
pps_pic_parameter_set_id标识其他语法元素参考的PPS。pps_pic_parameter_set_id的值应在0到63(包括端值)的范围内。
无论nuh_layer_id值如何,PPS NAL单位共享pps_pic_parameter_set_id的相同值空间。
设ppsLayerId是特定PPS NAL单元的numh_layer_id的值,并且vclLayerId是特定VCL NAL单元的numh_layer_id的值。特定的VCL NAL单元不应指代特定的PPS NAL单元,除非ppsLayerId小于或等于vclLayerId并且nuh_layer_id等于ppsLayerId的层包含在至少一个OLS中,该OLS包括nuh_layer_id等于vclLayerId的层。
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中应该是相同的。
mixed_nalu_types_in_pic_flag等于1指定参考PPS的每个图片有多个VCLNAL单元,VCLNAL单元不具有相同的nal_unit_type值,并且该图片不是IRAP图片。mixed_nalu_types_in_pic_flag等于0指定参考PPS的每个图片具有一个或多个VCL NAL单元,并且参考PPS的每个图片的VCL NAL单元具有相同的nal_unit_type值。
当no_mixed_nalu_types_in_pic_constraint_flag等于1时,mixed_nalu_types_in_pic_flag的值应等于0。
对于在图片picA中在IDR_W_RADL到CRA_NUT(包括端值)范围内具有nal_unit_type值nalUnitTypeA的每个条带,该条带在还包含具有nal_unit_type的另一个值的一个或多个条带(即,图片picA的mixed_nalu_types_in_pic_flag的值等于1),以下适用:
-条带应属于对应subpic_treated_as_pic_flag[i]的值等于1的子图片subpicA。
-条带不应属于包含nal_unit_type不等于nalUnitTypeA的VCL NAL单元的picA的子图。
-如果nalUnitTypeA等于CRA,则对于CLVS中按照解码顺序和输出顺序在当前图片之后的所有后续PU,这些PU中的subpicA中的条带的RefPicList[0]和RefPicList[1]都不应包括在活动条目中按照解码顺序在picA之前的任何图片。
-否则(即,nalUnitTypeA等于IDR_W_RADL或IDR_N_LP),对于CLVS中按照解码顺序在当前图片之后的所有PU,这些PU中的subpicA中的条带的RefPicList[0]或RefPicList[1]都不应该包括在活动条目中按照解码顺序在picA之前的任何图片。
注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的条带。
pic_width_in_luma_samples指定参考PPS的每个解码图片的宽度,以亮度样点为单位。pic_width_in_luma_samples不应等于0,应为Max(8,MinCbSizeY)的整数倍,且应小于或等于pic_width_max_in_luma_samples。
当res_change_in_clvs_allowed_flag等于0时,pic_width_in_luma_samples的值应等于pic_width_max_in_luma_samples。
pic_height_in_luma_samples指定参考PPS的每个解码图片的高度,以亮度样点为单位。pic_height_in_luma_samples不应等于0,并且应为Max(8,MinCbSizeY)的整数倍,并且应小于或等于pic_height_max_in_luma_samples。
当res_change_in_clvs_allowed_flag等于0时,pic_height_in_luma_samples的值应等于pic_height_max_in_luma_samples。
变量PicWidthInCtbsY、PicHeightInCtbsY、PicSizeInCtbsY、PicWidthInMinCbsY、PicHeightInMinCbsY、PicSizeInMinCbsY、PicSizeInSamplesY、PicWidthInSamplesC和PicHeightInSamplesC的导出如下:
PicWidthInCtbsY=Ceil(pic_width_in_luma_samples÷CtbSizeY) (69)
PicHeightInCtbsY=Ceil(pic_height_in_luma_samples÷CtbSizeY) (70)
PicSizeInCtbsY=PicWidthInCtbsY*PicHeightInCtbsY (71)
PicWidthInMinCbsY=pic_width_in_luma_samples/MinCbSizeY (72)
PicHeightInMinCbsY=pic_height_in_luma_samples/MinCbSizeY (73)
PicSizeInMinCbsY=PicWidthInMinCbsY*PicHeightInMinCbsY (74)
PicSizeInSamplesY=pic_width_in_luma_samples*pic_height_in_luma_samples (75)
PicWidthInSamplesC=pic_width_in_luma_samples/SubWidthC (76)
PicHeightInSamplesC=pic_height_in_luma_samples/SubHeightC (77)
pps_conformance_window_flag等于1指示一致性裁剪窗口偏移参数在PPS中紧随其后。pps_conformance_window_flag等于0指示pps中不存在一致性裁剪窗口偏移参数。
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。
一致性裁剪窗口包含亮度样点,其中水平图片坐标从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),包括端值。
SubWidthC*(pps_conf_win_left_offset+pps_conf_win_right_offset)的值应小于pic_width_in_luma_samples,并且SubHeightC*(pps_conf_win_top_offset+pps_conf_win_bottom_offset)的值应小于pic_height_in_luma_samples。
当ChromaArrayType不等于0时,两个色度数组的对应指定样点是具有图片坐标(x/SubWidthC,y/SubHeightC)的样点,其中(x,y)是指定亮度样点的图片坐标。
注2–一致性裁剪窗口偏移参数仅适用于输出。所有内部解码过程都应用于未剪裁的图片大小。
假设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值。
当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。
scaling_window_explicit_signaling_flag等于1指定缩放窗口偏移参数存在于PPS中。scaling_window_explicit_signaling_flag等于0指定缩放窗口偏移参数不存在于PPS中。当res_change_in_clvs_allowed_flag等于0时,scaling_window_explicit_signaling_flag的值应等于0。
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的值被推断为分别等于pps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset和pps_conf_win_bottom_offset。
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。
变量PicOutputWidthL和PicOutputHeightL的导出如下:
Figure BDA0003821599920000131
Figure BDA0003821599920000132
假设refPicOutputWidthL和refPicOutputHeightL分别是参考该PPS的当前图片的参考图片的PicOutputWidthL和PicOutputHeightL。比特流一致性的要求是满足以下所有条件:
–PicOutputWidthL*2应大于或等于refPicWidthInLumaSamples。
–PicOutputHeightL*2应大于或等于refPicHeightInLumaSamples。
–PicOutputWidthL应小于或等于refPicWidthInLumaSamples*8。
–PicOutputHeightL应小于或等于refPicHeightInLumaSamples*8。
–PicOutputWidthL*pic_width_max_in_luma_samples应大于或等于refPicOutputWidthL*(pic_width_in_luma_samples-Max(8,MinCbSizeY))。
–PicOutputHeightL*pic_height_max_in_luma_samples应大于或等于refPicOutputHeightL*(pic_height_in_luma_samples-Max(8,MinCbSizeY))。
output_flag_present_flag等于1指示pic_output_flag语法元素存在于参考PPS的条带标头中。output_flag_present_flag等于0指示pic_output_flag语法元素不存在于参考PPS的条带标头中。
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。
pps_num_subpics_minus1应等于sps_num_subpics_minus1。
pps_subpic_id_len_minus1应等于sps_subpic_id_len_minus1。
pps_subpic_id[i]指定第i个子图片的子图片ID。pps_subpic_id[i]语法元素的长度为pps_subpic_id_len_minus1+1位。
对于0至sps_num_subpics_minus1(包括端值)的范围内的每个i值,变量SubpicIdVal[i]的导出如下:
Figure BDA0003821599920000141
比特流一致性的要求是应用以下两个约束:
--对于0到sps_num_subpics_minus1(包括端值)的范围内的任何两个不同的i和j值,SubpicIdVal[i]不应等于SubpicIdVal[j]。
--当当前图片不是CLVS的第一个图片时,对于0到sps_num_subpics_minus1(包括端值)范围内的每个i值,如果SubpicIdVal[i]的值不等于同一层中按照解码顺序的前一个图片的SubpicIdVal[i]的值,则具有子图片索引i的当前图片中的子图片的所有编解码条带NAL单元的nal_unit_type应等于IDR_W_RADL到CRA_NUT(包括端值)范围内的特定值。
no_pic_partition_flag等于1指定没有图片分割被应用于参考PPS的每个图片。no_pic_partition_flag等于0指定参考PPS的每个图片可以被分割成多个片或条带。
比特流一致性的要求是no_pic_partition_flag的值对于CLVS内的编解码图片所参考的所有PPS应该是相同的。
比特流一致性的要求是,当sps_num_subpics_minus1+1的值大于1时,no_pic_partition_flag的值不应等于1。
pps_log2_ctu_size_minus5加5指定每个CTU的亮度编解码树块大小。pps_log2_ctu_size_minus5应等于sps_log2_ctu_size_minus5。
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。
num_exp_tile_rows_minus1加1指定显式提供的片行高的数量。num_exp_tile_rows_minus1的值应在0到PicHeightInCtbsY–1(包括端值)的范围内。当no_pic_partition_flag等于1时,num_tile_rows_minus1的值被推断为等于0。
tile_column_width_minus1[i]加1以CTB为单位指定i在0到num_exp_tile_columns_minus1-1(包括端值)范围内的第i个片列的宽度。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。
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。
rect_slice_flag等于0指定每个条带内的片处于光栅扫描顺序,并且条带信息不在PPS中被信令通知。rect_slice_flag等于1指定每个条带内的片覆盖图片的矩形区域,并且条带信息在PPS中被信令通知。当不存在时,rect_slice_flag被推断为等于1。当subpic_info_present_flag等于1时,rect_slice_flag的值应等于1。
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。
num_slices_in_pic_minus1加1指定参考PPS的每个图片中矩形条带的数量。num_slices_in_pic_minus1的值应在0到MaxSlicesPerPicture–1(包括端值)的范围内,其中MaxSlicesPerPicture在附录A中指定。当no_pic_partition_flag等于1时,num_slices_in_pic_minus1的值被推断为等于0。
tile_idx_delta_present_flag等于0指定tile_idx_delta值不存在于PPS中,并且参考PPS的图片中的所有矩形条带根据条款6.5.1中定义的过程以光栅顺序指定。tile_idx_delta_present_flag等于1指定tile_idx_delta值可以存在于PPS中,并且参考PPS的图片中的所有矩形条带以tile_idx_delta值所指示的顺序来指定。当不存在时,tile_idx_delta_present_flag的值被推断为等于0。
slice_width_in_tiles_minus1[i]加1以片列为单位指定第i个矩形条带的宽度。slice_width_in_tiles_minus1[i]的值应在0到NumTileColumns–1(包括端值)的范围内。
当slice_width_in_tiles_minus1[i]不存在时,以下适用:
--如果NumTileColumns等于1,则slice_width_in_tiles_minus1[i]的值被推断为等于0。
--否则,按照条款6.5.1的指定推断slice_width_in_tiles_minus1[i]的值。
slice_height_in_tiles_minus1[i]加1以片行为单位指定第i个矩形条带的高度。slice_height_in_tiles_minus1[i]的值应在0到NumTileRows–1(包括端值)的范围内。
当slice_height_in_tiles_minus1[i]不存在时,以下适用:
--如果NumTileRows等于1,或者tile_idx_delta_present_flag等于0,并且tileIdx%NumTileColumns大于0,则slice_height_in_tiles_minus1[i]的值被推断为等于0。
--否则(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]。
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。
exp_slice_height_in_ctus_minus1[j]加1以CTU行为单位指定当前片中的第j个矩形条带的高度。exp_slice_height_in_ctus_minus1[j]的值应在0至RowHeight[tileY]–1(包括端值)的范围内,其中tileY是当前片的片行索引。
当num_exp_slices_in_tile[i]大于0时,变量NumSlicesInTile[i]和k在0到NumSlicesInTile[i]-1(包括端值)范围内的SliceHeightInCtusMinus1[i+k]的导出如下:
Figure BDA0003821599920000171
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。
loop_filter_across_tiles_enabled_flag等于1指定可在参考PPS的图片中跨片边界执行环路滤波操作。loop_filter_cross_tiles_enabled_flag等于0指定在参考PPS的图片中跨片边界不执行环路滤波操作。环路滤波操作包括去方块滤波器、样点自适应偏移滤波器和自适应环路滤波器操作。当不存在时,loop_filter_cross_tiles_enabled_flag的值被推断为等于1。
loop_filter_cross_slices_enabled_flag等于1指定可以在参考PPS的图片中跨条带边界执行环路滤波操作。loop_filter_cross_slice_enabled_flag等于0指定在参考PPS的图片中跨条带边界不执行环路滤波操作。环路滤波操作包括去方块滤波器、样点自适应偏移滤波器和自适应环路滤波器操作。当不存在时,loop_filter_cross_slices_enabled_flag的值被推断为等于0。
cabac_init_present_flag等于1指定cabac_init_flag存在于参考PPS的条带标头中。cabac_init_present_flag等于0指定cabac_init_flag不存在于参考PPS的条带标头中。
num_ref_idx_default_active_minus1[i]加1,当等于0时,为num_ref_idx_active_override_flag等于0的P或B条带指定变量NumRefIdxActive[0]的推断值,并且当i等于1时,为num_ref_idx_active_override_flag等于0的B条带指定NumRefIdxActive[1]的推断值。num_ref_idx_default_active_minus1[i]的值应在0到14(包括端值)的范围内。
rpl1_idx_present_flag等于0指定ref_pic_list_sps_flag[1]和ref_pic_list_idx[1]不存在于PH语法结构或参考PPS的图片的条带标头中。rpl1_idx_present_flag等于1指定ref_pic_list_sps_flag[1]和ref_pic_list_idx[1]可以存在于PH语法结构或参考PPS的图片的条带标头中。
init_qp_minus26加26指定参考PPS的每个条带的SliceQpY的初始值。当ph_qp_delta的非零值被解码时,SliceQpY的初始值在图片级别被修改,或者当slice_qp_delta的非零值被解码时,在条带级别被修改。init_qp_minus26的值应在-(26+QpBdOffset)到+37(包括端值)的范围内。
cu_qp_delta_enabled_flag等于1指定ph_cu_qp_delta_subdiv_intra_slice和ph_cu_qp_delta_subdiv_inter_slice语法元素存在于参考PPS的PH中并且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不存在于变换单元语法中。
pps_chroma_tool_offsets_present_flag等于1指定PPS RBSP语法结构中存在与色度工具偏移相关的语法元素。pps_chroma_tool_offsets_present_flag等于0指定PPSRBSP语法结构中不存在与色度工具偏移相关的语法元素。当ChromaArrayType等于0时,pps_chroma_tool_offsets_present_flag的值应等于0。
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。
pps_joint_cbcr_qp_offset_present_flag等于1指定pps_joint_cbcr_qp_offset_value和joint_cbcr_qp_offset_list[i]存在于PPS RBSP语法结构中。pps_joint_cbcr_qp_offset_present_flag等于0指定pps_joint_cbcr_qp_offset_value和joint_cbcr_qp_offset_list[i]不存在于PPS RBSP语法结构中。当ChromaArrayType等于0或sps_joint_cbcr_enabled_flag等于0时,pps_joint_cbcr_qp_offset_present_flag的值应等于0。当不存在时,pps_joint_cbcr_qp_offset_present_flag的值被推断为等于0。
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。
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。
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中,表示PPS并且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。
chroma_qp_offset_list_len_minus1加1指定存在于PPS RBSP语法结构中的语法元素cb_qp_offset_list[i]、cr_qp_offset_list[i]和joint_cbcr_qp_offset_list[i]的数量。chroma_qp_offset_list_len_minus1的值应在0到5(包括端值)的范围内。
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。
pps_weighted_pred_flag等于0指定加权预测不应用于参考PPS的P条带。pps_weighted_pred_flag等于1指定加权预测应用于参考PPS的P条带。当sps_weighted_pred_flag等于0时,pps_weighted_pred_flag的值应等于0。
pps_weighted_bipred_flag等于0指定显式加权预测不应用于参考PPS的B条带。pps_weighted_bipred_flag等于1指定显式加权预测应用于参考PPS的B条带。当sps_weighted_bipred_flag等于0时,pps_weighted_bipred_flag的值应等于0。
deblocking_filter_control_present_flag等于1指定PPS中存在去方块滤波器控制语法元素。deblocking_filter_control_present_flag等于0指定PPS中不存在去方块滤波器控制语法元素。
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。
pps_deblocking_filter_disabled_flag等于1指定去方块滤波器的操作不适用于参考不存在slice_deblocking_filter_disabled_flag的PPS的条带。pps_deblocking_filter_disabled_flag等于0指定去方块滤波器的操作适用于参考不存在slice_deblocking_filter_disabled_flag的PPS的条带。当不存在时,pps_deblocking_filter_disabled_flag的值被推断为等于0。
pps_beta_offset_div2和pps_tc_offset_div2为β和tC(除以2)指定默认去方块参数偏移,这些参数偏移应用于参考PPS的条带的亮度分量,除非默认去方块参数偏移被参考PPS的条带的图片标头或条带标头中存在的去方块参数偏移覆盖。pps_beta_offset_div2和pps_tc_offset_div2的值都应在-12至12(包括端值)范围内。当不存在时,pps_beta_offset_div2和pps_tc_offset_div2的值都被推断为等于0。
pps_cb_beta_offset_div2和pps_cb_tc_offset_div2为β和tC(除以2)指定默认去方块参数偏移,这些参数偏移应用于参考PPS的条带的Cb分量,除非默认去方块参数偏移被参考PPS的条带的图片标头或条带标头中存在的去方块参数偏移所覆盖。pps_cb_beta_offset_div2和pps_cb_tc_offset_div2的值都应在-12至12(包括端值)范围内。当不存在时,pps_cb_beta_offset_div2和pps_cb_tc_offset_div2的值都被推断为等于0。
pps_cr_beta_offset_div2和pps_cr_tc_offset_div2为β和tC(除以2)指定默认去方块参数偏移,这些参数偏移应用于参考PPS的条带的Cr分量,除非默认去方块参数偏移被参考pps的条带的图片标头或条带标头中存在的去方块参数偏移所覆盖。pps_cr_beta_offset_div2和pps_cr_tc_offset_div2的值都应在-12至12(包括端值)范围内。当不存在时,pps_cr_beta_offset_div2和pps_cr_tc_offset_div2的值都被推断为等于0。
rpl_info_in_ph_flag等于1指定参考图片列表信息存在于PH语法结构中,而不存在于参考不包含PH语法结构的PPS的条带标头中。rpl_info_in_ph_flag等于0指定参考图片列表信息不存在于PH语法结构中,并且可能存在于参考不包含PH语法结构的PPS的条带标头中。
dbf_info_in_ph_flag等于1指定去方块滤波器信息存在于PH语法结构中,而不存在于参考不包含PH语法结构的PPS的条带标头中。dbf_info_in_ph_flag等于0指定去方块滤波器信息不存在于PH语法结构中,并且可能存在于参考不包含PH语法结构的PPS的条带标头中。当不存在时,dbf_info_in_ph_flag的值被推断为等于0。
sao_info_in_ph_flag等于1指定SAO过滤器信息存在于PH语法结构中,而不存在于参考不包含PH语法结构的PPS的条带标头中。sao_info_in_ph_flag等于0指定SAO过滤器信息不存在于PH语法结构中,并且可能存在于参考不包含PH语法结构的PPS的条带标头中。
alf_info_in_ph_flag等于1指定ALF信息存在于PH语法结构中,而不存在于参考不包含PH语法结构的PPS的条带标头中。alf_info_in_ph_flag等于0指定ALF信息不存在于PH语法结构中,并且可能存在于参考不包含PH语法结构的PPS的条带标头中。
wp_info_in_ph_flag等于1指定加权预测信息可以存在于PH语法结构中,而不存在于参考不包含PH语法结构的PPS的条带标头中。wp_info_in_ph_flag等于0指定加权预测信息不存在于PH语法结构中,并且可能存在于参考不包含PH语法结构的PPS的条带标头中。当不存在时,wp_info_in_ph_flag的值被推断为等于0。
qp_delta_info_in_ph_flag等于1指定QP增量信息存在于PH语法结构中,而不存在于参考不包含PH语法结构的PPS的条带标头中。qp_delta_info_in_ph_flag等于0指定QP增量信息不存在于PH语法结构中,并且可能存在于参考不包含PH语法结构的PPS的条带标头中。
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。
pps_ref_wraparound_offset加(CtbSizeY/MinCbSizeY)+2指定用于计算以MinCbSizeY亮度样点为单位的水平环绕位置的偏移。pps_ref_wraparound_offset的值应在0至(pic_width_in_luma_samples/MinCbSizeY)-(CtbSizeY/MinCbSizeY)-2的范围(包括端值)内。
变量PpsRefWraparoundOffset设置为等于pps_ref_wraparound_offset+(CtbSizeY/MinCbSizeY)+2。
picture_header_extension_present_flag等于0指定在参考PPS的PH中不存在PH扩展语法元素。picture_header_extension_present_flag等于1指定PH扩展语法元素存在于参考PPS的PH中。在符合该版本该规范的比特流中,picture_header_extension_present_flag应等于0。
slice_header_extension_present_flag等于0指定在参考PPS的编解码图片的条带标头中不存在条带标头扩展语法元素。slice_header_extension_present_flag等于1指定条带标头扩展语法元素存在于参考PPS的编解码图片的条带标头中。在符合该版本该规范的比特流中,slice_header_extension_present_flag应等于0。
pps_extension_flag等于0指定PPS RBSP语法结构中不存在pps_extension_data_flag语法元素。pps_extension_flag等于1指定PPS RBSP语法结构中存在pps_extension_data_flag语法元素。
pps_extension_data_flag可以有任何值。它的存在和值不影响解码器与该版本该规范中指定的配置文件的一致性。符合该版本该规范的解码器应忽略所有pps_extension_data_flag语法元素。
3.2.PH语法和语义
在最新的VVC草案文本中,PH语法和语义如下:
Figure BDA0003821599920000231
PH RBSP包含PH语法结构,即picture_header_structure()。
Figure BDA0003821599920000232
Figure BDA0003821599920000241
Figure BDA0003821599920000251
Figure BDA0003821599920000261
Figure BDA0003821599920000271
PH语法结构包含对于与PH语法结构相关联的编解码图片的所有条带共同的信息。
gdr_or_irap_pic_flag等于1指定当前图片是GDR或IRAP图片。gdr_or_irap_pic_flag等于0指定当前图片可能是也可能不是GDR或IRAP图片。
gdr_pic_flag等于1指定与PH相关联的图片是GDR图片。gdr_pic_flag等于0指定与PH相关联的图片不是GDR图片。当不存在时,gdr_pic_flag的值被推断为等于0。当gdr_enabled_flag等于0时,gdr_pic_flag的值应等于0。
ph_inter_slice_allowed_flag等于0指定图片的所有编解码条带的slice_type等于2。ph_inter_slice_allowed_flag等于1指定图片中可能有也可能没有一个或多个slice_type等于0或1的编解码条带。
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。
注1–对于应该在不需要更改PH NAL单元的情况下进行基于子图片的比特流merging的比特流,编解码器应设置ph_inter_slice_allowed_flag和ph_intra_slice_allowed_flag的值等于1。
non_reference_picture_flag等于1指定与PH相关联的图片从不被用作参考图片。non_reference_picture_flag等于0指定与PH相关联的图片可以或不可以用作参考图片。
ph_pic_parameter_set_id为正在使用的PPS指定pps_pic_parameter_set_id的值。ph_pic_parameter_set_id的值应在0到63(包括端值)的范围内。
比特流一致性的要求是,PH的TemporalId的值应大于或等于pps_pic_parameter_set_id等于ph_pic_parameter_set_id的PPS的TemporalId的值。
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(包括端值)的范围内。
no_output_of_prior_pics_flag影响在解码CLVSS图片之后DPB中先前解码的图片的输出,该CLVSS图片不是附录C中指定的比特流中的第一个图片。
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(包括端值)的范围内。
当当前图片是GDR图片时,变量RpPicOrderCntVal被导出如下:
RpPicOrderCntVal=PicOrderCntVal+recovery_poc_cnt(82)
注2–当gdr_enabled_flag等于1且当前图片的PicOrderCntVal大于或等于相关GDR图片的RpPicOrderCntVal时,输出顺序中的当前和后续解码图片与通过从解码顺序中相关GDR图片之前的(如果存在)前一个IRAP图片开始解码过程而产生的对应图片完全匹配。
ph_extra_bit[i]可以等于1或0。符合该版本该规范的解码器应忽略ph_extra_bit[i]的值。它的值不影响解码器与该版本规范中指定的配置文件的一致性。
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。
poc_msb_val指定当前图片的POC MSB值。语法元素poc_msb_val的长度是poc_msb_len_minus1+1位。
ph_alf_enabled_flag等于1指定为与PH相关的所有条带启用自适应环路滤波器,并且可以应用于条带中的Y、Cb或Cr色彩分量。ph_alf_enabled_flag等于0指定可以为与PH关联的一个或多个或所有条带禁用自适应环路滤波器。当不存在时,ph_alf_enabled_flag被推断为等于0。
ph_num_alf_aps_ids_luma指定与PH相关的条带参考的ALF APS的数量。
ph_alf_aps_id_luma[i]指定第i个ALF APS的adaptation_parameter_set_id,与PH相关的条带的亮度分量参考该ALF APS。
aps_params_type等于ALF_APS且adaptation_parameter_set_id等于ph_alf_aps_id_luma[i]的APS NAL单元的alf_luma_filter_signal_flag的值应等于1。
aps_params_type等于ALF_APS且adaptation_parameter_set_id等于ph_alf_aps_id_luma[i]的APS NAL单元的TemporalId应小于或等于与PH关联的图片的TemporalId。
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。
ph_alf_aps_id_chroma指定ALF APS的adaptation_parameter_set_id,与PH相关联的条带的色度分量参考该ALF APS。
aps_params_type等于ALF_APS且adaptation_parameter_set_id等于ph_alf_aps_id_chroma的APS NAL单元的alf_chroma_filter_signal_flag的值应该等于1。
aps_params_type等于ALF_APS且adaptation_parameter_set_id等于ph_alf_aps_id_chroma的APS NAL单元的TemporalId应小于或等于与PH关联的图片的TemporalId。
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。
ph_cc_alf_cb_aps_id指定与PH相关联的条带的Cb色彩分量所参考的ALF APS的adaptation_parameter_set_id。
aps_params_type等于ALF_APS且adaptation_parameter_set_id等于ph_cc_alf_cb_aps_id的APS NAL单元的alf_cc_cb_filter_signal_flag的值应等于1。
aps_params_type等于ALF_APS且adaptation_parameter_set_id等于ph_cc_alf_cb_aps_id的APS NAL单元的TemporalId应小于或等于与PH相关的图片的TemporalId。
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。
ph_cc_alf_cr_aps_id指定与PH相关联的条带的Cr色彩分量所参考的ALF APS的adaptation_parameter_set_id。
aps_params_type等于ALF_APS且adaptation_parameter_set_id等于ph_cc_alf_cr_aps_id的APS NAL单元的alf_cc_cr_filter_signal_flag的值应等于1。
aps_params_type等于ALF_APS且adaptation_parameter_set_id等于ph_cc_alf_cr_aps_id的APS NAL单元的TemporalId应小于或等于与PH相关的图片的TemporalId。
ph_lmcs_enabled_flag等于1指定对与PH相关的所有条带启用具有色度缩放的亮度映射,ph_lmcs_enabled_flag等于0指定对与PH相关的一个、多个或所有条带禁用具有色度缩放的亮度映射,当不存在时,则ph_lmcs_enabled_flag的值被推断为等于0。
ph_lmcs_aps_id指定与PH相关联的条带所参考的LMCS APS的adaptation_parameter_set_id。aps_params_type等于LMCS_APS且adaptation_parameter_set_id等于ph_lmcs_aps_id的APS NAL单元的TemporalId应小于或等于与PH相关的图片的TemporalId。
ph_chroma_residual_scale_flag等于1指定为与PH关联的所有条带启用色度残差缩放。ph_chroma_residual_scale_flag等于0指定可以为与PH关联的一个、多个或所有条带禁用色度残差缩放。当ph_chroma_residual_scale_flag不存在时,其被推断为等于0。
ph_scaling_list_present_flag等于1指定用于与PH相关联的条带的缩放列表数据是基于包含在参考缩放列表APS中的缩放列表数据导出的。ph_scaling_list_present_flag等于0指定用于与PH相关联的条带的缩放列表数据被设置为等于16。当不存在时,ph_scaling_list_present_flag的值被推断为等于0。
ph_scaling_list_aps_id指定缩放列表APS的adaptation_parameter_set_id。aps_params_type等于SCALING_APS且adaptation_parameter_set_id等于ph_scaling_list_aps_id的APS NAL单元的TemporalId应小于或等于与PH相关的图片的TemporalId。
ph_virtual_boundaries_present_flag等于1指定在ph中信令通知虚拟边界的信息。ph_virtual_boundaries_present_flag等于0指定在PH中不信令通知虚拟边界的信息。当在PH中信令通知一个或多个虚拟边界时,环路滤波操作在图片中的虚拟边界上被禁用。环路滤波操作包括去方块滤波器、样点自适应偏移滤波器和自适应环路滤波器操作。当不存在时,ph_virtual_boundaries_present_flag的值被推断为等于0。
比特流一致性的要求是,当subpic_info_present_flag等于1时,ph_virtual_boundaries_present_flag的值应该等于0。
变量VirtualBoundariesPresentFlag被导出如下:
Figure BDA0003821599920000321
ph_num_ver_virtual_boundaries指定PH中存在的ph_virtual_boundaries_pos_x[i]语法元素的数量。当ph_num_ver_virtual_boundaries不存在时,其被推断为等于0。
变量NumVerVirtualBoundaries的导出如下:
Figure BDA0003821599920000322
ph_virtual_boundaries_pos_x[i]以亮度样点除以8为单位指定第i个垂直虚拟边界的位置。ph_virtual_boundaries_pos_x[i]的值应在1至Ceil(pic_width_in_luma_samples÷8)–1(包括端值)的范围内。
i范围为0至NumVerVirtualBoundaries–1(包括端值)的列表VirtualBoundariesPosX[i],以亮度样点为单位,指定垂直虚拟边界的位置,导出如下:
for(i=0;i<NumVerVirtualBoundaries;i++)
VirtualBoundariesPosX[i]=(sps_virtual_boundaries_present_flag?
sps_virtual_boundaries_pos_x[i]:ph_virtual_boundaries_pos_x[i])*8 (85)
任意两个垂直虚拟边界之间的距离应大于或等于CtbSizeY亮度样点。
ph_num_hor_virtual_boundaries指定PH中存在的ph_virtual_boundaries_pos_y[i]语法元素的数量。当ph_num_hor_virtual_boundaries不存在时,其被推断为等于0。
参数NumHorVirtualBoundaries的导出如下:
Figure BDA0003821599920000323
Figure BDA0003821599920000331
当sps_virtual_boundaries_enabled_flag等于1且ph_virtual_boundaries_present_flag等于1时,ph_num_ver_virtual_boundaries和ph_num_hor_virtual_boundaries之和应大于0。
ph_virtual_boundaries_pos_y[i]以亮度样点除以8为单位指定第i个水平虚拟边界的位置。ph_virtual_boundaries_pos_y[i]的值应在1至Ceil(pic_height_in_luma_samples÷8)–1(包括端值)的范围内。
i的范围为0至NumHorVirtualBoundaries–1(包括端值)的列表VirtualBoundariesPosY[i],以亮度样点为单位,指定水平虚拟边界的位置,导出如下:
for(i=0;i<NumHorVirtualBoundaries;i++)
VirtualBoundariesPosY[i]=(sps_virtual_boundaries_present_flag?
sps_virtual_boundaries_pos_y[i]:ph_virtual_boundaries_pos_y[i])*8 (87)
任意两个水平虚拟边界之间的距离应大于或等于CtbSizeY亮度样点。
pic_output_flag影响解码图片输出和移除过程,如附录C所指定。当pic_output_flag不存在时,其被推断为等于1。
partition_constraints_override_flag等于1指定分割约束参数存在于PH中。partition_constraints_override_flag等于0指定分割约束参数不存在于PH中。当不存在时,则partition_constraints_override_flag的值被推断为等于0。
ph_log2_diff_min_qt_min_cb_intra_slice_luma指定由CTU的四叉树划分产生的亮度叶块的亮度样点的最小大小的以2为底的对数和与PH相关联的slice_type等于2(I)的条带中的亮度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。
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。
ph_log2_diff_max_bt_min_qt_intra_slice_luma指定可使用二进制划分进行划分的亮度编解码块的亮度样点中的最大大小(宽度或高度)的以2为底的对数以及由与PH相关联的slice_type等于2(I)的条带中的CTU的四叉树划分产生的亮度叶块的亮度样点中的最小大小(宽度或高度)的以2为底的对数之间的差。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。
ph_log2_diff_max_tt_min_qt_intra_slice_luma指定
可以使用三元划分进行划分的亮度编码块的亮度样点中的最大大小(宽度或高度)的以2为底的对数以及由与PH相关联的slice_type等于2(I)的条带中的CTU的四叉树划分产生的亮度叶块的亮度样点中的最小大小(宽度或高度)的以2为底的对数之间的差。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。
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_min_cb_intra_slice_chroma。
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。
ph_log2_diff_max_bt_min_qt_intra_slice_chroma指定
可以使用二进制划分进行划分的色度编解码块的亮度样点中的最大大小(宽度或高度)的以2为底的对数以及由与PH相关联的slice_type等于2(I)的条带中treeType等于DUAL_TREE_CHROMA的色度CTU的四叉树划分产生的色度叶块的亮度样点中的最小大小(宽度或高度)的以2为底的对数之间的差。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。
ph_log2_diff_max_tt_min_qt_intra_slice_chroma指定可以使用三元划分进行划分的色度编解码块的亮度样点中的最大尺寸(宽度或高度)的以2为底的对数以及由与PH相关联的slice_type等于2(I)的条带中treeType等于DUAL_TREE_CHROMA的色度CTU的四叉树划分产生的色度叶块的亮度样点中的最小大小(宽度或高度)的以2为底的对数之间的差。ph_log2_diff_max_tt_min_qt_intra_slice_chroma的值应在0到CtbLog2SizeY-MinQtLog2SizeIntraC(包括端值)的范围内。当不存在时,ph_log2_diff_max_tt_min_qt_intra_slice_chroma的值被推断为等于sps_log2_diff_max_tt_min_qt_intra_slice_chroma。
ph_cu_qp_delta_subdiv_intra_slice指定传送cu_qp_delta_abs和cu_qp_delta_sign_flag的帧内条带中的编解码单元的最大cbSubdiv值。ph_cu_qp_delta_subdiv_intra_slice的值应在0到2*(CtbLog2SizeY-MinQtLog2SizeIntraY+ph_max_mtt_hierarchy_depth_intr a_slice_luma)(包括端值)的范围内。
当不存在时,ph_cu_qp_delta_subdiv_intra_slice的值被推断为等于0。
ph_cu_chroma_qp_offset_subdiv_intra_slice指定传送cu_chroma_qp_offset_flag的帧内条带中的编解码单元的最大cbSubdiv值。ph_cu_chroma_qp_offset_subdiv_intra_slice的值应在0到2*(CtbLog2SizeY-MinQtLog2SizeIntraY+ph_max_mtt_hierarchy_depth_intra_slice_luma)(包括端值)的范围内。
当不存在时,ph_cu_chroma_qp_offset_subdiv_intra_slice的值被推断为等于0。
ph_log2_diff_min_qt_min_cb_inter_slice指定由CTU的四叉树划分产生的亮度叶块的亮度样点的最小大小的以2为底的对数以及与PH相关联的slice_type等于0(B)或1(P)的条带中的亮度CU的亮度样点中的最小亮度编解码块大小的以2为底的对数之间的差。ph_log2_diff_min_qt_min_cb_inter_slice的值应在0至CtbLog2SizeY-MinCbLog2SizeY(包括端值)范围内。当不存在时,ph_log2_diff_min_qt_min_cb_luma的值推断为等于sps_log2_diff_min_qt_min_cb_inter_slice。
ph_max_mtt_hierarchy_depth_inter_slice指定编解码单元的最大层次深度,该编解码单元与PH相关联的slice_type等于0(B)或1(P)的条带中的四叉树叶的多类型树划分产生。ph_max_mtt_hierarchy_depth_inter_slice的值应在0到2*(CtbLog2SizeY-MinCbLog2SizeY)(包括端值)的范围内。当不存在时,ph_max_mtt_hierarchy_depth_inter_slice的值被推断为等于sps_max_mtt_hierarchy_depth_inter_slice。
ph_log2_diff_max_bt_min_qt_inter_slice指定可以使用二进制划分进行划分的亮度编解码块的亮度样点中的最大大小(宽度或高度)的以2为底的对数以及由与PH相关联的slice_type等于0(B)或1(P)的条带中的CTU的四叉树划分产生的亮度叶块的亮度样点中的最小大小(宽度或高度)的以2为底的对数之间的差。ph_log2_diff_max_bt_min_qt_inter_slice的值应在0到CtbLog2SizeY-MinQtLog2SizeInterY(包括端值)的范围内。当不存在时,ph_log2_diff_max_bt_min_qt_inter_slice的值被推断为等于sps_log2_diff_max_bt_min_qt_inter_slice。
ph_log2_diff_max_tt_min_qt_inter_slice指定可以使用三元划分进行划分的亮度编解码块的亮度样点中的最大大小(宽度或高度)的以2为底的对数以及由与PH关联的slice_type等于0(B)或1(P)的条带中的CTU的四叉树划分产生的亮度叶块的亮度样点中的最小大小(宽度或高度)的以2为底的对数之间的差。ph_log2_diff_max_tt_min_qt_inter_slice的值应在0到CtbLog2SizeY-MinQtLog2SizeInterY(包括端值)的范围内。当不存在时,ph_log2_diff_max_tt_min_qt_inter_slice的值被推断为等于sps_log2_diff_max_tt_min_qt_inter_slice。
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)(包括端值)的范围内。
当不存在时,ph_cu_qp_delta_subdiv_inter_slice的值被推断为等于0。
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)(包括端值)的范围内。
当不存在时,ph_cu_chroma_qp_offset_subdiv_inter_slice的值被推断为等于0。
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。
基于子块的merging MVP候选的最大数量MaxNumSubblockMergeCand的导出如下:
Figure BDA0003821599920000371
MaxNumSubblockMergeCand的值应在0到5(包括端值)的范围内。
ph_collocated_from_l0_flag等于1指定用于时域运动矢量预测的共位图片是从参考图片列表0导出的。ph_collocated_from_l0_flag等于0指定用于时域运动矢量预测的共位图片是从参考图片列表1中导出的。
ph_collocated_ref_idx指定用于时域运动矢量预测的共位图片的参考索引。
当ph_collocated_from_l0_flag等于1时,ph_collocated_ref_idx参考在参考图片列表0中的条目,并且ph_collocated_ref_idx的值应在0到num_ref_entries[0][RplsIdx[0]]–1(包括端值)的范围内。
当ph_collocated_from_l0_flag等于0时,ph_collocated_ref_idx参考在参考图片列表1中的条目,并且ph_collocated_ref_idx的值应在0到num_ref_entries[1][RplsIdx[1]]1(包括端值)的范围内。
当不存在时,ph_collocated_ref_idx的值被推断为等于0。
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)语法结构被解析。
ph_fpel_mmvd_enabled_flag等于1指定具有运动矢量差的merge模式在与PH关联的条带中使用整数样点精度。ph_fpel_mmvd_enabled_flag等于0指定具有运动矢量差的merge模式可以在与PH关联的条带中使用分数样点精度。当不存在时,则ph_fpel_mmvd_enabled_flag的值被推断为0。
ph_disable_bdof_flag等于1指定在与PH相关联的条带中禁用基于双向光流帧间预测的帧间双向预测。ph_disable_bdof_flag等于0指定在与PH相关联的条带中可以启用或不启用基于双向光流帧间预测的帧间双向预测。
当ph_disable_bdof_flag不存在时,以下适用:
--如果sps_bdof_enabled_flag等于1,则推断ph_disable_bdof_flag的值等于0。
--否则(sps_bdof_enabled_flag等于0),ph_disable_bdof_flag的值被推断为等于1。
ph_disable_dmvr_flag等于1指定在与PH相关联的条带中禁用基于解码器运动矢量细化的帧间双向预测。ph_disable_dmvr_flag等于0指定在与PH相关联的条带中可以启用或不启用基于解码器运动矢量细化的帧间双向预测。
当ph_disable_dmvr_flag不存在时,以下适用:
--如果sps_dmvr_enabled_flag等于1,则ph_disable_dmvr_flag的值被推断为等于0。
--否则(sps_dmvr_enabled_flag等于0),ph_disable_dmvr_flag的值被推断为等于1。
ph_disable_prof_flag等于1指定在与PH相关联的条带中禁用光流的预测细化。ph_disable_prof_flag等于0指定在与PH相关联的条带中可以启用或不启用光流的预测细化。
当ph_disable_prof_flag不存在时,以下适用:
--如果sps_affine_prof_enabled_flag等于1,则ph_disable_prof_flag的值被推断为等于0。
--否则(sps_affine_prof_enabled_flag等于0),ph_disable_prof_flag的值被推断为等于1。
ph_qp_delta指定用于图片中的编解码块的QpY的初始值,直到被编解码单元层中的CuQpDeltaVal的值修改。
当qp_delta_info_in_ph_flag等于1时,图片的所有条带的QpY量化参数的初始值SliceQpY被导出如下:
SliceQpY=26+init_qp_minus26+ph_qp_delta(89)
SliceQpY的值应在-QpBdOffset到+63(包括端值)的范围内。
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)残差样点的反转符号给出。
ph_sao_luma_enabled_flag等于1指定为与PH相关的所有条带中的亮度分量启用SAO;ph_sao_luma_enabled_flag等于0指定可以为与PH相关的一个、多个或所有条带禁用亮度分量的SAO,当ph_sao_luma_enabled_flag不存在时,其被推断为等于0。
ph_sao_chroma_enabled_flag等于1指定为与PH相关联的所有条带中的色度分量启用SAO;ph_sao_chroma_enabled_flag等于0指定色度分量的SAO可以对于与PH相关联的一个、多个或所有条带被禁用。当ph_sao_chroma_enabled_flag不存在时,其被推断为等于0。
ph_dep_quant_enabled_flag等于0指定对当前图片禁用相关量化。ph_dep_quant_enabled_flag等于1指定为当前图片启用相关量化。当ph_dep_quant_enabled_flag不存在时,其被推断为等于0。
pic_sign_data_hiding_enabled_flag等于0指定对当前图片禁用符号位隐藏。pic_sign_data_hiding_enabled_flag等于1指定为当前图片启用符号位隐藏。当pic_sign_data_hiding_enabled_flag不存在时,其被推断为等于0。
ph_deblocking_filter_override_flag等于1指定去方块参数存在于PH中。ph_deblocking_filter_override_flag等于0指定去方块参数不存在于PH中。当不存在时,ph_deblocking_filter_override_flag的值被推断为等于0。
ph_deblocking_filter_disabled_flag等于1指定去方块滤波器的操作不适用于与PH相关联的条带。ph_deblocking_filter_disabled_flag等于0指定去方块滤波器的操作适用于与PH相关联的条带。当ph_deblocking_filter_disabled_flag不存在时,其被推断为等于pps_deblocking_filter_disabled_flag。
ph_beta_offset_div2和ph_tc_offset_div2指定β和tC(除以2)的去方块参数偏移,这些参数偏移应用于与PH相关的条带的亮度分量。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。
ph_cb_beta_offset_div2和ph_cb_tc_offset_div2指定β和tC(除以2)的去方块参数偏移,这些参数偏移应用于与PH相关的条带的Cb分量。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。
ph_cr_beta_offset_div2和ph_cr_tc_offset_div2指定β和tC(除以2)的去方块参数偏移,这些参数偏移应用于与PH相关的条带的Cr分量。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。
ph_extension_length以字节为单位指定PH扩展数据的长度,不包括用于信令通知ph_extension_length本身的位。ph_extension_length的值应在0到256(包括端值)的范围内。当不存在时,ph_extension_length的值被推断为等于0。
ph_extension_data_byte可以是任意值。符合该版本该规范的解码器应忽略ph_extension_data_byte的值。它的值不影响解码器与该版本规范中指定的配置文件的一致性。
3.3.SH语法和语义
在最新的VVC草案文本中,SH语法和语义如下:
Figure BDA0003821599920000411
Figure BDA0003821599920000421
Figure BDA0003821599920000431
Figure BDA0003821599920000441
指定包含cu_qp_delta_abs的编解码单元的亮度量化参数与其预测之间的差的变量CuQpDeltaVal设置为等于0。指定在确定包含cu_chroma_qp_offset_flag的编解码单元的Qp′Cb、Qp′Cr和Qp′CbCr量化参数的相应值时要使用的值的变量CuQpOffsetCb、CuQpOffsetCr和CuQpOffsetCbCr都被设置为等于0。
picture_header_in_slice_header_flag等于1指定PH语法结构存在于条带标头中。picture_header_in_slice_header_flag等于0指定PH语法结构不存在于条带标头中。
比特流一致性的要求是,在CLVS中的所有编解码条带中,picture_header_in_slice_header_flag的值应该相同。
当picture_header_in_slice_header_flag对于编解码条带等于1时,比特流一致性的要求是CLVS中不应存在nal_unit_type等于PH_NUT的VCL NAL单元。
当picture_header_in_slice_header_flag等于0时,当前图片中的所有编解码的条带应当具有picture_header_in_slice_header_flag等于0,并且当前PU应当具有PH NAL单元。
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位。
slice_address指定条带的条带地址。当不存在时,slice_address的值被推断为等于0。当rect_slice_flag等于1且NumSlicesInSubpic[CurrSubpicIdx]等于1时,slice_address的值被推断为等于0。
如果rect_slice_flag等于0,则以下适用:
--条带地址是光栅扫描条带索引。
--slice_address的长度为Ceil(Log2(NumTilesInPic))位。
--slice_address的值应在0到NumTilesInPic–1(包括单只)的范围内。
否则(rect_slice_flag等于1),以下适用:
--条带地址是条带的子图片级别条带索引。
--slice_address的长度为Ceil(Log2(NumSlicesInSubpic[CurrSubpicIdx]))位。
--slice_address的值应在0到NumSlicesInSubpic[CurrSubpicIdx]–1(包括端值)的范围内。
比特流一致性的要求是应用以下约束:
--如果rect_slice_flag等于0或subpic_info_present_flag等于0,则slice_address的值不应等于同一编解码图片的任何其它编解码条带NAL单元的slice_address的值。
--否则,一对slice_subpic_id和slice_address值不应等于同一编解码图片的任何其它编解码条带NAL单元的一对slice_subpic_id和slice_address值。
--图片的条带的形状应使得每个CTU在解码时,其整个左侧边界和整个顶部边界应由图片边界组成或由先前解码的(多个)CTU的边界组成。
sh_extra_bit[i]可以等于1或0。符合该版本该规范的解码器应忽略sh_extra_bit[i]的值。它的值不影响解码器与该版本规范中指定的配置文件的一致性。
num_tiles_in_slice_minus1加1(如果存在)指定条带中的片的数量。num_tiles_in_slice_minus1的值应在0到NumTilesInPic–1(包括端值)的范围内。
变量NumCtusInCurrSlice指定当前条带中CTU的数量,并且i的范围从0到NumCtusInCurrSlice–1(包括端值)的列表CtbAddrInCurrSlice[i]指定条带内第i个CTB的图片光栅扫描地址,导出如下:
Figure BDA0003821599920000451
Figure BDA0003821599920000461
变量SubpicLeftBoundaryPos、SubpicTopBoundaryPos、SubpicRightBoundaryPos和SubpicBotBoundaryPos的导出如下:
Figure BDA0003821599920000462
slice_type根据表9指定条带的编解码类型。
表9–与slice_type的名称关联
slice_type slice_type的名字
0 B(B条带)
1 P(P条带)
2 I(I条带)
当不存在时,slice_type的值被推断为等于2。
当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。
变量MinQtLog2SizeY、MinQtLog2SizeC、MinQtSizeY、MinQtSizeC、MaxBtSizeY、MaxBtSizeC、MinBtSizeY、MaxTtSizeY、MaxTtSizeC、MinTtSizeY、MaxMttDepthY和MaxMttDepthC的导出如下:
--如果slice_type等于2(I),则以下适用:
MinQtLog2SizeY=MinCbLog2SizeY+ph_log2_diff_min_qt_min_cb_intra_slice_luma (119)
MinQtLog2SizeC=MinCbLog2SizeY+ph_log2_diff_min_qt_min_cb_intra_slice_chroma (120)
MaxBtSizeY=1<<(MinQtLog2SizeY+ph_log2_diff_max_bt_min_qt_intra_slice_luma) (121)
MaxBtSizeC=1<<(MinQtLog2SizeC+ph_log2_diff_max_bt_min_qt_intra_slice_chroma) (122)
MaxTtSizeY=1<<(MinQtLog2SizeY+ph_log2_diff_max_tt_min_qt_intra_slice_luma) (123)
MaxTtSizeC=1<<(MinQtLog2SizeC+ph_log2_diff_max_tt_min_qt_intra_slice_chroma) (124)
MaxMttDepthY=ph_max_mtt_hierarchy_depth_intra_slice_luma (125)
MaxMttDepthC=ph_max_mtt_hierarchy_depth_intra_slice_chroma (126)
CuQpDeltaSubdiv=ph_cu_qp_delta_subdiv_intra_slice (127)
CuChromaQpOffsetSubdiv=ph_cu_chroma_qp_offset_subdiv_intra_slice(128)
--否则(slice_type等于0(B)或1(P)),以下适用:
MinQtLog2SizeY=MinCbLog2SizeY+ph_log2_diff_min_qt_min_cb_inter_slice(129)
MinQtLog2SizeC=MinCbLog2SizeY+ph_log2_diff_min_qt_min_cb_inter_slice(130)
MaxBtSizeY=1<<(MinQtLog2SizeY+ph_log2_diff_max_bt_min_qt_inter_slice) (131)
MaxBtSizeC=1<<(MinQtLog2SizeC+ph_log2_diff_max_bt_min_qt_inter_slice) (132)
MaxTtSizeY=1<<(MinQtLog2SizeY+ph_log2_diff_max_tt_min_qt_inter_slice) (133)
MaxTtSizeC=1<<(MinQtLog2SizeC+ph_log2_diff_max_tt_min_qt_inter_slice) (134)
MaxMttDepthY=ph_max_mtt_hierarchy_depth_inter_slice (135)
MaxMttDepthC=ph_max_mtt_hierarchy_depth_inter_slice (136)
CuQpDeltaSubdiv=ph_cu_qp_delta_subdiv_inter_slice (137)
CuChromaQpOffsetSubdiv=ph_cu_chroma_qp_offset_subdiv_inter_slice(138)
--以下适用:
MinQtSizeY=1<<MinQtLog2SizeY (139)
MinQtSizeC=1<<MinQtLog2SizeC (140)
MinBtSizeY=1<<MinCbLog2SizeY (141)
MinTtSizeY=1<<MinCbLog2SizeY (142)
slice_alf_enabled_flag等于1指定自适应环路滤波器被启用,并且可以应用于条带中的Y、Cb或Cr色彩分量。slice_alf_enabled_flag等于0指定对条带中的所有色彩分量禁用自适应环路滤波器。当不存在时,slice_alf_enabled_flag的值被推断为等于ph_alf_enabled_flag。
slice_num_alf_aps_ids_luma指定条带参考的ALF APS的数量。当slice_alf_enabled_flag等于1且slice_num_alf_aps_ids_luma不存在时,slice_num_alf_aps_ids_luma的值被推断为等于ph_num_alf_aps_ids_luma的值。
slice_alf_aps_id_luma[i]指定条带的亮度分量所参考的第i个ALF APS的adaptation_parameter_set_id。aps_params_type等于ALF_APS并且adaptation_parameter_set_id等于slice_alf_aps_id_luma[i]的APS NAL单元的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]的值。
aps_params_type等于ALF_APS且adaptation_parameter_set_id等于slice_alf_aps_id_luma[i]的APS NAL单元的alf_luma_filter_signal_flag的值应等于1。
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。
slice_alf_aps_id_chroma指定条带的色度分量所参考的ALF APS的adaptation_parameter_set_id。aps_params_type等于ALF_APS且adaptation_parameter_set_id等于slice_alf_aps_id_chroma的APS NAL单元的TemporalId应小于或等于编解码条带NAL单元的TemporalId。当slice_alf_enabled_flag等于1且slice_alf_aps_id_chroma不存在时,slice_alf_aps_id_chroma的值被推断为等于ph_alf_aps_id_chroma的值。
aps_params_type等于ALF_APS且adaptation_parameter_set_id等于slice_alf_aps_id_chroma的APS NAL单元的alf_chroma_filter_signal_flag的值应等于1。
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。
slice_cc_alf_cb_aps_id指定条带的Cb色彩分量所参考的adaptation_parameter_set_id。
aps_params_type等于ALF_APS且adaptation_parameter_set_id等于slice_cc_alf_cb_aps_id的APS NAL单元的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的值。
aps_params_type等于ALF_APS且adaptation_parameter_set_id等于slice_cc_alf_cb_aps_id的APS NAL单元的alf_cc_cb_filter_signal_flag的值应等于1。
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。
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的APS NAL单元的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的值。
aps_params_type等于ALF_APS且adaptation_parameter_set_id等于slice_cc_alf_cr_aps_id的APS NAL单元的alf_cc_cr_filter_signal_flag的值应等于1。
当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未来使用。
注1–一张图片的不同色彩平面的解码过程之间没有依赖关系。
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。
num_ref_idx_active_minus1[i]用于导出变量NumRefIdxActive[i],如公式143所指定。num_ref_idx_active_minus1[i]的值应在0到14(包括端值)的范围内。
对于i等于0或1,当当前条带是B条带,num_ref_idx_active_override_flag等于1,且num_ref_idx_active_minus1[i]不存在时,num_ref_idx_active_minus1[i]被推断为等于0。
当当前条带是P条带,num_ref_idx_active_override_flag等于1,并且num_ref_idx_active_minus1[0]不存在时,num_ref_idx_active_minus1[0]被推断为等于0。
变量NumRefIdxActive[i]的导出如下:
Figure BDA0003821599920000501
NumRefIdxActive[i]-1的值指定可用于解码条带的参考图片列表i的最大参考索引。当NumRefIdxActive[i]的值等于0时,没有参考图片列表i的参考索引可用于对条带进行解码。
当前条带为P条带时,NumRefIdxActive[0]的值应大于0。
当当前条带为B条带时,NumRefIdxActive[0]和NumRefIdxActive[1]均应大于0。
cabac_init_flag指定用于确定在上下文变量的初始化过程中使用的初始化表的方法。当cabac_init_flag不存在时,其被推断为等于0。
slice_collocated_from_l0_flag等于1指定用于时域运动矢量预测的共位图片是从参考图片列表0导出的。slice_collocated_from_l0_flag等于0指定用于时域运动矢量预测的共位图片是从参考图片列表1中导出的。
当slice_type等于B或P,ph_temporal_mvp_enabled_flag等于1,并且slice_collocated_from_l0_flag不存在时,以下适用:
--如果rpl_info_in_ph_flag等于1,则推断slice_collocated_from_l0_flag等于ph_collocated_from_l0_flag。
--否则(rpl_info_in_ph_flag等于0,并且slice_type等于P),slice_collocated_from_l0_flag的值被推断为等于1。
slice_collocated_ref_idx指定用于时域运动矢量预测的共位图片的参考索引。
当slice_type等于P时或者当slice_type等于B并且slice_collocated_from_l0_flag等于1时,slice_collocated_ref_idx参考在参考图片列表0中的条目,并且slice_collocated_ref_idx的值应当在0到NumRefIdxActive[0]–1(包括端值)的范围内。
当slice_type等于B并且slice_collocated_from_l0_flag等于0时,slice_collocated_ref_idx参考在参考图片列表1中的条目,并且slice_collocated_ref_idx的值应该在0到NumRefIdxActive[1]–1(包括端值)的范围内。
当slice_collocated_ref_idx不存在时,以下适用:
--如果rpl_info_in_ph_flag等于1,则推断slice_collocated_ref_idx的值等于ph_collocated_ref_idx。
--否则(rpl_info_in_ph_flag等于0),slice_collocated_ref_idx的值被推断为等于0。
比特流一致性的要求是,由slice_collocated_ref_idx参考的图片对于编解码图片的所有条带应该是相同的。
比特流一致性的要求是,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。
slice_qp_delta指定用于条带中的编解码块的QpY的初始值,直到被编解码单元层中的CuQpDeltaVal的值修改。
当qp_delta_info_in_ph_flag等于0时,条带的QpY量化参数的初始值SliceQpY被导出如下:
SliceQpY=26+init_qp_minus26+slice_qp_delta (144)
SliceQpY的值应在-QpBdOffset到+63(包括端值)的范围内。
当以下任一条件为真时:
--WP_info_in_ph_flag的值等于1,pps_weighted_pred_flag的值等于1,并且slice_type的值等于p。
--WP_info_in_ph_flag的值等于1,pps_weighted_bipred_flag的值等于1,并且slice_type的值等于b。
以下适用:
--NumRefIdxActive[0]的值应小于或等于NumWeightsL0的值。
–对于i的范围在0到NumRefIdxActive[0]-1(包括端值)范围内的每个参考图片索引RefPicList[0][i],应用于参考图片索引的亮度权重、Cb权重和Cr权重分别为LumaWeightL0[i]、ChromaWeightL0[0][i]和ChromaWeightL0[1][i]。
当wp_info_in_ph_flag等于1,pps_weighted_bipred_flag等于1,并且slice_type等于B时,以下适用:
--NumRefIdxActive[1]的值应小于或等于NumWeightsL1的值。
–对于i的范围在0至NumRefIdxActive[1]-1(包括端值)范围内的每个参考图片索引RefPicList[1][i],应用于参考图片索引的亮度权重、Cb权重和Cr权重分别为LumaWeightL1[i]、ChromaWeightL1[0][i]和ChromaWeightL1[1][i]。
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(包括端值)范围内。
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(包括端值)范围内。
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(包括端值)范围内。
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。
slice_sao_luma_flag等于1指定为当前条带中的亮度分量启用SAO;slice_sao_luma_flag等于0指定为当前条带中的亮度分量禁用SAO。当slice_sao_luma_flag不存在时,其被推断为等于ph_sao_luma_enabled_flag。
slice_sao_chroma_flag等于1指定为当前条带中的色度分量启用SAO;slice_sao_chroma_flag等于0指定为当前条带中的色度分量禁用SAO。当slice_sao_chroma_flag不存在时,其被推断为等于ph_sao_chroma_enabled_flag。
slice_deblocking_filter_override_flag等于1指定去方块参数存在于条带标头中。slice_deblocking_filter_override_flag等于0指定去方块参数不存在于条带标头中。当不存在时,slice_deblocking_filter_override_flag的值被推断为等于ph_deblocking_filter_override_flag。
slice_deblocking_filter_disabled_flag等于1指定去方块滤波器的操作不应用于当前条带。slice_deblocking_filter_disabled_flag等于0指定对当前条带应用去方块滤波器的操作。当slice_deblocking_filter_disabled_flag不存在时,其被推断为等于ph_deblocking_filter_disabled_flag。
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。
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。
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。
slice_ts_residual_coding_disabled_flag等于1指定residual_coding()语法结构用于解析当前条带的变换跳过块的残差样点。slice_ts_residual_coding_disabled_flag等于0指定residual_ts_coding()语法结构用于解析当前条带的变换跳过块的残差样点。当slice_ts_residual_coding_disabled_flag不存在时,其被推断为等于0。
slice_lmcs_enabled_flag等于1指定为当前条带启用具有色度缩放的亮度映射。slice_lmcs_enabled_flag等于0指定为当前条带不启用具有色度缩放的亮度映射。当slice_lmcs_enabled_flag不存在时,其被推断为等于0。
slice_scaling_list_present_flag等于1指定用于当前条带的缩放列表数据是基于包含在参考缩放列表APS中的缩放列表数据导出的,其中aps_params_type等于SCALING_APS,并且adaptation_parameter_set_id等于ph_scaling_list_aps_id。slice_scaling_list_present_flag等于0指定用于当前图片的缩放列表数据是在条款7.4.3.21中指定的默认缩放列表数据。当不存在时,slice_scaling_list_present_flag的值被推断为等于0。
变量NumEntryPoints指定当前条带中条目点的数量,导出如下:
Figure BDA0003821599920000541
offset_len_minus1加1指定entry_point_offset_minus1[i]语法元素的长度(以位为单位)。offset_len_minus1的值应在0到31(包括端值)的范围内。
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(其中k的范围为1至NumEntryPoints-1(包括端值))由编解码条带数据的字节firstByte[k]至lastByte[k](包括端值)组成,其中firstByte[k]和lastByte[k]定义为:
Figure BDA0003821599920000551
lastByte[k]=firstByte[k]+entry_point_offset_minus1[k] (147)
最后一个子集(其中子集索引等于NumEntryPoints)由编解码条带数据的剩余字节组成。
当sps_entropy_coding_sync_enabled_flag等于0并且条带包含一个或多个完整的片时,每个子集应由同一片内的条带中所有CTU的所有编解码位组成,并且子集的数量(即NumEntryPoints+1的值)应等于条带中的片的数量。
当sps_entropy_coding_sync_enabled_flag等于0并且条带包含来自单个片的CTU行的子集时,NumEntryPoints应当是0,并且子集的数量应当是1。该子集应由条带中的所有CTU的所有编解码位组成。
当sps_entropy_coding_sync_enabled_flag等于1时,k的范围在0到NumEntryPoints(包括端值)的每个子集k应由片内的CTU行中所有CTU的所有编解码位组成,并且子集的数量(即NumEntryPoints+1的值)应等于条带中片特定CTU行的总数量。
slice_header_extension_length以字节为单位指定条带标头扩展数据的长度,不包括用于信令通知slice_header_extension_length本身的位。slice_header_extension_length的值应在0到256(包括端值)的范围内。当不存在时,slice_header_extension_length的值被推断为等于0。
slice_header_extension_data_byte[i]可以具有任何值。符合该版本该规范的解码器应忽略所有slice_header_extension_data_byte[i]语法元素的值。它的值不影响解码器与该版本规范中指定的配置文件的一致性。
4.解决的技术问题的示例
PPS、PH和SH语法的现有设计存在以下问题:
1)根据最新的VVC草案文本,对于CLVS中的任何图片,如果PH语法结构被包括在SH中而不是PH NAL单元中,则CLVS中的每个图片只有一个条带,并且CLVS中的每个图片的PH语法结构被包括在SH中而不是PH NAL单元中。在这种情况下,CLVS中的图片所参考的PPS中的六个PPS标志rpl_info_in_ph_flag、dbf_info_in_ph_flag、sao_info_in_ph_flag、alf_info_in_ph_flag、wp_info_in_ph_flag和qp_delta_info_in_ph_flag的信令是无用的。
2)根据最新的VVC草案文本,当条件“A&B||C”被满足时,SH语法中的语法元素num_ref_idx_active_override_flag被信令通知,其中“A”指示“rpl_info_in_ph_flag等于1,或者NAL单元类型不是IDR,或者sps_idr_rpl_present_flag等于1”,“B”指示“slice_type等于P或B,并且参考图片列表0中的参考条目的数量大于1”,并且“C”指示“slice_type等于B并且参考图片列表1中的参考条目的数量大于1”。在这种情况下,当rpl_info_in_ph_flag等于0,NAL单元类型为IDR,并且sps_idr_rpl_present_flag等于0,但同时slice_type等于B,并且列表1中的参考条目的数量大于1时,关于num_ref_idx_active_minus1[0]和num_ref_idx_active_minus1[1]的参数仍可能被覆盖并设置为某些数字;这可能导致意外的解码器行为,包括解码器崩溃。
3)语法结构ref_pic_list_struct()可以包含在SPS和/或PH或SH中。当PH或SH中包括ref_pic_list_struct()并且long_term_ref_pics_flag等于1时,将在ref_pic_list_struct()中信令通知语法元素ltrp_in_header_flag[][],以指示LTRP条目的图片顺序计数值是在PH/SH中的ref_pic_list_struct()中由语法元素rpls_poc_lsb_lt[][][]信令通知,还是直接在PH或SH中的ref_pic_lists()中由语法元素poc_lsb_lt[][]信令通知。然而,在这种情况下,ref_pic_list_struct()中的ltrp_in_header_flag的信令是无意义的,因为LTRP POC信息将在图片标头中而不是在SPS中被信令通知。
4)语法结构ref_pic_lists()将包含在PH或SH中。当ref_pic_lists()包含在SH中时,参考图片列表0和参考图片列表1两者的参考图片信息总是被信号通知,即使slice_type等于P。在这种情况下(当ref_pic_lists()被包括在SH中并且slice_type=P时),P条带的ref_pic_lists()中的参考图片列表1参考信息(例如,rpl_sps_flag[1]、rpl_idx[1]、poc_lsb_lt[1][j]、delta_poc_msb_present_flag[1][j]、delta_poc_msb_cycle_lt[1][j],其中j在0到NumLtrpEntries[1][RplsIdx[1]-1(包括端值)的范围内)的信令变得无用。
5.示例技术和实施例
为解决上述问题和一些其他未提及的问题,公开了以下列表中总结的方法。这些项目应该被认为是解释一般概念的示例,而不应该以狭隘的方式解释。此外,这些项目可以单独使用或以任何方式组合使用。
1.为了解决第一个问题,是否信令通知某个信息的指示应该存在于PH或SH中(例如,PPS中的rpl_info_in_ph_flag、dbf_info_in_ph_flag、sao_info_in_ph_flag、alf_info_in_ph_flag、wp_info_in_ph_flag和qp_delta_info_in_ph_flag)和/或条带标头中图片标头语法结构的存在(例如,picture_header_in_slice)可能取决于CLVS中的每个图片是否只有一个条带的指示。
1)当有CLVS中的每个图片只有一个条带的指示时,对于每个图片仅具有一个条带的CLVS,不需要信令通知关于存在于PH或SH中的某些信息的指示(例如,6个PPS标志中的一个或多个),因为在这种情况下,PH在SH中。
a.在一个示例中,可以在PPS中信令通知参考PPS的每个图片是否只有一个条带的指示。
i.或者,可以在PPS中信令通知参考PPS的每个图片是否只有一个帧内条带的指示。
ii.或者,可以在PPS中信令通知参考PPS的每个图片是否只有一个帧间条带的指示符。
b.在一个示例中,指示可以是PPS中的标志,例如命名为pps_one_slice_per_picture_flag。或者,此外,该标志等于1指定参考PPS的每个图片仅具有一个条带,并且该标志等于0指定参考PPS的每个图片具有一个或多个条带。
i.或者,可以不信令通知该指示,而是从信令通知的条带分割信息中推断出该指示,例如PPS语法元素num_slices_in_pic_minus1等于0(信令通知或推断,在任一情况下,rect_slice_flag的值将等于1,因为当rect_slice_flag等于0时,不信令通知num_slices_in_pic_minus1,并且也不推断该值。)因此,当rect_slice_flag等于1时,pps_one_slice_per_picture_flag等于1相当于num_slices_in_pic_minus1等于0。这种替代方法的缺点是,它不涵盖rect_slice_flag等于0的情况,而使用pps_one_slice_per_picture_flag的方法适用于rect_slice_flag等于0和rect_slice_flag等于1的两种情况。
ii.另外,在一个示例中,当sps_num_subpics_minus1大于0时,pps_one_slice_per_picture_flag的值需要等于0。
iii.此外,对于CLVS中的图片所参考的所有PPS,可能需要该标志相同。
iv.另外,当one_slice_per_pic_constraint_flag的值等于1时,可以要求该标志等于1。
v.此外,one_slice_per_pic_constraint_flag的语义通过添加one_slice_per_pic_constraint_flag等于1还指定pps_one_slice_per_picture_flag应该等于1来更新。
vi.当从PPS中知道每个图片中只有一个子图片(例如,sps_num_subpics_minus1为0)并且每个子图片只包含一个条带(在这种情况下,可以知道每个图片只包含一个条带)时,可以跳过PPS中的该标志的信令。
c.当该指示指示每个图片仅包含一个条带(例如,pps_one_slice_per_picture_flag等于1)时,可以跳过关于存在于PH或SH中的某些信息的指示(例如,6个PPS标志)的信令。
i.另外,当pps_one_slice_per_picture_flag等于1时,6个标志的值都被推断为等于0。
注意,对于至少一些参数,例如那些与RPL相关的参数(如共位图片和加权预测参数),推断它们为0更好(比推断它们等于1更好),因为活动条目的数量对于它们的信令是已知的,并且知道这一点可以使信令更优化。
1.或者,另外,当pps_one_slice_per_picture_flag等于1时,6个标志的值都被推断为等于1。
2.或者,当pps_one_slice_per_picture_flag等于1时,另外,除wp_info_in_ph_flag之外的6个标志中的每个标志的值被推断为等于1或0,而不管其他标志是如何推断的,并且对于wp_info_in_ph_flag,当rpl_info_in_ph_flag等于0时,该值被推断为等于0,并且当rpl_info_in_ph_flag等于1时,该值被推断为1或0,而不管6个标志中的另外4个的值。
d.当该指示指示每个图片仅包含一个条带(例如,pps_one_slice_per_picture_flag等于1)时,SH语法中的picture_header_in_slice_header_flag的信令可以被跳过,例如,通过将语法元素调节为"if(!pps_one_slice_per_picture_flag)"并且当pps_one_slice_per_picture_flag等于1时推断picture_header_in_slice_header_flag的值。
e.当pps_one_slice_per_picture_flag等于1时,SH语法中slice_address的信令可以跳过如下(增加的部分是斜体和下划线):
Figure BDA0003821599920000591
并增加如下推断:
Figure BDA0003821599920000592
Figure BDA0003821599920000593
f.当pps_one_slice_per_picture_flag等于1时,SH语法中num_tiles_in_slice_minus1的信令可以跳过如下:
Figure BDA0003821599920000594
并且添加如下推断:
Figure BDA0003821599920000595
Figure BDA0003821599920000596
Figure BDA0003821599920000597
g.替代以上所有,不添加标志pps_one_slice_per_picture_flag,但是当任何参考PPS的条带的picture_header_in_slice_header_flag等于1时,要求六个PPS标志的值等于0。
i.这在技术上相当于添加到picture_header_in_slice_header_flag的语义的以下约束(编辑上更好):当六个PPS标志中的任意一个等于1时,picture_header_in_slice_header_flag的值应该等于0。
h.替代以上所有,不添加标志pps_one_slice_per_pic_flag,但是当one_slice_per_pic_constraint_flag等于1时,六个PPS标志的值需要等于0。
i.独立于上述任何一个,可以添加以下约束:当one_slice_per_pic_constraint_flag等于1时,picture_header_in_slice_header_flag的值应该等于1。技术上等效地,one_slice_per_pic_constraint_flag的语义通过添加one_slice_per_pic_constraint_flag等于1来更新,还指定picture_header_in_slice_header_flag应当等于1(对于包含该标志的PTL语法结构所应用的每个OLS中的所有条带)。
j.当pps_one_slice_per_picture_flag等于1时,PPS语法中rect_slice_flag的信令可以跳过如下(增加的部分是斜体和下划线):
Figure BDA0003821599920000601
i.并添加如下推断:
Figure BDA0003821599920000602
Figure BDA0003821599920000603
k.当pps_one_slice_per_picture_flag等于1时,PPS语法中single_slice_per_subpic_flag的信令可以跳过如下(增加的部分是斜体和下划线):
Figure BDA0003821599920000604
i.并添加如下推断:
Figure BDA0003821599920000605
Figure BDA0003821599920000606
l.当pps_one_slice_per_picture_flag等于1时,PPS语法中loop_filter_cross_slices_enabled_flag的信令可以跳过,例如,通过将语法元素调节为"if(!pps_one_slice_per_picture_flag)"并当pps_one_slice_per_picture_flag等于0时推断loop_filter_cross_slices_enabled_flag的值。
m.在一个示例中,可以在与CLVS相关联的SPS中信令通知CLVS中的每个图片是否只有一个条带的指示。
n.在一个示例中,可以在与CLVS相关联的SPS中信令通知CLVS中的每个图片是否只有一个片的指示。
o.当指示与第一PPS相关联的每个图片仅具有一个条带时,与条带分割相关的一个或多个语法元素(如JVET-Q2001-vC中的rect_slice_flag、single_slice_per_subpic_flag、num_slices_in_pic_minus1、tile_idx_delta_present_flag、slice_width_in_tiles_minus1、slice_height_in_tiles_minus1、num_exp_slices_in_tile、exp_slice_height_in_ctus_minus1、tile_idx_delta等。)可能不会在第一个PPS中被信令通知。
i.在一个示例中,该指示是pps_one_slice_per_picture_flag,其被包括在条带信令语法之前的PPS语法中,例如,就在rect_slice_flag之前。
1.另外,在一个示例中,当pps_one_slice_per_picture_flag等于1并且rect_slice_flag未被信令通知时,其值被推断为等于1。
2.另外,在一个示例中,当pps_one_slice_per_picture_flag等于1并且single_slice_per_subpic_flag未被信令通知时,其值被推断为等于1。
3.另外,在一个示例中,当pps_one_slice_per_picture_flag等于1并且num_slices_in_pic_minus1没有被信令通知时,其值被推断为等于0。
p.当指示与第一PPS相关联的每个图片仅具有一个片时,与条带分割相关的一个或多个语法元素(例如在JVET-Q2001-vC中的num_exp_tile_columns_minus1、num_exp_tile_rows_minus1、tile_column_width_minus1、tile_row_height_minus1。)可能不会在第一个PPS中被信令通知。
i.在一个示例中,指示是pps_one_tile_per_picture_flag,其在片信令语法之前被包括在PPS语法中,例如,就在pps_log2_ctu_size_minus5之前(但是在相同的语法条件“if(!no_pic_partition_flag)"下)。
2.关于SH中语法元素num_ref_idx_active_override_flag的信令:
1)为了解决第二个问题,SH中的语法元素num_ref_idx_active_override_flag可以通过条件“A&(B||C)”被信令通知,其中“A”指示“rpl_info_in_ph_flag=1,或者NAL单元类型不等于IDR,或者sps_idr_rpl_present_flag等于1”,并且“B”指示“slice_type等于P或B,并且参考图片列表0中的参考条目的数量大于1”,并且“C”指示“slice_type等于B,并且参考图片列表1中的参考条目的数量大于1”。
a.在一个示例中,PH中的以下语法:
Figure BDA0003821599920000621
改为如下:
Figure BDA0003821599920000622
3.为了解决第三个问题,公开了以下关于语法结构ref_pic_list_struct()中的语法元素ltrp_in_header_flag[listIdx][rplsIdx]和rpls_poc_lsb_lt[listIdx][rplsIdx][i]的信令的方法:
1)是否在语法结构ref_pic_list_struct()中信令通知与用于长期参考的图片顺序计数的值相关的语法元素(例如,ltrp_in_header_flag和/或rpls_poc_lsb_lt)可以取决于参考图片列表的索引(例如,rplsIdx)是否小于SPS中的ref_pic_list_struct(listIdx,rplsIdx)语法的数量(例如,num_ref_pic_lists_in_sps[listIdx]),如在第二实施例中,
a.在一个示例中,如果参考图片列表的索引等于SPS中ref_pic_list_struct(listIdx,rplsIdx)语法的数量(即,rplsIdx等于num_ref_pic_lists_in_sps[listIdx]),则与用于长期参考的图片顺序计数的值相关的语法元素(例如,ltrp_in_header_flag)可以不被信令通知,并且ltrp_in_header_flag的值被推断为等于1或0。
2)或者,是否在语法结构ref_pic_list_struct()中信令通知与用于长期参考的图片顺序计数的值相关的语法元素(例如,ltrp_in_header_flag和/或rpls_poc_lsb_lt)可以取决于语法结构ref_pic_list_struct()是否包括在SPS中,如在第二实施例中。
a.在一个示例中,如果语法结构ref_pic_list_struct()不包括在SPS中,则与用于长期参考的图片顺序计数的值相关的语法元素(例如,ltrp_in_header_flag)可以不被信令通知,并且ltrp_in_header_flag的值被推断为等于1或0。
3)或者,不是在ref_pic_list_struct()内信令通知ltrp_in_header_flag,而是在SPS中直接信令通知,SPS中的每个ref_pic_list_struct()一个,例如,如下:
Figure BDA0003821599920000631
Figure BDA0003821599920000632
Figure BDA0003821599920000641
并且ref_pic_list_struct(listIdx,rplsIdx)语法更改如下。删除的文本用双括号标记(例如,[[a]]表示删除字符“a”):
Figure BDA0003821599920000642
4)或者,不是在ref_pic_list_struct()内信令通知ltrp_in_header_flag,而是在SPS中直接信令通知,列表0和列表1各一个,例如,如下:
Figure BDA0003821599920000651
Figure BDA0003821599920000652
并且ref_pic_lists()sytnax更改如下:
Figure BDA0003821599920000654
并且ref_pic_list_struct(listIdx,rplsIdx)语法更改如下:
Figure BDA0003821599920000653
Figure BDA0003821599920000661
5)或者,不是在ref_pic_list_struct()内信令通知ltrp_in_header_flag,而是在SPS中直接信令通知,只有一个,例如,如下:
Figure BDA0003821599920000662
Figure BDA0003821599920000663
并且ref_pic_lists()sytnax更改如下:
Figure BDA0003821599920000664
并且ref_pic_list_struct(listIdx,rplsIdx)语法更改如下:
Figure BDA0003821599920000671
6)或者,不是在ref_pic_list_struct()内信令通知ltrp_in_header_flag和rpls_poc_lsb_lt,而是在SPS中直接信令通知它们,SPS中的每个ref_pic_list_struct()一个集合,例如,如在第二实施例中。
7)或者,不是在ref_pic_list_struct()内信令通知ltrp_in_header_flag和rpls_poc_lsb_lt,而是在SPS中直接信令通知它们,列表0和列表1各一个集合,例如,如在第二实施例中。
8)或者,不是在ref_pic_list_struct()内信令通知ltrp_in_header_flag和rpls_poc_lsb_lt,而是在SPS中被直接信令通知它们,只有一个集合,例如,如在第二实施例中。
4.关于语法结构ref_pic_list()中参考图片列表1中与参考图片相关的语法元素的信令:
1)为了解决第四个问题,是否在语法结构ref_pic_list()中信令通知与参考图片列表1的参考信息相关的语法元素(例如,rpl_sps_flag[1],rpl_idx[1],poc_lsb_lt[1][j],delta_poc_msb_present_flag[1][j],delta_poc_msb_cycle_lt[1][j],其中j在0到NumLtrpEntries[1][RplsIdx[1]-1(包括端值)的范围内)可能取决于变量X(例如,X=1或2或取决于条带类型),如在第三实施例中。
6.实施例
Figure BDA0003821599920000681
第一实施例
这是上文章节5中总结的项目1、1.1、1.1.a、1.1.b、1.1.b.iii、1.1.b.iv、1.1.c、1.1.c.i、1.1.e、1.1.f和1.1.i的实施例。
7.3.2.4图片参数集RBSP语法
Figure BDA0003821599920000682
7.4.3.4图片参数集RBSP语义
...
Figure BDA0003821599920000691
rpl_info_in_ph_flag等于1指定参考图片列表信息存在于PH语法结构中,而不存在于参考不包含PH语法结构的PPS的条带标头中。rpl_info_in_ph_flag等于0指定参考图片列表信息不存在于PH语法结构中,并且可能存在于参考不包含PH语法结构的PPS的条带标头中。
Figure BDA0003821599920000692
Figure BDA0003821599920000693
dbf_info_in_ph_flag等于1指定去方块滤波器信息存在于PH语法结构中,而不存在于参考不包含PH语法结构的PPS的条带标头中。dbf_info_in_ph_flag等于0指定去方块滤波器信息不存在于PH语法结构中,并且可能存在于参考不包含PH语法结构的PPS的条带标头中。当不存在时,dbf_info_in_ph_flag的值被推断为等于0。
sao_info_in_ph_flag等于1指定SAO过滤器信息存在于PH语法结构中,而不存在于参考不包含PH语法结构的PPS的条带标头中。sao_info_in_ph_flag等于0指定SAO过滤器信息不存在于PH语法结构中,并且可能存在于参考不包含PH语法结构的PPS的条带标头中。
Figure BDA0003821599920000694
Figure BDA0003821599920000695
alf_info_in_ph_flag等于1指定ALF信息存在于PH语法结构中,而不存在于参考不包含PH语法结构的PPS的条带标头中。alf_info_in_ph_flag等于0指定ALF信息不存在于PH语法结构中,并且可能存在于参考不包含PH语法结构的PPS的条带标头中。
Figure BDA0003821599920000696
Figure BDA0003821599920000697
wp_info_in_ph_flag等于1指定加权预测信息可以存在于PH语法结构中,而不存在于参考不包含PH语法结构的PPS的条带标头中。wp_info_in_ph_flag等于0指定加权预测信息不存在于PH语法结构中,并且可能存在于参考不包含PH语法结构的PPS的条带标头中。当不存在时,wp_info_in_ph_flag的值被推断为等于0。
qp_delta_info_in_ph_flag等于1指定QP增量信息存在于PH语法结构中,而不存在于参考不包含PH语法结构的PPS的条带标头中。qp_delta_info_in_ph_flag等于0指定QP增量信息不存在于PH语法结构中,并且可能存在于参考不包含PH语法结构的PPS的条带标头中。
Figure BDA0003821599920000701
Figure BDA0003821599920000702
...
7.3.7.1一般条带标头语法
Figure BDA0003821599920000703
7.4.8.1一般条带标头语义
...
picture_header_in_slice_header_flag等于1指定PH语法结构存在于条带标头中。picture_header_in_slice_header_flag等于0指定PH语法结构不存在于条带标头中。
比特流一致性的要求是,在CLVS中的所有编解码条带中,picture_header_in_slice_header_flag的值应该相同。
当picture_header_in_slice_header_flag对于编解码条带等于1时,比特流一致性的要求是CLVS中不应存在nal_unit_type等于PH_NUT的VCL NAL单元。
当picture_header_in_slice_header_flag等于0时,当前图片中的所有编解码的条带应当具有picture_header_in_slice_header_flag等于0,并且当前PU应当具有PH NAL单元。
Figure BDA0003821599920000711
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位。
slice_address指定条带的条带地址。当不存在时,slice_address的值被推断为等于0。[[当rect_slice_flag等于1且NumSlicesInSubpic[CurrSubpicIdx]等于1时,slice_address的值被推断为等于0。]]
如果rect_slice_flag等于0,则以下适用:
--条带地址是光栅扫描条带索引。
--slice_address的长度为Ceil(Log2(NumTilesInPic))位。
--slice_address的值应在0到NumTilesInPic–1(包括单只)的范围内。
否则(rect_slice_flag等于1),以下适用:
--条带地址是条带的子图片级别条带索引。
--slice_address的长度为Ceil(Log2(NumSlicesInSubpic[CurrSubpicIdx]))位。
--slice_address的值应在0到NumSlicesInSubpic[CurrSubpicIdx]–1(包括端值)的范围内。
比特流一致性的要求是应用以下约束:
--如果rect_slice_flag等于0或subpic_info_present_flag等于0,则slice_address的值不应等于同一编解码图片的任何其它编解码条带NAL单元的slice_address的值。
--否则,一对slice_subpic_id和slice_address值不应等于同一编解码图片的任何其它编解码条带NAL单元的一对slice_subpic_id和slice_address值。
--图片的条带的形状应使得每个CTU在解码时,其整个左侧边界和整个顶部边界应由图片边界组成或由先前解码的(多个)CTU的边界组成。
sh_extra_bit[i]可以等于1或0。符合该版本该规范的解码器应忽略sh_extra_bit[i]的值。它的值不影响解码器与该版本规范中指定的配置文件的一致性。
num_tiles_in_slice_minus1加1[[,如果存在,]]指定
Figure BDA0003821599920000721
Figure BDA0003821599920000722
条带中的片的数量。num_tiles_in_slice_minus1的值应在0到NumTilesInPic–1(包括端值)的范围内。
Figure BDA0003821599920000723
Figure BDA0003821599920000724
...
6.1.第二实施例
这是上文章节5中总结的项目3.1、3.1a、3.2、3.2a、3.6、3.7和3.8的实施例。
6.1.1.项目3.1和3.1a的实施例
在一个示例中,ref_pic_list_struct(listIdx,rplsIdx)被更改如下:
Figure BDA0003821599920000725
Figure BDA0003821599920000731
6.1.2.项目3.2和3.2a的实施例
或者,ref_pic_list_struct(listIdx,rplsIdx)更改如下:
Figure BDA0003821599920000732
ltrp_in_header_flag[listIdx][rplsIdx]等于0指定ref_pic_list_struct(listIdx,rplsIdx)语法结构中的LTRP条目的POC LSB存在于ref_pic_list_struct(listIdx,rplsIdx)语法结构中。ltrp_in_header_flag[list idx][rplsIdx]等于1指定ref_pic_list_struct(listIdx,rplsIdx)语法结构中的LTRP条目的POC LSB不存在于ref_pic_list_struct(listIdx,rplsIdx)语法结构中。
Figure BDA0003821599920000733
Figure BDA0003821599920000734
6.1.3.项目3.6的实施例
或者,seq_parameter_set_rbsp()和ref_pic_list_struct()更改如下:
Figure BDA0003821599920000741
Figure BDA0003821599920000742
并且ref_pic_list_struct(listIdx,rplsIdx)语法更改如下:
Figure BDA0003821599920000743
Figure BDA0003821599920000751
[[ltrp_in_header_flag[listIdx][rplsIdx]等于0指定ref_pic_list_struct(listIdx,rplsIdx)语法结构中的LTRP条目的POC LSB存在于ref_pic_list_struct(listIdx,rplsIdx)语法结构中。ltrp_in_header_flag[list idx][rplsIdx]等于1指定ref_pic_list_struct(listIdx,rplsIdx)语法结构中的LTRP条目的POC LSB不存在于ref_pic_list_struct(listIdx,rplsIdx)语法结构中。
rpls_poc_lsb_lt[listIdx][rplsIdx][i]指定ref_pic_list_struct(listIdx,rplsIdx)语法结构中第i个条目所参考的图片的图片顺序计数模MaxPicOrderCntLsb的值。rpls_poc_lsb_lt[listIdx][rplsIdx][i]语法元素的长度为log2_max_pic_order_cnt_lsb_minus4+4位。]]
6.1.4.项目3.7的实施例
或者,seq_parameter_set_rbsp()和ref_pic_list_struct()更改如下:
Figure BDA0003821599920000752
Figure BDA0003821599920000761
Figure BDA0003821599920000762
并且ref_pic_lists()语法更改如下:
Figure BDA0003821599920000764
并且ref_pic_list_struct(listIdx,rplsIdx)语法更改如下:
Figure BDA0003821599920000763
Figure BDA0003821599920000771
[[ltrp_in_header_flag[listIdx][rplsIdx]等于0指定ref_pic_list_struct(listIdx,rplsIdx)语法结构中的LTRP条目的POC LSB存在于ref_pic_list_struct(listIdx,rplsIdx)语法结构中。ltrp_in_header_flag[list idx][rplsIdx]等于1指定ref_pic_list_struct(listIdx,rplsIdx)语法结构中的LTRP条目的POC LSB不存在于ref_pic_list_struct(listIdx,rplsIdx)语法结构中。
rpls_poc_lsb_lt[listIdx][rplsIdx][i]指定ref_pic_list_struct(listIdx,rplsIdx)语法结构中第i个条目所参考的图片的图片顺序计数模MaxPicOrderCntLsb的值。rpls_poc_lsb_lt[listIdx][rplsIdx][i]语法元素的长度为log2_max_pic_order_cnt_lsb_minus4+4位。]]
6.1.5.项目3.8的实施例
或者,seq_parameter_set_rbsp()和ref_pic_list_struct()更改如下:
Figure BDA0003821599920000772
Figure BDA0003821599920000773
Figure BDA0003821599920000781
并且ref_pic_lists()sytnax更改如下:
Figure BDA0003821599920000783
并且ref_pic_list_struct(listIdx,rplsIdx)语法更改如下:
Figure BDA0003821599920000782
[[ltrp_in_header_flag[listIdx][rplsIdx]等于0指定ref_pic_list_struct(listIdx,rplsIdx)语法结构中的LTRP条目的POC LSB存在于ref_pic_list_struct(listIdx,rplsIdx)语法结构中。ltrp_in_header_flag[list idx][rplsIdx]等于1指定ref_pic_list_struct(listIdx,rplsIdx)语法结构中的LTRP条目的POC LSB不存在于ref_pic_list_struct(listIdx,rplsIdx)语法结构中。
rpls_poc_lsb_lt[listIdx][rplsIdx][i]指定ref_pic_list_struct(listIdx,rplsIdx)语法结构中第i个条目所参考的图片的图片顺序计数模MaxPicOrderCntLsb的值。rpls_poc_lsb_lt[listIdx][rplsIdx][i]语法元素的长度为log2_max_pic_order_cnt_lsb_minus4+4位。]]
6.2.第三实施例
这是上文章节5中总结的项目4.1的实施例。
在一个示例中,语法结构picture_header_structure()、slice_header()和ref_pic_lists()更改如下:
Figure BDA0003821599920000791
Figure BDA0003821599920000792
Figure BDA0003821599920000793
Figure BDA0003821599920000801
图1是可实现本文中所公开的各种技术的示例视频处理系统1900的框图。各种实现方式可以包括系统1900中的一些或全部组件。系统1900可以包括用于接收视频内容的输入1902。视频内容可以以原始或未压缩的格式(例如8或10比特多分量像素值)接收,或者可以以压缩或编码的格式接收。输入1902可以代表网络接口、外围总线接口或存储接口。网络接口的示例包括有线接口(诸如以太网、无源光网络(PON)等)和无线接口(诸如Wi-Fi或蜂窝接口)。
系统1900可以包括可以实现本文档中描述的各种编解码或编码方法的编解码组件1904。编解码组件1904可以减少从输入1902到编解码组件1904的输出的视频的平均比特率,以产生视频的编解码表示。因此,编解码技术有时称为视频压缩或视频转码技术。编解码组件1904的输出可以被存储或经由所连接的通信来发送,如组件1906所表示的。在输入1902处接收的视频的存储或通信的比特流(或编解码)表示可以由组件3108使用,以生成被发送到显示接口1910的像素值或可显示视频。从比特流表示中生成用户可见的视频的过程有时称为视频解压缩。此外,尽管某些视频处理操作被称为“编解码”操作或工具,但是应当理解,在编码器处使用编解码工具或操作,并且将由解码器进行反演编解码的结果的对应解码工具或操作。
外围总线接口或显示接口的示例可以包括通用串行总线(USB)或高清晰度多媒体接口(HDMI)或Displayport等。存储接口的示例包括SATA(串行高级技术附件)、PCI、IDE接口等。本文档中描述的技术可以实施在各种电子设备中,诸如移动电话、膝上型计算机、智能电话或其它能够进行数字数据处理和/或视频显示的装设备。
图2是视频处理装置3600的框图。装置3600可以用于实现本文中所述的方法中的一个或多个。装置3600可以实施在智能电话、平板电脑、计算机、物联网(IoT)接收器等中。装置3600可以包括一个或多个处理器3602、一个或多个存储器3604和视频处理硬件3606。(多个)处理器3602可以配置为实现本文档中所述的一个或多个方法。(多个)存储器3604可以用于存储数据和代码,该代码用于实现本文所描述的方法和技术。视频处理硬件3606可以用于在硬件电路中实现本文档中所描述的一些技术。在一些实施例中,硬件3606可以部分或完全在处理器3602中,例如图形处理器。
图4是图示可利用本公开的技术的示例视频编解码系统100的框图。
如图4所示,视频编解码系统100可以包括源设备110和目的地设备120。源设备110生成编码的视频数据,其可以被称为视频编码设备。目的地设备120可以解码由源设备110生成的编码的视频数据,该目的地设备120可以被称为视频解码设备。
源设备110可以包括视频源112、视频编码器114和输入/输出(I/O)接口116。
视频源112可以包括诸如视频捕获设备的源、从视频内容提供者接收视频数据的接口、和/或生成视频数据的计算机图形系统,或这些源的组合。视频数据可以包括一个或多个图片。视频编码器114对来自视频源112的视频数据进行编码以生成比特流。比特流可以包括形成视频数据的编解码表示的比特序列。比特流可以包括编解码图片和相关联的数据。编解码图片是图片的编解码表示。相关联的数据可以包括序列参数集、图片参数集和其他语法元素。I/O接口116包括调制器/解调器(调制解调器)和/或发送器。可以将编码的视频数据经由I/O接口116通过网络130a直接发送到目的地设备120。还可以将编码的视频数据存储到存储介质/服务器130b上,用于由目的地设备120存取。
目的地设备120可以包括I/O接口126、视频解码器124和显示设备122。
I/O接口126可以包括接收器和/或调制解调器。I/O接口126可以从源设备110或存储介质/服务器130b获取编码的视频数据。视频解码器124可以对编码的视频数据进行解码。显示设备122可以向用户显示解码的视频数据。显示设备122可以与目的地设备120集成,或可以在配置为与外置显示设备相接的目的地设备120外部。
视频编码器114和视频解码器124可以根据视频压缩标准(诸如,高效视频编解码(HEVC)标准、多功能视频编解码(VVC)标准和其他当前和/或其他标准)进行操作。
图5是图示视频编码器200的示例的框图,该视频编码器200可以是图4中图示的系统100中的视频编码器114。
视频编码器200可以被配置为执行本公开的任何或全部技术。在图5的示例中,视频编码器200包括多个功能组件。本公开所描述的技术可以在视频编码器200的各种组件之间共享。在一些示例中,处理器可以配置为进行本公开中描述的任何或全部技术。
视频编码器200的功能组件可以包括分割单元201、预测单元202(其可以包括模式选择单元203、运动估计单元204、运动补偿单元205和帧内预测单元206)、残差生成单元207、变换单元208、量化单元209、逆量化单元210、逆变换单元211、重建单元212、缓冲器213和熵编码单元214。
在其他示例中,视频编码器200可以包括更多、更少或不同的功能组件。在一个示例中,预测单元202可以包括帧内块复制(IBC)单元。IBC单元可以以IBC模式进行预测,其中至少一个参考图片是当前视频块所位于的图片。
此外,诸如运动估计单元204和运动补偿单元205的一些组件可以被高度集成,但是出于解释的目的在图5的示例中分开表示。
分割单元201可以将图片分割成一个或多个视频块。视频编码器200和视频解码器300可以支持各种视频块大小。
模式选择单元203可以例如基于错误结果选择帧内或帧间的编解码模式中的一个,并且将得到的帧内或帧间编解码块提供到残差生成单元207来生成残差块数据而且提供到重建单元212来重建编码块以用作参考图片。在一些示例中,模式选择单元203可以选择帧内和帧间预测的组合(CIIP)模式,其中预测是基于帧间预测信号和帧内预测信号。模式选择单元203还可以为帧间预测情况下的块选择运动矢量的分辨率(例如子像素或整个像素精度)。
为了对当前视频块进行帧间预测,运动估计单元204可以通过将来自缓冲器213的一个或多个参考帧与当前视频块进行比较,生成当前视频块的运动信息。运动补偿单元205可以基于来自缓冲器213的图片(而不是与当前视频块相关联的图片)的运动信息和解码样点来为当前视频块确定预测的视频块。
运动估计单元204和运动补偿单元205可以为当前视频块进行不同操作,例如执行不同操作取决于当前视频块是在I条带、P条带还是B条带中。
在一些示例中,运动估计单元204可以进行当前视频块的单向预测,并且运动估计单元204可以在列表0或列表1的参考图片中搜索当前视频块的参考视频块。运动估计单元204然后可以生成指示列表0或列表1的参考图片中含有参考视频块的参考索引以及指示在当前视频块与参考视频块之间的空域位移的运动矢量。运动估计单元204可以输出参考索引、预测方向指示符、和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块来生成当前块的预测视频块。
在其他示例中,运动估计单元204可以进行当前视频块的双向预测,运动估计单元204可以在列表0的参考图片中搜索当前视频块的参考视频块并且还可以在列表1的参考图片中搜索当前视频块的另一个参考视频块。运动估计单元204然后可以生成指示列表0或列表1的参考图片中含有参考视频块的参考索引以及指示在参考视频块与当前视频块之间的空域位移的运动矢量。运动估计单元204可以输出参考索引和当前视频块的运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块来生成当前视频块的预测视频块。
在一些示例中,运动估计单元204可以输出运动信息的全部集合,用于解码器的解码处理。
在一些示例中,运动估计单元204可以不输出当前视频的运动信息的全部集合。而是,运动估计单元204可以参考另一个视频块的运动信息来信令通知当前视频块的运动信息。例如,运动估计单元204可以确定当前视频块的运动信息与邻域视频块的运动信息足够相似。
在一个示例中,运动估计单元204可以在与当前视频块相关联的语法结构中指示:向视频解码器300指示当前视频块具有与另一个视频块相同的运动信息的值。
在另一个示例中,运动估计单元204可以在与当前视频块相关联的语法结构中标识另一个视频块和运动矢量差(MVD)。运动矢量差指示当前视频块的运动矢量与指示视频块的运动矢量之间的差。视频解码器300可以使用指示视频块的运动矢量和运动矢量差来确定当前视频块的运动矢量。
如上所讨论的,视频编码器200可以预测性地信令通知运动矢量。可以由视频编码器200实现的预测性的信令通知技术的两个示例包括高级运动矢量预测(AMVP)和merge模式信令通知。
帧内预测单元206可以对当前视频块进行帧内预测。当帧内预测单元206对当前视频块进行帧内预测时,帧内预测单元206可以基于相同图片中其他视频块的解码样点来生成当前视频块的预测数据。当前视频块的预测数据可以包括预测视频块和各种语法元素。
残差生成单元207可以通过从当前视频块中减去(例如,由减号表示)当前视频块的(多个)预测视频块来生成当前视频块的残差数据。当前视频块的残差数据可以包括对应于当前视频块中样点的不同样点分量的残差视频块。
在其他示例中,例如在跳过模式下,对于当前视频块可能不存在当前视频块的残差数据,并且残差生成单元207可以不进行减去操作。
变换处理单元208可以通过将一个或多个变换应用于与当前视频块相关联的残差视频块来生成当前视频块的一个或多个变换系数视频块。
在变换处理单元208生成与当前视频块相关联的变换系数视频块之后,量化单元209可以基于与当前视频块相关联的一个或多个量化参数(QP)值来量化与当前视频块相关联的变换系数视频块。
逆量化单元210和逆变换单元211可以将逆量化和逆变换分别应用于变换系数视频块,来从变换系数视频块重建残差视频块。重建单元212可以将重建的残差视频块添加到来自由预测单元202生成的一个或多个预测视频块的对应样点,以产生与当前块相关联的重建视频块用于存储在缓冲器213中。
在重建单元212重建视频块之后,可以进行环路滤波操作以降低视频块中视频块化伪影。
熵编码单元214可以从视频编码器200的其他功能组件接收数据。当熵编码单元214接收数据时,熵编码单元214可以进行一个或多个熵编码操作以生成熵编码数据并且输出包括熵编码数据的比特流。
图6是图示视频解码器300的示例的框图,该视频解码器300可以是图4中图示的系统100中的视频解码器114。
视频解码器300可以被配置为进行本公开的任何或全部技术。在图6的示例中,视频解码器300包括多个功能组件。本公开所描述的技术可以在视频解码器300的各种组件之间共享。在一些示例中,处理器可以配置为进行本公开中描述的任何或全部技术。
在图6的示例中,视频解码器300包括熵解码单元301、运动补偿单元302、帧内预测单元303、逆量化单元304、逆变换单元305以及重建单元306和缓冲器307。在一些示例中,视频解码器300可以进行与关于视频编码器200(图5)所描述的编码过程总体反演的解码过程。
熵解码单元301可以检索编码比特流。编码比特流可以包括熵编解码视频数据(例如,视频数据的编码块)。熵解码单元301可以对熵编解码视频进行解码,并且根据熵解码视频数据,运动补偿单元302可以确定包括运动矢量、运动矢量精度、参考图片列表索引和其他运动信息的运动信息。运动补偿单元302例如可以通过进行AMVP和merge模式确定此类信息。
运动补偿单元302可以产生运动补偿块,可能地基于插值滤波器进行插值。要以子像素精度使用的插值滤波器的标识符可以包括在语法元素中。
运动补偿单元302可以使用由视频编码器200在编码视频块的期间所使用的插值滤波器,来计算出参考块的子整数个像素的插值的值。运动补偿单元302可以根据接收的语法信息确定由视频编码器200所使用的插值滤波器并且使用插值滤波器来产生预测块。
运动补偿单元302可以使用一些语法信息来确定:用于对编码视频序列的(多个)帧和/或(多个)条带进行编码的块的大小,描述编码视频序列的图片的每个宏块如何被分割的分割信息,指示如何编码每个分割的模式,每个帧间编码块的一个或多个参考帧(和参考帧列表),以及对编码视频序列进行解码的其他信息。
帧内预测单元303可以使用例如在比特流中接收的帧内预测模式来从空域相邻块形成预测块。逆量化单元303逆量化(即去量化)在比特流中提供的且由熵解码单元301解码的量化的视频块系数。逆变换单元303应用逆变换。
重建单元306可以用由运动补偿单元202或帧内预测单元303生成的对应预测块求和残差块,以形成解码块。如所期望的,去块化滤波器还可以应用于滤波解码块以便移除块化伪影。解码视频块然后存储在缓冲器307中,该缓冲器307提供用于随后的运动补偿/帧内预测的参考块,并且还产生用于在显示设备上呈现的解码视频。
接下来提供了一些实施例优选的示例的列表。
第一组条款显示了上一章节中讨论的技术的示例实施例(例如,项目1)。
1.一种视频处理方法(例如,图3中描绘的方法300),包括:执行(302)具有一个或多个图片的视频和视频的编解码表示之间的转换,其中一个或多个图片中的每一个恰好包括一个条带;其中编解码表示符合格式规则;其中格式规则指定,图片参数集标志从编解码表示中排除,因为图片恰好具有一个条带。
2.根据条款1所述的方法,其中格式规则指定是否在图片参数集中信令通知参考图片参数集的每个图片的指示。
3.根据条款1所述的方法,其中,格式规则进一步指定在编解码表示中省略缺少图片参数集标志的指示。
4.根据条款1所述的方法,其中,格式规则指定,对于恰好具有一个条带的图片,编解码表示跳过指示在条带标头中存在图片标头的标志的信令。
以下条款显示了上一章节中讨论的技术的示例实施例(例如,项目2)。
5.一种视频处理的方法,包括:执行视频的视频条带和视频的编解码表示之间的转换,其中编解码表示符合格式规则,其中格式规则指定包括指示存在第二字段的第一字段,该第二字段基于条件标识用于对视频条带进行编解码的参考图片的最大索引;其中该条件可表示为逻辑表达式“A&(B||C)”,其中A指示“rpl_info_in_ph_flag=1,或者NAL单位类型不等于IDR,或者sps_idr_rpl_present_flag等于1”,并且“B”指示“slice_type等于P或B,并且参考图片列表0中的参考条目的数量大于1”,并且“C”指示“slice_type等于B,并且参考图片列表1中的参考条目的数量大于1”并且“&”是逻辑“与”运算,并且“||”是逻辑“或”运算。
以下条款显示了上一章节中讨论的技术的示例实施例(例如,项目)。
6.一种视频处理的方法,包括:执行视频的视频区域和视频的编解码表示之间的转换,其中编解码表示符合格式规则,其中格式规则指定控制指示用于视频区域的转换的长期参考图片的图片顺序计数的语法元素的使用的条件。
7.根据条款6所述的方法,其中,格式规则指定当且仅当参考图片列表的索引小于包括在序列参数集中的参考图片列表语法结构的数量时,语法元素被包括在编解码表示中。
8.根据条款6所述的方法,其中格式规则指定当且仅当参考图片列表语法结构包括在编解码表示的序列参数集中时,语法元素包括在编解码表示中。
以下条款显示了上一章节中讨论的技术的示例实施例(例如,项目4)。
9.一种视频处理的方法,包括:执行视频的视频区域和视频的编解码表示之间的转换,其中编解码表示符合格式规则,其中格式规则指定当且仅当变量X等于特定值时,包括参考图片相关语法结构,其中X取决于视频区域的条带类型。
10.根据条款9所述的方法,其中,特定值等于1或2。
11.根据以上条款中任一项所述的方法,其中,视频区域包括视频编解码单元。
12.根据以上条款中任一项所述的方法,其中,视频区域包括视频图片。
13.根据条款1至12中任一条款所述的方法,其中,转换包括将视频编码成编解码表示。
14.根据条款1至12中任一项所述的方法,其中,转换包括解码编解码表示以生成视频的像素值。
15.一种视频解码装置,包括处理器,该处理器被配置成实现条款1至14中的一项或多项所述的方法。
16.一种视频编解码装置,包括处理器,该处理器被配置成实现条款1至14中的一项或多项所述的方法。
17.一种其上存储有计算机代码的计算机程序产品,该代码在由处理器执行时使处理器实现条款1至14中任一项所述的方法。
18.本文档中描述的方法、设备或系统。
第二组条款描述了上一章节中公开的技术的某些特征和方面(例如,“示例技术和实施例”章节中的项目1.1.a至1.1.f和1.1.h至1.1.p)。
1.一种视频处理的方法(例如,如图7A所示的方法710),包括:执行712包括一个或多个图片的视频和视频的比特流之间的转换;其中比特流符合格式规则;其中格式规则指定响应于是否指示参考图片参数集的每个图片包括单个条带,指示编解码信息的一个或多个语法元素被选择性地包括在比特流的图片参数集中。
2.根据条款1所述的方法,其中,一个或多个语法元素包含六个标志,六个标志指示某些编解码语法元素是包含在图片标头语法结构中还是直接包含在条带标头中。
3.根据条款2所述的方法,其中,六个标志包括第一标志,第一标志指示参考图片列表信息是包括在图片标头语法结构中还是直接包括在条带标头中。
4.根据条款3所述的方法,其中,格式规则进一步指定,在第一标志不存在于图片参数集中的情况下,第一标志的值被推断为等于0。
5.根据条款2至4所述的方法,其中,六个标志包括第二标志,第二标志指示去方块滤波器信息是包括在图片标头语法结构中还是直接包括在条带标头中。
6.根据条款5中任一项所述的方法,其中,格式规则还指定在图片参数集中不存在第二标志的情况下,第二标志的值被推断为等于0。
7.根据条款2至6中任一项所述的方法,其中,六个标志包括第三标志,第三标志指示样点自适应偏移滤波器信息是包括在图片标头语法结构中还是直接包括在条带标头中。
8.根据条款7中任一项所述的方法,其中,格式规则还指定在图片参数集中不存在第三标志的情况下,第三标志的值被推断为等于0。
9.根据条款2至8中任一项所述的方法,其中,六个标志包括第四标志,第四标志指示自适应环路滤波器信息是被包括在图片标头语法结构中还是被直接包括在条带标头中。
10.根据条款9中任一项所述的方法,其中,格式规则进一步指定,在第四标志不存在于图片参数集中的情况下,第四标志的值被推断为等于0。
11.根据条款2至10中任一项所述的方法,其中,六个标志包括第五标志,第五标志指示加权预测信息是包括在图片标头语法结构中还是直接包括在条带标头中。
12.根据条款11所述的方法,其中,格式规则进一步指定在图片参数集中不存在第五标志的情况下,第五标志的值被推断为等于0。
13.根据条款2至12中任一项所述的方法,其中,六个标志包括第六标志,第六标志指示量化参数增量信息是包括在图片标头语法结构中还是直接包括在条带标头中。
14.根据条款13中任一项所述的方法,其中,格式规则进一步指定在图片参数集中不存在第六标志的情况下,第六标志的值被推断为等于0。
15.根据条款1至14中任一项所述的方法,其中,至少一个标志包括第七标志,第七标志指示是否针对参考图片参数集的图片启用跨条带边界的环路滤波操作。
16.根据条款15中任一项所述的方法,其中,格式规则进一步指定在图片参数集中不存在第七标志的情况下,第七标志的值被推断为等于0。
17.根据条款1至16中任一项所述的方法,其中,格式规则进一步指定,在指示参考图片参数集的每个图片包括单个条带的情况下,省略一个或多个语法元素。
18.根据条款17所述的方法,其中,格式规则进一步指定包括指示,指示指示参考图片参数集的每个图片在图片参数集中是否只有一个条带。
19.根据条款17所述的方法,其中,格式规则进一步指定包括指示,指示指示参考图片参数集的每个图片是否在图片参数集中仅具有一个帧内条带。
20.根据条款17所述的方法,其中,格式规则进一步指定包括指示,指示指示参考图片参数集的每个图片是否在图片参数集中仅具有一个帧间条带。
21.根据条款1所述的方法,其中,格式规则还指定指示,指示指示参考图片参数集的每个图片是否只有一个条带,一个条带对应于包含在图片参数集中的标志。
22.根据条款21所述的方法,其中,值为1的标志指定参考图片参数集的每个图片仅具有一个条带,并且值为0的标志指定参考图片参数集的每个图片具有多于一个条带。
23.根据条款21所述的方法,其中,格式规则还指定省略指示,并从包括在图片参数集中的条带分割信息中推断指示。
24.根据条款21所述的方法,其中,格式规则还指定,在指示每个图片中是否只有一个子图片的另一指示大于0的情况下,指示等于0。
25.根据条款21所述的方法,其中,格式规则进一步指定标志对于由编解码层视频序列中的一个或多个图片参考的所有图片参数集是相同的。
26.根据条款21所述的方法,其中,格式规则还指定,在one_slice_per_pic_constraint_flag等于1的情况下,标志等于1。
27.根据条款21所述的方法,其中,格式规则还指定通过添加等于1的one_slice_per_pic_constraint_flag指定标志等于1来更新one_slice_per_pic_constraint_flag的语义。
28.根据条款21所述的方法,其中,格式规则还指定在从图片参数集得知每个图片中只有一个子图片并且每个子图片只包含一个条带的情况下省略标志。
29.根据条款17所述的方法,其中,格式规则还指定,在指示参考图片参数集的每个图片包括单个条带的情况下,一个或多个语法元素的值被推断为等于0或1。
30.根据条款17所述的方法,其中,一个或多个语法元素包括第八标志(wp_info_in_ph_flag),第八标志指示加权预测信息是否被包括在图片标头语法结构中,并且其中,格式规则进一步指定,i)在指示参考图片参数集的每个图片包括单个条带的情况下,除wp_info_in_ph_flag之外的每个其他语法元素的值被推断为等于1或0,以及ii)在指示参考图片列表信息是否被包括在图片标头语法结构中的第九标志(rpl_info_in_ph_flag)的值等于0的情况下,wp_info_in_ph_flag的值被推断为等于0,并且在rpl_info_in_ph_flag的值等于1的情况下,wp_info_in_ph_flag的值被推断为1或0。
31.根据条款1所述的方法,其中,格式规则还指定在指示参考图片参数集的每个图片包括单个条带的情况下,在指示参考图片参数集的每个图片包括单个条带的情况下,省略条带标头语法结构中的条带标头标志中的图片标头,并推断图片标头的值等于1。
32.根据条款1所述的方法,其中,格式规则进一步指定在指示参考图片参数集的每个图片包括单个条带的情况下,在条带标头语法结构中省略条带地址参数。
33.根据条款32所述的方法,其中,格式规则还指定,在以下情况下,条带地址参数的值被推断为等于0:i)指示参考图片参数集的每个图片包括单个条带,以及ii)rect_slice_flag等于0。
34.根据条款1所述的方法,其中,格式规则还指定在指示参考图片参数集的每个图片包括单个条带的情况下,省略指示条带中的片的数量的参数。
35.根据条款34所述的方法,其中,格式规则还指定,在以下情况下,参数的值被推断为等于“NumTilesInPic-1”:i)指示参考图片参数集的每个图片包括单个条带,以及ii)rect_slice_flag等于0,NumTilesInPic指示图片中的片的数量。
36.根据条款1所述的方法,其中,格式规则还指定在one_slice_per_pic_constraint_flag等于1的情况下,一个或多个语法元素的值等于0。
37.根据条款1所述的方法,其中,格式规则还指定在one_slice_per_pic_constraint_flag等于1的情况下,条带标头标志中的图片标头的值等于1。
38.根据条款1所述的方法,其中,格式规则还指定在指示参考图片参数集的每个图片包括单个条带的情况下,省略rect_slice_flag。
39.根据条款38所述的方法,其中,格式规则还指定在指示参考图片参数集的每个图片包括单个条带的情况下,rect_slice_flag的值被推断为等于1。
40.根据条款1所述的方法,其中,格式规则还指定在指示参考图片参数集的每个图片包括单个条带的情况下,省略single_slice_per_subpic_flag。
41.根据条款40所述的方法,其中,格式规则还指定在指示参考图片参数集的每个图片包括单个条带的情况下,single_slice_per_subpic_flag的值被推断为等于1。
42.根据条款1所述的方法,其中,格式规则还指定在指示参考图片参数集的每个图片包括单个条带的情况下,省略loop_filter_cross_slices_enabled_flag。
43.根据条款42所述的方法,其中,格式规则还指定在指示参考图片参数集的每个图片包括单个条带的情况下,省略比特流中的第十标志,其中第十标志指定是否针对参考图片参数集的图片启用跨条带边界的环路滤波操作。
44.根据条款1所述的方法,其中,格式规则进一步指定包括是否指示参考图片参数集的每个图片包括与编解码层视频序列相关联的序列参数集中的单个条带。
45.根据条款1所述的方法,其中,格式规则进一步指定包括指示,指示指示编解码层视频序列中的每个图片是否在与编解码层视频序列相关联的序列参数集中仅具有一个片。
46.根据条款1所述的方法,其中,格式规则进一步指定在与第一图片参数集相关联的每个图片仅具有一个条带的情况下,从第一图片参数集中省略一个或多个条带分割相关的语法元素。
47.根据条款1所述的方法,其中,格式规则进一步指定在与第一图片参数集相关联的每个图片仅具有一个片的情况下,从第一图片参数集中省略一个或多个条带分割相关的语法元素。
48.根据条款1至47中任一项所述的方法,其中,转换包括将视频编码成比特流。
49.根据条款1至47中任一项所述的方法,其中,转换包括从比特流中解码视频。
50.根据条款1至47所述的方法,其中,转换包括从视频生成比特流;并且方法还包括:将比特流存储在非暂时性计算机可读记录介质中。
51.一种视频处理装置,包括被配置为实现条款1至50中任一项或多项所述的方法的处理器。
52.一种存储视频的比特流的方法,包括条款1至50中任一项所述的方法,并且还包括将比特流存储到非暂时性计算机可读记录介质。
53.一种存储程序代码的计算机可读介质,程序代码在被执行时使处理器实现条款1至50中任一项或多项所述的方法。
54.一种存储根据任何上述方法生成的编解码表示或比特流表示的计算机可读介质。
55.一种用于存储比特流表示的视频处理装置,其中,视频处理装置被配置为实现条款1至50中任一项或多项所述的方法。
第三组条款描述了上一章节中公开的技术的某些特征和方面(例如,“示例技术和实施例”章节中的项目1.1.g)。
1.一种视频处理的方法(例如,如图7B所示的方法720),包括:在包括多个图片的视频和视频的比特流之间执行722转换,每个图片包括至少一个条带,其中比特流符合格式规则;其中格式规则指定比特流中的第一标志指示图片的图片标头语法结构是否被包括在图片的条带的条带标头中;并且其中格式规则规定,响应于与图片相关联的图片参数集中的六个标志中的任何一个等于1,第一标志等于0。
2.根据条款1所述的方法,其中,六个标志指示某些编解码语法元素是包含在图片标头语法结构中还是直接包含在条带标头中。
3.根据条款1和2中任一项所述的方法,其中,六个标志包括第二标志,第二标志指示参考图片列表信息是包括在图片标头语法结构中还是直接包括在条带标头中。
4.根据条款1至3中任一项所述的方法,其中,六个标志包括第三标志,第三标志指示去方块滤波器信息是被包括在图片标头语法结构中还是被直接包括在条带标头中。
5.根据条款1至4中任一项所述的方法,其中,六个标志包括第四标志,第四标志指示样点自适应偏移滤波器信息是包括在图片标头语法结构中还是直接包括在条带标头中。
6.根据条款1至5中任一项所述的方法,其中,六个标志包括第五标志,第五标志指示自适应环路滤波器信息是被包括在图片标头语法结构中还是被直接包括在条带标头中。
7.根据条款1至6中任一项所述的方法,其中,六个标志包括第六标志,第六标志指示加权预测信息是包括在图片标头语法结构中还是直接包括在条带标头中。
8.根据条款1至7中任一项所述的方法,其中,六个标志包括第七标志,第七标志指示量化参数增量信息是包括在图片标头语法结构中还是直接包括在条带标头中。
9.根据条款1至8中任一项所述的方法,其中等于0的第一标志指定图片标头语法结构不存在于条带标头中。
10.根据条款1至9中任一项所述的方法,其中,等于1的六个标志中的一个标志指定相关联的信息被包括在图片标头语法结构中。
11.根据条款1至10中任一项所述的方法,其中,转换包括将视频编码成比特流。
12.根据条款1至10中任一项的方法,其中,转换包括从比特流中解码视频。
13.根据条款1至10所述的方法,其中,转换包括从视频生成比特流,并且方法还包括:将比特流存储在非暂时性计算机可读记录介质中。
14.一种视频处理装置,包括被配置为实现条款1至13中任一项或多项所述的方法的处理器。
15.一种存储视频的比特流的方法,包括条款1至13中任一项所述的方法,并且还包括将比特流存储到非暂时性计算机可读记录介质。
16.一种存储程序代码的计算机可读介质,程序代码在被执行时使处理器实现条款1至13中任一项或多项所述的方法。
17.一种存储根据任何上述方法生成的比特流的计算机可读介质。
18.一种用于存储比特流的视频处理装置,其中视频处理装置被配置为实现条款1至13中任一项或多项所述的方法。
第四组条款描述了上一章节中公开的技术的某些特征和方面(例如,“示例技术和实施例”章节中的项目2)。
1.一种视频处理的方法(例如,如图7C所示的方法730),包括:在包括一个或多个图片的视频和视频的比特流之间执行732转换,每个图片包括至少一个条带,其中比特流符合格式规则,其中格式规则指定包括指示第二字段的存在的第一字段,第二字段标识用于基于条件对条带进行编解码的参考图片的最大索引;其中条件可表示为逻辑表达式“A&(B||C)”,其中:
A指示指示参考图片列表信息是否被包括在图片标头语法结构中的第一标志等于1,或者网络抽象层(NAL)单元类型不等于瞬时解码刷新(IDR)类型,或者指示参考图片列表信息是否可能存在于具有IDR NAL单元类型的条带的条带标头中的第二标志等于1,
B指示条带类型等于P或B,并且参考图片列表0中的参考条目的数量大于1,
C指示条带类型等于B,并且参考图片列表1中的参考条目的数量大于1,并且
其中“&”是逻辑“与”运算,而“||”是逻辑“或”运算。
2.根据条款1所述的方法,其中,第一标志对应于rpl_info_in_ph_flag。
3.根据条款1所述的方法,其中,等于1的第一标志指定参考图片列表信息存在于图片标头语法结构中并且不存在于条带标头中,并且等于0的第一标志指定参考图片列表信息不存在于图片标头语法结构中并且参考图片列表信息有机会直接存在于条带标头中。
4.根据条款1所述的方法,其中,第二标志对应于sps_idr_rpl_present_flag。
5.根据条款1所述的方法,其中,第一字段对应于num_ref_idx_active_override_flag。
6.根据条款1所述的方法,其中,第二字段对应于num_ref_idx_active_minus1。
7.根据条款1至6中任一项所述的方法,其中,转换包括将视频编码成比特流。
8.根据条款1至6中任一项所述的方法,其中,转换包括从比特流中解码视频。
9.根据条款1至6中任一项所述的方法,其中,转换包括从视频生成比特流;并且方法还包括:将比特流存储在非暂时性计算机可读记录介质中。
10.一种视频处理装置,包括被配置为实现条款1至9中任一项或多项所述的方法的处理器。
11.一种存储视频的比特流的方法,包括条款1至9中任一项所述的方法,并且还包括将比特流存储到非暂时性计算机可读记录介质。
12.一种存储程序代码的计算机可读介质,程序代码在被执行时使处理器实现条款1至9中任一项或多项所述的方法。
13.一种存储根据任何上述方法生成的比特流的计算机可读介质。
第五组条款描述了上一章节中公开的技术的某些特征和方面(例如,“示例技术和实施例”章节中的项目2和3)。
1.一种视频处理的方法(例如,如图7D所示的方法740),包括:执行视频和视频的比特流之间的转换,其中比特流符合格式规则,并且其中格式规则指定控制与长期参考图片的图片顺序计数相关的一个或多个语法元素是否或如何被包括在比特流中的参考图片列表语法结构中的条件。
2.根据条款1所述的方法,其中,格式规则进一步指定响应于参考图片列表的索引小于包括在序列参数集中的参考图片列表语法结构的数量,一个或多个语法元素被包括在参考图片列表语法结构中。
3.根据条款2所述的方法,其中,格式规则还指定指示一个或多个语法元素是否被包括在参考图片列表语法结构中的标志是否被包括在参考图片列表语法结构中。
4.根据条款3所述的方法,其中,标志对应于ltrp_in_header_flag。
5.根据条款4所述的方法,其中,格式规则还指定当参考图片列表的索引等于序列参数集中的参考图片列表语法结构的数量时,省略ltrp_in_header_flag被包含在参考图片列表语法结构中。
6.根据条款5所述的方法,其中,格式规则还指定当参考图片列表的索引等于序列参数集中的参考图片列表语法结构的数量时,ltrp_in_header_flag的值被推断为等于1。
7.根据条款1所述的方法,其中,格式规则还指定响应于参考图片列表语法结构是否包括在比特流的序列参数集中,一个或多个语法元素包括在参考图片列表语法结构中。
8.根据条款1所述的方法,其中,格式规则进一步指定在参考图片列表语法结构中省略一个或多个语法元素,并且对于参考图片列表语法结构和另一参考图片列表语法结构中的每一个包括一个或多个语法元素。
9.根据条款1所述的方法,其中,格式规则进一步指定在参考图片列表语法结构中省略一个或多个语法元素,并且针对图片列表的每个参考包括一个或多个语法元素。
10.根据条款1所述的方法,其中,格式规则进一步指定在参考图片列表语法结构中省略一个或多个语法元素,并且对于参考图片列表语法结构和另一参考图片列表语法结构包括一个或多个语法元素。
11.一种视频处理的方法(例如,如图7D所示的方法740),包括:执行742视频和视频的比特流之间的转换,其中比特流符合格式规则,其中,格式规则指定与参考图片列表中的参考图片相关的语法元素是否包括在参考图片列表语法结构中。
12.根据条款11所述的方法,其中,参考图片列表是参考图片列表1。
13.根据条款11所述的方法,其中,格式规则取决于变量X是否等于特定值,其中X取决于视频区域的条带类型。
14.根据条款11的方法,其中,特定值等于1或2。
15.根据上述条款中任一项所述的方法,其中,语法元素包括指示在序列参数集中存在参考图片列表的标志。
16.根据上述条款中任一项所述的方法,其中,语法元素指示参考图片列表的索引。
17.根据上述条款中任一项所述的方法,其中,语法元素指示长期参考图片的图片顺序计数的最低有效位的值。
18.根据上述条款中任一项所述的方法,其中,语法元素指示当前图片和长期参考图片的图片顺序计数的最高有效位之间的差是否包括在比特流中。
19.根据上述条款中任一项所述的方法,其中,语法元素指示当前图片和长期参考图片的图片顺序计数的最高有效位之间的差是否包括在比特流中。
20.根据条款1至19中任一项所述的方法,其中,转换包括将视频编码成比特流。
21.根据条款1至19中任一项所述的方法,其中,转换包括从比特流中解码视频。
22.根据条款1至19所述的方法,其中,转换包括从视频生成比特流;并且方法还包括:将比特流存储在非暂时性计算机可读记录介质中。
23.一种视频处理装置,包括被配置为实现条款1至22中任一项或多项所述的方法的处理器。
24.一种存储视频的比特流的方法,包括条款1至22中任一项所述的方法,并且还包括将比特流存储到非暂时性计算机可读记录介质。
25.一种存储程序代码的计算机可读介质,程序代码在被执行时使处理器实现条款1至22中任一项或多项所述的方法。
26.一种存储根据任何上述方法生成的比特流的计算机可读介质。
27.一种用于存储比特流的视频处理装置,其中,视频处理装置被配置为实现条款1至22中任一项或多项所述的方法。
在本文档中,术语“视频处理”可指视频编码、视频解码、视频压缩或视频解压缩。例如,在从视频的像素表示到对应的比特流表示的转换期间,可以应用视频压缩算法,反之亦然。如语法所定义,当前视频块的比特流表示可(例如)对应于共位或散布在比特流内不同位置的比特。例如,可以根据变换和编解码的误差残差值并且还使用头中的比特和比特流中的其他字段,对宏块进行编码。此外,在转换期间,解码器可以基于该确定,在知道一些字段可能存在或不存在的情况下解析比特流,如以上解决方案中所述。类似地,编码器可确定包括或不包括某些语法字段,并通过从编解码表示中包括或排除语法字段来相应地生成编解码表示。
本文档中所述的公开和其他方案、示例、实施例、模块和功能操作可以被实现在数字电子电路中或者在计算机软件、固件或硬件中,含有本文档中所公开的结构以及其结构的等同物,或者它们中的一个或多个的组合。所公开的和其他实施例可以被实现为计算机可读介质上所编码的一个或多个计算机程序产品,例如一个或多个计算机程序指令模块,用于由数据处理装置执行或者控制数据处理装置的操作。该计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储器设备、影响机器可读可传播信号的复合物,或其一个或多个的组合。术语“数据处理装置”涵盖用于处理数据的所有装置、设备和机器,包括例如可编程处理器、计算机或多个处理器或计算机。除了硬件之外,该装置还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、或者它们中的一个或多个的组合的代码。传播信号是人工生成的信号,例如,机器生成的电、光或电磁信号,其被生成来编码信息以传输到合适的接收器装置。
计算机程序(也称为程序、软件、软件应用、脚本或代码)可以用任何形式的编程语言编写,包括编译或解释语言,并且可以以任何形式来部署计算机程序,包括独立程序或适合在计算环境中使用的模块、组件、子例程或其它单元。计算机程序不必须对应于文件系统中的文件。程序可以存储在保存其他程序或数据的文件的部分中(例如,在标记语言文档中存储的一个或多个脚本)、在专用于所讨论的程序的单个文件中、或在多个协同文件中(例如存储一个或多个模块、子程序或代码部分的文件)。计算机程序可以部署为在一个计算机上或者在多个计算机上执行,该多个计算机位于一个站点处或者分布跨多个站点并由通信网络互连。
可以由执行一个或多个计算机程序的一个或多个可编程处理器来进行在本文档中所描述的过程和逻辑流,以通过在输入数据上操作并且生成输出来进行功能。也可以由专用逻辑电路(例如,现场可编程门阵列(FPGA)或专用集成电路(ASIC))进行过程和逻辑流,并且装置可以实现为专用逻辑电路(例如FPGA或ASIC)。
适合于计算机程序的执行的处理器包括例如通用和专用微处理器两者,以及任何类型的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或者该两者接收指令和数据。计算机的基本元件是用于进行指令的处理器和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个海量存储设备(例如磁、磁光盘或光盘),或者可操作地耦合以从海量存储设备(例如磁、磁光盘或光盘)接收数据或者将数据传输到海量存储设备(例如磁、磁光盘或光盘),或者以上两者。但是,计算机不必具有此类设备。适用于存储计算机程序指令和数据的计算机可读介质含有所有形式的非易失性存储器、介质和存储器设备,含有例如半导体存储器设备(例如EPROM、EEPROM和闪速存储器设备);磁盘(例如内部硬盘或可移动磁盘);磁光盘;和CD ROM和DVD-ROM磁盘。处理器和存储器可以由专用逻辑电路补充,或者合并在专用逻辑电路中。
虽然本专利文档含有许多细节,但这些细节不应被解释为对任何主题或可要求保护的范围的限制,而是作为指定于特定技术的特定实施例的特征的描述。在本专利文档中,在单独的实施例的上下文中描述的某些特征也可以在单个实施例中组合实现。相反地,在单个实施例的上下文中所描述的各种特征还可以分别在多个实施例中来实现或者以各种合适的子组合来实现。此外,尽管特征可以如上文描述为以某些组合起作用并且甚至最初同样地要求,但是在某些情况下来自所要求保护的组合的一个或多个特征可以从组合中去除,并且所要求保护的组合可以针对子组合或子组合的变化。
类似地,尽管在附图中以特定顺序描绘了操作,但这不应当理解为要求按所示的特定次序或顺序次序进行此类操作或者进行所有示出的操作,以实现期望的结果。此外,在本专利文档中描述的实施例中的各种系统组件的分开不应被理解为在所有实施例中都要求这种分开。
仅描述了几个实现方式和示例,并且可以基于本专利文档中描述和示出的内容来作出其它实现方式、增强和变型。

Claims (18)

1.一种视频处理的方法,包括:
在包括多个图片的视频和所述视频的比特流之间执行转换,其中,每个所述图片包括至少一个条带,
其中,所述比特流符合格式规则;
其中,所述格式规则指定所述比特流中的第一标志指示图片的图片标头语法结构是否被包括在所述图片的条带的条带标头中;并且
其中,所述格式规则规定,响应于与所述图片相关联的图片参数集中的六个标志中的任何一个等于1,所述第一标志等于0。
2.根据权利要求1所述的方法,其中,所述六个标志指示某些编解码语法元素是包含在所述图片标头语法结构中还是直接包含在所述条带标头中。
3.根据权利要求1和2中任一项所述的方法,其中,所述六个标志包括第二标志,所述第二标志指示参考图片列表信息是包括在所述图片标头语法结构中还是直接包括在所述条带标头中。
4.根据权利要求1至3中任一项所述的方法,其中,所述六个标志包括第三标志,所述第三标志指示去方块滤波器信息是被包括在所述图片标头语法结构中还是被直接包括在所述条带标头中。
5.根据权利要求1至4中任一项所述的方法,其中,所述六个标志包括第四标志,所述第四标志指示样点自适应偏移滤波器信息是包括在所述图片标头语法结构中还是直接包括在所述条带标头中。
6.根据权利要求1至5中任一项所述的方法,其中,所述六个标志包括第五标志,所述第五标志指示自适应环路滤波器信息是被包括在所述图片标头语法结构中还是被直接包括在所述条带标头中。
7.根据权利要求1至6中任一项所述的方法,其中,所述六个标志包括第六标志,所述第六标志指示加权预测信息是包括在所述图片标头语法结构中还是直接包括在所述条带标头中。
8.根据权利要求1至7中任一项所述的方法,其中,所述六个标志包括第七标志,所述第七标志指示量化参数增量信息是包括在所述图片标头语法结构中还是直接包括在所述条带标头中。
9.根据权利要求1至8中任一项所述的方法,其中,所述第一标志等于0指定所述图片标头语法结构不存在于所述条带标头中。
10.根据权利要求1至9中任一项所述的方法,其中,所述六个标志中的一个标志等于1指定相关信息被包括在所述图片标头语法结构中。
11.根据权利要求1至10中任一项所述的方法,其中,所述转换包括将所述视频编码成所述比特流。
12.根据权利要求1至10中任一项所述的方法,其中,所述转换包括从所述比特流中解码所述视频。
13.根据权利要求1至10所述的方法,其中,所述转换包括从所述视频生成所述比特流,并且所述方法还包括:
将所述比特流存储在非暂时性计算机可读记录介质中。
14.一种视频处理装置,包括被配置为实现权利要求1至13中任一项或多项所述的方法的处理器。
15.一种存储视频的比特流的方法,包括权利要求1至13中任一项所述的方法,并且还包括将所述比特流存储到非暂时性计算机可读记录介质。
16.一种存储程序代码的计算机可读介质,所述程序代码在被执行时使处理器实现权利要求1至13中任一项或多项所述的方法。
17.一种存储根据任何上述方法生成的比特流的计算机可读介质。
18.一种用于存储比特流的视频处理装置,其中所述视频处理装置被配置为实现权利要求1至13中任一项或多项所述的方法。
CN202180017712.2A 2020-02-29 2021-02-24 视频比特流的图片标头和条带标头之间的相互作用 Pending CN115398914A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN2020077331 2020-02-29
CNPCT/CN2020/077331 2020-02-29
PCT/CN2021/077561 WO2021169970A1 (en) 2020-02-29 2021-02-24 Interplay between picture header and slice header of a video bitstream

Publications (1)

Publication Number Publication Date
CN115398914A true CN115398914A (zh) 2022-11-25

Family

ID=77490717

Family Applications (4)

Application Number Title Priority Date Filing Date
CN202180017825.2A Pending CN115398915A (zh) 2020-02-29 2021-02-24 视频比特流中的参考图像信息信令
CN202180017696.7A Pending CN115299062A (zh) 2020-02-29 2021-02-24 图片标头中的语法元素的条件信令
CN202180017712.2A Pending CN115398914A (zh) 2020-02-29 2021-02-24 视频比特流的图片标头和条带标头之间的相互作用
CN202180017443.XA Pending CN115299061A (zh) 2020-02-29 2021-02-24 用于参考图片指示的语法元素的信令

Family Applications Before (2)

Application Number Title Priority Date Filing Date
CN202180017825.2A Pending CN115398915A (zh) 2020-02-29 2021-02-24 视频比特流中的参考图像信息信令
CN202180017696.7A Pending CN115299062A (zh) 2020-02-29 2021-02-24 图片标头中的语法元素的条件信令

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202180017443.XA Pending CN115299061A (zh) 2020-02-29 2021-02-24 用于参考图片指示的语法元素的信令

Country Status (9)

Country Link
US (4) US11805280B2 (zh)
EP (3) EP4307672A3 (zh)
JP (2) JP7451742B2 (zh)
KR (2) KR20220143840A (zh)
CN (4) CN115398915A (zh)
AR (4) AR121126A1 (zh)
BR (1) BR112022017289A2 (zh)
MX (1) MX2022010202A (zh)
WO (4) WO2021169969A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114697663B (zh) * 2018-08-17 2024-01-30 华为技术有限公司 对编码视频位流进行解码的方法,解码设备以及译码系统
CN115211108A (zh) 2020-02-14 2022-10-18 抖音视界有限公司 环路滤波和视频片之间的相互作用
AR121126A1 (es) * 2020-02-29 2022-04-20 Beijing Bytedance Network Tech Co Ltd Señalización de elementos de sintaxis para indicación de imagen de referencia
GB2592957A (en) * 2020-03-11 2021-09-15 Canon Kk High level syntax for video coding and decoding
GB2593222A (en) 2020-03-20 2021-09-22 Canon Kk High level syntax for video coding and decoding
BR112022019661A2 (pt) * 2020-03-31 2022-11-29 Sharp Kk Aparelho de decodificação de vídeo, aparelho de codificação de vídeo, método de decodificação de vídeo e método de codificação de vídeo

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7724818B2 (en) * 2003-04-30 2010-05-25 Nokia Corporation Method for coding sequences of pictures
US9560367B2 (en) * 2004-09-03 2017-01-31 Nokia Technologies Oy Parameter set and picture header in video coding
KR101232780B1 (ko) * 2006-01-12 2013-09-03 (주)휴맥스 통합 코덱 장치 및 방법
PL2559166T3 (pl) * 2010-04-13 2018-04-30 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Koder i dekoder dzielący interwał prawdopodobieństwa
US9001883B2 (en) * 2011-02-16 2015-04-07 Mediatek Inc Method and apparatus for slice common information sharing
CN107105302B (zh) * 2011-08-25 2019-12-10 太阳专利托管公司 视频编码装置及视频编码方法
US9106927B2 (en) * 2011-09-23 2015-08-11 Qualcomm Incorporated Video coding with subsets of a reference picture set
US9807386B2 (en) * 2011-09-29 2017-10-31 Telefonaktiebolaget Lm Ericsson (Publ) Reference picture list handling
ES2898887T3 (es) * 2011-11-08 2022-03-09 Nokia Technologies Oy Manejo de imágenes de referencia
US8693793B2 (en) * 2012-01-19 2014-04-08 Sharp Laboratories Of America, Inc. Reducing reference picture set signal overhead on an electronic device
WO2013107939A1 (en) * 2012-01-20 2013-07-25 Nokia Corporation Method for video coding and an apparatus, a computer-program product, a system, and a module for the same
US9762903B2 (en) * 2012-06-01 2017-09-12 Qualcomm Incorporated External pictures in video coding
EP3079363B1 (en) * 2012-06-29 2017-09-27 Telefonaktiebolaget LM Ericsson (publ) Encoding and decoding video sequences comprising reference picture sets
US9584825B2 (en) * 2012-09-27 2017-02-28 Qualcomm Incorporated Long-term reference picture signaling in video coding
RU2651201C2 (ru) * 2012-11-30 2018-04-18 Сони Корпорейшн Устройство обработки изображения и способ
JP2015005939A (ja) * 2013-06-24 2015-01-08 ソニー株式会社 画像処理装置および方法、プログラム、並びに撮像装置
KR101851479B1 (ko) * 2014-01-03 2018-04-23 노키아 테크놀로지스 오와이 파라미터 세트 코딩
CA2935303C (en) * 2014-01-03 2023-04-11 Arris Enterprises Llc Conditionally parsed extension syntax for hevc extension processing
WO2016204479A1 (ko) * 2015-06-16 2016-12-22 엘지전자(주) 영상의 부호화/복호화 방법 및 이를 위한 장치
TWI661720B (zh) * 2016-10-05 2019-06-01 日商夏普股份有限公司 用於傳訊視訊參數之系統及方法
KR20180042098A (ko) * 2016-10-17 2018-04-25 에스케이텔레콤 주식회사 영상 부호화 또는 복호화하기 위한 장치 및 방법
US20180109810A1 (en) * 2016-10-17 2018-04-19 Mediatek Inc. Method and Apparatus for Reference Picture Generation and Management in 3D Video Compression
EP3854099A4 (en) * 2018-09-21 2022-06-29 Sharp Kabushiki Kaisha Systems and methods for signaling reference pictures in video coding
WO2021050226A1 (en) * 2019-09-12 2021-03-18 Alibaba Group Holding Limited Method and apparatus for encoding or decoding video
AU2020352903A1 (en) 2019-09-23 2022-04-14 Huawei Technologies Co., Ltd. Indication of one slice per subpicture in subpicture-based video coding
WO2021079948A1 (en) 2019-10-25 2021-04-29 Sharp Kabushiki Kaisha Systems and methods for signaling picture information in video coding
US11432016B2 (en) * 2019-12-05 2022-08-30 Hfi Innovation Inc. Methods and apparatuses of syntax signaling constraint for cross-component adaptive loop filter in video coding system
WO2021118261A1 (ko) * 2019-12-12 2021-06-17 엘지전자 주식회사 영상 정보를 시그널링하는 방법 및 장치
US20230018055A1 (en) * 2019-12-12 2023-01-19 Lg Electronics Inc. Video or image coding employing adaptive loop filter
WO2021141451A1 (ko) * 2020-01-10 2021-07-15 삼성전자 주식회사 양자화 파라미터를 획득하기 위한 비디오 복호화 방법 및 장치, 양자화 파라미터를 전송하기 위한 비디오 부호화 방법 및 장치
AU2021201607A1 (en) 2020-01-12 2022-08-11 Huawei Technologies Co., Ltd. Method and apparatus of harmonizing weighted prediction
MX2022008664A (es) 2020-01-14 2022-10-20 Lg Electronics Inc Método y dispositivo de codificación/decodificación de imagen para señalar información relacionada con sub imagen y encabezado de imagen, y método para transmitir flujo de bits.
CN115996296A (zh) * 2020-01-14 2023-04-21 华为技术有限公司 指示融合模式候选数量的方法和装置
CN115244926A (zh) 2020-01-14 2022-10-25 抖音视界有限公司 视频编解码中的量化参数的覆写
WO2021145728A1 (ko) 2020-01-15 2021-07-22 엘지전자 주식회사 인루프 필터링 기반 영상 코딩 장치 및 방법
WO2021153475A1 (en) * 2020-01-28 2021-08-05 Sharp Kabushiki Kaisha Systems and methods for signaling picture information in a slice header in video coding
CN115211108A (zh) 2020-02-14 2022-10-18 抖音视界有限公司 环路滤波和视频片之间的相互作用
US11303897B2 (en) * 2020-02-25 2022-04-12 Tencent America LLC Method and apparatus for signaling of chroma quantization parameters
AR121126A1 (es) 2020-02-29 2022-04-20 Beijing Bytedance Network Tech Co Ltd Señalización de elementos de sintaxis para indicación de imagen de referencia
WO2021195588A1 (en) * 2020-03-26 2021-09-30 Alibaba Group Holding Limited Methods and apparatuses for signaling picture header
US11638036B2 (en) * 2020-04-03 2023-04-25 Qualcomm Incorporated High-level constraints for transform skip blocks in video coding
US11706428B2 (en) * 2020-04-06 2023-07-18 Tencent America LLC Method for signaling picture header in coded video stream
US11563963B2 (en) * 2020-05-19 2023-01-24 Qualcomm Incorporated Determining whether to code picture header data of pictures of video data in slice headers
US11659207B2 (en) 2020-06-08 2023-05-23 Qualcomm Incorporated General constraints of syntax elements for video coding
US20220321919A1 (en) * 2021-03-23 2022-10-06 Sharp Kabushiki Kaisha Systems and methods for signaling neural network-based in-loop filter parameter information in video coding

Also Published As

Publication number Publication date
CN115299061A (zh) 2022-11-04
EP4307672A2 (en) 2024-01-17
WO2021169969A1 (en) 2021-09-02
AR121126A1 (es) 2022-04-20
WO2021169971A1 (en) 2021-09-02
US20230088230A1 (en) 2023-03-23
JP7451742B2 (ja) 2024-03-18
AR121127A1 (es) 2022-04-20
EP4097978A4 (en) 2023-05-10
JP2023515184A (ja) 2023-04-12
US20240107067A1 (en) 2024-03-28
WO2021169972A1 (en) 2021-09-02
EP4097977A4 (en) 2023-05-03
KR20220143850A (ko) 2022-10-25
AR121124A1 (es) 2022-04-20
WO2021169970A1 (en) 2021-09-02
AR121125A1 (es) 2022-04-20
MX2022010202A (es) 2022-09-19
EP4097978A1 (en) 2022-12-07
US11805280B2 (en) 2023-10-31
CN115398915A (zh) 2022-11-25
JP7443548B2 (ja) 2024-03-05
JP2023515186A (ja) 2023-04-12
CN115299062A (zh) 2022-11-04
US20230008778A1 (en) 2023-01-12
BR112022017289A2 (pt) 2024-02-06
US20230071429A1 (en) 2023-03-09
KR20220143840A (ko) 2022-10-25
EP4097977A1 (en) 2022-12-07
EP4307672A3 (en) 2024-03-27

Similar Documents

Publication Publication Date Title
JP2023513707A (ja) 映像ビットストリームにおける一般的な制約フラグの使用
WO2021169972A1 (en) Reference picture information signaling in a video bitstream
WO2021197447A1 (en) Controlling quantization parameter delta signaling
CN115299065A (zh) 基于变换跳过的残差编解码
CN115136606A (zh) 参考图片列表的权重的信令通知
KR102629799B1 (ko) 상위 레벨 신택스에서의 인터 예측에 대한 시그널링
CN115486082A (zh) 视频编解码中的虚拟边界
KR20230016655A (ko) 로컬 이중 트리 모드 유형 정의가 있는 팔레트 모드
CN115552802A (zh) 加权预测信息的条件信令通知
CN115486064A (zh) 标头语法元素和自适应参数集的使用
CN115918085A (zh) 颜色分量的信令通知
CN115428457A (zh) 基于颜色格式的自适应参数集的约束

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination