Activation of reference picture sampling in video image coding
Patent Information
- Application Number
- JP2024200903
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2020-02-14
- Filing Date
- 2024-11-18
- Publication Date
- 2025-03-05
Smart Images

Figure 2025028903000001_ABST
Abstract
Description
[Technical Field]
[0001] CROSS-REFERENCE TO RELATED APPLICATIONS Under the applicable patent laws and / or regulations under the Paris Convention, this application Priority and Restrictions of International Patent Application No. PCT / CN2020 / 075194 filed on February 14, 2020 The purpose of the application is to timely assert the rights and benefits of the application for all purposes under the law. The entire disclosure of which is incorporated by reference as part of the disclosure of this specification.
[0002] This patent specification relates to image and video encoding and decoding. [Background technology]
[0003] Digital video is the largest bandwidth used on the Internet and other digital communication networks. The number of connected users who can receive and display video is used. As the number of devices increases, the bandwidth demands for digital video usage will continue to grow. is predicted. Summary of the Invention
[0004] This specification describes a method for converting between coding representation of an image and pixel values of the image. , discloses techniques that can be used by video encoders and decoders.
[0005] In one exemplary embodiment, a video processing method is disclosed, the method comprising: This includes converting between a video picture containing the bitstream representation of the video and a video picture containing the bitstream representation of the video. The video stream is a video slice whose slice type is specified in the picture header of this video picture. Determine how to inherit specific information from the slice header of this video slice. Comply with the formatting rules that govern
[0006] In another exemplary aspect, a video processing method is disclosed, the method comprising: This includes converting between video pictures containing this bitstream representation and a bitstream representation of the video. The stream is such that the slice type of a video slice is the first syntax in the video slice header. The first syntax element is the time Collocated pictures used for inter-motion vector prediction Specifies the reference index of the
[0007] In another exemplary aspect, a video processing method is disclosed, the method comprising: This includes converting between video pictures containing this bitstream representation and a bitstream representation of the video. The stream has a video slice of type P, and temporal motion vector prediction is If measurement is enabled, the reference picture in the co-located reference picture list This specifies disabling the use of Reference Picture Resampling (RPR) for The reference picture is a picture used for temporal motion vector prediction. The image slice is indicated by a reference index of the co-located picture.
[0008] In another exemplary aspect, a video processing method is disclosed, the method comprising: This includes converting between video pictures containing this bitstream representation and a bitstream representation of the video. The stream is such that the syntax elements in the video slice header indicate that this video slice is a reference picture. If this video slice is not co-located with list 0, The type conforms to formatting rules that prescribe excluding type P.
[0009] In another exemplary aspect, a video processing method is disclosed. The method comprises: Converts between a video containing a picture and the bitstream of this video. This bitstream includes a number of sub-pictures in response to the number of sub-pictures in the video picture. to cross the boundary of one subpicture in the coded layer video sequence. A format that specifies the optional inclusion of a first syntax element that indicates whether an operation is to be performed Comply with the rules.
[0010] In another exemplary aspect, a video processing method is disclosed. The method comprises: Converts between a video containing a picture and the bitstream of this video. This bitstream includes subpictures of video pictures in the bitstream. Specifies that the number of structures is constrained by a constraint flag in the bitstream. Follow formatting rules.
[0011] In another exemplary aspect, a video processing method is disclosed. The method comprises: Converts between a video containing a picture and the bitstream of this video. This bitstream is divided into subpictures according to the number of slices in one subpicture. The format specifies that the method for signaling the syntax element indicating the width of a slice is determined by the According to the matte rule, the width of this slice is specified as a number of tile columns.
[0012] In another exemplary aspect, a video processing method is disclosed, the method comprising: The constraint flags determine whether each of one or more subpictures in a slice contains a single slice. One or more subpictures are displayed according to formatting rules that specify that the and converting the video containing the video picture to and from a bitstream of the video. .
[0013] In another exemplary aspect, a video processing method is disclosed, the method comprising: This includes converting between a video containing a picture and a bitstream of this video. At least one of the bitstreams contains one or more subpictures. During the subpicture sub-bitstream extraction process, one or more of the target subpictures To determine the output sub-bitstream, each target bitstream across different video pictures is A format that specifies that subpictures use the same subpicture index Comply with regulations.
[0014] In another exemplary aspect, a video processing method is disclosed, the method comprising: Extract one or more target sub-picture sub-bitstreams from the bitstream of the video containing the sub-picture determining the output sub-bitstreams by extracting the video bits. At least one of the images contains one or more sub-pictures, and the output sub-bitstream A stream is a sequence of one or more subpictures of interest that are included in a single output sub-bitstream. The image conforms to formatting rules that stipulate that the image is represented as a subpicture of the image.
[0015] In another exemplary aspect, a video processing method is disclosed. The method includes: This includes converting between video containing IDR (Interlaced Digital Reconstruction) pictures and the bitstream of this video. This bitstream contains the associated reference picture list in the slice header of the IDR picture. conforms to formatting rules that stipulate that one or more of the following syntax elements are present:
[0016] In another exemplary aspect, a method for image processing is disclosed. Converts between a video containing black and chrominance video blocks and a bitstream of this video. The luma video block is partitioned according to the luma partition tree, and the chroma video block is is split according to the chroma splitting tree. This bitstream shows the luma splitting tree. The block split information includes luminance block split information indicating the luminance block split tree and chroma block split information indicating the chroma split tree. This bitstream is structured so that the chroma block division information and the luminance block division information are different. comply with regulations that stipulate that
[0017] In another exemplary aspect, a video processing method is disclosed. The method comprises: Converts between a video containing a picture and the bitstream of this video. This bitstream includes the constraint flags of the syntax elements that contain general constraint information. conform to formatting rules that specify the constraints on one or more syntactic constructs based on
[0018] In another exemplary aspect, a video processing method is disclosed, the method comprising: This includes converting between video pictures containing this bitstream representation and a bitstream representation of the video. The stream is configured so that the slice type of the video slice is The purpose of this is to determine how to inherit this specific information into the slice header of this video slice. Comply with the prescribed formatting rules.
[0019] In another exemplary aspect, a method for processing video is disclosed, the method comprising: and converting between video units in the video coding representation and the video coding representation, The rendering representation follows syntax rules that are based on the first indication at the video picture level. The data and the second indicator at the video domain level are used to predict the temporal motion vector prediction code during the conversion. This rule specifies that the coding expression should indicate the use of a coding tool. The conditions for omitting the first and / or second labels are specified.
[0020] In another exemplary aspect, a method for processing video is disclosed, the method comprising: and converting between video units in the video coding representation and the video coding representation, The loading representation follows a syntax rule that is based on the information in the video region-level header. This specifies that the above should be inferred as information in the video unit level header.
[0021] In another exemplary aspect, a video processing method is disclosed. The method comprises: A video unit in the video domain of a video comprising a number of pictures organized as a sequence and converting the coded representation of the video into the coded representation of the video. One or more fields indicate the number of sub-pictures in this video unit.
[0022] In another exemplary aspect, a video processing method is disclosed. The method comprises: A video unit in the video domain of a video comprising a number of pictures organized as a sequence and a coding representation of the video, the coding representation comprising: The value of the second field, which indicates the number of subpictures in the video unit, is used for this conversion. The second field indicates the applicability of the cross-subpicture coding tool. It conforms to formatting rules that dictate whether the
[0023] In another exemplary aspect, a video processing method is disclosed. The method comprises: A video unit in the video domain of a video comprising a number of pictures organized as a sequence and a coding representation of the video, the coding representation comprising: The number of subpictures per video unit is a syntax element in this coding representation. Conform to the formatting rules that govern the value of
[0024] In another exemplary aspect, a video processing method is disclosed. The method comprises: A video unit in the video domain of a video comprising a number of pictures organized as a sequence and a coding representation of the video, the coding representation comprising: The value of the field indicates whether a single video slice occurs within a video unit. Format rules that specify the coding characteristics of a rectangular slice of this video Complies with.
[0025] In another exemplary aspect, a video processing method is disclosed. The method comprises: A video unit in the video domain of a video comprising a number of pictures organized as a sequence and a coding representation of the video, the coding representation being Extraction across different pictures in a coding representation of a video sequence per layer of a video signal - Patents.com The subpictures in a sub-picture file conform to the syntax rule that all subpictures in a sub-picture file have the same subpicture index.
[0026] In another exemplary aspect, a video processing method is disclosed. The method comprises: A video unit in the video domain of a video comprising a number of pictures organized as a sequence and a coding representation of the video, the coding representation comprising: The extracted sub-bitstream for the sub-picture sub-bitstream is a single sub-bitstream. The image conforms to the syntax rules of the picture format.
[0027] In another exemplary aspect, a video processing method is disclosed. The method comprises: A video unit in the video domain of a video comprising a number of pictures organized as a sequence and a coding representation of the video, the coding representation comprising: 1 that controls the occurrence of one or more syntactic elements in the syntactic structure of this coding representation. Conforms to formatting rules that stipulate the inclusion of one or more constraint flags.
[0028] In yet another exemplary aspect, a video encoder apparatus is disclosed. The reader comprises a processing unit configured to implement the above-described method.
[0029] In yet another exemplary aspect, a video decoder apparatus is disclosed. comprises a processing device configured to implement the above-described method.
[0030] In yet another exemplary aspect, a computer-readable medium having code stored thereon is disclosed. This code may be in the form of processor executable code to perform one of the methods described herein. To carry out.
[0031] These and other features are described throughout this document. [Brief explanation of the drawings]
[0032] [Figure 1] FIG. 1 is a block diagram illustrating an example of a video processing system. [Figure 2] FIG. 1 is a block diagram of a video processing device. [Figure 3] 1 is a flowchart illustrating an example of a video processing method. [Figure 4] 1 is a block diagram illustrating a video coding system according to some embodiments of the present disclosure. [Figure 5] 1 is a block diagram illustrating an encoder according to some embodiments of the present invention. [Figure 6] FIG. 2 is a block diagram illustrating a decoder according to some embodiments of the present invention. [Figure 7] 1 is a flowchart illustrating a video processing method according to the present technology. [Figure 8] 10 is a flowchart illustrating another video processing method according to the present technology. [Figure 9] 10 is a flowchart illustrating another video processing method according to the present technology. [Figure 10] 10 is a flowchart illustrating another video processing method according to the present technology. [Figure 11] 10 is a flowchart illustrating another video processing method according to the present technology. [Figure 12] 10 is a flowchart illustrating another video processing method according to the present technology. [Figure 13] 10 is a flowchart illustrating another video processing method according to the present technology. [Figure 14] 10 is a flowchart illustrating another video processing method according to the present technology. [Figure 15] 10 is a flowchart illustrating another video processing method according to the present technology. [Figure 16] 10 is a flowchart illustrating another video processing method according to the present technology. [Figure 17] 10 is a flowchart illustrating another video processing method according to the present technology. [Figure 18] 10 is a flowchart illustrating another video processing method according to the present technology. [Figure 19] 10 is a flowchart illustrating yet another video processing method according to the present technology. DETAILED DESCRIPTION OF THE INVENTION
[0033] This specification uses section headings to facilitate understanding, and the technology and each The applicability of an embodiment described in a section is not limited to that section alone. The term .266 is used in some descriptions only for ease of understanding and disclosure. It is not intended to limit the scope of the technology described herein. The techniques disclosed are applicable to other video codec protocols and designs. Some techniques are to insert new text (highlighting) or to By removing (strikethrough) the text, you can identify the current version of the VVC standard. This section explains how the above can be modified using an example.
[0034] This specification relates to video coding techniques. High Level Syntax (HLS) and related technologies in existing video encoding systems such as HEVC. It may be applied to any video coding standard, or may be applied to any standard (Versatile Video Coding). The present invention may be applied to determine future video coding standards. It can also be applied to video codecs.
[0035] Video coding standards are primarily developed through the well-known ITU-T and ISO / IEC standards. ITU-T created H.261 and H.263, and ISO / IEC developed MP EG-1 and MPEG-4 Visual were created, and both organizations are H.262 / MPEG-2Vid eo and H.264 / MPEG-4AVC (Advanced Video Coding ) and co-created the H.265 / HEVC standard. is based on a hybrid video coding structure that utilizes temporal prediction and transform coding. In 2015, in order to explore future video coding technologies beyond HEVC, CEG and MPEG jointly launched JVET (Joint Video Exploration Since then, many new methods have been adopted by JVET, Reference software called EM (Joint Exploration Mode) JVET meets quarterly and new coding standards are being implemented for HEV The aim is to reduce the bit rate by 50% compared to C. At the JVET meeting in April 2018 In this regard, the new video coding standard is called "Versatile Video Coding". At that time, the first edition of the VVC test was officially named "VVC (Video Coding)". The VVC standardization effort is ongoing. At every JVET meeting, new coding techniques were adopted for the VVC standard. do.
[0036] Definition example
[0037] The following definitions are used herein:
[0038] Access Unit (AU): A set of PUs containing coded pictures belonging to different layers and associated together for output from the DPB.
[0039] Adaptive Loop Filter (ALF): A filtering process applied as part of the decoding process and controlled by parameters communicated in the APS.
[0040] AC transform coefficient: Any transform coefficient whose frequency index in at least one of the two dimensions is non-zero.
[0041] ALF_APS: APS that controls ALF processing.
[0042] Adaptive Parameter Set (APS): A syntax element found in a slice header, with zero or more A syntax element containing syntax elements that apply when the slice is greater than or equal to 0, determined by structure.
[0043] Associated IRAP picture (for a particular picture). Previous IRAP in decoding order. The picture (if any) has the same value nuh_layer_id as the specified picture. do.
[0044] Associated non-VCL NAL unit: VCL NAL unit is non-VCL NA VCL NAL unit if it is the associated VCL NAL unit of the L unit Non-VCL NAL units for the bit, if any.
[0045] Associated VCL NAL unit: nal_unit_type is EOS_NU T,EOB_NUT,SUFFIX_APS_NUT,SUFFIX_SEI_NUT, Equal to FD_NUT,RSV_NVCL_27, or UNSPEC_30..UNS It precedes in decoding order a non-VCL NAL unit that is within the PEC_31 range. The VCL NAL unit, otherwise the next VCL NAL unit in decoding order.
[0046] Binary: A sequence of two values, each consisting of one bit.
[0047] Binarization: A set of binary columns for all possible values of a syntax element.
[0048] Binarization: A process that uniquely maps all possible values of a syntax element to a set of binary sequences. Reason.
[0049] Binary division: Dividing a rectangular M × N sample block into two blocks. and when divided vertically, it gives a first (M / 2) × N block and a second (M / 2) ×N blocks are obtained, and dividing horizontally gives the first M×(N / 2) blocks and the You get M×(N / 2) blocks of 2.
[0050] Binary string: An intermediate binary representation of the value of a syntax element from the binarization of the syntax element.
[0051] Bidirectionally predictive (B) slice: has up to two motion vectors and reference indices Each block is decoded using intra or inter prediction. The slice to predict the value of.
[0052] Bitstream: A stream of data that forms one or more coded video sequences (CVS). A NAL unit stream or byte stream that forms a representation of a sequence of AUs A single bit sequence of the form
[0053] Block: An M x N (M columns x N rows) array of samples, or an M x N array of transform coefficients. column
[0054] Block vector: The coordinates of the current coding block to the same block as the predicted block. The offset to the coordinates of the predicted block in the picture is used for IBC prediction. A two-dimensional vector.
[0055] Byte: When written or read as a sequence of bit values, the leftmost An 8-bit bit string in which the first bit represents the most significant bit and the rightmost bit represents the least significant bit. .
[0056] Byte-aligned: A position in the bitstream is determined by the If the position of the first bit in the Or a byte or syntax element is byte-aligned where it appears in the bitstream. A block is said to be byte-aligned if it is aligned to the specified location.
[0057] Byte stream: NAL unit data including start code prefix and NAL unit Bitstream encapsulation.
[0058] can: To refer to behavior that is permitted but not necessarily required A term used in.
[0059] Chroma: Adjectives represented by the symbols Cb and Cr refer to a single sample sequence or a single sample. This specifies that a sample represents one of the two color difference signals related to the primary colors. To avoid using the linear light transfer characteristic often associated with the term , note that we use the term chroma rather than the term chrominance.
[0060] Clean Random Access (CRA) PU: The coded picture is a CRA picture. A PU that is crap.
[0061] Clean Random Access (CRA) picture: each VCL NAL unit IRAP pictures whose nal_unit_type is CRA_NUT. During the decoding process, a picture can refer to other pictures for inter prediction. It can be the first picture in decoding order in the bitstream, or it can be the first picture in decoding order in the bitstream. Note that a CRA picture may appear late in the frame. May be associated with an SL picture. NoOutputBef of one CRA picture If oreRecoveryFlag is equal to 1, the associated RASL picture may contain references to pictures that are not present in the bitstream and are therefore decodable This may not be the case, so the decoder will not output a RASL picture.
[0062] Coded Layer Video Sequence (CLVS): In decoding order, CLVSS PU , 0 or more PUs that are not CLVSS PUs, up to the subsequent PU that is a CLVSS PU (only nuh_layer_id is a PU that consists of all PUs in the A sequence of PUs with the same value. Note that a CLVSS PU is a sequence of IDR PUs, CRA PUs, Note that this can also be a GDR PU. The value of RecoveryFlag is set for each IDR PU and HandleCraAsCV For each CRA PU with SStartFlag equal to 1, and At the first PU of a layer or at the first PU of a layer in decoding order following the EOS NAL unit There will be one for each CRA or GDR PU.
[0063] Coded Layer Video Sequence Start (CLVSS) PU: Coded The picture is a CLVSS picture.
[0064] Coded Layer Video Sequence Start (CLVSS) picture: A coded picture that is an IRAP picture with NoOutputBeforeRecoveryFlag equal to 1 or a GDR picture with NoOutputBeforeRecoveryFlag equal to 1.
[0065] Coding picture: has a specific value of nuh_layer_id within one AU, and a code of the picture containing the VCL NAL unit containing all CTUs of this picture. Ding expression.
[0066] Coding Picture Buffer (CPB): A buffer of D in the decoding order specified by the hypothetical reference decoder. A first-in-first-out buffer containing U.
[0067] Coding Representation A data element is represented in its coded form. do.
[0068] Coding Video Sequence (CVS): In decoding order, CVSS AU followed by CVSS C, which contains all AUs up to but not including the subsequent AU that is an AU A sequence of AUs consisting of zero or more AUs that are not VSS AUs.
[0069] Coding video sequence start (CVSS)AU: There is a PU in each layer of CVS, An AU in which the coded picture of each PU is a CLVSS picture.
[0070] Coding block: Dividing one CTB into coding blocks is called division. An M×N block of samples for some values of M and N, such as
[0071] Coding Tree Block (CTB): Partitioning a module into CTBs An N×N block of samples for some value of N such that
[0072] Coding Tree Unit (CTU): 1 CTB for luma samples, 3 samples Two corresponding CTBs of chroma samples of one picture with a hexadecimal sequence, or three Monochrome pictures or sample pictures coded using separate color planes CTB, and the syntactic structure used to code these samples.
[0073] Coding Unit (CU): A coding block of luma samples, consisting of 3 samples two corresponding coding blocks of chrominance samples of a picture with a matrix arrangement, or Coding blocks of samples of monochrome pictures or coding samples The picture is coded using three separate color planes and a syntactic structure used to Cha coding blocks.
[0074] Components: Composes a picture in 4:2:0, 4:2:2, 4:4:4 color formats One of the three arrays (luminance and two chrominances) or a single sample, or a An array or single samples that make up a picture in nano format.
[0075] Context variable: An expression containing the most recently decoded binary value that governs the binary adaptive binary arithmetic decoding process. The variable to be set.
[0076] Deblocking filter: Minimizes the appearance of visual artifacts at the boundaries between blocks A filtering process applied as part of the decoding process to reduce the
[0077] Decoded picture: A picture created by applying the decoding process to a coded picture.
[0078] Decoded Picture Buffer (DPB): Reference and output reordering specified by the hypothetical reference decoder ,Buffer holding decoded pictures to adjust output delay.
[0079] Decoder: An embodiment of the decoding process.
[0080] Decoding order: The order in which the decoding process processes syntax elements.
[0081] Decoding process: A process described herein that reads a bitstream and derives decoded pictures from it. Processing as described.
[0082] Decoding Unit (DU): If DecodingUnitHrdFlag is equal to 0, AU, otherwise a subset of the AU, with one or more VCL NAL units in the AU It consists of non-VCL NAL units associated with the VCL.
[0083] Emulation prevention byte: A byte that indicates whether a syntax element in the bitstream is A sequence of consecutive byte-aligned bytes containing a start code prefix. If a certain pattern of byte values is formed, it is possible to guarantee that NAL A byte equal to 0x03 exists within the unit.
[0084] Encoder: An embodiment of the encoding process.
[0085] Encoding process: A process defined in this specification that produces a bitstream conforming to this specification. No processing.
[0086] Filler data NAL unit: A NAL unit whose nal_unit_type is FD_NUT.
[0087] flag: a variable or single-bit syntax element that can take one of two possible values :0 and 1.
[0088] Frequency index: A one-dimensional or multi-dimensional index associated with the transform coefficients before applying the transform to the decoding process. or two-dimensional index.
[0089] Gradual Decoding Update (GDR) AU: This PU is a GDR AU where each coded picture is An AU that is Kutcha.
[0090] Gradual Decoding Update (GDR) PU: The coded picture is a GDR picture PU.
[0091] Gradual Decoding Update (GDR) picture: The NAL unit's nal_unit_type is A picture that is GDR_NUT.
[0092] Hypothetical Reference Decoder (HRD): A conforming NAL unit stream that the encoding process can produce or a hypothetical decoder model that specifies constraints on the variability of conforming byte streams. .
[0093] Virtual Stream Scheduler (HSS): Schedules the input of the bitstream to the virtual reference decoder. Check the bitstream or decoder for compatibility with regard to output timing and data flow. A virtual delivery mechanism used to check
[0094] Reference Information: Any essential requirements for conformance to this specification are provided in this specification. The terms used to refer to content not included in this document are an integral part of this document. is not considered to be
[0095] Instantaneous Decoding Refresh (IDR) PU: A P where the coded picture is an IDR picture. U.
[0096] Instantaneous Decoding Refresh (IDR) picture: nal_un of each VCL NAL unit IRAP pictures with it_type IDR_W_RADL or IDR_N_LP In addition, IDR pictures use inter prediction for other pictures during the decoding process. It may be the first picture in decoding order in the bitstream, without reference to Note that each IDR picture may appear late in the bitstream. Each VCL NAL unit is an IDR_W_RA For IDR pictures with nal_unit_type being DL, the associated Each VCL NAL unit may have a RADL picture. For IDR pictures of type IDR_N_LP, the associated first picture An IDR picture does not have an associated RASL picture.
[0097] Inter-layer reference picture (ILDR): in the same AU as the current picture and nuh_layer_id is less than the nuh_layer_id of the current picture It is a small picture marked "used for long-term reference."
[0098] Inter-coding: Coding blocks, slices, and pictures using inter-prediction Coding for Kucha
[0099] Inter prediction: The prediction of data elements (e.g., sample values or is a motion vector).
[0100] Intra-Block Copy (IBC) prediction: Same decoding without reference to a reference picture A prediction derived in a way that depends on the data elements of the slice (e.g., sample values, block vectors, etc.).
[0101] Intra-coding: coding blocks, slices or is the coding of the picture.
[0102] Intra prediction: prediction of data elements of the same decoded slice without referring to a reference picture. A predicted value derived solely from a set of data (e.g., sample values).
[0103] Intra-random access point (IRAP) AU: PU exists in each layer of CVS and the coded picture of each PU is an IRAP picture.
[0104] Intra Random Access Point (IRAP) PU: A coded picture PU, which is an IRAP picture.
[0105] Intra Random Access Point (IRAP) picture: from IDR_W_RADL nal_unit_ty of all VCL NAL units within the CRA_NUT range A coded picture with the same value of pe. Note that an IRAP picture is a coded picture with the same value of pe. In the process, the CRA picture is generated without referring to any picture other than the picture on which the inter prediction is performed. Note that the picture in the bitstream may be a 3D picture or an IDR picture. The first picture in decoding order must be an IRAP or GDR picture. If a parameter set needs to be referenced, it should be referenced to the IRAP picture, if available. Instead of decoding the picture in the decoding order of the picture preceding the frame, the IR in the decoding order in the CVS is The AP picture and all subsequent non-RASL pictures can be decoded correctly. In addition, the mixed_nalu_types_in_pic_flag of the IRAP picture The value of mixed_nalu_types_in_ is equal to 0. pic_flag is equal to 0 and any slice of this picture is IDR_W_RA Has a nal_unit_type in the range DL to CRA_NUT (inclusive) If nal_unit_type is 0, all other slices in this picture have the same value. , this picture is known as an IRAP picture.
[0106] Intra (I) slice: A slice that is decoded using intra prediction only.
[0107] Layers: All have a specific value called nuh_layer_id and have associated non-V A set of VCL NAL units with CL NAL units.
[0108] Leading picture: A picture in the same layer as the associated IRAP picture. A picture that precedes the associated IRAP picture in output order.
[0109] Leaf: The terminal node of a tree, which is the root node of a tree with depth 0.
[0110] Level: The possible values of syntax elements and variables in this specification, or the conversion coefficients before scaling A defined set of constraints on values, the same set of levels for all profiles. Most aspects of the definition of each level are defined across different profiles. Note that each implementation may choose to support a specific set of standards within the specified constraints. A WAN may support different levels for each profile used.
[0111] List 0 (List 1) motion vector: Reference picture list 0 (list 1) The motion vector associated with the reference index.
[0112] Prediction of List 0 (List 1): Reference image that refers to Reference Picture List 0 (List 1) Inter-prediction of slice content using indexes.
[0113] LMCS APS: APS that controls LMCS processing.
[0114] Long Term Reference Picture (LTRP): equal to the nuh_layer_id of the current picture with nuh_layer_id and marked "used for long-term reference" Picture.
[0115] Luminance: Denoted by the symbol or subscript Y or L, it can be used to represent a single sample array or a single An adjective specifying that the sample represents a monochrome signal related to the primary colors. To avoid using the linear light transfer characteristics often associated with the term , note that we use the term brightness rather than luminance. Sometimes the symbol L is used instead of , which is the same symbol used for vertical position. This is to avoid confusion with number y.
[0116] Luminance Mapping with Chroma Scaling (LMCS): applied as part of the decoding process The process of mapping luma samples to specific values is called mapping the values of chroma samples. A scaling operation may be applied.
[0117] May: behavior that is permitted but not necessarily required A term used to refer to a behavior that emphasizes the optional nature of the described behavior. In some places where it is intended that Please note that raise is used for emphasis. This term is used in this specification. to highlight exemplary implementations adopted in standards that code for that requirement. are used for illustrative purposes only and are not intended to limit the scope of the disclosed technology.
[0118] Motion vector: Specifies the offset from the coordinates of the decoded picture to the coordinates of the reference picture The 2D vector to use for inter prediction.
[0119] Multitype Trees: Split a parent node into two child nodes using a binary split, or Value splitting can be used to split into three child nodes, each of which has a parent node. A parent node that can split another child node into two or three child nodes. A tree that could be.
[0120] Must: elsewhere in this specification (in an informative context) used to express considerations about the requirements or implications of requirements set forth in This term is used in this document to refer to the requirements adopted in the standards that code. These are used only to highlight the illustrated exemplary embodiments and are not intended to limit the scope of the disclosed technology. It is not something that can be done.
[0121] Network Abstraction Layer (NAL) unit: An indication of the type of data that follows , containing data in the form of RBSPs interspersed with emulation prevention bytes as needed Bytes and,syntax structures including,.
[0122] Network Abstraction Layer (NAL) unit stream: A sequence of NAL units vinegar.
[0123] Note: A term that is prefixed to an informative note (in an informative context) (Used exclusively by the
[0124] Operation Point (OP): Identified by the highest value of the OLS index and TemporalId. A temporal subset of OLS, distinguished by the
[0125] Output Layer: The layer of the output layer set that will be output.
[0126] Output Layer Set (OLS): A set of layers composed of a set of prescribed layers and one or more layers in this set of layers are defined as output layers.
[0127] Output Layer Set (OLS) Layer Index: This corresponds to the list of layers in the OLS. The index of the layer in OLS to be used.
[0128] Output order: The order in which decoded pictures are output from the DPB (the order in which decoded pictures are output from the DPB) (For example,
[0129] Output time: According to the output timing DPB operation, the DPB (from DPB) specified by the HRD The time from the output of the decoded picture to the output of the decoded picture.
[0130] Parameters: Sequence Parameter Set (SPS), Picture Parameter Set (P PS), or the syntactic element of the second word of the quantization parameter of the defined term.
[0131] Partition: dividing a set into subsets such that each element of the set is in exactly one of the subsets. To take charge.
[0132] Picture: An array of luminance samples in monochrome format, or an array of luminance samples and 4 Two corresponding chroma samples for 4:2:0, 4:2:2, and 4:4:4 color formats Note that a picture can be either a frame or a field. Note that in one CVS, all pictures are frames. Or all pictures are fields.
[0133] Picture Header (PH): Applies to all slices of a coded picture. A syntax structure that contains syntax elements that
[0134] Picture level slice index: rect_slice_flag equals 1 If not, the slices are sent to the list of slices in the picture in the order signaled in the PPS. Rice index is shown.
[0135] Picture Order Count (POC): Associated with each picture and counts all pictures in the CLVS. uniquely identifies the associated picture from among the pictures and determines whether the associated picture is in the DPB When a picture is output from the DPB, the output order position of other pictures in the same CLVS output from the DPB A variable that indicates the output order position of the associated picture.
[0136] Picture Parameter Set (PPS): Syntax elements found in each slice header A structure containing syntax elements that are determined by the grammar and apply to zero or more entire coded pictures. Sentence structure.
[0137] Picture Unit (PU): A picture unit associated with each other according to a specified classification rule. A set of NAL units is consecutive in decoding order and consists of exactly one coded pixel. Includes Kucha.
[0138] Prediction: An embodiment of the prediction process.
[0139] Prediction process: The currently decoded data element (e.g., a sample value or a motion vector) Use of predictors to provide estimates of the
[0140] Prediction (P) slice: An input with at most one motion vector and reference index. The sample values of each block are decoded using inter-prediction or intra-prediction. The slice to predict.
[0141] Predictor: A specified or previously decoded value used in the decoding process of subsequent data elements. A combination of coded data elements (e.g., sample values or motion vectors).
[0142] Profile: A defined subset of the syntax of this specification.
[0143] Quadtree: A parent node can be divided into four child nodes, each of which has four more child nodes. A tree that can be a parent node that can be split into child nodes.
[0144] Quantization parameter: A variable that the decoding process uses to scale the transform coefficient levels.
[0145] Random Access: The act of starting the decoding process of a bitstream at a point other than the beginning of the stream. Made by.
[0146] Random Access Decodable First (RADL) PU: The coded picture is PU, which is a DL picture.
[0147] Random Access Decodable First (RADL) picture: Each VCL NAL unit coded picture whose nal_unit_type is RADL_NUT Note that all RADL pictures are first pictures. A picture is a trailing picture of the decoding process of the same associated IRAP picture. If field_seq_flag is equal to 0, the picture is not used as a reference picture for If present, all RADL pictures are associated with the same IRAP picture. It precedes all non-first pictures of the frame in decoding order.
[0148] Random Access Skip First (RASL) PU: The coded picture is PU, which is an ASL picture.
[0149] Random Access Skip First (RASL) picture: Each VCL NAL unit A coded picture whose bit nal_unit_type is RASL_NUT Note that all RASL pictures are the first picture of the associated CRA picture. Note that the NoOutputBefore of the associated CRA picture If reRecoveryFlag is equal to 1, no RASL pictures are output and the video RASL pictures may contain references to pictures that do not exist in the bitstream. RASL pictures may not be decodable correctly. field_seq_flag is set to 0. If equal (if present), all RASL pictures belong to the same associated CRA It precedes all non-first pictures of the picture in decoding order.
[0150] Raster scan: The first entry in a 1D pattern is scanned from left to right in a 2D pattern. The first line scanned is the top line, followed by the second, third, etc. lines scanned from left to right. A mapping of a rectangular 2D pattern to a 1D pattern, making it appear as if it were a rectangle.
[0151] Raw Byte Sequence Payload (RBSP): Encapsulated in one NAL unit It contains an integer number of bytes, and is either empty or contains an RBSP stop bit and A syntactic construct in the form of a string of data bits containing zero or more subsequent bits equal to 0 .
[0152] Raw Byte Sequence Payload (RBSP) Stop Bit: The raw byte sequence payload (RBSP) after the data bit sequence. A bit equal to 1 present in the Byte Sequence Payload (RBSP) that is The position of the end in the BSP is from the end of the RBSP to the RBSP stop bit (the first bit in the RBSP). It can be identified by searching for the next non-zero bit).
[0153] Reference index: An index into the reference picture list.
[0154] Reference Picture: A picture that is a short-term reference picture, a long-term reference picture, or an inter-frame reference picture. Note that the reference picture is used in the decoding process of the subsequent picture. Note that it contains samples that may in turn be used for inter prediction.
[0155] Reference picture list: A list of reference pictures used for inter prediction of a P or B slice. For each slice of a non-IDR picture, there is a reference picture list 0 and a reference Note that two reference picture lists are generated: Picture List 1. All entries in the two reference picture lists associated with one picture The set of unique pictures referenced by a picture is called the associated picture or All reference pictures that can be used for inter prediction in decoding order for any pictures following the selected picture In the decoding process of P slices, inter prediction uses a reference picture. In the decoding process of B slices, only picture row 0 is used for inter prediction. Uses both reference picture list 0 and reference picture list 1. Recovers slice data for I-slice. When decoding, reference picture lists are not used for inter prediction.
[0156] Reference picture list 0: Reference picture list used for inter prediction of P, or B The first reference picture list used for inter prediction of the slice.
[0157] Reference Picture List 1: The second reference picture list used for inter prediction of B slices. Strike.
[0158] Reserved: Some values of certain syntax elements are reserved by ITU-T|ISO / IE C and will be used in bitstreams conforming to this version of the specification. is not used, but is in accordance with future extensions of this specification by ITU-T / ISO / IEC. A term that can be used to specify what may be used in a bitstream.
[0159] Residual: The decoded difference between the prediction of one sample or data element and its decoded value. .
[0160] Scaling: The process of multiplying the levels of a conversion factor by a factor to obtain the conversion factor.
[0161] Scaling list: Associates scaling factor for each frequency index list.
[0162] Scaling List APS: Syntax elements used to construct scaling lists APS with.
[0163] Sequence Parameter Set (SPS): A set of syntax elements found in each picture header. Applies to zero or more CLVs as determined by the contents of syntax elements in the PPS it references. A syntactic structure containing the syntax elements used.
[0164] Shall: Used to express mandatory requirements for conformance with this specification The term "value of a syntax element" or the result obtained by a specified decoding operation. When used to express a mandatory constraint on a Note that it is the encoder's responsibility to verify that the When used to refer to an operation, the output of the decoding process described herein The decoding process that produces the same cropped decoded picture as This term is used herein to refer to the requirements adopted by the coding standard. are used only to highlight the illustrated exemplary embodiments and are not intended to limit the scope of the disclosed technology. It's not something like that.
[0165] Short-term Reference Picture (STRP): nuh_layer_id is the nuh_l of the current picture Equal to ayer_id and pictures marked "used for short-term reference".
[0166] Should: Recommended to be followed under normal, foreseeable circumstances. to refer to the behavior of implementations that are supported but are not a mandatory requirement for conformance with this specification. This term is used in this document to refer to the standard to which the requirement is coded. are used only to highlight the exemplary embodiments employed and do not limit the scope of the disclosed technology. It is not limited to this.
[0167] Slice: An integer number of complete tiles within a picture or a single NAL unit. A continuous complete CTU row contained exclusively in a knit.
[0168] Slice Header: Contains all tile or CTU rows within the tile represented by the slice. The part of a coded slice that contains a data element containing
[0169] Source: A term used to describe unencoded video material or some of its attributes.
[0170] Start code prefix: A byte stream that is used as a prefix to each NAL unit. A unique sequence of three bytes equal to 0x000001 embedded in the stream. The decoder can use the position of the start code prefix to determine the start of a new NAL unit. Note that it is possible to identify the end of a NAL unit and the end of the previous NAL unit. Emulation of start code prefixes within L units prevents emulation This is prevented by including the byte.
[0171] Stepwise Temporal Sublayer Access (STSA) PU: Coded picture PU where the image is an STSA picture.
[0172] Stepwise Temporal Sublayer Access (STSA) pictures: each VCL N The AL unit's nal_unit_type is coded as STSA_NUT. Note that the STSA picture is an STSA picture for the inter prediction reference. Note that pictures with the same TemporalId are not used. Any picture following the STSA picture in decoding order that has the same TemporalId as the picture The picture is an inter-predicted picture in decoding order with the same TemporalId as the STSA picture. The picture before the STSA picture is not used for reference. In a picture, the sublayer immediately below the sublayer containing the STSA picture Enables up-switching from 0. TemporalId of STSA picture is It has to be big.
[0173] String of Data Bits (SODB): Raw Byte Sequence Payload Before Stop Bit A sequence of several bits representing syntax elements present in the raw byte sequence payload. In this case, the leftmost bit is considered the first most significant bit, and the rightmost bit is considered the last least significant bit. It is considered a
[0174] Sub-bitstream extraction process: Target OLS index and target highest Temp NAL units in the bitstream that do not belong to the target set determined by oralId The unit is removed from the bitstream, and N units in the bitstream that belong to the target set are removed. A specific process that indicates outputting a sub-bitstream consisting of AL units.
[0175] Sublayer: VCL NAL unit with a specific value of the TemporalId variable and associated non-VCL NAL units. Temporal scalable layer of the bitstream.
[0176] Sublayer representation: Consists of NAL units for a specific sublayer and its lower sublayers A subset of a bitstream that is
[0177] Subpicture: A rectangular area of one or more slices within a picture.
[0178] Subpicture level slice index: rect_slice_flag is 1 If equal, the list of slices in the subpicture in the order signaled in the PPS. Indicates the slice index.
[0179] Supplemental Enhancement Information (SEI) message: A message used to determine the values of samples in a decoded picture. A syntax with defined semantics that conveys information that is not required in the decoding process, structure.
[0180] Syntax element: An element of data that is represented in a bitstream.
[0181] Syntax construct: Zero or more syntax elements that occur together in a bitstream in a specified order.
[0182] Temporal division: Dividing a rectangular M × N sample block into three blocks. As a result of the direct division, the first (M / 4) × N block, the second (M / 2) × N block, the third The result is a (M / 4) × N block, and the horizontal division results in the first M × (N / 4) block, A second M×(N / 2) block is obtained, followed by a third M×(N / 4) block.
[0183] Layer: A defined category of level constraints placed on the values of syntax elements in a bitstream. The level constraints are nested within a hierarchy, and decoders that conform to a certain hierarchy and level are considered to be in the same hierarchy or The level of the hierarchy below it or any level below it is It will be possible to decrypt it.
[0184] Tile: A rectangular region of a CTU within a particular tile column and a particular tile row in a picture. .
[0185] Tile column: A tile column with a height equal to the height of the picture and a syntax element in the picture parameter set. A rectangular area of a CTU with a defined width.
[0186] Tile row: A row equal to the height specified by the syntax element of the picture parameter set and the width of the picture. A rectangular area of a CTU with a desired width.
[0187] Tile scan: The tiles of the picture are scanned consecutively in a raster scan of the tiles of the picture. Ordered, CTUs are sequentially ordered pictures in a CTU raster scan of tiles A specific order of CTUs to be divided.
[0188] Last picture: The non-IRAP picture that follows the associated IRAP picture in output order. It is a picture, not an STSA picture. Note that the trailer associated with an IRAP picture Note that the ring pictures also follow the decoding order of the IRAP pictures. It follows the associated IRAP picture in output order and precedes the associated IRAP picture in decoding order. Pictures that are not allowed.
[0189] Transform: The part of the decoding process that converts blocks of transform coefficients into blocks of spatial domain values.
[0190] Transform Block: A rectangular MxN block of samples resulting from a transform within the decoding process.
[0191] Transform coefficient: A scalar quantity considered in the frequency domain that is used in the transform during the decoding process. Each frequency is associated with a specific one- or two-dimensional frequency index.
[0192] Transform Coefficient Level: A specific level in the decoding process before scaling the calculation of transform coefficient values. An integer quantity representing the value associated with a two-dimensional frequency index.
[0193] Transform Unit (TU): A single coding unit tree for luma and chroma Transform blocks of luma samples of a picture and corresponding blocks of chroma samples when using two separate coding units for luma and chroma; Transformation block of luma samples when using knit tree and transform block samples The syntax structure used to convert pulls.
[0194] Tree: A tree is a finite set of nodes with a unique root node.
[0195] Unspecified: May be used to specify certain values for a particular syntax element, and is not The value does not have a specific meaning in this document and may be used in future versions of this specification. A term that does not have a specific meaning as an integral part.
[0196] Video Coding Layer (VCL) NAL unit: coded slice NAL A subset of NAL units is nal_unit_type and is classified herein as a VCL_NAL unit.
[0197] Bitstream and picture formatting, segmentation, scanning, and neighborhood functions Examples of relationships are described below.
[0198] 6.3 Picture, Subpicture, Slice, Tile, and CTU Division
[0199] 6.3.2 Block, Quadtree, and Multitype Tree Structures
[0200] Samples are processed in CTB units. The array size for both width and height of each luminance CTB is: CtbSizeY in samples. The width and height of each chroma CTB array are These are CtbWidthC and CtbHeightC, respectively, in samples. Each CTB specifies a block size for intra or inter prediction and For coding, partition signals are assigned. This division is done recursively. A quadtree partition. The root of the quadtree is associated with the CTB. This quadtree has one leaf The module width is an integer of the CTB size. If not, the CTB at the right module boundary is incomplete. If it is not an integer multiple of the CTB size, the CTB at the lower module boundary is incomplete. . The coding block consists of two trees, the prediction tree and the transformation tree. The prediction tree specifies the location and size of the predicted block. , which specifies the position and size of the transform block. The luma and chroma split information is used to It is identical to the tree and may or may not be identical to the transformation tree.
[0201] Blocks and associated syntactic structures are grouped into "unit" structures as follows: It is divided. - One transformation block (monochrome picture or separate_colour_p lane_flag equals 1) or three transform blocks (4:2:0, 4:2:2 , or the luminance and chrominance components of a picture in 4:4:4 color format) and related The linked translation syntax structure units are associated with the translation units. -One coding block (monochrome picture or separate_colour r_plane_flag equals 1) or three coding blocks (luminance and and chroma), the associated coding syntax structure and the associated conversion unit A video stream is associated with a coding unit. - 1 CTB (monochrome picture or separate_colour_plan e_flag equals 1) or three CTBs (luminance and chrominance), associated The coding tree syntax structure and associated coding units are related to the CTU. Can be linked.
[0202] 7 Syntax and Semantics
[0203] 7.3 Tabular Syntax
[0204] 7.3.1 NAL Unit Syntax
[0205] 7.3.1.1 General NAL Unit Syntax
[0206] [Table 1]
[0207] 7.3.1.2 NAL unit header syntax [Table 2]
[0208] 7.3.2 Raw Byte Sequence Payload, Trailing Bits, and Byte Alignment Syntax
[0209] 7.3.2.1 Decoding Capability Information RBSP Syntax
[0210] [Table 3]
[0211] 7.3.2.2 Video parameter set RBSP syntax
[0212] [Table 4] [Table 5] [Table 6]
[0213] 7.3.2.3 Sequence Parameter Set RBSP Syntax
[0214] [Table 7] [Table 8] [Table 9] [Table 10] [Table 11] [Table 12] [Table 13] [Table 14]
[0215] 7.3.2.4 Picture parameter set RBSP syntax
[0216] [Table 15] [Table 16] [Table 17] [Table 18] [Table 19]
[0217] 7.3.2.5 Adaptation Parameter Set RBSP Syntax
[0218] [Table 20]
[0219] 7.3.2.6 Picture Header RBSP Syntax
[0220] [Table 21]
[0221] 7.3.2.7 Picture Header Structure Syntax
[0222] [Table 22] [Table 23] [Table 24] [Table 25] [Table 26] [Table 27]
[0223] 7.3.2.8 Supplemental Enhancement Information RBSP Syntax
[0224] [Table 28]
[0225] 7.3.2.9 AU Delimiter RBSP Syntax
[0226] [Table 29]
[0227] 7.3.2.10 RBSP Syntax at the End of a Sequence
[0228] [Table 30]
[0229] 7.3.2.11 End of Bitstream RBSP Syntax
[0230] [Table 31]
[0231] 7.3.2.11 Filler Data RBSP Syntax
[0232] [Table 32]
[0233] 7.4 Semantics
[0234] 7.4.1 General
[0235] This section specifies syntactic structures and the semantics associated with syntactic elements within these structures. When a table or set of tables is used to specify the semantics of a syntax element, it is specifically referred to herein as Unless otherwise specified, values not specified in the table must not be included in the bitstream. .
[0236] 7.4.2 NAL unit syntax
[0237] 7.4.2.1 General NAL unit syntax
[0238] NumBytesInNalUnit specifies the size of the NAL unit in bytes. This value is required for decoding a NAL unit. To make the argument valid, some form of demarcation of NAL unit boundaries is required. One such demarcation method for byte stream formats. Other classification methods may also be defined.
[0239] NOTE 1 - The Video Coding Layer (VCL) is a layer that efficiently represents the content of video data. NAL is specified to format its data and Provides header information in a manner appropriate for transmission over a communications channel or storage medium. Data is contained in NAL units, each of which contains an integer number of bytes. Bits are common protocols used in both packet-oriented and bitstream systems. It specifies a general format for both packet-oriented transport and byte stream The format of the NAL units for this method is that each NAL unit is a byte stream file. The format may be preceded by a start code prefix and additional padding bytes. are identical except for
[0240] RBSP_byte[i] is the i-th byte of RBSP. RBSP is a byte is defined as an ordered sequence of The RBSP includes the following data bit string (SODB): - If the SODB is empty (i.e., has a length of 0 bits), then the RBSP is also empty. do. Otherwise, the RBSP includes the SODB as follows: 1) The first byte of the RBSP contains the first (most significant, leftmost) 8 bits of the SODB, and R The next byte of the BSP contains the next 8 bits of the SODB, etc., and there are less than 8 bits remaining in the SODB. This continues until 2) After the SODB, the rbsp_trailing_bits() syntax structure is as follows: It exists like this. i) The first (most significant, leftmost) bit of the last RBSP byte is the remaining bit of the SODB. Contains the bit (if any). ii) The next bit is a single bit equal to 1 (i.e., rbsp_stop_ one_bit). iii) rbsp_stop_one_bit is at the beginning of a byte-aligned byte If it is not a trailing bit, one or more zero-valued bits (i.e., RBSP_alignme nt_zero_bit instance) exists and is byte-aligned. can be. 3) After RBSP_trailing_bits() at the end of RBSP, One or more cabac_zero_words equal to 0x0000 in the RBSP of 16-bit syntax elements may be present.
[0241] Syntax constructs with these RBSP properties are marked in the syntax table with "_rbs These structures are represented using the "p" suffix. The NAL RBSP syntax structure is implemented as a NAL unit with a byte content. The association to the unit is as specified in Table 5.
[0242] NOTE 2 – If the RBSP boundary is known, the decoder should align the bits of the RBSP bytes Concatenate and rbsp_stop_one_, which is the last (least significant, rightmost) bit equal to 1. Discard the bit and the following (low-order, right-most) bit that is equal to 0 By doing this, the SODB can be extracted from the RBSP. is included in the SODB section of the RBSP.
[0243] emulation_prevention_three_byte is equal to 0x03 The NAL unit contains the new byte emulation_prevention_3_ If the byte is present, it is discarded by the decryption process. The last byte of a NAL unit is not equal to 0x00.
[0244] At any byte-aligned position within a NAL unit, the following three bytes The sequence does not occur. -0x000000 -0x000001 -0x000002
[0245] Within a NAL unit, a sequence of four bytes beginning with 0x000003 , no other sequences than the following sequence occur in a byte-aligned position: -0x00000300 -0x00000301 -0x00000302 -0x00000303
[0246] 7.4.2.2 NAL unit header semantics
[0247] forbidden_zero_bit shall be equal to 0.
[0248] nuh_reserved_zero_bit shall be equal to 0. The reserved_zero_bit value of 1 will be used in the future by ITU-T | ISO / IEC. A decoder shall not be Ignore (i.e., remove from the bitstream and discard) any unread NAL units.
[0249] nuh_layer_id is the identifier of the layer to which the VCL NAL unit belongs, or nuh_layer specifies the identifier of the layer to which the non-VCL NAL unit applies. The value of r_id must be in the range of 0 to 55 (inclusive). Other values of yer_id are reserved for future use by ITU-T|ISO / IEC. are. The value of nuh_layer_id is used for all VCs of one coded picture. L NAL unit: coded picture or The value of nuh_layer_id of a PU is the coded picture or VC of the PU. L is the value of nuh_layer_id of the NAL unit.
[0250] The values of nuh_layer_id for AUD, PH, EOS, and FD NAL units are as follows: It is constrained as follows: - nuh_layer_ if nal_unit_type equals AUD_NUT Let id be equal to vps_layer_id[0]. - Otherwise, if nal_unit_type is equal to PH_NUT, EOS_NUT, or FD_NUT, nuh_layer_id shall be the nuh_layer_id of the associated VCL NAL unit.
[0251] NOTE 1 - nuh_layer_id for DCI, VPS, and EOB NAL units The value of is not constrained.
[0252] The nal_unit_type value is used for all pictures in one CVSS AU. shall be considered the same. nal_unit_type is the NAL unit type, as specified in Table 5 , i.e., specifies the type of RBSP data structure contained in the NAL unit. NAL unit nal_unit_type is UNSPEC_28..UNSPEC If the NAL unit is in the range _31 and the semantics is not specified, then this NAL unit is This does not affect the decoding process specified in this document.
[0253] NOTE 2 – NAL unit types are in the range UNSPEC_28...UNSPEC_31. If it is within the specified range, it may be used as determined by the application. The document does not specify the decoding process for these values of nal_unit_type. Applications may use these NAL unit types for different purposes. , an encoder that generates NAL units with these nal_unit_type values The design of NAL units and the content of NAL units with these nal_unit_type values Particular care must be taken when designing a decoder that interprets this content. The management of these values is not defined. collisions" (i.e., contention of NAL units for the same nal_unit_type value) situations where the content of a product (or a different definition of the content) is not important or possible or controlled, e.g. For example, in a control application or transport specification, or in a bitstream Use in a context that is defined or managed by controlling the environment in which the system is distributed may only be suitable for
[0254] For purposes other than determining the number of data in a DU for a bitstream decoder Additionally, all NAL unit codes that use reserved values of nal_unit_type are The content shall be ignored (removed from the bitstream and discarded).
[0255] NOTE 3 - This requirement allows for the future definition of extension modules that conform to this specification. To perform Noh.
[0256] [Table 33] [Table 34]
[0257] NOTE 4 – Clean Random Access (CRA) pictures are pictures that are present in the bitstream. It may be associated with a RASL or RADL picture.
[0258] NOTE 5 - Instantaneous decoding update with nal_unit_type equal to IDR_N_LP (IDR) pictures have an associated first picture present in the bitstream. An IDR picture with nal_unit_type equal to IDR_W_RADL is It is not associated with a RASL picture present in the bitstream, but The image may have a RADL picture associated with it.
[0259] For any particular picture's VCL NAL units, the following applies: - If mixed_nalu_types_in_pic_flag is equal to 0, n The value of al_unit_type is NA for all coded slices of the picture. The same applies to L units. A picture or PU is a or the same NAL unit type as the coded slice NAL unit of the PU is considered to have. - Otherwise (mixed_nalu_types_in_pic_flag is 1) ), and all VCL NAL units of one or more subpictures of a picture are Specific values of nal_unit_type are STSA_NUT, RADL_NUT, and RAS Equal to L_NUT, IDR_W_RADL, IDR_N_LP, or CRA_NUT On the other hand, all other VCL NAL units in the picture are of type nal_unit_type Different specific values of TRAIL_NUT, RADL_NUT, RASL_NUT are equivalent. stomach.
[0260] For single-layer bitstreams, the following constraints apply: Each picture is in decoding order except for the first picture of the bitstream in decoding order. It is considered to be associated with the previous IRAP picture in the - If the picture is the first picture of an IRAP picture, it is not a RADL or RASL picture. It's chewy. - If the picture is the last picture of an IRAP picture, the RADL or RASL picture It is assumed that it is not Kucha. - RASL pictures associated with IDR pictures are included in the bitstream It is assumed that there are no - Associated with an IDR picture whose nal_unit_type is IDR_N_LP The RADL pictures are not included in the bitstream.
[0261] NOTE 6 – When each parameter set is referenced (in the bitstream or available (through external means not specified herein) of the IRAP PU. By discarding all previous PUs (and the IRAP picture and all subsequent non- (by decoding the RASL pictures in the correct decoding order) Access can be made.
[0262] A picture that precedes the IRAP picture in decoding order precedes the IRAP picture in output order. The RADL picture associated with the IRAP picture shall precede the IRAP picture in output order. . - The RASL pictures associated with a CRA picture shall be placed in the order of output in relation to the CRA picture. It shall precede the associated RADL picture. - The RASL picture associated with a CRA picture must precede the CRA picture in decoding order. The output order of the IRAP pictures to be processed shall be in accordance with the order in which they are output. - field_seq_flag is equal to 0 and the current picture is an IRAP picture All pictures associated with the same IRAP picture are equal to the associated first picture. If not, picA and p shall precede all non-first pictures in decoding order. icB are the first IRAP pictures in decoding order associated with one IRAP picture each. If the first and last leading pictures are There is at most one non-first picture, and the non-first picture is between picA and picB in decoding order. There is no such thing.
[0263] nuh_temporal_id_plus1-1 is the temporal identifier of the NAL unit This stipulates: The value of nuh_temporal_id_plus1 shall not be equal to 0.
[0264] The variable TemporalId is derived as follows: TemporalId=nuh_temporal_id_plus1-1 ( 36) nal_unit_type is in the range of IDR_W_RADL to RSV_IRAP_12 If it is within, TemporalId shall be equal to 0. nal_unit_type is STSA_NUT and vps_independe nt_layer_flag[GeneralLayerIdx[nuh_layer_ If TemporalId is equal to 1, then TemporalId shall not be 0. The value of TemporalId is the same for all VCL NAL units in one AU. The Temporary Parameter of the coded picture, PU, or AU shall be the same. The value of alId is the VCL NAL unit of a coded picture, PU, or AU. The value of TemporalId of the sublayer representation. is the TemporalId of all VCL NAL units in the sublayer representation is the maximum value of
[0265] The values of TemporalId for non-VCL NAL units are constrained as follows: -nal_unit_type is DCI_NUT, VPS_NUT, VPS_NUT, or SPS_NUT, TemporalId is equal to 0 and the NAL unit The TemporalId of the AU containing the event shall be equal to 0. - Otherwise, if nal_unit_type is equal to PH_NUT, then Tem The temporalId shall be the temporalId of the PU that contains the NAL unit. - Otherwise, nal_unit_type is EOS_NUT or EOB_NU If equal to T, TemporalId shall be equal to 0. - Otherwise, nal_unit_type is AUD_NUT, FD_NUT, P If it is equal to REFIX_SEI_NUT or SUFFIX_SEI_NUT, Te TemporalId shall be the TemporalId of the AU containing the NAL unit . - Otherwise, nal_unit_type is PPS_NUT, PREFIX_A If it is equal to PS_NUT or SUFFIX_APS_NUT, TemporalI d shall be equal to or greater than the TemporalId of the PU that contains the NAL unit.
[0266] NOTE 7 - If the NAL unit is equal to a non-VCL NAL unit, then Temporal The value of Id is the Tempora of all AUs to which the non-VCL NAL unit applies. The minimum value of the lId value. nal_unit_type is PPS_NUT, PREFIX If it is equal to _APS_NUT or SUFFIX_APS_NUT, Tempora The lId may be equal to or greater than the TemporalId containing the AU, and all PPS and APS may be included at the beginning of the bitstream (e.g., if they are transported out-of-band). If so, the receiver places them at the beginning of the bitstream. A coded picture has TemporalId equal to 0.
[0267] 7.4.2.3 Encapsulating SODBs in RBSP (Informative)
[0268] This section does not form an integral part of this specification. The format of encapsulation of SODB in RBSP and the classification of RBSP in NAL units emulation_prevention_three_byte for capsules The use is described for the following purposes: -While allowing any SODB to be expressed within a NAL unit, To prevent the start code from being emulated, -Search RBSP for RBSP_stop_one_bit starting at the end of RBSP To enable identification of the end of an SODB within a NAL unit by searching for it, -In some situations, the size of the NAL unit may be larger than the size of the SODB. To enable (use one or more cabac_zero_word syntax elements).
[0269] The encoder can generate NAL units from the RBSP in the following steps: 1. Search the RBSP data for byte-aligned bits of the following binary pattern: Search. '00000000 00000000 000000xx' (where 'xx' is (representing any two-bit pattern: '00', '01', '10', or '11'), To replace the bit pattern with the pattern, insert a byte that is 0x03. '00000000 00000000 00000011 000000xx', Finally, if the last byte of the RBSP data is equal to 0x00 (RBSP is cabac (This can only occur if the word ends with a _zero_word), and the last byte is equal to 0x03 is added to the end of the data. A byte-aligned 3-byte sequence in RBSP sequence 0x000000 (replaced with the 4-byte sequence 0x00000300) The last 0 byte of the This will be taken into account when searching RBSP data for the next occurrence of the event. 2. The resulting sequence of bytes is prefixed with a NAL unit header. In this case, nal_unit_type is the RBSP data in the NAL unit. Indicates the type of data structure.
[0270] Through the above process, the entire NAL unit is constructed. This process allows any SODB to be represented in NAL units, and both: can be guaranteed. - Within a NAL unit, byte-aligned start code prefixes are emulated. Not available. Within a NAL unit, start code prefixes are used regardless of byte alignment. A sequence of eight zero-valued bits followed by a 0 is not emulated.
[0271] 7.4.2.4 NAL unit order in the bitstream
[0272] 7.4.2.4.1 General
[0273] The subclause in subclause 7.4.2.4 concerns the ordering of NAL units in the bitstream. This section specifies the constraints that apply. Any order of NAL units in a bitstream that conforms to these constraints is not In the literature, this is called the NAL unit decoding order. Within a NAL unit, the syntax in sections 7.3 and D.2 specifies the decoding order of syntax elements. The NAL units defined in this specification include ITU-T H.SEI | ISO / IE If the VUI parameter or SEI message specified in C23002-7 is included, In this case, the VUI parameters specified in ITU-T H.SEI / ISO / IEC23002-7 The syntax of the data or SEI message specifies the decoding order of these syntax elements. , NAL units and their syntax elements can be received in decoding order.
[0274] 7.4.2.4.2 Order of AUs and their association with CVS
[0275] A bitstream consists of one or more CVSs. A CVS consists of one or more AUs. The order of PUs and their association with AUs is explained in section 7.4. .2.4.3 is described. The first AU in CVS is a CVSS AU, and each current PU is a CVS PU. IRAP with NoOutputBeforeRecoveryFlag equal to 1 PU or GDR with NoOutputBeforeRecoveryFlag equal to 1 It is either PU. Each CVSS AU has one PU for each layer present in the CVSS. Bitstream conformance if the next AU follows the AU containing the EOS NAL unit The security requirement, if present, is CVSS AU.
[0276] 7.4.2.4.3 PU order and association with AU
[0277] One AU contains one or more PUs in ascending order of nuh_layer_id. The order of bits and coded pictures and their association with PUs are described in 7. It is described in Section 4.2.4.4. There may be at most one AUD NAL unit in one AU. If a unit is present in an AU, it becomes the first NAL unit of the AU, and consequently This will be the first NAL unit of the first PU. There may be at most one EOB NAL unit in one AU. If one EOB NAL unit is present, this unit is the last NAL unit in this AU. unit, and consequently the last NAL unit of the last PU of this AU. One VCL NAL unit is the first VCL NAL unit following a PH NAL unit. A VCL NAL unit is the last NAL unit of an AU if one or more of the following conditions are true: This is the first VCL NAL unit (as a result, PUs containing VCL NAL units are This will be the first PU for the AU.
[0278] - The value of nuh_layer_id in a VCL NAL unit is the value of the previous picture in decoding order is smaller than the nuh_layer_id of - The value of ph_pic_order_cnt_lsb in the VCL NAL unit is The value of ph_pic_order_cnt_lsb of the previous picture in the order is different. - The PicOrderCntVal derived for a VCL NAL unit is It is different from the PicOrderCntVal of the previous picture in the order.
[0279] Let firstVclNalUnitInAu be the first VCL NAL unit in the AU. It precedes firstVclNalUnitInAu and The following NAL units following the last VCL NAL unit preceding tInAu: The first of these, if any, defines the start of a new AU.
[0280] -AUD NAL units (if present), -DCI NAL units (if present), -VPS NAL units (if present), -SPS NAL units (if present), -PPS NAL units (if present), -Prefix APS NAL units (if present), -PH NAL units (if present), -Prefix SEI NAL unit (if present), -NAL units with nal_unit_type equal to RSV_NVCL_26 (existing if present), -nal_unit_type is UNSPEC28..UNSPEC29 (if present) NAL units in the range of
[0281] Note: firstVclNalUnitInAu precedes firstVclNalU The first NAL unit following the last VCL NAL unit preceding nitInAu is If present, it can only be one of the NAL units listed above.
[0282] If there is a bitstream compatibility requirement, it belongs to the same layer and is an EOS NAL The next PU in the specified layer after the PU containing the unit is NoOutputBeforeR IRAP PU with recoveryFlag equal to 1, or NoOutputBefore Any CLVSS PU of a GDR PU with reRecoveryFlag equal to 1 Let us assume that:
[0283] 7.4.2.4.4 Order of NAL units and coded pictures, and , and their association with PU
[0284] One PU consists of 0 or 1 PH NAL unit and 1 or more VCL NAL units. One coded picture with units and zero or more other non-VCL NAL The association of VCL NAL units to coded pictures is , as described in Section 7.4.2.4.5. If a picture consists of two or more VCL NAL units, it is stored in one PH The NAL unit is assumed to reside in a PU. If one PH NAL unit exists in one PU, the first V of one picture The CL NAL unit is the first NAL unit following this PH NAL unit in decoding order for this picture. otherwise (if there is a PH NAL unit in the PU) The first VCL NAL unit of a picture is the only VCL NAL unit of this picture. CL NAL unit. The non-VCL NAL units in a PU (excluding the AUD and EOB NAL units) The order of (a) must comply with the following constraints:
[0285] -If one PH NAL unit exists in one PU, the first VCL of that PU It shall precede the NAL unit. -In the PU, there are DCI NAL units, VPS NAL units, and SPS NAL units. PPS NAL unit, prefix APS NAL unit, prefix S EI NAL unit, nal_unit_type equals RSV_NVCL_26 NAL unit or NAL unit is UNSPEC_28..UNSPEC_29 If there are NAL units in the range, they are the last VCL NAL unit of the PU. It shall not follow the -One DCI NAL unit, one VPS NAL unit, and one SPS in one PU If NAL units or PPS NAL units exist, they are NAL unit (if any) and the first VCL NAL unit of the PU. It shall take precedence. - nal_unit_type in PU is SUFFIX_APS_NUT, SUF Equal to FIX_SEI_NUT, FD_NUT, or RSV_NVCL_27, or NAL units in the range UNSPEC_30...UNSPEC_31 are It shall not precede the first VCL NAL unit. -If an EOS NAL unit exists within one PU, an EOB NAL unit ( The last NAL unit of all NAL units in the PU other than the last NAL unit (if any) Let's say it's To.
[0286] 7.4.2.4.5 VCL NAL unit order and its coded pictures Association to Cha
[0287] The order of VCL NAL units in a coded picture is as follows: It is restricted. - Any two coded slices of one coded picture NA For L units A and B, let subpicIdxA and subpicIdxB be their Let sliceAddrA and sliceddr be the subpicture level index values of Let B be their slice_address value. - a coded slice NAL unit if any of the following conditions are true: Let A precede coded slice NAL unit B. -subpicIdxA is less than subpicIdxB. -subpicIdxA is equal to subpicIdxB, and sliceAddrA is equal to sliceAddrB is less than sliceAddrB.
[0288] 7.4.3. Raw Byte Sequence Payload, Trailing Bits, and Byte Alignment Semantics of inment
[0289] 7.4.3.1 Decoding Capability Information RBSP Semantics
[0290] DCI RBSP must be present in the bitstream and at least either by being included in the first AU or by being provided by external means. and make it available to the decoder. NOTE 1 – The information contained in the DCI RBSP is not necessary for the operation of the decoding process. If present, all DCI NAL units in the bitstream are in the same code. It shall have the content.
[0291] dci_max_sublayers_minus1+1 is the number of sublayers in each C Specifies the maximum number of temporal sublayers that can exist in a layer in VS. The value of x_sublayers_minus1 should be in the range 0 to 6. .
[0292] In bitstreams conforming to this version of the specification, dci_reser ved_zero_bit shall be equal to 0. dci_reserved_zer The value 1 of o_bit is reserved for future use by ITU-T|ISO / IEC. .
[0293] dci_num_ptls_minus1+1 is the number of p in the DCI NAL unit Specifies a number of profile_tier_level() syntax constructs. Each OLS in a CVS in the bitstream is a DCI NAL unit. conforms to at least one of the profile_tier_level() syntax constructs It is a requirement of bitstream conformance that
[0294] NOTE 2 – A DCI NAL unit may be used for multiple pr PTL information that may be carried in the ofile_tier_level() syntax structure It is not necessary to include PTL information in each OLS individually.
[0295] dci_extension_flag equal to 0 indicates that the DCI RBSP syntax structure does not contain Specifies that the ci_extension_data_flag syntax element is not included. dci_extension_flag equal to 1 indicates that the DCI RBSP syntax structure Specifies that the dci_extension_data_flag syntax element is present.
[0296] dci_extension_data_flag can have any value. Its presence and value do not affect a decoder's conformance to the profile. A decoder conforming to the version will use all dci_extension_data_f The lag syntax element MUST be ignored.
[0297] 7.4.3.2 Video Parameter Set RBSP Semantics
[0298] The VPS RBSP is available for decryption before it is referenced, and the Tempo r alId is equal to 0 or is included in at least one AU provided by external means It can be enjoyed. The specific value of vps_video_parameter_set_id in CVS All VPS NAL units shall have the same content.
[0299] vps_video_parameter_set_id is the ID that other syntax elements refer to. Provides the VPS identifier. vps_video_parameter_set_id The value must be greater than 0.
[0300] vps_max_layers_minus1+1 is the number of layers each CVS refers to when This specifies the maximum number of layers allowed.
[0301] vps_max_sublayers_minus1+1 for each CV that references a VPS Specifies the maximum number of temporal sublayers that can exist in a layer of S. The value of sublayers_minus1 should be in the range 0 to 6.
[0302] vps_all_layers_same_num_sublayers_ equal to 1 The flag is a temporal sublayer for all layers in each CVS that references the VPS. Specifies that the number of layers is the same. vps_all_layers_sa equal to 0 me_num_sublayers_flag specifies the number of layers in each CVS that references the VPS. It specifies that the layers may or may not have the same number of temporal sub-layers. If vps_all_layers_same_num_sublayers_fla The value of g is assumed to be equal to 1.
[0303] vps_all_independent_layers_flag equal to 1 means that C All layers in VS are coded independently without inter-layer prediction. vps_all_independent_layer equal to 0 s_flag indicates that one or more layers in the CVS may use inter-layer prediction. If not present, vps_all_independent_layers The value of _flag is inferred to be equal to 1.
[0304] vps_layer_id[i] is the value of nuh_layer_id for the i-th layer For any two non-negative integer values of m and n, when m is less than n, vp The value of s_layer_id[m] must be less than vps_layer_id[n]. do.
[0305] vps_independent_layer_flag[i] equal to 1 means that the Specifies that layer in box i does not use inter-layer prediction. vps equal to 0 _independent_layer_flag[i] indicates whether the layer with index i is Inter-layer prediction is available and the syntax element vps_direct_ref_l of j If ayer_flag[i][j] is in the range 0 to i-1 (inclusive), Specifies that it exists in the VPS. If it does not exist, it is set to vps_independent_ The value of layer_flag[i] is inferred to be equal to 1.
[0306] vps_direct_ref_layer_flag[i][j] equal to 0 means The layer with index j is not a direct reference layer of the layer with index i. vps_direct_ref_layer_flag[i] equal to 1 [j] is the direct reference level of the layer with index j to the layer with index i. Specify that i and j are 0 to vps_max_layer_minus When it is within the range of 1, vps_direct_ref_layer_flag[i][ If j is not present, it is inferred to be equal to 0. If t_layer_flag[i] is equal to 0, then vps_direct_ref_l ayer_flag[i][j] is set to 1 for j in the range 0 to i-1. There must be at least one value. Variables NumDirectRefLayers[i], DirectRefLayerI dx[i][d], NumRefLayers[i], RefLayerIdx[i][ r], and LayerUsedAsdRefLayerFlag[j] are derived as follows: Served:
[0307] for(i=0;i<=vps_max_layers_minus1;i++){ for(j=0;j<=vps_max_layers_minus1;j++){ dependencyFlag[i][j]=vps_direct_ref_la yer_flag[i][j] for(k=0;k <i;k++) if(vps_direct_ref_layer_flag[i][k]&&d dependencyFlag[k][j]) dependencyFlag[i][j]=1 } LayerUsedAsRefLayerFlag[i]=0 } for(i=0;i<=vps_max_layers_minus1;i++){ for(j=0,d=0,r=0;j<=vps_max_layers_minus 1;j++){ (37) if(direct_ref_layer_flag[i][j]){ DirectRefLayerIdx[i][d++]=j LayerUsedAsRefLayerFlag[j]=1 } if(dependencyFlag[i][j]) RefLayerIdx[i][r++]=j } NumDirectRefLayers[i]=d NumRefLayers[i]=r }
[0308] vps_layer_id[i] is the layer with nuh_layer_id The variable GeneralLayerIdx[i] that specifies the layer index is as follows: is derived as follows. for(i=0;i<=vps_max_layers_minus1;i++) ( 38) GeneralLayerIdx[vps_layer_id[i]]=i
[0309] i and j, both in the range 0 to vps_max_layers_minus1 For any two different values, dependencyFlag[i][j] is 1. If equal, the chroma_format_idc and bit to be applied to the ith layer _depth_minus8 is the chroma_forma applied to the jth layer. t_idc and bit_depth_minus8 respectively. Stream conformance requirements.
[0310] If max_tid_ref_present_flag[i] is equal to 1, the syntax Specifies that the element max_tid_il_ref_pics_plus1[i] exists If max_tid_ref_present_flag[i] is equal to 0, The syntax element max_tid_il_ref_pics_plus1[i] is not present This stipulates:
[0311] If max_tid_il_ref_pics_plus1[i] is equal to 0, then i It specifies that inter-layer prediction is not used for non-IRAP pictures of the th layer. max_tid_il_ref_pics_plus1[i]>0 is the number of the i-th layer To decode a picture, max_tid_il_ref_pics_plus1[i ]-1 shall not be used as an ILRP. If not present, max_tid_il_ref_pics_plus1 The value of [i] is inferred to be equal to 7.
[0312] If each_layer_is_an_ols_flag is equal to 1, each OLS contains only one layer, and each layer in CVS that references a VPS is itself an OL S, and specifies that the single contained layer is the only output layer. If each_layer_is_an_ols_flag is equal to 0, then two or more vps_max_layers_minus1 is equal to 0. If not, the value of each_layer_is_an_ols_flag is inferred to be equal to 1. Otherwise, vps_all_independent_layers_f If lag is equal to 0, the value of each_layer_is_an_ols_flag is It is inferred to be equal to 0.
[0313] ols_mode_idc equal to 0 means that the total number of OLSs defined in the VPS is vps_mode_idc. max_layers_minus1+1, the i-th OLS layer The year index contains layers from 0 to i, and for each OLS, the maximum Only the upper layer is output. ols_mode_idc equal to 1 means that the total number of OLSs defined in the VPS is vps_mode_idc. max_layers_minus1+1, the i-th OLS layer The year index contains layers from 0 to i, and for each OLS, Output all layers. If ols_mode_idc is equal to 2, the total OLS specified by VPS is used. In each OLS, the output layer is explicitly signaled. Layers that are notified and other layers are direct or indirect reference layers of the OLS output layer It is stipulated that: The value of ols_mode_idc should be in the range of 0 to 2. The mode_idc value 3 is reserved for future use by ITU-T|ISO / IEC. are. vps_all_independent_layers_flag equals 1, and e ols_mod if ach_layer_is_an_ols_flag is equal to 0 The value of e_idc is inferred to be equal to 2.
[0314] num_output_layer_sets_minus1+1 is ols_mod When e_idc is equal to 2, it defines the total number of OLSs defined in the VPS. The variable TotalNumOlss, which specifies the total number of OLSs specified in VPS, is It is derived as follows.
[0315] if(vps_max_layers_minus1==0) TotalNumOlss=1 else if(each_layer_is_an_ols_flag||ols_m ode_idc==0||ols_mode_idc==1) TotalNumOlss=vps_max_layers_minus1+1(39 ) else if(ols_mode_idc==2) TotalNumOlss=num_output_layer_sets_minu s1+1
[0316] ols_output_layer_flag[i][j] equal to 1 means that ols_m If ode_idc is equal to 2, nuh_layer_id is equal to vps_layer_i Specifies that the layer equal to d[j] is the output layer of the i-th OLS. ols_output_layer_flag[i][j] is ols_mode_i If d is equal to 2, nuh_layer_id is equal to vps_layer_id[j] Specifies that the new layer is not the output layer of the ith OLS. The variable NumOutputLayer that specifies the number of output layers in the i-th OLS sInOls[i] specifies the number of sublayers of the jth layer in the ith OLS The variable NumSubLayersInLayerInOls[i][j] is the ith O Variable Outp that specifies the nuh_layer_id value of the jth output layer in LS utLayerIdInOls[i][j] and at least one OLS in k Variable LayerUsedA that specifies whether to use the th layer as the output layer Derive sOutputLayerFlag[k] as follows:
[0317] NumOutputLayersInOls[0]=1 OutputLayerIdInOls[0][0]=vps_layer_id[0] NumSubLayersInLayerInOLS[0][0]=vps_max_s ub_layers_minus1+1 LayerUsedAsOutputLayerFlag[0]=1 for(i=1,i<=vps_max_layers_minus1;i++) { if(each_layer_is_an_ols_flag||ols_mode_ idc<2) LayerUsedAsOutputLayerFlag[i]=1 else / *(!each_layer_is_an_ols_flag&&ols_ mode_idc==2)* / LayerUsedAsOutputLayerFlag[i]=0 } for(i=1;i<TotalNumOlss;i++) if(each_layer_is_an_ols_flag||ols_mode_ idc==0){ NumOutputLayersInOls[i]=1 OutputLayerIdInOls[i][0]=vps_layer_id[ i] for(j=0;j<i&&(ols_mode_idc==0);j++) NumSubLayersInLayerInOLS[i][j]=max_ti d_il_ref_pics_plus1[i] NumSubLayersInLayerInOLS[i][i]=vps_max _sub_layers_minus1+1 } else if(ols_mode_idc==1){ NumOutputLayersInOls[i]=i+1 for(j=0;j<NumOutputLayersInOls[i];j++) { OutputLayerIdInOls[i][j]=vps_layer_id [j] NumSubLayersInLayerInOLS[i][j]=vps_ma x_sub_layers_minus1+1 } } else if(ols_mode_idc==2) { for(j=0;j<=vps_max_layers_minus1;j++){ layerIncludedInOlsFlag[i][j]=0 NumSubLayersInLayerInOLS[i][j]=0 } for(k=0,j=0;k<=vps_max_layers_minus1;k ++) (40) if(ols_output_layer_flag[i][k]){ layerIncludedInOlsFlag[i][k]=1 LayerUsedAsOutputLayerFlag[k]=1 OutputLayerIdx[i][j]=k OutputLayerIdInOls[i][j++]=vps_layer _id[k] NumSubLayersInLayerInOLS[i][j]=vps_m ax_sub_layers_minus1+1 } NumOutputLayersInOls[i]=j for(j=0;j<NumOutputLayersInOls[i];j++) { idx=OutputLayerIdx[i][j] for(k=0;k<NumRefLayers[idx];k++){ layerIncludedInOlsFlag[i][RefLayerId x[idx][k]]=1 if(NumSubLayersInLayerInOLS[i][RefLa yerIdx[idx][k]] < max_tid_il_ref_pics_plus1[OutputL ayerIdInOls[i][j]]) NumSubLayersInLayerInOLS[i][RefLaye rIdx[idx][k]]= max_tid_il_ref_pics_plus1[OutputLay erIdInOls[i][j]] } } }
[0318] For each value of i in the range 0 to vps_max_layer_minus1, L layerUsedAsRefLayerFlag[i] and LayerUsedAsO The values of outputLayerFlag[i] shall not both be equal to 0. In other words, at least one OLS output layer and any other layer that is a direct reference layer There are no layers that do not exist. For each OLS, there must be at least one layer which is the output layer. That is, if the value of i is in the range 0 to TotalNumOlss-1 (inclusive), In this case, the value of NumOutputLayersInOls[i] shall be 1 or greater. The variable NumLayersInOls[i] specifies the number of layers in the i-th OLS. , and the nuh_layer_id value of the jth layer in the ith OLS. do. The variable LayerIdInOls[i][j] is derived as follows.
[0319] NumLayersInOls[0]=1 LayerIdInOls[0][0]=vps_layer_id[0] for(i=1;i <TotalNumOlss;i++){ if(each_layer_is_an_ols_flag){ NumLayersInOls[i]=1 LayerIdInOls[i][0]=vps_layer_id[i] (4 1) } else if(ols_mode_idc=0||ols_mode_idc= =1){ NumLayersInOls[i]=i+1 for(j=0;j <NumLayersInOls[i];j++) LayerIdInOls[i][j]=vps_layer_id[j] } else if(ols_mode_idc==2) { for(k=0,j=0;k<=vps_max_layers_minus1;k ++) if(layerIncludedInOlsFlag[i][k]) LayerIdInOls[i][j++]=vps_layer_id[k] NumLayersInOls[i]=j } }
[0320] Note 1 - The 0th OLS only includes the lowest layer (i.e., the layer whose nuh_layer_id is vps_layer_id[0]), and for the 0th OLS, only the included layers are output.
[0321] O of the layer where nuh_layer_id is LayerIdInOls[i][j] The variable OlsLayerIdx[i][j] that specifies the LS layer index is It is derived as follows. for(i=0;i <TotalNumOlss;i++) for j=0;j <NumLayersInOls[i];j++) (42) OlsLayerIdx[i][LayerIdInOls[i][j]]=j
[0322] The lowest layer in each OLS is assumed to be an independent layer. For each i in the range alNumOlss-1, vps_independent _layer_flag[GeneralLayerIdx[LayerIdInOls The value of [i][0]] shall be equal to 1. Each layer shall be included in at least one OLS defined by the VPS. In other words, k in the range 0 to vps_max_layers_minus1 For a specific value of nuh_layer_id, nuhLayerId is vps_lay For each layer equal to one of er_id[k], there exists at least one pair of values, i and j. where i ranges from 0 to TotalNumOlss-1 and j is NumLayersInOls[i]-1 and LayerIdInOls[i The value of ][j] is equal to nuhLayerId.
[0323] vps_num_ptls_minus1+1 is the profile_t Specifies the number of ier_level() syntax structures. The value of s1 must be less than TotalNumOlss.
[0324] If pt_present_flag[i] is equal to 1, the i-th pro of the VPS The file_tier_level() syntax structure includes profile, tier, and general constraint information. If pt_present_flag[i] is equal to 0, , the i-th profile_tier_level() syntax structure of the VPS The value of pt_present_flag[0] specifies that the is inferred to be equal to 1. If pt_present_flag[i] is equal to 0, The profile of the i-th profile_tier_level() syntax structure in the VPS, The tier and general constraint information are stored in the (i-1)th profile_tier_lev in the VPS. It is inferred to be the same as the el() syntactic construct.
[0325] ptl_max_temporal_id[i] is the i-th profile of the VPS The highest sublayer for which level information exists in the _tier_level() syntax structure Specifies the TemporalId of the expression. The value of [i] must be in the range of 0 to vps_max_sublayers_minus1. If vps_max_sublayers_minus1=0, then pt The value of l_max_temporal_id[i] is inferred to be equal to 0. ax_sublayers_minus1 is greater than 0 and vps_all_layer If s_same_num_sublayers_flag is equal to 1, then ptl_ma The value of x_temporal_id[i] is vps_max_sublayers_mi It is inferred to be equal to nus1.
[0326] vps_ptl_alignment_zero_bit=0.
[0327] ols_ptl_idx[i] is the profile_t applied to the ith OLS ier_level() syntax structure, profile_tier_lev on VPS Specifies an index into the list of el() syntax constructs. ols_p, if present The value of tl_idx[i] is in the range of 0 to vps_num_ptls_minus1. If vps_num_ptls_minus1 is equal to 0, then ols_p The value of tl_idx[i] is inferred to be equal to 0. If NumLayersInOls[i]=1, it applies to the i-th OLS The profile_tier_level() syntax construct is the level at which the i-th OLS layer is referenced. If NumLayersInOLS[i] is equal to 1, then V The profile_tier_ signaled in the PS and the SPS of the ith OLS It is a bitstream conformance requirement that the level() syntax structure be identical. is.
[0328] vps_num_dpb_params is the dpb_parameter for the VPS. Specifies the number of rs() syntax structures. The value of vps_num_dpb_params is 0 to It is in the range of 16. If not present, the value of vps_num_dpb_params is 0. is assumed to be equal to
[0329] vps_sublayer_dpb_params_present_flag is V In the PS dpb_parameters() syntax structure, max_dec_pic_ buffering_minus1[], max_num_reorder_pics[ ], and the presence of max_latency_increase_plus1[] syntax elements If not present, vps_sub_dpb_params_i info_present_flag is inferred to be equal to 0.
[0330] dpb_max_temporal_id[i] is the i-th dpb_par The meters() syntax structure may contain the DPB parameter, Specifies the TemporalId of the sublayer representation. The value of l_id[i] is in the range of 0 to vps_max_sublayers_minus1 vps_max_sublayers_minus1=0 In this case, the value of dpb_max_temporal_id[i] is inferred to be equal to 0. vps_max_sublayers_minus1 is greater than 0 and vps_all_ layers_same_num_sublayers_flag=1, d The value of pb_max_temporal_id[i] is It is inferred to be equal to rs_minus1.
[0331] ols_dpb_pic_width[i] is the width of each picture for the ith OLS. Specifies the width in luma samples of the memory buffer.
[0332] ols_dpb_pic_height[i] is the height of each picture storage buffer of the ith OLS. Specifies the height of the buffer in luminance samples.
[0333] ols_dpb_params_idx[i] is NumLayersInOls[i ] is greater than 1, the dpb_parameters() applied to the i-th OLS The syntax structure is inserted into the list of dpb_parameters() syntax structures in the VPS. Specifies the index of the ols_dpb_params_idx[i], if present. must be in the range of 0 to vps_num_dpb_params-1. If _dpb_params_idx[i] does not exist, ols_dpb_param The value of s_idx[i] is inferred to be equal to 0. If NumLayersInOls[i] is equal to 1, it applies to the ith OLS. The dpb_parameters() syntax structure is the parameter that the layer in the ith OLS references. It exists in the SPS.
[0334] vps_general_hrd_params_present_fla equal to 1 g is a syntax construct that uses general_hrd_parameters() and other HRD parameters. Specifies that the parameter is present in the VPS RBSP syntax structure. The general_hrd_params_present_flag is a syntax construct ral_hrd_parameters() and other HRD parameters are VPS RB It is specified that it does not exist in the SP syntax structure. If it does not exist, vps_general_ The value of hrd_params_present_flag is inferred to be 0. If NumLayersInOls[i] is equal to 1, it applies to the ith OLS. The general_hrd_parameters() syntax construct is The layer being added exists in the SPS it references.
[0335] vps_sublayer_cpb_params_present_fl equal to 1 ag is the i-th ols_hrd_parameters() syntax structure in the VPS. , sublayers whose TemporalId is in the range of 0 to hrd_max_tid[i] vps_subla equal to 0. yer_cpb_params_present_flag is the i-th The ols_hrd_parameters() syntax structure is hrd_max_tid[i] vps specifies that the HRD parameters for the sublayer representations are included only. When _max_sublayers_minus1=0, vps_sublayer_ The value of cpb_params_present_flag is inferred to be equal to 0. vps_sublayer_cpb_params_present_flag is 0 If equal, TemporalId is in the range 0 to hrd_max_tid[i]-1 The HRD parameters of the sublayer representation in Inferred to be equal to the HRD parameter of the sublayer representation equal to _tid[i]-1 This includes the fixed_pic_rate_general_flag[i] construct. Starting from the statement element, the sublayer_hrd_parameters(i) syntax structure The HRD parameters up to The condition "if(general_vcl_hrd_params_present_fl ag)”
[0336] num_ols_hrd_params_minus1+1 is vps_genera When l_hrd_params_present_flag is equal to 1, ols_hrd_parameter present in l_hrd_parameter() Specifies the number of s() syntax constructs. num_ols_hrd_params_minus1 The value of must be in the range of 0 to TotalNumOlss-1.
[0337] hrd_max_tid[i] is the ith ols_hrd_parameters( ) Temporal of the highest sublayer representation whose syntax structure contains HRD parameters The value of hrd_max_tid[i] is 0 to vps_max_subl It must be within the range of ayers_minus1. If rs_minus1 is equal to 0, the value of hrd_max_tid[i] is equal to 0. It is inferred that vps_max_sublayers_minus1 is greater than 0 and v ps_all_layers_same_num_sublayers_flag=1 If they are equal, the value of hrd_max_tid[i] is equal to the value of vps_max_sublayer It is inferred to be equal to s_minus1.
[0338] ols_hrd_idx[i] is the number of layers in the If not, the ols_hrd_parameters() syntax applied to the ith OLS The ols_hrd_parameters() syntax structure in VPS is shown in the list below. The value of ols_hrd_idx[[i]] is from 0 to num_ols It must be within the range of _hrd_params_minus1. If NumLayersInOls[i] is equal to 1, it applies to the ith OLS. The ols_hrd_parameters() syntax construct is used to set the ray parameters for the i-th OLS. It exists in the SPS that it references. The value of num_ols_hrd_param_minus1+1 is TotalNumOL If it is equal to S, the value of ols_hrd_idx[i] is inferred to be equal to i. If not, NumLayersInOls[i] is greater than 1 and num_ols_hr If d_params_minus1 is equal to 0, then ols_hrd_idx[[i] The value is inferred to be equal to 0.
[0339] If vps_extension_flag is equal to 0, the VPS RBSP syntax structure does not contain the vps_extension_data_flag syntax element. If vps_extension_flag is equal to 1, the VPS RBSP configuration The statement structure specifies the presence of the vps_extension_data_flag syntax element. Determine.
[0340] The vps_extension_data_flag can have any value. Its presence and value determine the decoder's conformance to the features specified in this specification version. Decoders conforming to this specification version will not affect all vps_ext The tension_data_flag syntax element MUST be ignored.
[0341] 7.4.3.3 Sequence Parameter Set RBSP Semantics
[0342] The SPS RBSP is available to the decoding process before it is referenced, and the Tempo ralId is equal to 0 or is included in at least one AU provided by external means can be. In one CVS, a specific value of sps_seq_parameter_set_id is All SPS NAL units shall have the same content.
[0343] sps_seq_parameter_set_id is the SP that other syntax elements refer to Provides an identifier for S. SPS NAL units are encoded as sps_se regardless of the value of nuh_layer_id. They share the same value space of q_parameter_set_id. spsLayerId is the nuh_layer_id of a particular SPS NAL unit value and vclLayerId is the nuh_layer_ A specific VCL NAL unit has a spsLayerId of vclLa Layers whose nuh_layer_id is less than or equal to spsLayerId and whose nuh_layer_id is spsLayerId contains a layer with nuh_layer_id that is a vclLayerId does not refer to a specific SPS NAL unit unless both are contained in one OLS. Let's say.
[0344] sps_video_parameter_set_id (if greater than 0) Set the value of vps_video_parameter_set_id of the VPS referenced by PS. Prescribe. If sps_video_parameter_set_id is equal to 0, then Applies. -SPS does not refer to VPS. - When decoding each CLVS that references an SPS, the VPS is not referenced. A value of -vps_max_layers_minus1 is inferred to be equal to 0. -CVS should contain only one layer (i.e. all VCL NAL units shall have the same value of nuh_layer_id). -GeneralLayerIdx[nuh_layer_id] has a value equal to 0 It is inferred that: -vps_independent_layer_flag[GeneralLay The value of erIdx[nuh_layer_id]] is inferred to be equal to 1. vps_independent_layer_flag[GeneralLayer If idx[nuh_layer_id] is equal to 1, it is a special nuh_layer _id value, nuh_lay of SPS referenced by CLVS with nuhLayerId er_id shall be equal to nuhLayerId. The value of sps_video_parameter_set_id is the same as the value of C It shall be the same in all SPSs referenced by the LVS.
[0345] sps_max_sublayers_minus1+1 can exist for each CLV The maximum number of temporal sublayers is specified with reference to the SPS. The value of yers_minus1 ranges from 0 to vps_max_sublayers_minu It is assumed that the range is up to s1.
[0346] sps_reserved_zero_4bits is sps_reserved_z Shall be equal to 0 in the bitstream to which it applies. Other values of ero_4bits are reserved for future use by ITU-T|ISO / IEC. It has been done.
[0347] sps_ptl_dpb_hrd_params_present_fla equal to 1 g is the profile_tier_level() syntax structure and dpb_parame The ters() syntax construct exists in the SPS and the general_hrd_parameter The s() syntax construct and the ols_hrd_parameters() syntax construct are also SPS sps_ptl_dpb_hrd_par equal to 0 ams_present_flag indicates whether any of these four syntax constructs are present in the SPS. sps_ptl_dpb_hrd_params_present The value of t_flag is vps_independent_layer_flag[Gen eralLayerIdx[nuh_layer_id]].
[0348] gdr_enabled_flag equal to 1 indicates that the SPS is being used in CLVS. Specifies that GDR pictures can be present in the flag indicates that there are no GDR pictures in the CLVS that references the SPS. Prescribe.
[0349] chroma_format_idc is the format of the luminance sample as specified in Section 6.2. Chroma sampling for RGB signals is shown.
[0350] separate_colour_plane_flag=1 is 4:4:4 chroma separate_col indicates that the three color components of the format are coded separately. our_plane_flag=0 indicates that the color components are not coded separately. If parate_colour_plane_flag is not present, this is equal to 0. separate_colour_plane_flag is equal to 1 In this case, the coded picture consists of three separate components, each of which is It consists of coded samples of one color plane (Y, Cb, or Cr) and uses monochrome coding syntax. In this case, each color plane is associated with a specific color_plane_id value. can be done. NOTE 1 - Decoding between color planes with different color_plane_id values is not dependent For example, the decoding process of a monochrome image with a single color_plane_id value is The process involves interfacing data from monochrome images with different colour_plane_id values. - Not used for prediction. Based on the value of separate_colour_plane_flag, the variable Chr The values of omaArrayType are assigned as follows: - If separate_colour_plane_flag is equal to 0, Ch romaArrayType is set equal to chroma_format_idc . - Otherwise (separate_colour_plane_flag is 1) ), ChromaArrayType is set equal to 0.
[0351] res_change_in_clvs_allowed_flag equal to 1 indicates that S Specifies that the spatial resolution of pictures may vary within a CLVS that references a PS. res_change_in_clvs_allowed_flag equal to 0 , the possibility that the spatial resolution of the picture does not change within any CLVS that references the SPS. This stipulates that there is
[0352] pic_width_max_in_luma_samples is the number of lum pic_width_max Specifies the maximum width of each decoded picture that references an SPS at the _in_luma_samples must not be equal to 0 and Max(8,MinC bSizeY) is an integer multiple of Any OLS with OLS index i containing one or more layers that reference an SPS In the above example, the value of pic_width_max_in_luma_samples is s_dpb_pic_width[i] shall be less than or equal to the bitstream It is a conformance requirement.
[0353] pic_height_max_in_luma_samples is the number of luma samples Specifies the maximum height of each decoded picture that references an SPS in units of pic_height_ max_in_luma_samples must not be equal to 0 and must be less than Max(8,M inCbSizeY) is an integer multiple of Any OLS with OLS index i containing one or more layers that reference an SPS In the LS_DPB_pic_height[i] or less. This is a system compatibility requirement.
[0354] sps_conformance_window_flag equal to 1 specifies the The offset parameters of the next adaptive cropping window in the SPS follow. sps_conformance_window_flag equal to 0 indicates conformance Indicates that the active cropping window offset parameter is not present in the SPS.
[0355] sps_conf_win_left_offset, sps_conf_win_r ight_offset, sps_conf_win_top_offset, and s ps_conf_win_bottom_offset is pic_width_max pic_width_in_luma_sa equal to _in_luma_samples mples and pic_height_max_in_luma_samples Applied to pictures with pic_height_in_luma_samples sps_conformance_window Specifies the cropping window that is used. If _flag is equal to 0, sps_conf_win_left_offset, s ps_conf_win_right_offset, sps_conf_win_to p_offset and sps_conf_win_bottom_offset values is inferred to be equal to 0. The adaptive cropping window is SubWidthC*sps_conf_win_ left_offset to pic_width_max_in_luma_sampl es-(SubWidthC*sps_conf_win_right_offset+ 1) Horizontal picture coordinate to, and SubHeightC*sps_conf_win_ top_offset to pic_height_max_in_luma_sampl es-(SubHeightC*sps_conf_win_bottom_offse t+1). SubWidthC*(sps_conf_win_left_offset+sps _conf_win_right_offset) value is pic_width_max _in_luma_samples, and SubHeightC*(s ps_conf_win_top_offset+sps_conf_win_bott om_offset) value is pic_height_max_in_luma_sam It shall be smaller than ples. If ChromaArrayType is not equal to 0, the corresponding The specified sample is the picture coordinate (x / SubWidthC, y / SubHeight tC), and (x,y) are the picture coordinates of the specified luma sample. is. NOTE 2 - The offset parameter of the adaptive cropping window is only applicable on the output side. All internal decoding processes are applied to the uncropped picture size. will be done.
[0356] sps_log2_ctu_size_minus5+5 is the brightness code of each CTU. sps_log2_ctu_size_min Specifies the size of the logging tree block. The value of us5 is in the range of 0 to 2. sps_log2_CTU_size_minu The value 3 for s5 is reserved for future use by ITU-T|ISO / IEC. The variables CtbLog2SizeY and CtbSizeY are derived as follows: CtbLog2SizeY=sps_log2_ctu_size_minus5 +5 (43) CtbSizeY=1< <CtbLog2SizeY (44)
[0357] subpic_info_present_flag equal to 1 for CLVS Sub-picture information is present, and each picture in CLVS can have one or more sub-pictures. subpic_info_present_flag equal to 0 specifies that There is no subpicture information for CLVS, and each picture in CLVS has a subpicture. It specifies that there is exactly one If res_change_in_clvs_allowed_flag is equal to 1 In this case, the value of subpic_info_present_flag shall be equal to 0. NOTE 3 - If the bitstream is the result of a sub-bitstream extraction process and the sub-bitstream If the input bitstream to the stream extraction process contains only a subset of the subpictures, In this case, the subpic_info_present_flag in the RBSP of the SPS is You may need to set the value to 1.
[0358] sps_num_subpics_minus1+1 is the number of subpics of each picture in the CLVS. The value of sps_num_subpics_minus1 is 0. ~Ceil(pic_width_max_in_luma_samples÷CtbS izeY)*Ceil(pic_height_max_in_luma_sample s÷CtbSizeY)-1. If not present, sps_n The value of um_subpics_minus1 is inferred to be equal to 0.
[0359] sps_independent_subpics_flag equal to 1 means that CLVS Intra-prediction, inter-prediction, and inverse prediction across any sub-picture boundary in sps_in equal to 0 specifies that no loop filtering operation can be performed. dependent_subpics_flag is the flag for determining the boundaries of subpictures in CLVS. It specifies that a wide range of inter-prediction and in-loop filtering operations are possible. If not present, sps_independent_subpics_flag The value is inferred to be 0.
[0360] subpic_ctu_top_left_x[i] is the top left corner of the ith subpicture Specifies the horizontal position of the CTU in CtbSizeY units. The length of the syntax element is Ceil( Log2((pic_width_max_in_luma_samples+CtbS sizeY-1)>>CtbLog2SizeY)) bits. If not present, su The value of bpic_ctu_top_left_x[i] is inferred to be equal to 0.
[0361] subpic_ctu_top_left_y[i] is the top left corner of the ith subpicture Specifies the vertical position of the CTU in CtbSizeY units. The length of the syntax element is Ceil( Log2((pic_height_max_in_luma_samples+Ctb SizeY-1)>>CtbLog2SizeY) bits. If not present, s The value of ubpic_ctu_top_left_y[i] is inferred to be equal to 0.
[0362] subpic_width_minus1[i]+1 is the width of the ith subpicture It is specified in CtbSizeY units. The length of the syntax element is Ceil(Log2((pic_w idth_max_in_luma_samples+CtbSizeY-1)>>Ct bLog2SizeY)) bits. If not present, subpic_width_ The value of minus1[i] is ((pic_width_max_in_luma_sam ples+CtbSizeY-1)>>CtbLog2SizeY)-subpic_c It is inferred to be equal to tu_top_left_x[i]-1.
[0363] subpic_height_minus1[i]+1 is the height of the ith subpicture The length of the syntax element is specified in CtbSizeY units. _height_max_in_luma_samples+CtbSizeY-1)> >CtbLog2SizeY)) bits. If not present, subpic_hei The value of ght_minus1[i] is ((pic_height_max_in_lum a_samples+CtbSizeY-1)>>CtbLog2SizeY)-sub It is inferred to be equal to pic_ctu_top_left_y[i]-1.
[0364] subpic_treated_as_pic_flag[i] equal to 1 indicates that the CLV The i-th subpicture of each coded picture in S is It specifies that the data is treated as a picture in the decoding process, excluding the tiling operation (calculation). subpic_treated_pic_flag[i] equal to 0 indicates that the The ith subpicture of each coded picture is filtered by in-loop filtering. Specifies that the picture is not treated as a picture in the decoding process except for motion. If not present, The value of subpic_treated_as_pic_flag[i] is Inferred to be equal to pendent_subpics_flag. If subpic_treated_as_pic_flag[i] is equal to 1, the output Each output layer in the OLS contains the layer containing the ith subpicture as an input layer. For a layer and its reference layers, all of the following conditions must be true for the bitstream to be valid: This is a system compatibility requirement. -All pictures in the output layer and its reference layers are mapped to pic_width The values of _in_luma_samples are the same and pic_height_in_l Assume the value of uma_samples is the same. -All SPSs referenced by an output layer and its reference layers must have the same sps_num _subpics_minus1 and has a value of 0 to sps_num_subpics For each value j in the range _minus1, the same subpic_ctu_t op_left_x[j], subpic_ctu_top_left_y[j], su bpic_width_minus1[j], and loop_filter_acro It shall have the value of ss_subpic_enabled_flag[j]. - All pictures in each access unit of the output layer are compared with their reference layers. Also, for values of j in the range 0 to sps_num_subpics_minus1, All subpics shall have the same SubpicIdVal[j] value.
[0365] loop_filter_across_subpic_enabled_ equal to 1 flag[i] is the ith subpicture of each coded picture in CLVS. Specifies that in-loop filtering operations can occur across channel boundaries. .
[0366] loop_filter_across_subpic_enabled_ equal to 0 flag[i] is the ith subpicture of each coded picture in CLVS. Specifies that no inter-loop filtering operations occur across channel boundaries. If not present, loop_filter_across_subpic_enabled The value of _pic_flag[i] is 1-sps_independent_subpic It is inferred to be equal to s_flag. The shape of the subpicture is such that each subpicture, when decoded, has its entire left boundary and The entire top boundary is a picture boundary or a previously decoded sub-picture boundary. It is a bitstream conformance requirement that
[0367] sps_subpic_id_len_minus1+1 is the syntax element sps_sub pic_id[i], syntax element pps_subpic_id[i] (if present), and and the syntax element slice_subpic_id (if present) Specifies the number of bits. The value of sps_subpic_id_len_minus1 is 0 to It is in the range of 15. 1<(sps_subpic_id_len_minus1+1) The value must be greater than or equal to sps_num_subpics_minus1+1.
[0368] subpic_id_mapping_explicitly_signa equal to 1 The lled_flag is referenced by an SPS or CLVS coded picture. Subpicture ID mapping is explicitly signaled in one of the referenced PPSs. subpic_id_mapping_explic equal to 0 Itly_signalled_flag is used to indicate to CLVS the ID of the subpicture. Specifies that no subpic_ id_mapping_explicitly_signalled_flag has a value of 0 It is speculated that...
[0369] subpic_id_mapping_in_sps_flag equal to 1 means that the sub pic_id_mapping_explicitly_signalled_flag If is equal to 1, the subpicture ID mapping is signaled in the SPS. subpic_id_mapping_in_sps_flag equal to 0 is subpic_id_mapping_explicitly_signalled If _flag is equal to 1, the image referenced by the CLVS coded picture is This specifies that sub-picture ID mapping is signaled in the PPS.
[0370] sps_subpic_id[i] specifies the subpicture ID of the ith subpicture. The length of the syntax element of sps_subpic_id[i] is _id_len_minus1+1 bits.
[0371] bit_depth_minus8 is the sample of the luma and chroma array BitDepth Bit depth and chroma quantization parameter range offset QpBdOffset of the pull The values are defined as follows: BitDepth=8+bit_depth_minus8 (45) QpBdOffset=6*bit_depth_minus8 (46) bit_depth_minus8 is in the range 0 to 8.
[0372] sps_entropy_coding_sync_enabled_fl equal to 1 ag restores the first CTB in the row of the CTB of each tile in each picture by referring to the SPS. It specifies that the specified synchronization process of the context variable is invoked before issuing the command, and refers to the SPS. After decoding the CTU containing the first CTB in the row of CTBs for each tile in each picture, , specifies that a specific memory operation for the context variable is to be invoked. sp equal to 0 s_entropy_coding_sync_enabled_flag is used to set SPS Before decoding, the CTU containing the first CTB in the CTB column of each tile in each reference picture is There is no need to invoke the default synchronization process for the context variable, and the After decoding the CTU containing the first CTB in the row of the CTB for each tile, the context variable is This specifies that there is no need to start a specific storage process.
[0373] sps_wpp_entry_point_offsets_present equal to 1 t_flag is sps_entropy_coding_sync_enabled_ If flag is equal to 1, signal for the entry point offset of the row of the CTU Specifies that may be present in the slice header of a picture that references an SPS. sps_wpp_entry_point_offsets_present_flag The SPS specifies the entry point offset of the CTU row in the slice header of the picture that references the SPS. If not present, sps_wpp_e The value of ntry_point_offsets_present_flag is assumed to be 0. do.
[0374] sps_weighted_pred_flag equal to 1 refers to the SPS Specifies that weighted prediction may be applied to P slices. sps_ equal to 0 weighted_pred_flag specifies the weighted pred_flag for the P slices that refer to the SPS. Specifies that no predictions are to be applied.
[0375] sps_weighted_bipred_flag equal to 1 refers to the SPS Specifies that explicit weighted prediction may be applied to B slices that are The new sps_weighted_bipred_flag is used to specify the B-series weighting that refers to the SPS. Specifies that no explicit weighting predictions are applied to Rice.
[0376] log2_max_pic_order_cnt_lsb_minus4 is the picture The value of the variable MaxPicOrderCntLsb used in the decoding process of the order count is as follows: It is specified as follows: MaxPicOrderCntLsb=2 (log2_max_pic_orde r_cnt_lsb_minus4+4) (47) The value of log2_max_pic_order_cnt_lsb_minus4 is 0 to It should be within the range of 12.
[0377] sps_poc_msb_flag equal to 1 means ph_poc_msb_prese Specifies that the nt_flag syntax element is present in the PH that references the SPS. Equal to 0 sps_poc_msb_flag is ph_poc_msb_present_fla It specifies that the g syntax element is not present in the PH that references the SPS.
[0378] poc_msb_len_minus1+1, the SPS is included in the PH that references it. When poc_msb_val is specified, it specifies the length in bits of the poc_msb_val syntax element. The value of oc_msb_len_minus1 is 0 to 32-log2_max_pic_o The value must be within the range of rder_cnt_lsb_minus4-5.
[0379] num_extra_ph_bits_bytes is the coding that refers to the SPS This specifies the number of bytes of extra bits in the PH syntax structure of the picture. In bitstreams conforming to this version, num_extra_ph_bi The value of ts_bytes shall be equal to 0. In this version of the specification, n The value of um_extra_ph_bits_bytes is required to be equal to 0, Decoders conforming to this version of the specification must use num_extra_ph_bits The syntax shall permit _bytes to have a value of 1 or 2.
[0380] num_extra_sh_bits_bytes is the coding that refers to the SPS This specifies the number of bytes of extra bits in the slice header of the picture. In bitstreams conforming to this version of The value of its_bytes shall be equal to 0. In this version of the specification: The value of num_extra_sh_bits_bytes is required to be equal to 0. , Decoders conforming to this version of the specification must use num_extra_sh_bit The syntax shall permit s_bytes to have a value of 1 or 2.
[0381] sps_sublayer_dpb_params_flag is the dpb_p flag of SPS. In the parameters() syntax, max_dec_pic_bufferin g_minus1[i], max_num_reorder_pics[i], and m Controls the presence of the ax_latency_increase_plus1[i] syntax element If not present, sps_sub_dpb_params_info_p The value of resent_flag is inferred to be 0.
[0382] long_term_ref_pics_flag equal to 0 means that the optional Specifies that LTRP is not used for inter prediction of any coded picture. long_term_ref_pics_flag equal to 1 indicates that the LTRP is a CLVS Even if LTRP is used for inter prediction of one or more coded pictures in Define what is good.
[0383] inter_layer_ref_pics_present_flag equal to 0 ,ILRP is used for inter prediction of any coded picture in CLVS. Specifies that inter_layer_ref_pic_flag equal to 1 ILRP for inter prediction of one or more coded pictures in CLVS sps_video_parameter_set_ If id is equal to 0, then inter_layer_ref_pics_present_ The value of flag is inferred to be equal to 0. _flag[GeneralLayerIdx[nuh_layer_id]] equals 1 If necessary, set the inter_layer_ref_pics_present_flag The value shall be equal to 0.
[0384] sps_idr_rpl_present_flag equal to 1 indicates that the reference picture list Specifies that the s syntax element is present in the slice header of an IDR picture. ps_idr_rpl_present_flag is used when the reference picture list syntax element is I It is specified that it is not present in the slice header of a DR picture.
[0385] rpl1_same_as_rpl0_flag equal to 1 specifies the syntax element num_re f_pic_lists_in_sps[1] and the syntax structure ref_pic_list Specifies that _struct(1,rplsIdx) does not exist, and the following applies: - The value of num_ref_pic_lists_in_sps[1] is num_r It is inferred to be equal to the value of ef_pic_lists_in_sps[0]. - Each structure of ref_pic_list_struct(1,rplsIdx) Element values range from 0 to num_ref_pic_lists_in_sps[0]-1 ref_pic_list_struct(0,rplsId x) is inferred to be equal to the value of the corresponding syntax element in
[0386] num_ref_pic_lists_in_sps[i] is the number of li in the SPS ref_pic_list_struct(listIdx,rp where stIdx is i lsIdx) Specifies the number of syntax structures. The value of ps[i] is in the range of 0 to 64. NOTE 4 - For each value of listIdx (equal to 0 or 1), For values (equal to 0 or 1), the decoder will 1 ref_pic_list_struct(listIdx,rplsIdx ) Syntax structures may be signaled directly, so num_ref_pic_lists_i n_sps[i]+1ref_pic_list_struct(listIdx,rp lsIdx) memory must be reserved for the total number of syntax structures.
[0387] qtbtt_dual_tree_intra_flag equal to 1 indicates that the I slice For each CTU, we use an implicit quadtree partitioning to decompose it into 64x64 luma samples. The coding units are divided into luminance coding units. and chroma are the roots of two separate coding_tree syntax structures. q equal to 0 tbtt_dual_tree_intra_flag specifies whether to add a separate code to the slice. Specifies that the g_tree syntax is not used. If tra_flag is not present, it is inferred to be equal to 0.
[0388] log2_min_luma_coding_block_size_minus2+ 2 specifies the minimum luma coding block size. The value of coding_block_size_minus2 is 0 to Min(4,sps_ log2_CTU_size_minus5+3). Variables MinCbLog2SizeY, MinCbSizeY, IbcBufWidth Y, IbcBufWidthC, and Vsize are derived as follows: MinCbLog2SizeY=log2_min_luma_coding_b lock_size_minus2+2 (48) MinCbSizeY=1< <MinCbLog2SizeY (49) IbcBufWidthY=256*128 / CtbSizeY (50) IbcBufWidthC=IbcBufWidthY / SubWidthC (51) VSize=Min(64,CtbSizeY) (52) The value of MinCbSizeY shall be less than or equal to VSize. The variables CtbWidthC and CtbWidthD, which respectively specify the width and height of the array of each chroma CTB, are and CtbHeightC are derived as follows: - chroma_format_idc is 0 (monochrome) or sepa If rate_colour_plane_flag is equal to 1, then CtbWidth C and CtbHeightC are both equal to 0. - Otherwise, CtbWidthC and CtbHeightC are: It is derived as follows. CtbWidthC=CtbSizeY / SubWidthC (53) CtbHeightC=CtbSizeY / SubHeightC (54) log2BlockWidth is 0 to 4, log2BlockHeight is 0 to For 4, 1< <log2BlockWidthと1<<log2BlockHeigh Using t as input, perform the right-leaning diagonal scan order array initialization process specified in Section 6.5.2. Call, output is DiagScanOrder[log2BlockWidth][l og2BlockHeight]. log2BlockWidth is 0 to 6, log2BlockHeight is 0 to For 6, 1< <log2BlockWidthと1<<log2BlockHeigh Using t as input, call the horizontal and vertical scan order array initialization process specified in Section 6.5.3. The output is HorTravScanOrder[log2BlockWidth][ log2BlockHeight] and VerTravScanOrder[log2Bl BlockWidth][log2BlockHeight].
[0389] partition_constraints_override_ena equal to 1 bled_flag refers to SPS and partition_constraints in PH Specifies the presence of traints_override_flag. tion_constraints_override_enabled_flag partition_constraints_overrid in PH that references SPS Specifies that e_flag is not present.
[0390] sps_log2_diff_min_qt_min_cb_intra_slice _luma is the minimum of the luma samples in the luma leaf blocks resulting from the quadtree decomposition of the CTU. A slice with a base 2 logarithm of size and slice_type 2(I) that references the SPS The base 2 logarithm of the minimum coding block size of the luminance samples of the luminance CU in partition_constraints_override If de_enabled_flag is equal to 1, the default difference is the difference that refers to the SPS. ph_log2_diff_min_qt_min_cb_luma in the PH sps_log2_diff_min_qt_min_ The value of cb_intra_slice_luma is 0 to CtbLog2SizeY-Mi The brightness resulting from the quadtree division of the CTU is within the range of nCbLog2SizeY. The base 2 logarithm of the minimum size of the luma samples in a luminance leaf block is derived as follows: can be. MinQtLog2SizeIntraY=sps_log2_diff_min _qt_min_cb_intra_slice_luma+MinCbLog2Siz eY (55)
[0391] sps_max_mtt_hierarchy_depth_intra_slice _luma refers to the SPS in a slice with slice_type 2(I). The default maximum number of coding units resulting from a multi-type tree partition of a quadtree is Specifies the hierarchical depth. partition_constraints_override If _enabled_flag is equal to 1, the default maximum hierarchy depth is SPS. ph_max_mtt_hierarchy_depth_in exists in the referenced PH Can be overridden by tra_slice_luma. The value of t_hierarchy_depth_intra_slice_luma is 0 to Within the range of 2*(CtbLog2SizeY-MinCbLog2SizeY) Let's say.
[0392] sps_log2_diff_max_bt_min_qt_intra_slice _luma, a luma coding block that can be split using binary splitting with reference to SPS The base 2 logarithm of the maximum size (width or height) of the luminance samples in the pixel, where 2(I) is the pixel size. The brightness of the luminance leaf blocks resulting from the quadtree partitioning of the CTU of a slice with e_type Specifies the minimum size (width or height) of a parti sample and the default difference between them. tion_constraints_override_enabled_flag is 1 If it is equal to , the default difference is ph_log2_d which exists in PH that refers to SPS. Can be overridden by iff_max_bt_min_qt_luma. s_log2_diff_max_bt_min_qt_intra_slice_lu The value of ma is 0 to CtbLog2SizeY-MinQtLog2SizeIntraY sps_log2_diff_max_bt_min_qt If _intra_slice_luma does not exist, sps_log2_diff_ It is inferred that the value of max_bt_min_qt_intra_slice_luma will be 0 will be done.
[0393] sps_log2_diff_max_tt_min_qt_intra_slice _luma is a luminance coding block that can be split using a ternary split that references SPS. The base 2 logarithm of the maximum size (width or height) of the luminance samples in the lock, and sl, which is 2(I). Luminance leaf blocks resulting from quadtree decomposition of CTUs of slices with ice_type Specifies the default difference between the minimum size (width or height) of the luminance samples of the part. ition_constraints_override_enabled_flag If equal to 1, the default difference is ph_log2_ Can be overridden by diff_max_tt_min_qt_luma. ps_log2_diff_max_tt_min_qt_intra_slice_l The value of uma is 0 to CtbLog2SizeY-MinQtLog2SizeIntra It is assumed to be within the range of Y. sps_log2_diff_max_tt_min_q sps_log2_diff if t_intra_slice_luma does not exist The value of _max_tt_min_qt_intra_slice_luma is equal to 0 It is inferred that:
[0394] sps_log2_diff_min_qt_min_cb_inter_slice is the base of the minimum size of luma samples in luma leaf blocks resulting from the quadtree decomposition of a CTU. 2 logarithm and slice_type equal to 0 (B) or 1 (P) that refers to the SPS. The base-2 pair of the minimum luminance coding block size of luminance samples for a luminance CU in Rice. Specifies the default difference between the number of partitions and the partition_constraints_o. If verride_enabled_flag is equal to 1, the default difference is ph_log2_diff_min_qt_min_cb_ present in PH referencing S Can be overridden by luma. sps_log2_diff_min_qt The value of _min_cb_inter_slice is 0 to CtbLog2SizeY-Mi The brightness resulting from the quadtree division of the CTU is within the range of nCbLog2SizeY. The base 2 logarithm of the minimum size of the luma samples in a luminance leaf block is derived as follows: can be. MinQtLog2SizeInterY=sps_log2_diff_min _qt_min_cb_inter_slice+MinCbLog2SizeY ( 56)
[0395] sps_max_mtt_hierarchy_depth_inter_slice refers to a slice with slice_type 0 (B) or 1 (P) that references the SPS. The default coding unit resulting from the multitype tree partitioning of the quadtree in Specifies the maximum hierarchical depth. If de_enabled_flag is equal to 1, the default maximum hierarchy depth is S ph_max_mtt_hierarchy_depth present in PH referencing PS Can be overridden by _inter_slice. sps_max_mtt_ The value of hierarchy_depth_inter_slice is 0 to 2*(CtbL og2SizeY-MinCbLog2SizeY).
[0396] sps_log2_diff_max_min_qt_inter_slice is 2 The maximum size of the luma samples of a luma coding block that can be divided using value division ( The base 2 logarithm of the width or height of the array and sli equal to 0 (B) or 1 (P) referencing the SPS. of luminance leaf blocks resulting from quadtree partitioning of CTUs of slices with ce_type Specifies the minimum size (width or height) of a luminance sample and the default difference between ition_constraints_override_enabled_flag If equal to 1, the default difference is ph_log2_ Can be overridden by diff_max_bt_min_qt_luma. The value of ps_log2_diff_max_bt_min_qt_inter_slice is in the range of 0 to CtbLog2SizeY-MinQtLog2SizeInterY sps_log2_diff_max_bt_min_qt_int If er_slice does not exist, sps_log2_diff_max_bt_mi The value of n_qt_inter_slice is inferred to be 0.
[0397] sps_log2_diff_max_tt_min_qt_inter_slice is the maximum number of luma samples of the luma coding block that can be divided using ternary division. Equals the base 2 logarithm of the size (width or height) and 0 (B) or 1 (P) referring to the SPS. Luminance leaf breaks resulting from quadtree division of CTUs for slices with different slice_types Specifies the minimum size (width or height) of a lock luminance sample and the default difference between them. partition_constraints_override_enabled_f If lag is equal to 1, the default difference is ph_l, which exists in the PH that references the SPS. Can be overridden by og2_diff_max_tt_min_qt_luma sps_log2_diff_max_tt_min_qt_inter_sli The value of ce is 0 to CtbLog2SizeY-MinQtLog2SizeInterY sps_log2_diff_max_tt_min_qt If _inter_slice does not exist, sps_log2_diff_max_t A value of t_min_qt_inter_slice is inferred to be 0.
[0398] sps_log2_diff_min_qt_min_cb_intra_slice _chroma has a treeType equal to DUAL_TREE_CHROMA The minimum size of the luma samples in the chroma leaf block by quadtree division of the chroma CTU. The base 2 logarithm of the slice and the slice type of 2(I) are shown in SPS. Luma scale of chroma CU with treeType equal to DUAL_TREE_CHROMA This parameter specifies the default difference between the base 2 logarithm of the minimum coding block size for a sample and the default value for the minimum coding block size for a sample. partition_constraints_override_enabled_f If lag is equal to 1, the default difference is ph_l, which exists in PH with reference to SPS. Overridden by og2_diff_min_qt_min_cb_chroma. sps_log2_diff_min_qt_min_cb_intra_slice_ The value of chroma is 0 to CtbLog2SizeY-MinCbLog2SizeY. If not present, sps_log2_diff_min_qt The value of _min_cb_intra_slice_chroma is inferred to be equal to 0 A CTU whose treeType is DUAL_TREE_CHROMA is divided into quadtrees. The base 2 logarithm of the minimum size of the luminance samples in the resulting chroma leaf block is: It is derived as follows. MinQtLog2SizeIntraC=sps_log2_diff_min _qt_min_cb_intra_slice_chroma+MinCbLog2S izeY (57)
[0399] sps_max_mtt_hierarchy_depth_intra_slice _chroma refers to SPS treeType=DUAL_TREE_CHRO MA, due to multi-type tree division of chroma quadtree with slice_type=2(I) Specifies the default maximum hierarchical depth of the chroma coding unit to be partit ion_constraints_override_enabled_flag is set to 1 If they are equal, the default maximum tier progress is the ph_m that exists in the PH that references the SPS. Overridden by ax_mtt_hierarchy_depth_chroma sps_max_mtt_hierarchy_depth_intra_s The value of lice_chroma is 0 to 2*(CtbLog2SizeY-MinCbLo g2SizeY). If not present, sps_max_mtt Set the value of _hierarchy_depth_intra_slice_chroma to 0 are inferred to be equal.
[0400] sps_log2_diff_max_bt_min_qt_intra_slice _chroma is the luminance of the chroma coding block that can be split using binary splitting slice_t refers to the base 2 logarithm of the maximum sample size (width or height) and the SPS t equal to DUAL_TREE_CHROMA in slices with type 2(I) Brightness of chroma leaf blocks resulting from quadtree decomposition of chroma CTUs with reeType Specifies the minimum size (width or height) of a parti sample and the default difference between them. tion_constraints_override_enabled_flag is 1 If it is equal to , the default difference is ph_log2_d which exists in PH that refers to SPS. Can be overridden by iff_max_bt_min_qt_chroma. sps_log2_diff_max_bt_min_qt_intra_slice_ The value of chroma is 0 to CtbLog2SizeY-MinQtLog2SizeIn It is assumed to be within the range of traC. sps_log2_diff_max_bt_mi sps_log2 if n_qt_intra_slice_chroma does not exist _diff_max_bt_min_qt_intra_slice_chroma value is inferred to be 0.
[0401] log2_diff_max_tt_min_qt_intra_slice_chr oma is the luminance sample of a chroma coding block that can be divided using ternary division. The base 2 logarithm of the maximum size (width or height) of a slice and the slice_type that refers to the SPS. tree equal to DUAL_TREE_CHROMA in the slice where is 2(I) Luminance samples of chroma leaf blocks resulting from quadtree division of chroma CTUs with Type Specifies the minimum size (width or height) of the pull and the default difference between the n_constraints_override_enabled_flag is equal to 1 If not, the default difference is ph_log2_diff, which exists in the PH that references the SPS. Can be overridden by _max_tt_min_qt_chroma. _log2_diff_max_tt_min_qt_intra_slice_chr The value of oma is 0 to CtbLog2SizeY-MinQtLog2SizeIntra It is assumed to be within the range of C. sps_log2_diff_max_tt_min_q If t_intra_slice_chroma does not exist, sps_log2_di The value of ff_max_tt_min_qt_intra_slice_chroma is 0 is inferred to be equal to
[0402] sps_max_luma_transform_size_64_fla equal to 1 g specifies the maximum transform size of luma samples equal to 64. sps equal to 0 _max_luma_transformation_size_64_flag is This specifies that the maximum transform size of degree samples is equal to 32. If CtbSizeY is less than 64, sps_max_luma_transform The value of rm_size_64_flag is equal to 0. Variables MinTbLog2SizeY, MaxTbLog2SizeY, MinTbSi zeY and MaxTbSizeY are derived as follows: MinTbLog2SizeY=2 (58) MaxTbLog2SizeY=sps_max_luma_transform _size_64_flag?6:5 (59) MinTbSizeY=1< <MinTbLog2SizeY (60) MaxTbSizeY=1< <MaxTbLog2SizeY (61)
[0403] sps_joint_cbcr_enabled_flag equal to 0 disables chroma residual Specifies that joint coding of sps_joint_c equal to 1 is disabled. bcr_enabled_flag indicates that joint coding of chroma residual is enabled. If not present, sps_joint_cbcr_enabled_fl The value of ag is inferred to be equal to 0.
[0404] same_qp_table_for_chroma equal to 1 means one chroma QP Only the mapping table is signaled, and this table is applied to the Cb and Cr residuals. and sps_joint_cbcr_enabled_flag is equal to 1. Specifies that it also applies to the joint Cb-Cr residual. same_qp_tab equal to 0 le_for_chroma sps_joint_cbcr_enabled_fl If ag is equal to 1, there are two chroma QP mapping tables, one for Cb and one for Cr, and one for Cb. -Specifies that an additional one for Cr is signaled in the SPS. If _qp_table_for_chroma is not present in the bitstream, The value of me_qp_table_for_chroma is inferred to be equal to 1.
[0405] qp_table_start_minus26[i]+26 is the ith chroma QP Specifies the starting luma and chroma QPs used to describe the mapping table. The value of qp_table_start_minus26[i] is -26-QpBdOff It must be within the range of set~36. qp_table_start_minus2 If 6[i] is not present in the bitstream, qp_table_start_min The value of us26[i] is inferred to be equal to 0.
[0406] num_points_in_qp_table_minus1[i]+1 is the ith Specifies the number of points used to describe the chroma QP mapping table. The value of _points_in_qp_table_minus1[i] is 0 to 63+Qp It must be within the range of BdOffset. If ble_minus1[0] is not present in the bitstream, num_point The value of s_in_qp_table_minus1[0] is inferred to be equal to 0.
[0407] delta_qp_in_val_minus1[i][j] is the ith chroma QP The delta value used to derive the input coordinate of the jth pivot point of the mapping table. delta_qp_in_val_minus1[0][j] is the bitstream If not present in the stream, delta_qp_in_val_minus1[0][j] The value of is inferred to be equal to 0.
[0408] delta_qp_diff_val[i][j] ith chroma QP mapping table Specifies the delta value used to derive the output coordinate of the jth pivot point of i=0...numQpTables-1, the i-th chroma QP mapping table C hromaQpTable[i] is derived as follows:
[0409] qpInVal[i][0]=qp_table_start_minus26[i]+ 26 qpOutVal[i][0]=qpInVal[i][0] for(j=0;j<=num_points_in_qp_table_minus1 [i];j++){ qpInVal[i][j+1]=qpInVal[i][j]+delta_qp_ in_val_minus1[i][j]+1 qpOutVal[i][j+1]=qpOutVal[i][j]+(delta_ qp_in_val_minus1[i][j]^delta_qp_diff_val [i][j]) } ChromaQpTable[i][qpInVal[i][0]]=qpOutVal [i][0] for(k=qpInVal[i][0]-1;k>=-QpBdOffset;k-- ) ChromaQpTable[i][k]=Clip3(-QpBdOffset,6 3,ChromaQpTable[i][k+1]-1) (62) for(j=0;j<=num_points_in_qp_table_minus1 [i];j++){ sh=(delta_qp_in_val_minus1[i][j]+1)>>1 for(k=qpInVal[i][j]+1,m=1;k<=qpInval[i] [j+1];k++,m++) ChromaQpTable[i][k]=ChromaQpTable[i][q pInVal[i][j]]+ ((qpOutVal[i][j+1]-qpOutVal[i][j])*m+ sh) / (delta_qp_in_val_minus1[i][j]+1) } for(k=qpInVal[i][num_points_in_qp_table_ minus1[i]+1]+1;k<=63;k++) ChromaQpTable[i][k]=Clip3(-QpBdOffset,6 3,ChromaQpTable[i][k-1]+1)
[0410] If same_qp_table_for_chroma is equal to 1, Chroma QpTable[1][k] and ChromaQpTable[2][k] are -Qp For k in the range from BdOffset to 63, ChromaQpTable It is set equal to [0][k]. The values of qpInVal[i][j] and qpOutVal[i][j] are -QpBdOf fset is in the range of 63, and i is in the range of 0 to numQpTables-1. j is in the range of 0 to num_points_in_qp_table_minus1[i]+1 It is a requirement for bitstream conformance that the bitstream is within the specified range.
[0411] sps_sao_enabled_flag equal to 1 enables deblocking filtering. It specifies that sample adaptive offset processing is applied to the reconstructed picture after the filtering process. sps_sao_enabled_flag equal to 0 disables deblocking filtering. Do not apply sample adaptive offset processing to the reconstructed picture after tarring processing. This stipulates:
[0412] sps_alf_enabled_flag equal to 0 disables the adaptive loop filter sps_alf_enabled_flag equal to 1 specifies that Specifies that the loop filter is enabled.
[0413] sps_ccalf_enabled_flag equal to 0 means cross component Specifies that the adaptive loop filter is disabled. sps_ccalf_e equal to 1 enabled_flag indicates whether the cross-component adaptive loop filter is enabled. It stipulates that:
[0414] sps_transform_skip_enabled_flag equal to 1 means that t Specifies that transform_skip_flag may be present in the transformation unit syntax. sps_transform_skip_enabled_flag equal to 0 , stipulates that transform_skip_flag is not present in the transformation unit syntax do.
[0415] log2_transform_skip_max_size_minus2 is the Specify the maximum block size to be used for skipping, and it must be in the range of 0 to 3. This stipulates: The variable MaxTsSize is 1<<(log2_transform_skip_ma x_size_minus2+2).
[0416] sps_bdpcm_enabled_flag equal to 1 means intra_bdpc m_luma_flag and intra_bdpcm_chroma_flag are This section specifies that the following may be present in the coding unit syntax of a tracking coding unit: sps_bdpcm_enabled_flag is equal to intra_bdpcm_ luma_flag and intra_bdpcm_chroma_flag are intra Specifies that it is not present in the coding unit syntax. If it is not present, sps_bd The value of pcm_enabled_flag is inferred to be equal to 0.
[0417] sps_ref_wraparound_enabled_flag equal to 1 indicates Specifies that horizontal wraparound motion compensation is applied in center prediction. sps_ref_wraparound_enabled_flag specifies whether horizontal wraparound is enabled. Specifies that round motion compensation is applied. (CtbSizeY / MinCbSize Y+1) is (pic_width_in_luma_samples / MinCbS izeY-1) and pic_width_in_luma_samples is , pic_width_in_luma_sam in any PPS referring to the SPS sps_ref_wraparound_enabled_f if the value of ples The value of lag is assumed to be equal to 0.
[0418] sps_temporal_mvp_enabled_flag equal to 1 indicates that CLV Specifies that the temporal motion vector predictor may be used in S. s_temporal_mvp_enabled_flag is the flag for temporal motion vector prediction. Specifies that the child is not used in CLVS.
[0419] sps_sbtmvp_enabled_flag equal to 1 indicates that sbtmvp is enabled in CLVS. Sub-blocks for decoding pictures with all slices whose lice_type is not I , and specifies that a temporal motion vector predictor based on sps equal to 0 may be used. _sbtmvp_enabled_flag is used to enable sub-block based temporal motion vectors. Specifies that the rule predictor is not used in CLVS. If led_flag is not present, it is inferred to be equal to 0.
[0420] sps_amvr_enabled_flag equal to 1 indicates that motion vector coding is enabled. Specifies that adaptive motion vector difference resolution is used. amvr_affin equal to 0 e_amvr_enabled_flag specifies whether adaptive vector difference is used for motion vector coding. It specifies that minute resolution is not used.
[0421] sps_bdof_enabled_flag equal to 0 enables bidirectional optical flow sps_bdof_enab equal to 1 specifies that inter prediction is disabled led_flag specifies that bidirectional optical flow inter-prediction is enabled do.
[0422] sps_bdof_pic_present_flag equal to 1 refers to the SPS 0 specifies that the PH in question has the ph_disable_bdof_flag. sps_bdof_pic_present_flag equal to refers to the SPS It specifies that the PH does not have ph_disable_bdof_flag. If s_bdof_pic_present_flag is not present, sps_bdof The value of _pic_present_flag is inferred to be 0.
[0423] sps_smvd_enabled_flag equal to 1 enables motion vector decoding. Specifies that symmetric motion vector differences may be used. sps_smvd_en equal to 0 abled_flag indicates that symmetric motion vector differences are not used in motion vector coding. It stipulates that
[0424] sps_dmvr_enabled_flag equal to 1 enables decoder motion vector optimization. Specifies that inter bi-prediction based on adaptation is enabled. sps_d equal to 0 mvr_enabled_flag is the inter-bidirectional Specifies that directional prediction is disabled.
[0425] sps_dmvr_pic_present_flag equal to 1 refers to the SPS This specifies that the ph_disable_dmvr_flag is present in the PH. sps_dmvr_pic_present_flag equal to 0 refers to the SPS Specify that ph_disable_dmvr_flag is not present in PH. If sps_dmvr_pic_present_flag does not exist, sps_dm The value of vr_pic_present_flag is inferred to be 0.
[0426] sps_mmvd_enabled_flag equal to 1 means motion vector difference Specifies that merge mode is enabled. sps_mmvd_enabl equal to 0 ed_flag specifies that merge mode with motion vector difference is disabled .
[0427] sps_isp_enabled_flag equal to 1 means that the Specifies that intra prediction is enabled. sps_isp_enabled equal to 0 _flag specifies that intra prediction by sub-partitions is disabled.
[0428] sps_mrl_enabled_flag equal to 1 indicates that an interface with multiple reference lines is Specifies that tra prediction is enabled. sps_mrl_enabled_ equal to 0 The flag specifies that intra prediction with multiple reference lines is disabled.
[0429] sps_mip_enabled_flag equal to 1 means that matrix-based intra prediction is enabled. Specifies that the measurement is enabled. sps_mip_enabled_fla equal to 0 g specifies that matrix-based intra prediction is disabled.
[0430] sps_cclm_enabled_flag equal to 0 means that the luma component is Specifies that cross-component linear model intra prediction is disabled. The new sps_cclm_enabled_flag enables crossover from luma to chroma. Specifies that component linear model intra prediction is enabled. If m_enabled_flag is not present, it is inferred to be equal to 0.
[0431] sps_chroma_horizontal_collocated_f equal to 1 lag indicates that the prediction process is not horizontally shifted relative to the corresponding luma sample position. Specifies that the s equal to 0 will behave in a designed manner for chroma sample positions that are too small. ps_chroma_horizontal_collocated_flag is the predicted The processing shifts the corresponding luminance sample position to the right by 0.5 in luminance sample units. sps_c specifies that the chroma sample position will behave in a designed manner. If hroma_horizontal_collocated_flag is not present , is inferred to be equal to 0.
[0432] sps_chroma_vertical_collocated_fla equal to 1 g is the pixel where the prediction process is performed without vertically shifting the corresponding luma sample position. Specifies that the ROM sample position behaves in a designed manner. sps equal to 0 _chroma_vertical_collocated_flag indicates whether the prediction process is A clock shifted to the right by 0.5 in luma samples relative to the corresponding luma sample position. Specifies that the sample position behaves in a designed manner. If a_vertical_collocated_flag is not present, it is equal to 1 It is speculated that...
[0433] sps_mts_enabled_flag equal to 1 indicates that the sequence parameter set sps_explicit_mts_intra_enabled_ flag is present and the syntax of the sequence parameter set RBSP is sps_explic Indicates that it_mts_inter_enabled_flag is present. Equal to 0 sps_mts_enabled_flag is used to set the sequence parameter set RBSP The syntax for sps_explicit_mts_intra_enabled_flag is The syntax of the sequence parameter set RBSP does not include sps_exp Indicates that the licit_mts_inter_enabled_flag is not present.
[0434] sps_explicit_mts_intra_enabled_fla equal to 1 g indicates that mts_idx may be present in the intra-coding unit syntax sps_explicit_mts_intra_enable equal to 0 d_flag indicates that mts_idx is not present in the intra-coding unit syntax. If not present, sps_explicit_mts_intra_ena The value of bled_flag is inferred to be 0.
[0435] sps_explicit_mts_inter_enabled_fla equal to 1 g indicates that mts_idx may be present in the inter-coding unit syntax. sps_explicit_mts_inter_enabled equal to 0 _flag indicates that mts_idx is not present in the inter-coding unit syntax. If not present, sps_explicit_mts_inter_enab The value of led_flag is assumed to be 0.
[0436] six_minus_max_num_merge_cand is supported by SPS This specifies that the maximum number of merge motion vector prediction (MVP) candidates to be used is six minus six. The maximum number of merged MVP candidates, MaxNumMergeCand, is derived as follows: can be. MaxNumMergeCand=6-six_minus_max_num_m erge_cand (63) The value of MaxNumMergeCand is in the range of 1 to 6.
[0437] sps_sbt_enabled_flag equal to 0 enables sub-prediction for inter-predicted CUs. Specifies that block transformations are disabled. sps_sbt_enable equal to 1 d_flag specifies that sub-block transforms for inter-predicted CUs are enabled do.
[0438] sps_affine_enabled_flag Enables affine model-based motion compensation. Specifies whether inter prediction can be used. If _flag is equal to 0, the syntax uses affine model-based motion compensation in CLVS. Compensation is not used, and inter_affine_flag and cu_affine_ty Although pe_flag is constrained not to exist in the CLVS coding unit syntax, Otherwise (if sps_affine_enabled_flag is equal to 1) Alternatively, affine model-based motion compensation may be used in CLVS.
[0439] five_minus_max_num_subblock_merge_cand , the maximum number of sub-block-based merge motion vector prediction candidates supported by SPS is 5. It specifies that the value be subtracted from the
[0440] sps_affine_type_flag6 Parameter Affine model based motion Specifies whether compensation can be used for inter prediction. If _flag is equal to 0, the syntax is for a 6-parameter affine model in CLVS. The coding unit syntax in CLVS does not use motion compensation based on _affine_type_flag shall be constrained to not be present. If not (sps_affine_type_flag equals 1), a 6-parameter array is used. Motion compensation based on the Fin model may be used in CLVS. If not present, s The value of ps_affine_type_flag is inferred to be equal to 0.
[0441] sps_affine_amvr_enabled_flag equal to 1 enables affine It specifies the use of adaptive motion vector difference resolution for motion vector coding in inter mode. sps_amvr_affine_amvr_enabled_fl equal to 0 ag applies adaptive motion vector difference resolution to affine inter mode motion vector coding. If it does not exist, sps_affine_amvr_enab The value of led_flag is assumed to be 0.
[0442] sps_affine_prof_enabled_flag Optical flow sps_affin Specifies whether the prediction refinement can be used for affine motion compensation. If e_prof_enabled_flag is equal to 0, affine motion compensation is optional. shall not be refined by the theoretical flow. Otherwise (sps_affi ne_prof_enabled_flag equals 1), use optical flow sps_affin The value of e_prof_enabled_flag is assumed to be 0.
[0443] sps_prof_pic_present_flag equal to 1 refers to the SPS 0 specifies that the PH in use has the ph_disable_prof_flag. sps_prof_pic_present_flag equal to refers to the SPS ph_disable_prof_flag is not present in the PH. If s_prof_pic_present_flag is not present, sps_prof The value of _pic_present_flag is inferred to be 0.
[0444] sps_palette_enabled_flag equal to 1 means pred_mod Specifies that e_plt_flag is included in the coding unit syntax. sps_palette_enabled_flag is equal to pred_mode_p Specifies that lt_flag is not included in the coding unit syntax. If palette_enabled_flag is not present, it is inferred to be equal to 0. .
[0445] sps_act_enabled_flag equal to 1 means that adaptive color transformations are used. Often, the cu_act_enabled_flag is present in the coding unit syntax. sps_act_enabled_flag equal to 0 specifies that the adaptation If no color conversion is used and cu_act_enabled_flag is set to The syntax specifies that sps_act_enabled_flag is not present. If absent, it is assumed to be equal to 0.
[0446] min_qp_prime_ts_minus4 is the minimum in transform skip mode The allowable quantization parameters are defined as follows: QpPrimeTsMin=4+min_qp_prime_ts_minus4 (64) The value of min_qp_prime_ts_minus4 is in the range of 0 to 48.
[0447] sps_bcw_enabled_flag specifies whether the CU supports weighted bidirectional prediction. Specifies whether the parameter can be used for forecasting. sps_bcw_enabled_flag is set to When equal to 0, the syntax indicates that bidirectional prediction with CU weights is not used in CLVS; Although bcw_idx is constrained not to exist in the CLVS coding unit syntax, Otherwise (sps_bcw_enabled_flag is equal to 1) , Bi-directional prediction with CU weights can be used in CLVS.
[0448] sps_ibc_enabled_flag equal to 1 indicates that the IBC prediction mode is CLV Specifies that the picture in S may be used to decode the picture. sps_ibc equal to 0 _enabled_flag indicates that the IBC prediction mode is not used in CLVS. If sps_ibc_enabled_flag does not exist, it is equal to 0. It is speculated that...
[0449] six_minus_max_num_ibc_merge_cand is supported by SPS. Subtract the maximum number of supported IBC merge block vector prediction (BVP) candidates from 6. This stipulates that: The maximum number of IBC merge BVP candidates, MaxNumIbcMergeCand, is as follows: It is derived as follows. if(sps_ibc_enabled_flag) MaxNumIbcMergeCand=6-six_minus_max_num_ ibc_merge_cand (65) else MaxNumIbcMergeCand=0
[0450] sps_ciip_enabled_flag is the flag for ciip_flag. sps_ciip_e indicates that the residual coding syntax of the If enabled_flag is 0, ciip_flag is for inter-coding units. Indicates that it is not present in the coding syntax.
[0451] sps_fpel_mmvd_enabled_flag equal to 1 enables motion vectors Specifies that merge with difference mode uses integer sample precision. sp equal to 0 s_fpel_mmvd_enabled_flag enables merging with motion vector differences. Specifies that the mode can use fractional sample precision.
[0452] sps_gpm_enabled_flag is for shape partition-based motion compensation Specifies whether sps_gpm_enab equal to 0 can be used for inter prediction. led_flag does not use shape partition based motion compensation in CLVS, and rge_gpm_partition_idx, merge_gpm_idx0, mer The syntax is changed so that ge_gpm_idx1 is not included in the coding unit syntax of CLVS. sps_gpm_enabled_f equal to 1 lag specifies that motion compensation based on shape partitions can be used in CLVS. If not present, the value of sps_gpm_enabled_flag is assumed to be equal to 0. will be done.
[0453] max_num_merge_cand_minus_max_num_gpm_ca nd specifies the maximum number of geometric partition merge mode candidates supported by SPS as MaxNum Specifies that it is subtracted from MergeCand. sps_gpm_enabled_flag equals 1 and MaxNumMergeC If and is equal to or greater than 3, the maximum number of geometric split merge mode candidates, MaxNumGe oMergeCand is derived as follows: if(sps_gpm_enabled_flag&&MaxNumMergeCand >=3) MaxNumGpmMergeCand=MaxNumMergeCand - max_num_merge_cand_minus_max_num_gpm_ cand (66) else if(sps_gpm_enabled_flag&&MaxNumMerg eCand==2) MaxNumMergeCand=2 else MaxNumGeoMergeCand=0 The value of MaxNumGeoMergeCand is 2 to MaxNumMergeCand is within the range.
[0454] sps_lmcs_enabled_flag equal to 1 enables chrominance in CLVS. sps_lmcs_ equal to 0 indicates that luminance mapping with scaling is used. enabled_flag is used to enable luminance mapping with chroma scaling in CLVS. Indicates that no tagging is used.
[0455] sps_lfnst_enabled_flag equal to 1 indicates that lfnst_idx is Specifies that intra-coding unit syntax may be present. s equal to 0 ps_lfnst_enabled_flag is set to lfnst_idx when This specifies that it is not present in the Handling Unit syntax.
[0456] sps_ladf_enabled_flag equal to 1 means sps_num_lad f_intervals_minus2, sps_ladf_lowest_inter val_qp_offset, sps_ladf_qp_offset[i] and sp s_ladf_delta_threshold_minus1[i] exists in the SPS This stipulates that:
[0457] sps_num_ladf_intervals_minus2+1 exists in SPS sps_ladf_delta_threshold_minus1[i] and s ps_ladf_qp_offset[i] Specifies the number of syntax elements. sps_num_ The value of ladf_intervals_minus2 must be in the range of 0 to 3. .
[0458] sps_ladf_lowest_interval_qp_offset is 8.8 Define the offset used to derive the variable qP as specified in Section 3.6.1. sps_ladf_lowest_interval_qp_offset value is between -63 and +63.
[0459] sps_ladf_qp_offset[i] as specified in Section 8.8.3.6.1 specifies the offset array used to derive the variable qP. The value of qp_offset[i] must be between -63 and +63.
[0460] sps_ladf_delta_threshold_minus1[i] is Sps Used to calculate the value of LadfIntervalLowerBound[i] sps_ladf_delta_ defines the lower limit of the i-th luminance intensity level interval. The value of threshold_minus1[i] is 0 to 2. BitDepth Within the range of -3 shall be in The value of SpsLadfIntervalLowerBound[0] is set equal to 0. can be. for i in the range 0 to sps_num_ladf_intervals_minus2 For each value, the variable SpsLadfIntervalLowerBound[i+1] is , which is derived as follows: SpsLadfIntervalLowerBound[i+1]=SpsLad fIntervalLowerBound[i] (67) +sps_ladf_delta_threshold_minus1[i]+1
[0461] log2_parallel_merge_level_minus2+2 is 8.5 The spatial merge candidate derivation process, as specified in Section 8.5.5.2, Derivation of motion vectors and reference indices in such sub-block merge modes The value of the variable Log2ParMrgLevel used in output processing is specified, and 8.5.2.1 Controls the invocation of the update process of the motion vector predictor list based on the term history. The value of _parallel_merge_level_minus2 is 0 to CtbLog The variable Log2ParMrgLevel is set to the following range: It is derived as follows. Log2ParMrgLevel=log2_parallel_merge_l evel_minus2+2 (68)
[0462] sps_scaling_list_enabled_flag equal to 1 enables the conversion function Specifies that a scaling list is used for number scaling. sp equal to 0 s_scaling_list_enabled_flag is the scaling of the conversion coefficients. Specifies that no scaling list is used for processing.
[0463] sps_dep_quant_enabled_flag equal to 0 refers to SPS sps_d equal to 1 specifies that dependent quantization is disabled for the picture. ep_quant_enabled_flag specifies whether the dependent quantization refers to the SPS. This specifies that the IEEE 802.11 standard may be enabled for the
[0464] sps_sign_data_hiding_enabled_flag equal to 0 , specifies that the hiding of the sign bit is disabled for pictures that refer to the SPS. sps_sign_data_hiding_enabled_flag equal to 1 means It specifies that the hiding of the sign bit may be enabled for pictures that refer to an SPS. sps_sign_data_hiding_enabled_flag does not exist. If not, it is inferred to be equal to 0.
[0465] sps_virtual_boundaries_enabled_fla equal to 1 g is the interleaving of a coded picture across a virtual boundary in CLVS. sps_vi equal to 0 specifies that group filtering disablement may be applied. real_boundaries_enabled_flag is the Disable in-loop filtering across virtual boundaries for loaded pictures In-loop filtering is not applied. The adaptive loop filter includes a sample adaptive offset filter and an adaptive loop filter operation.
[0466] sps_virtual_boundaries_present_fla equal to 1 g specifies that the virtual boundary information is signaled in the SPS. sps_vi equal to 0 virtual_boundaries_present_flag indicates whether virtual boundaries are present in the SPS. Specifies that no information is signaled. There is one or more virtual boundaries signaled in the SPS. If there is an in-loop filtering error that crosses a virtual boundary in a picture that references an SPS, In-loop filtering operations are disabled. In-loop filtering operations are deblocking filters, It includes a sample adaptive offset filter and an adaptive loop filter operation. res_change_in_clvs_allowed_flag value is equal to 1 If the value of sps_virtual_boundaries_present_flag It is a bitstream conformance requirement that is equal to 0.
[0467] sps_num_ver_virtual_boundaries exists in SPS sps_virtual_boundaries_pos_x[i] Specifies the number of syntax elements If sps_num_ver_virtual_boundaries does not exist, If
[0468] sps_virtual_boundaries_pos_x[i]i-th vertical virtual Specifies the boundary position in units of 8 luminance samples. The value of oundaries_pos_x[i] ranges from 1 to Ceil(pic_width_ The range is in_luma_samples÷8)-1.
[0469] sps_num_hor_virtual_boundaries is the number of virtual boundaries that exist in the SPS. The number of syntax elements of sps_virtual_boundaries_pos_y[i] is sps_num_hor_virtual_boundaries does not exist. If not, it is inferred to be equal to 0. sps_virtual_boundaries_enabled_flag equals 1 sps_virtual_boundaries_present_flag is 1 If equal to sps_num_ver_virtual_boundaries and sp The sum of s_num_hor_virtual_boundaries must be greater than 0. Let's say.
[0470] sps_virtual_boundaries_pos_y[i] is the i-th horizontal Specifies the location of the virtual boundary in the direction, in units of 8 luminance samples. The value of ual_boundaries_pos_y[i] ranges from 1 to Ceil(pic_h The range shall be eight_in_luma_samples÷8)-1.
[0471] sps_general_hrd_params_present_fla equal to 1 g is the syntax structure general_hrd_parameters() of SPS RBS sps_general_hrd_p equal to 0. arams_present_flag is the syntax structure general_hrd_para It specifies that meters() is not present in the SPS RBSP syntax structure.
[0472] sps_sublayer_cpb_params_present_fl equal to 1 ag is the syntax structure old_hrd_parameters() in SPS RBSP Tempor is in the range of 0 to sps_max_sublayer_minus1 Specifies that the HRD parameters for the sublayer representation with alId are included. sps_sublayer_cpb_params_present_flag The syntax structure ols_hrd_parameters() in SPS RBSP is Only has TemporalId of sps_max_sublayers_minus1 sps_max_ HRD parameters for the sublayer representation are included. When sublayers_minus1=0, sps_sublayer_cpb_p The value of arams_present_flag is inferred to be equal to 0. sps_sublayer_cpb_params_present_flag is 0 If equal, TemporalId is between 0 and sps_max_sublayers_mu The HRD parameters for the sublayer representations within the range of nus1-1 are Temporal of sublayer representations whose id is equal to sps_max_sublayers_munus1 It is inferred to be equal to the HRD parameter. Starting with the e_general_flag[i] syntax element, parameters(i) HRD parameters up to the syntax structure ols_hrd The condition "if(general_vcl_hrd _params_present_flag)”
[0473] A field_seq_flag equal to 1 indicates that CLVS is using a picture representing the field. A field_seq_flag equal to 0 indicates that CLVS transmits Indicates that the picture representing the general_frame_only_con When straint_flag is equal to 1, the value of field_seq_flag is 0. shall be considered equal. If field_seq_flag is equal to 1, all codes in CLVS are There is one Frame Field Information SEI message per framed picture. It shall be. NOTE 5 – The specified decoding process treats pictures representing fields or frames separately. Therefore, a sequence of pictures representing a field is a sequence of pictures representing each individual field. For example, a picture representing a 1080i field is coded using The camera will commonly have a cropped output dimension of 1920x540. The sequence picture rate is usually determined by the source frame rate (typically 25Hz and 30Hz). z), it will represent the rate of the source field (typically between 50 Hz and 60 Hz).
[0474] vui_parameters_present_flag equal to 1 indicates that the syntax construct v Specifies that ui_parameters() is present in the SPS RBSP syntax structure vui_parameters_present_flag equal to 0 indicates that the syntax construct v It specifies that ui_parameters() does not exist in the SPS RBSP syntax structure. do.
[0475] sps_extension_flag equal to 0 indicates that the SPS RBSP syntax structure does not contain Specifies that the ps_extension_data_flag syntax element is not included. sps_extension_flag equal to 1 indicates that the SPS RBSP syntax structure Specifies that the sps_extension_data_flag syntax element is present.
[0476] sps_extension_data_flag can have any value. Its presence and value determine the decoder's conformance to the features specified in this specification version. Decoders conforming to this specification version will not affect all sps_ext The tension_data_flag syntax element MUST be ignored.
[0477] 7.4.3.4 Picture Parameter Set RBSP Semantics
[0478] The PPS RBSP must be available to the decoding process before it is referenced or it must be available to the decoding process before it is referenced. A small number of PPS NAL units with a TemporalId equal to or less than the TemporalId of the corresponding PPS NAL unit. shall be contained within at least one AU or provided through external means. A specific value in one PU is pps_pic_parameter_set_id All PPS NAL units shall have the same content.
[0479] pps_pic_parameter_set_id is the PP that other syntax elements refer to. S. The value of pps_pic_parameter_set_id is in the range of 0 to 63. It is inside. PPS NAL units are pps_pic regardless of the nuh_layer_id value. They share the same value space for _parameter_set_id. ppsLayerId to the nuh_layer_id of a particular PPS NAL unit value and vclLayerId is the nuh_layer_ A specific VCL NAL unit has a ppsLayerId of vclLa Layer whose nuh_layer_id is less than or equal to ppsLayerId and whose nuh_layer_id is ppsLayerId contains a layer with nuh_layer_id that is a vclLayerId does not refer to a specific PPS NAL unit unless both are contained in one OLS. Let's say.
[0480] pps_seq_parameter_set_id is the sps_seq_pa Specifies the value of parameter_set_id. The value of set_id is in the range of 0 to 15. The set_id value is the number of all coded pictures in a CLVS that refer to it. It shall be the same for all PPSs.
[0481] mixed_nalu_types_nalu_pic_flag equal to 1 indicates that PP Each picture that references S has two or more VCL NAL units, and The units do not have the same value of nal_unit_type and the picture is an IRAP picture. Specifies that there is no mixed_nalu_types_in_pic_f equal to 0. lag is a measure of the number of pictures that each picture references in a PPS has one or more VCL NAL units, and the P Each picture's VCL NAL that references the PS must have the same value for nal__unit_type. It provides that the no_mixed_nalu_types_in_pic_constraint_f If lag is equal to 1, mixed_nalu_types_in_pic_fla The value of g is assumed to be equal to 0. The value of nal_unit_type is nalUnitTypeA is IDR_W_RADL~ Each slice in the range of CRA_NUT has a different value for nal_unit_type. picA also contains one or more slices that are nalu_types_in_pic_flag value is equal to 1), the following applies: It is used. -This slice is treated as a subpic_treated_as_pic_fla The value of g[i] is equal to 1 and belongs to subpicA. - This slice has nal_unit_type equal to nalUnitTypeA. Any VCL NAL unit not included in picA shall not belong to a subpicture of picA. - If nalUnitTypeA is equal to CRA, CL is used in decoding order and output order. For all PUs following the current picture in VS, RefPicList[0] and RefPicList[0] of slices in ubpicA t[1] is any picture that precedes picA in decoding order in the active entry. This does not include - Otherwise (i.e., nalUnitTypeA is IDR_W_RADL or or IDR_N_LP), all the pictures in the CLVS that follow the current picture in decoding order For PUs, the RefPic of the slice in the subpicA in these PUs In both List[0] and RefPicList[1], the active entry It shall not include any pictures that precede picA in decoding order. NOTE 1 - mixed_nalu_types_in_pic_flag equal to 1 If the picture that references the PPS contains slices with different NAL unit types, , e.g., a coded picture resulting from a subpicture bitstream merge operation. It is a bitstream structure matching and furthermore the parameters of the original bitstream. This indicates that the alignment of the data must be ensured. An example of this is: sps_idr_rpl_flag has a value equal to 0, If mixed_nalu_types_in_pic_flag is equal to 1, then PP The picture that references S has nal_unit_type IDR_W_RADL or I Cannot have a slice equal to DR_N_LP.
[0482] pic_width_in_luma_samples is decoded with reference to the PPS. pic_width_in_lum Specifies the width of each picture in units of luminance samples. a_samples must not be equal to 0 and must be Max(8,MinCbSizeY) pic_width_max_in_luma_sample It shall be less than or equal to s. If res_change_in_clvs_allowed_flag is equal to 0 , the value of pic_width_in_luma_samples is pic_width_m Equal to ax_in_luma_samples.
[0483] pic_height_in_luma_samples is decoded with reference to the PPS. pic_height_in_ Specifies the height of each picture in luminance samples. luma_samples must not be equal to 0 and Max(8,MinCbSiz eY), and pic_height_max_in_luma_sa It shall be less than or equal to 100 s. If res_change_in_clvs_allowed_flag is equal to 0 , the value of pic_height_in_luma_samples is It shall be equal to t_max_in_luma_samples. Variables PicWidthInCtbsY, PicHeightInCtbsY, PicS izeInCtbsY,PicWidthInMinCbsY,PicHeightIn MinCbsY,PicSizeInMinCbsY,PicSizeInSample sY, PicWidthInSamplesC and PicHeightInSampl esC is derived as follows: PicWidthInCtbsY=Ceil(pic_width_in_lum a_samples÷CtbSizeY) (69) PicHeightInCtbsY=Ceil(pic_height_in_l uma_samples÷CtbSizeY) (70) PicSizeInCtbsY=PicWidthInCtbsY*PicHei ghtInCtbsY (71) PicWidthInMinCbsY=pic_width_in_luma_s amples / MinCbSizeY (72) PicHeightInMinCbsY=pic_height_in_luma _samples / MinCbSizeY (73) PicSizeInMinCbsY=PicWidthInMinCbsY*Pi cHeightInMinCbsY (74) PicSizeInSamplesY=pic_width_in_luma_s samples*pic_height_in_luma_samples (75) PicWidthInSamplesC=pic_width_in_luma_ samples / SubWidthC (76) PicHeightInSamplesC=pic_height_in_lum a_samples / SubHeightC (77)
[0484] pps_conformance_window_flag equal to 1 specifies the The offset parameter of the next adaptive cropping window follows in PPS. pps_conformance_window_flag equal to 0 indicates conformance Indicates that the active cropping window offset parameter is not present in the PPS.
[0485] pps_conf_win_left_offset, pps_conf_win_r ight_offset, pps_conf_win_top_offset, and a nd pps_conf_win_bottom_offset is the picture offset for output. The sample of the CLVS picture output from the decoding process for the rectangular area set by the If pps_conformance_window_flag is equal to 0, pps_conf_win_left_offset, pps_conf_win_ right_offset, pps_conf_win_top_offset, pps The value of _conf_win_bottom_offset is inferred to be equal to 0. The adaptive cropping window is SubWidthC*pps_conf_win_ left_offset to pic_width_in_luma_samples-( SubWidthC*pps_conf_win_right_offset+1) Horizontal picture coordinate, and SubHeightC*pps_conf_win_top_ offset to pic_height_in_luma_samples-(SubH eightC*pps_conf_win_bottom_offset+1) Contains luma samples with picture coordinates. SubWidthC*(pps_conf_win_left_offset+pps _conf_win_right_offset) value is pic_width_in_ luma_samples, and SubHeightC*(pps_c onf_win_top_offset+pps_conf_win_bottom_o ffset) is less than pic_height_in_luma_samples It shall be deemed to be If ChromaArrayType is not equal to 0, the corresponding The specified sample is the picture coordinate (x / SubWidthC, y / SubHeight tC), and (x,y) are the picture coordinates of the specified luma sample. is. NOTE 2 - The offset parameter of the conformance cropping window is only on the output side. All internal decoding processes are applied to the uncropped picture size. It is used. Let ppsA and ppsB be any two PPSs that refer to the same SPS. A and ppsB are pic_width_in_luma_samples and and pic_height_in_luma_samples have the same value, sA and ppsB are pps_conf_win_left_offset, pps_conf_win_right_offset, pps_conf_win_t op_offset, and pps_conf_win_bottom_offset and It is a bitstream compatibility requirement that they have the same value. pic_width_in_luma_samples is pic_width_max _in_luma_samples, and pic_height_in_luma_s amps equals pic_height_max_in_luma_samples If not, pps_conf_win_left_offset, pps_conf_wi n_right_offset, pps_conf_win_top_offset, and and pps_conf_win_bottom_offset are the values of sps_c onf_win_left_offset, sps_conf_win_right_o ffset, sps_conf_win_top_offset, and sps_con f_win_bottom_offset is a bitstream conformance requirement is.
[0486] scaling_window_explicit_signalling equal to 1 _flag indicates that a scaling window offset parameter is present in the PPS. Specify scaling_window_explicit_signal equal to 0. ling_flag indicates whether the scaling window offset parameter is present in the PPS. res_change_in_clvs_allowed_fla If g is equal to 0, scaling_window_explicit_signal The value of ling_flag shall be equal to 0.
[0487] scaling_win_left_offset, scaling_win_rig ht_offset, scaling_win_top_offset, and scal ing_win_bottom_offset is the picture offset for the calculation of the scaling ratio. Specifies the offset applied to the scaling size. If not present, scaling_win _left_offset, scaling_win_right_offset, sc aling_win_top_offset, scaling_win_bottom_ The offset value is SubWidthC*conf_win_left_of fset, SubWidthC*conf_win_right_offset, Sub HeightC*conf_win_top_offset, and SubHeight It is inferred to be equal to C*conf_win_bottom_offset. SubWidthC*(scaling_win_left_offset+scal ing_win_right_offset) value is ma_samples, and SubHeightC*(scaling_ win_top_offset+scaling_win_bottom_offset ) must be less than pic_height_in_luma_samples. do. The PicOutputWidthL and PicOutputHeightL variables are as follows: It is derived as follows: PicOutputWidthL=pic_width_in_luma_sam ples- (78) SubWidthC*(scaling_win_right_offset+s caling_win_left_offset) PicOutputHeightL=pic_height_in_luma_s amples- (79) SubWidthC*(scaling_win_bottom_offset+ scaling_win_top_offset) PicOutputWidth of the reference picture of the current picture that references this PPS L, refPicOutputHeightL, PicOutputWid thL, PicOutputHeightL. The bitstream conformance requirements are: All of the following conditions must be met: -PicOutputWidthL*2 is refPicWidthInLumaSa It shall be at least 1000 sq. m. -PicOutputHeightL*2 is refPicHeightInLuma It shall be equal to or greater than Samples. -PicOutputWidthL is refPicWidthInLumaSamp It shall be less than or equal to les*8. -PicOutputHeightL is refPicHeightInLumaSa The number of samples must be less than 8. -PicOutputWidthL*pic_width_max_in_luma _samples is refPicOutputWidthL*(pic_width_i n_luma_samples - Max(8,MinCbSizeY) or more do. -PicOutputHeightL*pic_height_max_in_lu ma_samples is refPicOutputHeightL*(pic_heig ht_in_luma_samples - Max(8,MinCbSizeY)) or more It shall be as it is.
[0488] output_flag_present_flag equal to 1 refers to PPS Indicates the presence of the pic_output_flag syntax element in the slice header. Set to 0. The equal output_flag_present_flag is a slide that refers to the PPS. Indicates that the pic_output_flag syntax element is not present in the header.
[0489] subpic_id_mapping_in_pps_flag equal to 1 specifies the PPS Specifies that subpicture ID mapping is signaled in ubpic_id_mapping_in_pps_flag specifies the subpic ID mapping in PPS. Specifies that the ID mapping of the picture is not signaled. pping_explicitly_signalled_flag equals 0 and su If bpic_id_mapping_in_sps_flag is equal to 1, then The value of pic_id_mapping_in_pps_flag shall be equal to 0. If not (subpic_id_mapping_explicitly_signa lled_flag is equal to 1 and subpic_id_mapping_in_sps _flag equals 0), subpic_id_mapping_in_pps_fl Let the value of ag be equal to 1.
[0490] pps_num_subpics_minus1 is sps_num_subpics_ Equal to minus1.
[0491] pps_subpic_id_len_minus1 is sps_subpic_id_ Equal to len_minus1.
[0492] pps_subpic_id[i] specifies the subpicture ID of the ith subpicture. The length of the syntax element of pps_subpic_id[i] is _id_len_minus1+1 bits. The variable SubpicIdVal[i] is 0 to sps_num_subpics_min For each value of i in the range of us1, it is derived as follows: for(i=0;i<=sps_num_subpics_minus1;i++) if(subpic_id_mapping_explicitly_signall ed_flag) SubpicIdVal[i]=subpic_id_mapping_in_pps _flag?pps_subpic_id[i]:sps_subpic_id[i] (80) else SubpicIdVal[i]=i A requirement for bitstream conformance is that both of the following constraints apply: i and j in the range -0 to sps_num_subpics_minus1 For any two distinct values, SubpicIdVal[i] is the same as SubpicIdVal shall not be equal to [j]. - 0~sps_num_s if the current picture is not the first picture in CLVS For each value of i in the range ubpics_minus1, SubpicIdVal The value of [i] is the same as the SubpicIdVal[i ] in the current picture with subpicture index i, nal_unit of all coded slice NAL units of the subpicture _type is equal to a specific value in the range IDR_W_RADL to CRA_NUT. It shall be deemed to be
[0493] no_pic_partition_flag equal to 1 specifies that each picture that references a PPS Specifies that no picture splitting is applied to the channel. no_pic_p equal to 0 artition_flag specifies that each picture that references a PPS should be split into two or more tiles or It specifies that the image can be divided into slices. For all PPSs referenced by coded pictures within one CLV The value of no_pic_partition_flag must be the same for all is a requirement for bitstream conformance. If the value of sps_num_subpics_minus1+1 is greater than 1, no The value of _pic_partition_flag must not be 1. This is a requirement for ream compatibility.
[0494] pps_log2_ctu_size_minus5+5 is the brightness code of each CTU. Specifies the block size of the encoding tree block. pps_log2_ctu_size_minus5 is sps_log2_ctu_s Let it be equal to ize_minus5.
[0495] num_exp_tile_columns_minus1+1 is provided explicitly Specifies the number of tile columns wide. The value of s1 must be in the range from 0 to PicWidthInCtbsY-1. If no_pic_partition_flag is equal to 1, then num_exp_t The value of ile_columns_minus1 is inferred to be equal to 0.
[0496] num_exp_tile_rows_minus1+1 is the number of tiles explicitly provided. The value of num_exp_tile_rows_minus1 specifies the number of rows in the tile. must be in the range 0 to PicHeightInCtbsY-1. If _pic_partition_flag is equal to 1, then num_tile_ro The value of ws_minus1 is inferred to be equal to 0.
[0497] tile_column_width_minus1[i]+1 is the ith tile column The width of the tile is in the range of 0 to num_exp_tile_columns_minus1-1. It is specified in CTB units for the i-th tile column. tile_column_width_minus1[num_exp_tile_c columns_minus1] is the sum of num_exp_t as specified in Section 6.5.1. Derive the width of a tile column with an index greater than or equal to ile_columns_minus1 The value of tile_column_width_minus1[i] is used to It must be in the range 0 to PicWidthInCtbsY-1. If it does not exist, The value of tile_column_width_minus1[0] is PicWidthI It is inferred to be equal to nCtbsY-1.
[0498] tile_row_height_minus1[i]+1 is the height of the ith tile row The length is the ith tile in the range 0 to num_exp_tile_rows_minus1-1. Specifies the height of the second tile row in CTB units. [num_exp_tile_rows_minus1] is the number of tile rows specified in Section 6.5.1. So, the index is num_exp_tile_rows_minus1 or more. Used to derive the tile row height. The value of 1[i] must be in the range of 0 to PicHeightInCtbsY-1. If not present, the value of tile_row_height_minus1[0] is PicH It is inferred to be equal to eightInCtbsY-1.
[0499] rect_slice_flag equal to 0 means that tiles within each slice are raster scanned. This specifies that the images are arranged in slice order and that slice information is not signaled in the PPS. rect_slice_flag equal to 1 specifies that the tiles in each slice are rectangular in the picture. Specifies that the region is covered and slice information is signaled in the PPS. If so, rect_slice_flag is inferred to be equal to 1. The value of rect_slice_flag when o_present_flag is equal to 1 is assumed to be equal to 1.
[0500] single_slice_per_subpic_flag equal to 1 specifies that each subpic Specifies that the image consists of one and only one rectangular slice. e_slice_per_subpic_flag specifies whether each subpicture is one or more rectangles. Specifies that it can be composed of slices. If ic_flag is equal to 1, then num_slices_in_pic_minus 1 is inferred to be equal to sps_num_subpics_minus1. Does not exist If the value of single_slice_per_subpic_flag is equal to 0, It is speculated.
[0501] num_slices_in_pic_minus1+1 is the number of slices in each picture that refer to the PPS. num_slices_in_pic_minus Specifies the number of rectangular slices in a picture. The value of 1 shall be in the range of 0 to MaxSlicesPerpicture-1. Here, MaxSlicesPerpicture is included. If artition_flag is equal to 1, then num_slices_in_pic The value of _minus1 is inferred to be equal to 0.
[0502] tile_idx_delta_present_flag equal to 0 indicates that the PPS Specify that the ile_idx_delta value is not present and the processing is as defined in Section 6.5.1. Specifies all rectangular slices in the picture that references the PPS in raster order according to the tile_idx_delta_present_flag equal to 1 indicates that the PPS It specifies that a tile_idx_delta value may be present in the PPS, and All rectangular slices of the image are represented by the tile_idx_delta values. If not present, tile_idx_delta_present_f The value of lag is assumed to be 0.
[0503] slice_width_in_tiles_minus1[i]+1 is the width of the i-th rectangle slice_width_in_tile Specifies the width of the shape slice in tile columns. The value of s_minus1[i] is in the range from 0 to NumTileColumns-1. It shall be as stated in. If slice_width_in_tiles_minus1[i] does not exist, The following applies: - If NumTileColumns is equal to 1, then slice_width_i The value of n_tiles_minus1[i] is inferred to be equal to 0. - Otherwise, slice_width_i as specified in Section 6.5.1 Infer the value of n_tiles_minus1[i].
[0504] slice_height_in_tiles_minus1[i]+1 is the ith Specifies the height of a rectangular slice in tile rows. slice_height_in_ti The value of les_minus1[i] must be in the range 0 to NumTileRows-1. It shall be as it is. If slice_height_in_tiles_minus1[i] does not exist , the following applies: -NumTileRows equals 1 or tile_idx_delta_p resent_flag is equal to 0 and tileIdx%NumTileColumn If ns is greater than 0, slice_height_in_tiles_minus1 The value of [i] is inferred to be equal to 0. - Otherwise (if NumTileRows is not equal to 1 and tile_idx_ delta_present_flag equals 1 or tileIdx% Num TileColumns equals 0), tile_idx_delta_present t_flag is equal to 1 or tileIdx% NumTileColumns is If equal to 0, slice_height_in_tiles_minus1[i] The value of is equal to slice_height_in_tiles_minus1[i-1]. It is inferred that
[0505] num_exp_slices_in_tile[i] specifies two or more rectangular slices Specifies the number of slice heights explicitly provided for the current tile, including The value of p_slices_in_tile[i] is 0 to RowHeight[tileY ]-1, where tileY is the tile containing the i-th slice. If not present, num_exp_slices_in_ti The value of le[i] is inferred to be equal to 0. If le[i] is equal to 0, the value of the variable NumSlicesInTile[i] is equal to 1. It is derived as follows.
[0506] exp_slice_height_in_ctus_minus1[j]+1 is the current Specifies the height of the jth rectangular slice in the current tile in CTU rows. The value of lice_height_in_CTUs_minus1[j] is 0 to RowHeight The range is ight[tileY]-1, where tileY is the current The tile row index of the tile. When num_exp_slices_in_tile[i] is greater than 0, the variable Nu mSliceSInTile[i] and 0 to NumSliceSinTile[i] SliceHeightInCtusMinus1[i+ -1 for k k] is derived as follows:
[0507] remainingHeightInCtbsY=RowHeight[SliceTo pLeftTileIdx[i] / NumTileColumns] numExpSliceInTile=num_exp_slices_in_tile [i] for(j=0;j <numExpSliceInTile-1;j++){ SliceHeightInCtusMinus1[i++]=exp_slice_ height_in_ctu_minus1[j] remainingHeightInCtbsY-=SliceHeightInCt usMinus1[j] } uniformSliceHeightMinus1=SliceHeightInCt usMinus1[i-1] (81) while(remainingHeightInCtbsY>=(uniformSl iceHeightMinus1+1)){ SliceHeightInCtusMinus1[i++]=uniformSli ceHeightMinus1 remainingHeightInCtbsY-=(uniformSliceHe ightMinus1+1) j++ } if(remainingHeightInCtbsY>0){ SliceHeightInCtusMinus1[i++]=remainingH eightInCtbsY j++ } NumSlicesInTile[i]=j
[0508] tile_idx_delta[i] The tile of the first tile in the i-th rectangular slice. tile index of the first tile in the (i+1)th rectangular slice The value of tile_idx_delta[i] is -NumT The range is from NumTilesInPic+1 to NumTilesInPic-1. If not present, the value of tile_idx_delta[i] is inferred to be equal to 0. If present, the value of tile_idx_delta[i] is inferred to be equal to 0.
[0509] loop_filter_across_tiles_enabled_f equal to 1 The lag is the in-loop delay across tile boundaries in the picture that references the PPS. Specifies that a filtering operation can be performed. loop_filt equal to 0 er_across_tiles_enabled_flag refers to PPS In a picture, no in-loop filtering operations should be performed across tile boundaries. The in-loop filtering operations include a deblocking filter, sample adaptation, and Includes adaptive offset filter and adaptive loop filter operation. If not present, loop The value of p_filter_across_tiles_enabled_flag is equal to 1 It is assumed that
[0510] loop_filter_across_slices_enabled_ equal to 1 The flag is used to indicate whether the PPS is interleaved across slice boundaries in the picture that references it. loop_fi equal to 0 specifies that loop filtering operation can be performed. lter_across_slice_enabled_flag refers to PPS In pictures where in-loop filtering is not performed across slice boundaries, In-loop filtering operations include deblocking filters, sampling Includes a pull adaptive offset filter and adaptive loop filter operation. If not present, loop_filter_across_slices_enabled_flag value is assumed to be equal to 0.
[0511] cabac_init_present_flag equal to 1 indicates that the Specifies that cabac_init_flag is present in the Rice header and is equal to 0. cabac_init_present_flag is cabac_init_flag cabac_init_flag is not present in the slice header that references the PPS This stipulates:
[0512] num_ref_idx_active_minus1[i] equal to 0 means that i is equal to 0. If equal, the inferred value of the variable NumRefIdxActive[0] of the P or B slice is specified by num_ref_idx_active_override_flag=0, num_ref_idx_active_override_flag equal to 0 means i is equal to 1, the inferred value of the variable NumRefIdxActive[1] of the B slice is It is specified by num_ref_idx_active_override_flag=0. The value of num_ref_idx_default_active_minus1[i] is It must be in the range of 0 to 14.
[0513] rpl1_idx_present_flag equal to 0 indicates a picture that refers to a PPS. ref_pic_list_sps_flag in the PH syntax structure or slice header of the [1] and ref_pic_list_idx[1] are not present. rpl1_idx_present_flag equal to the value of the picture that references the PPS. PH syntax structure or slice header contains ref_pic_list_sps_flag[1 ] and ref_pic_list_idx[1] may be present .
[0514] SliceQ for each slice that references init_qp_minus26+26PPS p Y Specifies the initial value of SliceQp Y The first value of ph_qp_delta is At picture level when zero values are decoded or at slice_qp_delta level It is modified at the slice level when non-zero values are decoded. init_qp_min The value of us26 must be within the range of -(26+QpBdOffset) to +37. .
[0515] cu_qp_delta_enabled_flag equal to 1 means that ph_cu _qp_delta_subdiv_intra_slice and ph_cu_qp_ The delta_subdiv_inter_slice syntax element is a PH that references a PPS. It specifies that cu_qp_delta_abs may be present in the translation unit syntax. cu_qp_delta_flag equal to 0 means that ph_cu_qp_s ubdiv_intra_slice and ph_cu_qp_subdiv_inte The r_slice syntax element does not exist in the PH that references the PPS, and the cu_qp_delta_ Specifies that abs is not present in the translation unit syntax.
[0516] pps_chroma_tool_offsets_present_fl equal to 1 ag indicates that chroma tool offset related syntax elements exist in the PPS RBSP syntax structure. pps_chroma_tool_offsets_pre equal to 0 sent_flag is the chroma tool offset related syntax element in the PPS RBSP syntax structure. If ChromaArrayType is equal to 0, then The value of s_chroma_tool_offsets_present_flag is equal to 0 It becomes more difficult.
[0517] pps_cb_qp_offset, pps_cr_qp_offset are Qp' C b , Qp' Cr The luminance quantization parameter Qp' used to derive Y offset to it pps_cb_qp_offset and pps_cr_qp_offset are specified respectively. The value of t is in the range of -12 to +12. If not, pps_cb_qp_offset and pps_cr_qp_offset are decoded. It is not used in processing and the decoder shall ignore its value. The values of s_cb_qp_offset and pps_cr_qp_offset are equal to 0. It is inferred that
[0518] pps_joint_cbcr_qp_offset_present_f equal to 1 lag is the value of pps_joint_cbcr_qp_offset_value and jo int_cbcr_qp_offset_list[i] is a PPS RBSP syntax structure pps_joint_cbcr_qp_off equal to 0. set_present_flag pps_joint_cbcr_qp_offs et_value and joint_cbcr_qp_offset_list[i] It specifies that it is not included in the PPS RBSP syntax structure. type is 0 or sps_joint_cbcr_enabled_flag is 0 If not, pps_joint_cbcr_qp_offset_present_fla The value of g shall be equal to 0. If not present, pps_joint_cbcr_qp The value of _offset_present_flag is inferred to be equal to 0.
[0519] pps_joint_cbcr_qp_offset_value is Qp' CbCr The luminance quantization parameter Qp' used to derive Y Indicates the offset to pp The value of s_joint_cbcr_qp_offset_value is in the range of -12 to 12. If ChromaArrayType is equal to 0 or sps_join If t_cbcr_enabled_flag is equal to 0, pps_joint_cb The cr_qp_offset_value is not used in the decoding process, and the decoding module The value shall be ignored. If sent_flag is equal to 0, pps_joint_cbcr_qp_offs The et_value is inferred to be absent and equal to 0.
[0520] pps_slice_chroma_qp_offsets_present_fla If g is equal to 1, slice_cb_qp_offset and slice_cr Specifies that the _qp_offset syntax element is present in the associated slice header. pps_slice_slice_chroma_qp_offsets_pres If ent_flag is equal to 0, slice_cb_qp_offset and s The lice_cr_qp_offset syntax element is not present in the associated slice header. If it does not exist, pps_slice_chroma_qp_of The value of fsets_present_flag is inferred to be equal to 0.
[0521] pps_cu_chroma_qp_offset_list_enabl equal to 1 ed_flag is ph_cu_chroma_qp_offs in PH that refers to PPS et_subdiv_intra_slice and ph_cu_chroma_qp_ The offset_subdiv_inter_slice syntax element is present and the cu_chr oma_qp_offset_flag is used for transformation unit syntax and palette coding pps_cu_chroma equal to 0 _qp_list_enabled_flag is ph_cu_chroma_qp_o ffset_subdiv_intra_slice and ph_cu_chroma_ The qp_offset_subdiv_inter_slice syntax element refers to PPS. does not exist in the corresponding PH, and cu_chroma_qp_offset_flag is It specifies that it does not exist in the bit syntax and palette coding syntax. If pps_cu_chroma_qp_offset_list_enabled_ The value of flag is inferred to be equal to 0.
[0522] chroma_qp_offset_list_len_minus1+1 is PPS cb_qp_offset_list[i], cr_qp included in the RBSP syntax structure _offset_list[i] and joint_cbcr_qp_offset_l Specifies the number of syntax elements in ist[i]. The value of _len_minus1 should be in the range 0 to 5.
[0523] cb_qp_offset_list[i], cr_qp_offset_list[ i], and joint_cbcr_qp_offset_list[i] are the p_offset_list[i],cr_qp_offset_list[i],jo int_cbcr_qp_offset_list[i] is Qp' Cb、 Qp' Cr、 Qp' CbCr Specifies the offset used in the derivation of cb_qp_offse t_list[i], cr_qp_offset_list[i], joint_cbc The value of r_qp_offset_list[i] must be in the range of -12 to +12. pps_joint_cbcr_qp_offset_present_flag If is equal to 0, joint_cbcr_qp_offset_list[i] does not exist. is inferred to be equal to 0.
[0524] pps_weighted_pred_flag equal to 0 refers to PPS Specifies that no weighted prediction is applied to P slices. pps_w equal to 1 eighted_pred_flag is the weight for the P slice referring to the PPS. Specifies that weighted prediction is applied. sps_weighted_pred_flag If is equal to 0, the value of pps_weighted_pred_flag is also equal to 0. Let's say.
[0525] pps_weighted_bipred_flag equal to 0 refers to the PPS Specifies that no explicit weighted prediction is applied to the B slices in the The pps_weighted_bipred_flag is the B-slave that refers to the PPS. Specifies that explicit weighted predictions are applied to the device. sps_weight pps_weighted_bipr if ed_bipred_flag is equal to 0 The value of ed_flag shall be equal to 0.
[0526] deblocking_filter_control_present_ equal to 1 flag specifies the presence of deblocking filter control syntax elements in the PPS. deblocking_filter_control_present_fl ag specifies the absence of deblocking filter control syntax elements in the PPS.
[0527] deblocking_filter_override_enabled equal to 1 _flag is the ph_deblocking_filter in PH that refers to the PPS. In the slice header that specifies the presence of r_override_flag and references the PPS slice_deblocking_filter_override_flag Specifies the presence of deblocking_filter_override_ equal to 0. enabled_flag is the ph_deblocking flag in PH that refers to the PPS. ssl_filter_override_flag is absent and references PPS. slice_deblocking_filter_overrid in the slice header Specifies the absence of e_flag. If not present, deblocking_filter The value of _override_enabled_flag is inferred to be equal to 0.
[0528] pps_deblocking_filter_disabled_fla equal to 1 g is the deblocking filter operation, slice_deblocking_filt Applied to slices that refer to PPSs where er_disabled_flag does not exist This stipulates that this will not be done. pps_deblocking_filter_disabled_fla equal to 0 g is the deblocking filter operation, slice_deblocking_filt Applied to slices that refer to PPSs where er_disabled_flag does not exist If not present, pps_deblocking_filter The value of _disabled_flag is inferred to be equal to 0.
[0529] pps_beta_offset_div2 and pps_tc_offset_di In v2, the default deblocking parameter offset is a slider that references the PPS. Deblocking parameter offsets present in the picture or slice header of the The β and β values applied to the luminance component of the slice that references the PPS, unless overridden by Specifies the default deblocking parameter offset for tc and td (divide by 2). pps_beta_offset_div2 and pps_tc_offset_div The value of 2 must be in the range of -12 to 12. If it does not exist, pps_ The values of beta_offset_div2 and pps_tc_offset_div2 are Both are inferred to be equal to 0.
[0530] pps_cb_beta_offset_div2 and pps_cb_tc_off set_div2 sets the default deblocking parameter offset with reference to the PPS. The deblocking parameters present in the picture header or slice header of the slice being referenced. applies to the Cb component of the slice that references the PPS, unless overridden by a data offset. Specifies the default deblocking parameter offsets for β and tC used ( Divide by 2). pps_cb_beta_offset_div2 and pps_cb_t The value of c_offset_div2 is in the range of -12 to +12. If so, pps_cb_offset_div2 and pps_cb_offset_div Any value of 2 is inferred to be equal to 0.
[0531] pps_cr_beta_offset_div2 and pps_cr_tc_off set_div2 sets the default deblocking parameter offset with reference to the PPS. The deblocking parameters present in the picture header or slice header of the slice being referenced. Applies to the Cr component of the slice that references the PPS unless overridden by a data offset. Specifies the default deblocking parameter offsets for β and tC used ( Divide by 2. pps_cr_beta_offset_div2 and pps_cr_tc The value of _offset_div2 is in the range of -12 to +12. If it does not exist , pps_cr_offset_div2 and pps_cr_offset_div2 are inferred to be equal to 0.
[0532] rpl_info_in_ph_flag equal to 1 indicates that the reference picture list information is in In a slice header that references a PPS that contains an H syntax structure and does not contain a PH syntax structure rpl_info_in_ph_flag equal to 0 specifies that the , the reference picture list information is not included in the PH syntax structure and does not contain the PH syntax structure. It is specified that a PPS may be present in a slice header that references the PPS.
[0533] dbf_info_in_ph_flag equal to 1 indicates that deblocking is enabled for PH syntax structures. Slice headers that refer to PPSs that have filtering information and do not contain PH syntax structures Specifies that it is not present. dbf_info_in_ph_flag equal to 0 specifies that it is not present. A PPS that does not have deblocking filter information in the H syntax structure and does not contain a PH syntax structure is It is specified that it may exist in the slice header it references. If it does not exist, dbf The value of _info_in_ph_flag is inferred to be equal to 0.
[0534] sao_info_in_ph_flag equal to 1 indicates that the PH syntax structure contains SAO information. The data information is present in the slice header that references the PPS and does not contain a PH syntax structure. sao_info_in_ph_flag equal to 0 specifies that the PH syntax Slices that refer to PPSs that have no SAO filter information in their structure and do not contain PH syntax structures It is specified that it may be present in the header.
[0535] alf_info_in_ph_flag equal to 1 indicates that the PH syntax structure contains ALF information. that is present and not present in slice headers that reference a PPS that does not contain a PH syntax structure alf_info_in_ph_flag equal to 0 specifies that the PH syntax structure does not contain AL F information is not present and is present in a slice header referencing a PPS that does not contain a PH syntax structure It specifies that there are cases where
[0536] wp_info_in_ph_flag equal to 1 indicates that the PH syntax structure contains weighted prediction information. Slice headers referencing PPSs that may contain PH syntax structures and may contain information wp_info_in_ph_flag equal to 0 specifies that There is no weighted prediction information in the PH syntactic structure, and the PPS does not contain the PH syntactic structure. It is specified that it may be present in the slice header. If it is not present, wp_info The value of _in_ph_flag is inferred to be equal to 0.
[0537] qp_delta_info_in_ph_flag equal to 1 indicates that the PH syntax structure P-delta information is present and not present in slice headers that refer to PPSs that do not contain PH syntax constructs. qp_delta_info_in_ph_fla equal to 0. g refers to a PPS where the PH syntax structure does not contain any QP delta information and does not contain any PH syntax structure. This specifies that this may be present in the slice header.
[0538] pps_ref_wraparound_enabled_flag equal to 1 indicates Specifies that horizontal wraparound motion compensation is applied in center prediction. The pps_ref_wraparound_enabled_flag specifies whether horizontal wraparound is enabled. Specifies that round motion compensation is applied. CtbSizeY / MinCbSizeY +1 is pic_width_in_luma_samples / MinCbSize If greater than Y-1, pps_ref_wraparound_enabled_fla The value of g shall be equal to 0. sps_ref_wraparound_enable If d_flag is equal to 0, pps_ref_wraparound_enable The value of d_flag shall be equal to 0.
[0539] pps_ref_wraparound_offset+(CtbSizeY / Min CbSizeY)+2 is the offset used to calculate the horizontal wraparound position. Specifies the number of bits in units of MinCbSizeY luminance samples. The value of paround_offset is 0 to (pic_width_in_luma_s samples / MinCbSizeY)-(CtbSizeY / MinCbSizeY) It should be in the range of -2. The variable PpsRefWraparoundOffset is pps_ref_wrapa Equals round_offset+(CtbSizeY / MinCbSizeY)+2 It is set.
[0540] picture_header_extension_present_f equal to 0 The lag specifies that there are no PH extension syntax elements in PHs that refer to the PPS. picture_header_extension_present_ equal to 1 flag specifies the presence of PH extension syntax elements in the PH that references the PPS picture_header_extension_present_flag is Shall be equal to 0 in bitstreams conforming to this version of the specification.
[0541] slice_header_extension_present_fla equal to 0 g is the slice header of the coded picture that references the PPS slice_header_ex equal to 1 specifies that no extension syntax elements are present tension_flag is the slice of the coded picture that refers to the PPS Specifies that the slice header extension syntax element is present in the header. slice_head er_extension_present_flag is Shall be equal to 0 in conforming bitstreams.
[0542] pps_extension_flag equal to 0 indicates that the PPS RBSP syntax structure does not contain Specifies that the ps_extension_data_flag syntax element is not included. pps_extension_flag equal to 1 indicates that the PPS RBSP syntax structure Specifies that the pps_extension_data_flag syntax element is present.
[0543] The pps_extension_data_flag can have any value. Its presence and value determine the decoder's conformance to the features specified in this specification version. Decoders conforming to this specification version will not affect all pps_ext The tension_data_flag syntax element MUST be ignored.
[0544] 7.4.3.5 Adaptation Parameter Set Semantics
[0545] Each APS RBSP must be available to the decoding process before it is referenced or TemporalId of the coded slice NAL unit to be coded. shall be contained within at least one AU with has a particular value of adaptation_parameter_set_id and P All APS NAL units with a particular value of aps_params_type in U The bits indicate whether they are prefix or suffix APS NAL units. The content of the original document shall be the same regardless of whether it is a separate document or not.
[0546] The adaptation_parameter_set_id is the set that other syntax elements refer to. Provides the identifier of the APS. aps_params_type equals ALF_APS or SCALING_APS If necessary, the value of adaptation_parameter_set_id must be in the range of 0 to 7. The scope of the scope of the If aps_params_type is equal to LMCS_APS, then adaptati The value of on_parameter_set_id must be in the range of 0 to 3. apsLayerId is the nuh_layer_id of a particular APS NAL unit value and vclLayerId is the nuh_layer_ A specific VCL NAL unit is identified by apsLayerId equal to vclLa Layers whose nuh_layer_id is less than or equal to apsLayerId and whose nuh_layer_id is apsLayerId contains a layer with nuh_layer_id that is a vclLayerId does not refer to a specific APS NAL unit unless both are contained in one OLS. Let's say.
[0547] aps_params_type is implemented in APS as shown in Table 6. This section specifies the types of APS parameters that are used.
[0548] [Table 35]
[0549] All APS NAL units with a specific value of aps_params_type Regardless of the value of nuh_layer_id, the adaptation_parameter It shares the same value space for er_set_id. APS NAL units with different values are Use a separate value space for et_id.
[0550] Note 1 - APS NAL unit (adaption_parameter_set_ id and aps_params_type) are used between pictures. different slices in a picture can refer to different ALF APSs. It is possible. NOTE 2 - Suffixes associated with specific VCL NAL units APS NAL unit (this VCL NAL unit is a suffix APS NAL unit in decoding order) The NAL units (preceding the subunit) are not used by any particular VCL NAL unit, but are Used in decoding order by VCL NAL units that follow Fixed APS NAL units It is something that is done.
[0551] aps_extension_flag equal to 0 indicates that the APS RBSP syntax structure does not include a Specifies that the ps_extension_data_flag syntax element is not included. aps_extension_flag equal to 1 indicates that the APS RBSP syntax structure Specifies that the aps_extension_data_flag syntax element is present.
[0552] aps_extension_data_flag can have any value. Its presence and value determine the decoder's conformance to the features specified in this specification version. Decoders conforming to this specification version will not affect all aps_ext The tension_data_flag syntax element MUST be ignored.
[0553] 7.4.3.6 Picture Header RBSP Semantics
[0554] PH RBSP is a PH syntax structure, i.e., picture_header_structure Contains ture().
[0555] 7.4.3.7 Picture Header Structure Semantics
[0556] A PH syntax structure is a representation of all coded pictures associated with the PH syntax structure. Contains information common to slices of
[0557] gdr_or_irap_pic_flag equal to 1 indicates that the current picture is GDR or Specifies that the gdr_or_irap_pi is an IRAP picture. c_flag indicates whether the current picture is a GDR or IRAP picture. It stipulates that
[0558] gdr_pic_flag equal to 1 indicates that the picture associated with the PH is a GDR picture. A gdr_pic_flag equal to 0 specifies that the PH is associated with Specifies that the picture specified is not a GDR picture. If not present, gdr_pic The value of _flag is inferred to be equal to 0. If gdr_enabled_flag is equal to 0, If so, the value of gdr_pic_flag shall be equal to 0.
[0559] ph_inter_slice_allowed_flag equal to 0 means that the Specify that all coded slices have slice_type 2. ph_inter_slice_allowed_flag equal to 1 means that the slice A picture with _type equal to 0 or 1 has one or more coded slices. It specifies that it is not necessary to have a
[0560] ph_intra_slice_allowed_flag equal to 0 means that the picture All coded slices have slice_type equal to 0 or 1 ph_intra_slice_allowed_flag equal to 1 specifies One or more coded slices with slice_type equal to 2 in the picture If it does not exist, ph_intra_sli A value of ce_allowed_flag equal to 1 is inferred. NOTE 1 - PH bitstreams based on subpictures can be used without modifying the NAL units. For bitstreams intended to perform stream merging, the encoder h_inter_slice_allowed_flag and ph_intra_sl It is expected that both values of ice_allowed_flag be set equal to 1.
[0561] non_reference_picture_flag equal to 1 means that the picture is not associated with PH. Specifies that the framed picture cannot be used as a reference picture. The new non_reference_picture_flag is associated with PH Specifies that a picture may or may not be used as a reference picture.
[0562] ph_pic_parameter_set_id is the pps_pi of the PPS in use Specifies the value of c_parameter_set_id. The value of er_set_id is in the range of 0 to 63. The value of TemporalId in PH is pps_pic_parameter_set_ Tempora of PPS with id ph_pic_parameter_set_id It is a bitstream conformance requirement that it be equal to or greater than the value of lId.
[0563] ph_pic_order_cnt_lsb is the picture order counter for the current picture. Specifies the value modulo MaxPicOrderCntLsb. The length of the rder_cnt_lsb syntax element is log2_max_pic_order_ cnt_lsb_minus4+4 bits. The lsb value must be in the range of 0 to MaxPicOrderCntLsb-1. .
[0564] no_output_of_prior_pics_flag is the bitstream The last decoded picture in the DPB after decoding a CLVSS picture that is not the first picture. Affects the output of the culprit.
[0565] recovery_poc_cnt specifies the recovery point in the output order of the decoded picture. If the current picture is a GDR picture associated with the PH, and the current GDR picture Add the value of recovery_poc_cnt to the PicOrderCntVal of the In CLVS with PicOrderCntVal, which is the value of the current If there is a picture following the GDR picture, this picture picA is used as the recovery point. Otherwise, the current picture's PicOrderCntVa PicOrder greater than l plus the value of recovery_poc_cnt The first picture in output order that has CntVal is called the recovery point picture. The recovery point picture shall not precede the current GDR picture in decoding order. The value of recovery_poc_cnt is 0 to MaxPicOrderCntLsb-1 It shall be within the range of If the current picture is a GDR picture, the variable RpPicOrderCntVal is derived as follows: RpPicOrderCntVal=PicOrderCntVal+recov ery_poc_cnt (82) NOTE 2 - If gdr_enabled_flag is equal to 1 and the current picture's PicO RpPicOrderCntV of the GDR picture with which RpPicOrderCntVal is associated al or greater, the current and subsequent decoded pictures in output order are related in decoding order. Start the decoding process from the previous IRAP picture (if any) preceding the GDR picture. The resulting picture matches exactly the corresponding picture generated by
[0566] ph_extra_bit[i] may be equal to 1 or 0. Conforming decoders must ignore the value of ph_extra_bit[i]. Its value affects the decoder's conformance to the features specified in this version of this specification. I can't.
[0567] ph_poc_msb_present_flag equal to 1 specifies the syntax element poc_m Specifies that sb_val is present in PH. ph_poc_msb_pr equal to 0 esent_flag specifies that the syntax element ph_msb_val is not present in PH. vps_independent_layer_flag[GeneralLay erIdx[nuh_layer_id]] is equal to 0 and the current layer's reference layer If the current AU has a picture, ph_poc_msb_present_flag is set to The value shall be equal to 0.
[0568] poc_msb_val specifies the POC MSB value of the current picture. The length of poc_msb_val is poc_msb_len_minus1+1 bits. be.
[0569] ph_alf_enabled_flag equal to 1 enables all PH-associated Enables the adaptive loop filter for a slice of Y, Cb, or Specifies that ph_alf_enabled equal to 0 may be applied to the Cr color component. _flag specifies whether the adaptive rule is applied to one or more or all slices associated with the PH. If not present, ph_alf_ enabled_flag is inferred to be equal to 0.
[0570] ph_num_alf_aps_ids_luma is the number of slices associated with the PH Specifies the number of ALF APS that is referenced by
[0571] ph_alf_aps_id_luma[i] is the luminance of the slice associated with the PH. The adaptation_parameter of the i-th ALF APS that the degree component refers to Specify _set_id. aps_params_type equals ALF_APS and adaptation_ parameter_set_id equals ph_alf_aps_id_luma[i] alf_luma_filter_signal_fla of new APS NAL unit The value of g is assumed to be equal to 1. aps_params_type equals ALF_APS and adaptation_ parameter_set_id is ph_alf_aps_id_luma[i] The TemporalId of the APS NAL unit is the TemporalId of the picture associated with the PH. It shall be less than or equal to TemporalId.
[0572] ph_alf_chroma_idc equal to 0 means that the adaptive loop filter is Indicates that it does not apply to the r color component. ph_alf_chroma_idc equal to 1 means the adaptive loop filter is Indicates that this applies to ph_alf_chroma_idc equal to 2 means the adaptive loop filter adjusts the Cr color component Indicates that this applies to ph_alf_chroma_idc equal to 3 means the adaptive loop filter is Indicates that the rule applies to minutes. If ph_alf_chroma_idc is not present, it is inferred to be equal to 0. do.
[0573] ph_alf_aps_id_chroma Chroma of the slice associated with PH The ALF APS adaptation_parameter_set_ that the component references Specify the id. aps_params_type equals ALF_APS and adaptation_ parameter_set_id is ph_alf_aps_id_chroma[i] alf_chroma_filter_signal in APS NAL unit equal to The value of _flag shall be equal to 1. aps_params_type equals ALF_APS and adaptation_ parameter_set_id is ph_alf_aps_id_chroma[i] The TemporalId of the APS NAL unit is the picture associated with the PH. The TemporalId of the current device shall be less than or equal to the current device's TemporalId.
[0574] ph_cc_alf_cb_enabled_flag equal to 1 enables the Cb color component. The cross-component filter for this purpose is enabled for all slices associated with the PH. This specifies that the RGB color filter may be enabled and applied to the Cb color component in a slice. ph_cc_alf_cb_enabled_flag equal to 0 enables the Cb color component. The cross-component filter for this purpose is applied to one or more or all of the slides associated with the PH. If not present, ph_cc_alf _cb_enabled_flag is inferred to be equal to 0.
[0575] ph_cc_alf_cb_aps_id is the Cb color of the slice associated with the PH The ALF APS adaptation_parameter_set_ that the component references Specify the id. aps_params_type equals ALF_APS and adaptation_ parameter_set_id equals ph_cc_alf_cb_aps_id alf_cc_cb_filter_signal_flag in APS NAL units The value of shall be equal to 1.
[0576] ph_cc_alf_cr_enabled_flag equal to 1 is used for the Cb color component The cross-component filter for this purpose is enabled for all slices associated with the PH. This specifies that the Cr color component in a slice may be applied to the Cr color component. ph_cc_alf_cr_enabled_flag equal to 0 enables the Cr color component. The cross-component filter for this purpose is applied to one or more or all of the slides associated with the PH. If not present, ph_cc_alf _cr_enabled_flag is inferred to be equal to 0.
[0577] ph_cc_alf_cr_aps_id is the Cr color of the slice associated with the PH The ALF APS adaptation_parameter_set_ that the component references Specify the id. aps_params_type equals ALF_APS and adaptation_ parameter_set_id equals ph_cc_alf_cr_aps_id alf_cc_cr_filter_signal_flag in APS NAL unit The value of shall be equal to 1.
[0578] ph_lmcs_enabled_flag equal to 1 enables all PH-associated Specifies that luma mapping with chroma scaling is enabled for all slices. ph_lmcs_enabled_flag equal to 0 specifies that the LMCS is associated with PH. Luminance mapping with chroma scaling for one or more or all slices If not present, ph_lmcs_enabled_fl The value of ag is inferred to be equal to 0.
[0579] ph_lmcs_aps_id is the LMCS that the slice associated with the PH refers to. Specifies the adaptation_parameter_set_id of APS. s_params_type equals LMCS_APS and adaptation_pa APS NAL unit with parameter_set_id ph_lmcs_aps_id The TemporalId of the unit is the TemporalId of the picture associated with the PH. It shall be less than or equal to d.
[0580] ph_chroma_residual_scale_flag equal to 1 specifies that PH This indicates that chroma residual scaling is enabled for all associated slices. ph_chroma_residual_scale_flag equal to 0 specifies , chroma residual scaling for one or more or all slices associated with PH. Specifies that residual scaling is disabled. If e_flag is not present, it is inferred to be equal to 0.
[0581] ph_scaling_list_present_flag equal to 1 indicates that the reference scale Based on the scaling list data contained in the APS, the This specifies that scaling list data used for the specified slice is derived. Equal to ph_scaling_list_present_flag, the flag is associated with PH The scaling list used for the specified slice is set to 16. If it does not exist, ph_scaling_list_present_f The value of lag is assumed to be 0.
[0582] ph_scaling_list_aps_id is the ad of the scaling list APS Specifies the adaptation_parameter_set_id. s_type equals SCALING_APS and adaptation_parame APS whose ter_set_id is ph_scaling_list_aps_id The TemporalId of a NAL unit is the TemporalId of the picture associated with the PH. It shall be less than or equal to ralId.
[0583] ph_virtual_boundaries_present_flag equal to 1 specifies that virtual boundary information is signaled in PH. ph_virtu equal to 0 al_boundaries_present_flag indicates whether virtual boundary information is present in PH. If there is more than one virtual boundary signaled in the PH, In a picture, in-loop filtering operations across a virtual boundary are disabled. The loop filtering operations include a deblocking filter, a sample adaptive offset filter, and If not present, ph_virtual_ The value of boundaries_present_flag is assumed to be 1. If subpic_info_present_flag is equal to 1, then ph_vi The value of real_boundaries_present_flag is equal to 0. It is a requirement for bitstream conformance that The variable VirtualBoundariesPresentFlag is derived as follows: It is served.
[0584] VirtualBoundariesPresentFlag=0 if(sps_virtual_boundaries_enabled_fla g) VirtualBoundariesPresentFlag=sps_vir tual_boundaries_present_flag|| ph_virtual_boundaries_present_flag (83)
[0585] ph_num_ver_virtual_boundaries is the number of virtual boundaries that exist in PH. h_virtual_boundaries_pos_x[i] specifies the number of syntax elements If ph_num_ver_virtual_boundaries does not exist, 0 is assumed to be equal to The variable NumVerVirtualBoundaries is derived as follows:
[0586] NumVerVirtualBoundaries=0 if(sps_virtual_boundaries_enabled_fla g) NumVerVirtualBoundaries=sps_virtual_ boundaries_present_flag? sps_num_ver_virtual_boundaries:ph_ num_ver_virtual_boundaries (84)
[0587] ph_virtual_boundaries_pos_x[i] the i-th vertical virtual boundary Specifies the position of the field in units of 8 luminance samples. The value of ndaries_pos_x[i] ranges from 1 to Ceil(pic_width_in The range is _luma_samples÷8)-1. List Vir, where i ranges from 0 to NumVerVirtualBoundaries-1 Let tualBoundariesPosX[i] be the position of the vertical virtual boundary in luminance samples. By defining the position, it is derived as follows: for(i=0;i <NumVerVirtualBoundaries;i++ ) VirtualBoundariesPosX[i]=(sps_virtua l_boundaries_present_flag? sps_virtual_boundaries_pos_x[i]:ph _virtual_boundaries_pos_x[i])*8 (85) The distance between any two vertical virtual boundaries is at least CtbSizeY luminance samples. Let's say.
[0588] ph_num_hor_virtual_boundaries is the number of virtual boundaries that exist in PH. h_virtual_boundaries_pos_y[i] specifies the number of syntax elements If ph_num_hor_virtual_boundaries does not exist, 0 is assumed to be equal to The parameter NumHorVirtualBoundaries is derived as follows: can be.
[0589] NumHorVirtualBoundaries=0 if(sps_virtual_boundaries_enabled_flag) NumHorVirtualBoundaries=sps_virtual_bou ndaries_present_flag? sps_num_hor_virtual_boundaries:ph_num _hor_virtual_boundaries (86)
[0590] sps_virtual_boundaries_enabled_flag equals 1 ph_virtual_boundaries_present_flag is set to 1 If they are equal, ph_num_ver_virtual_boundaries and ph_ The sum of num_hor_virtual_boundaries must be greater than 0. do.
[0591] ph_virtual_boundaries_pos_y[i] is the i-th horizontal Specifies the position of the virtual boundary in the direction, in units of 8 luminance samples. The value of l_boundaries_pos_y[i] ranges from 1 to Ceil(pic_hei The range is 1 / 8 (light_in_luma_samples÷8)-1. List Vir, where i ranges from 0 to NumHorVirtualBoundaries-1 Let tualBoundariesPosY[i] be the value of the horizontal virtual boundary in luminance samples. By defining the position, it is derived as follows:
[0592] for(i=0;i <NumHorVirtualBoundaries;i++) VirtualBoundariesPosY[i]=(sps_virtual_b oundaries_present_flag? sps_virtual_boundaries_pos_y[i]:ph_vi rtual_boundaries_pos_y[i])*8 (87) The distance between any two horizontal virtual boundaries is at least CtbSizeY luminance samples. Let's say.
[0593] pic_output_flag affects the output and deletion process of decoded pictures. If pic_output_flag is not present, it is inferred to be equal to 1. .
[0594] partition_constraints_override_fla equal to 1 g specifies that the partition constraint parameter is present in PH. pa equal to 0 rtition_constraints_override_flag is This specifies that the partition constraint parameter is not present in the PH. Assume the value of ion_constraints_override_flag is equal to 0 will be done.
[0595] ph_log2_diff_min_qt_min_cb_intra_slice_ luma is the minimum size of luma samples in a luma leaf block resulting from the quadtree decomposition of a CTU. The base 2 logarithm of the size and the slice_type associated with PH is 2(I). the base 2 logarithm of the minimum coding block size of the luma samples of the luma CU in the Define the difference. ph_log2_diff_min_qt_min_cb_intra_ The value of slice_luma is 0 to CtbLog2SizeY-MinCbLog2Si If not present, ph_log2_diff_min The value of _qt_min_cb_luma is sps_log2_diff_min_qt_m Inferred to be equal to in_cb_luma.
[0596] ph_max_mtt_hierarchy_depth_intra_slice_ Luma is measured in slices with slice_type 2(I) associated with PH. The maximum hierarchical depth of a coding unit resulting from multi-type tree division of a quadtree in Specify. ph_max_mtt_hierarchy_depth_intra_sl The value of ice_luma is 0 to 2*(CtbLog2SizeY-MinCbLog2S If not present, ph_max_mtt_hie The value of rarchy_depth_intra_slice_luma is sps_max _mtt_hierarchy_depth__intra_slice_luma etc. It is inferred that this will become more difficult.
[0597] ph_log2_diff_max_bt_min_qt_intra_slice_ luma is the luma samples of the luma coding block that can be split using binary splitting The base 2 logarithm of the maximum size (width or height) of sl, which is 2(I) associated with PH. Luminance leaf blocks resulting from quadtree decomposition of CTUs of slices with ice_type Specifies the difference between the minimum size (width or height) of the luminance sample of and ph_log2_d. The value of iff_max_bt_min_qt_intra_slice_luma is 0 to Within the range of CtbLog2SizeY-MinQtLog2SizeIntraY If not present, ph_log2_diff_max_bt_min_qt_ The value of intra_slice_luma is sps_log2_diff_max_bt Inferred to be equal to _min_qt_intra_slice_luma.
[0598] ph_log2_diff_max_tt_min_qt_intra_slice_ Luma is the luminance sample of a luma coding block that can be divided using ternary division. is the base 2 logarithm of the maximum size (width or height) of the pool and 2(I) is the logarithm associated with the pH. Luminance leaf blocks resulting from quadtree decomposition of CTUs of slices with slice_type Specifies the minimum size (width or height) of a luminance sample in a block and the difference between ph_log2 and ph_log2. The value of _diff_max_tt_min_qt_intra_slice_luma is Within the range of 0 to CtbLog2SizeY-MinQtLog2SizeIntraY If not present, ph_log2_diff_max_tt_min_q The value of t_intra_slice_luma is sps_log2_diff_max_ Inferred to be equal to tt_min_qt_intra_slice_luma.
[0599] ph_log2_diff_min_qt_min_cb_intra_slice_ chroma is a class with treeType equal to DUAL_TREE_CHROMA Minimum size of luminance samples in chroma leaf blocks by quadtree division of Roma CTU and the base 2 logarithm of the slice associated with PH with slice_type 2(I). Luminance of chroma CUs with treeType equal to DUAL_TREE_CHROMA Specifies the difference between the base 2 logarithm of the minimum coding block size in samples and log2_diff_min_qt_min_cb_intra_slice_chro The value of ma is in the range of 0 to CtbLog2SizeY-MinCbLog2SizeY. If not present, ph_log2_diff_min_qt_min_ The value of cb_intra_slice_chroma is sps_log2_diff_mi Inferred to be equal to n_qt_min_cb_chroma.
[0600] ph_max_mtt_hierarchy_depth_intra_slice_ chroma is a treeTy with slice_type 2(I) associated with PH Chroma quadtree with treeType where pe=DUAL_TREE_CHROMA Specifies the maximum hierarchical depth of the chroma coding unit resulting from the multi-type tree division of ph_max_mtt_hierarchy_depth_intra_slic The value of e_chroma is 0 to 2*(CtbLog2SizeY-MinCbLog2S If not present, ph_max_mtt_hie The value of rarchy_depth_intra_slice_chroma is sps_m ax_mtt_hierarchy_depth_intra_slice_chrom is inferred to be equal to a.
[0601] ph_log2_diff_max_bt_min_qt_intra_slice_ chroma is the luminance size of the chroma coding block that can be split using binary splitting The base 2 logarithm of the maximum size (width or height) of a sample and the slice_ Equivalent to DUAL_TREE_CHROMA on slices of type 2(I). Chroma leaf blocks resulting from quadtree decomposition of chroma CTUs with treeType Specifies the difference from the minimum size (width or height) of the luminance sample. The value of f_max_bt_min_qt_intra_slice_chroma is 0 to The value is within the range of CtbLog2SizeY-MinQtLog2SizeIntraC. If not present, ph_log2_diff_max_bt_min_qt_ The value of intra_slice_chroma is sps_log2_diff_max_ Inferred to be equal to bt_min_qt_intra_slice_chroma .
[0602] ph_log2_diff_max_tt_min_qt_intra_slice_ chroma is the luminance of the chroma coding block that can be divided using ternary division The base 2 logarithm of the maximum sample size (width or height) and the slice associated with PH Equivalent to DUAL_TREE_CHROMA on slices with _type 2(I). Chroma leaf blocks resulting from quadtree decomposition of chroma CTUs with different treeTypes Specifies the difference between the minimum size (width or height) of the luminance sample of The value of ff_max_tt_min_qt_intra_slice_chroma is 0 Within the range of ~CtbLog2SizeY-MinQtLog2SizeIntraC If not present, ph_log2_diff_max_tt_min_qt The value of _intra_slice_chroma is sps_log2_diff_max It is inferred to be equal to _tt_min_qt_intra_slice_chroma. do.
[0603] ph_cu_qp_delta_subdiv_intra_slice is cu_q Propagates p_delta_abs and cu_qp_delta_sign_flag Specifies the maximum cbSubdiv value for coding units within an intra slice. The value of h_cu_qp_delta_subdiv_intra_slice is 0 to 2* (CtbLog2SizeY-MinQtLog2SizeIntraY+ph_max _mtt_hierarchy_depth_intra_slice_luma) It shall be within the range. If not present, ph_cu_qp_delta_subdiv_intra_sli The value of ce is inferred to be equal to 0.
[0604] ph_cu_chroma_qp_offset_subdiv_intra_sli ce is an intraline that carries cu_chroma_qp_offset_flag. Specifies the maximum cbSubdiv value of a coding unit in the The value of offset_subdiv_intra_slice is 0 to 2*(CtbLog 2SizeY-MinQtLog2SizeIntraY+ph_max_mtt_hi erarchy_depth_intra_slice_luma) Let's say. If not present, ph_cu_chroma_qp_offset_subdiv_i The value of ntra_slice is inferred to be equal to 0.
[0605] ph_log2_diff_min_qt_min_cb_inter_slice is , the minimum size of luma samples of luma leaf blocks resulting from the quadtree partitioning of the CTU is base 2 Logarithm and slice_type associated with PH equals 0 (B) or 1 (P) Minimum luma coding block size of luma samples for a luma CU in a slice Specifies the difference between the base 2 logarithm of and . The value of b_inter_slice is 0 to CtbLog2SizeY-MinCbLog 2SizeY. If not present, ph_log2_diff_ The value of min_qt_min_cb_luma is sps_log2_diff_min_ Inferred to be equal to qt_min_cb_inter_slice.
[0606] ph_max_mtt_hierarchy_depth_inter_slice , in slices with slice_type 0 (B) or 1 (P) associated with PH The maximum hierarchical depth of the coding unit by multitype tree division of quadtree leaves is ph_max_mtt_hierarchy_depth_inter_ The slice value is 0 to 2*(CtbLog2SizeY-MinCbLog2Size Y). If not present, ph_max_mtt_hierar The value of chy_depth_inter_slice is sps_max_mtt_hie It is inferred to be equal to rarchy_depth_inter_slice.
[0607] ph_log2_diff_max_bt_min_qt_inter_slice , the luma samples of the luma coding block can be split using binary splitting The base 2 logarithm of the maximum size (width or height) of the P) is the luminance subtree of the luminance leaf block resulting from the quadtree division of the CTU in the slice. Specifies the minimum size (width or height) of a sample and the difference between the The value of max_bt_min_qt_inter_slice is 0 to CtbLog2Si It must be in the range zeY-MinQtLog2SizeInterY. If not, ph_log2_diff_max_bt_min_qt_inter_sli The value of ce is sps_log2_diff_max_bt_min_qt_inter_s It is inferred to be equal to lice.
[0608] ph_log2_diff_max_tt_min_qt_inter_slice is , the luminance samples of the luminance coding block can be divided using ternary division. The base 2 logarithm of the maximum size (width or height) of a rule and the 0 (B) or 1 (B) associated with PH. (P) is the luminance of the luminance leaf block resulting from the quadtree partitioning of the CTU in the slice. Specifies the minimum size (width or height) of a sample and the difference between them. The value of _max_tt_min_qt_inter_slice is 0 to CtbLog2S It must be in the range of sizeY-MinQtLog2SizeInterY. If not, ph_log2_diff_max_tt_min_qt_inter_sl The value of ice is sps_log2_diff_max_tt_min_qt_inter_ It is inferred to be equal to slice.
[0609] ph_cu_qp_delta_subdiv_inter_slice is cu_q Propagates p_delta_abs and cu_qp_delta_sign_flag Specifies the maximum cbSubdiv value for coding units within an inter-slice. The value of h_cu_qp_delta_subdiv_inter_slice is 0 to 2* (CtbLog2SizeY-MinQtLog2SizeInterY+ph_max _mtt_hierarchy_depth_inter_slice) It shall be. If not present, ph_cu_qp_delta_subdiv_inter_sli The value of ce is inferred to be equal to 0.
[0610] ph_cu_chroma_qp_offset_subdiv_inter_sli ce is an interslice signal that carries cu_chroma_qp_offset_flag. Specifies the maximum cbSubdiv value of a coding unit in the stream. The value of oma_qp_offset_subdiv_inter_slice is 0 to 2* (CtbLog2SizeY-MinQtLog2SizeInterY+ph_max _mtt_hierarchy_depth_inter_slice) It shall be. If not present, ph_cu_chroma_qp_offset_subdiv_i The value of nter_slice is inferred to be equal to 0.
[0611] ph_temporal_mvp_enabled_flag is associated with PH Specifies whether a temporal motion vector predictor can be used for inter prediction of the selected slice. If ph_temporal_mvp_enabled_flag is equal to 0, PH The syntax element of a slice associated with a temporal motion vector predictor is used to decode the slice. It shall be constrained not to be used otherwise (ph_temporal_ mvp_enabled_flag equals 1), the slice associated with the PH If not present, ph_temp The value of oral_mvp_enabled_flag is assumed to be equal to 0. If the reference picture in does not have the same spatial resolution as the current picture, The value of oral_mvp_enabled_flag shall be equal to 0. Maximum number of subblock-based merging MVP candidates, MaxNumSubblockMe rgeCand is derived as follows:
[0612] if(sps_affine_enabled_flag) MaxNumSubblockMergeCand=5-five_minus_ma x_num_subblock_merge_cand (88) else MaxNumSubblockMergeCand=sps_sbtmvp_enab led_flag&&ph_temporal_mvp_enable_flag The value of MaxNumSubblockMergeCand is in the range of 0 to 5.
[0613] ph_collocated_from_l0_flag equal to 1 indicates that the temporal motion vector Co-located pictures used for vector prediction are derived from reference picture list 0. ph_collocated_from_l0_fl equal to 0 ag is the co-located picture used for temporal motion vector prediction as a reference picture. It is stipulated that it is derived from Charist 1.
[0614] ph_collocated_ref_idx is used for temporal motion vector prediction. This specifies the reference index of the co-located picture. When ph_collocated_from_l0_flag is equal to 1, ph_c ollocated_ref_idx refers to an entry in reference picture list 0, and ph _collocated_ref_idx is a value between 0 and num_ref_entries It shall be in the range [0][PicRplsIdx[0]]-1. If ph_collocated_from_l0_flag is equal to 0, then ph_c ollocated_ref_idx refers to an entry in reference picture list 1, and ph _collocated_ref_idx is a value between 0 and num_ref_entries It must be in the range [0][PicRplsIdx[1]]-1. If not present, the value of ph_collocated_ref_idx is assumed to be equal to 0. It is measured.
[0615] mvd_l1_zero_flag equal to 1 means mvd_coding(x0,y0 1) The syntax structure is not parsed, and MvdL1[x0][y0][compIdx] and and MvdCpL1[x0][y0][cpIdx][compIdx] is compIdx =0..1 and cpIdx=0..2 indicates it is set to 0. Equals 0 mvd_l1_zero_flag is used in conjunction with the mvd_coding(x0,y0,1) syntax. Indicates that the structure has been parsed.
[0616] ph_fpel_mmvd_enabled_flag equal to 1 enables motion vector difference Merge modes with use the integer sample precision of the slice associated with PH. ph_fpel_mmvd_enabled_flag equal to 0 specifies that Merge mode with motion vector difference uses fractional samples of the slice associated with PH. Specifies the precision to use. If not present, ph_fpel_mmvd_enab The value of led_flag is assumed to be 0.
[0617] ph_disable_bdof_flag equal to 1 disables the slur associated with PH. In this device, inter-bidirectional prediction based on bidirectional optical flow inter-prediction is not available. ph_disable_bdof_flag equal to 0 specifies that In the slices associated with the PH, bidirectional optical flow inter-prediction is used. Specifies that inter bidirectional prediction may or may not be enabled. If ph_disable_bdof_flag is not present, the following applies: - If sps_bdof_enabled_flag is equal to 1, then ph_di The value of sable_bdof_flag is inferred to be equal to 0. - Otherwise (if sps_bdof_enabled_flag is equal to 0) If ph_disable_bdof_flag is set to 1, the value of ph_disable_bdof_flag is inferred.
[0618] ph_disable_dmvr_flag equal to 1 disables the slur associated with PH. In this device, inter bi-prediction based on decoder motion vector refinement is disabled. ph_disable_dmvr_flag equal to 0 specifies that the In the slices marked with a slash, bidirectional prediction based on decoder motion vector refinement is performed. It specifies that it may or may not be enabled. If ph_disable_dmvr_flag is not present, the following applies: - If sps_dmvr_enabled_flag is equal to 1, then ph_dis The value of able_dmvr_flag is inferred to be equal to 0. - Otherwise (sps_dmvr_enable_flag is equal to 0) , the value of ph_disable_dmvr_flag is inferred to be equal to 1.
[0619] ph_disable_prof_flag equal to 1 disables the slur associated with PH. This specifies that optical flow prediction fine-tuning is disabled in the device. ph_disable_prof_flag is equal to the slice associated with PH In this case, optical flow prediction refinement may or may not be enabled. This stipulates: If ph_disable_prof_flag is not present, the following applies: -sps_affine_prof_enabled_flag is equal to 1 , the value of ph_disable_prof_flag is inferred to be equal to 0. - Otherwise (sps_affine_prof_enabled_flag is 0), the value of ph_disable_prof_flag is inferred to be equal to 1. will be done.
[0620] ph_qp_delta is the CuQpDelta at the coding unit layer Used for coding blocks in the picture until modified by the value of Val. RuQp Y Specifies the initial value of If qp_delta_info_in_ph_flag is equal to 1, the picture's Qp for all slices Y quantization parameter SliceQp Y The first value of , which is derived as follows: SliceQp Y =26+init_qp_minus26+ph_qp_del ta (89) SliceQp Y The value is in the range of -QpBdOffset to 63.
[0621] ph_joint_cbcr_sign_flag is tu_joint_cbcr_ In the translation unit where residual_flag[x0][y0] is equal to 1, both The co-located residual samples of the chroma components are reversed in sign. tu_joint_cbcr_residual_fl for one transformation unit. ph_joint_cbcr_si is equal to 0 when ag[x0][y0] is equal to 1 gn_flag is used to determine whether the sign of each residual sample of the Cr (or Cb) component is located at the same position. p is equal to 1, and h_joint_cbcr_sign_flag is the residual signal for each Cr (or Cb) component. The sign of a sample is the opposite of the co-located Cb (or Cr) residual sample. This specifies that the
[0622] ph_sao_luma_enabled_flag equal to 1 indicates that the PH is associated with Specifies that SAO is enabled for the luma component in all slices selected, and is set to 0. Equal ph_sao_luma_enabled_flag indicates that SAO for the luminance component is enabled in PH may be invalidated for one or more or all slices associated with If ph_sao_luma_enabled_flag does not exist, 0 is assumed to be equal to
[0623] ph_sao_chroma_enabled_flag equal to 1 indicates that the PH is associated with Specifies that SAO is enabled for chroma components in all slices included in the , ph_sao_chroma_enabled_flag equal to 0 means S If AO is disabled for one or more or all slices associated with a PH ph_sao_chroma_enabled_flag is present. If not, it is assumed to be equal to 0.
[0624] ph_dep_quant_enabled_flag equal to 0 means that the current picture Specifies that dependency quantization is disabled for ph_dep_quan equal to 1. t_enabled_flag indicates that dependent quantization is enabled for the current picture. If ph_dep_quant_enabled_flag is not present, , is inferred to be equal to 0.
[0625] pic_sign_data_hiding_enabled_flag equal to 0 , specifies that sign bit hiding is disabled for the current picture. pic_sign_data_hiding_enabled_flag is the current pic pic_sign_ Specifies that sign bit hiding is enabled for the structure. If data_hiding_enabled_flag is not present, it is assumed to be equal to 0. It is measured.
[0626] ph_deblocking_filter_override_flag equal to 1 specifies that the deblocking parameter is present in PH. ph_de equal to 0 blocking_filter_override_flag is the deblocking parameter. Specifies that the meter is not present in the PH. If not present, ph_deblockin The value of g_filter_override_flag is inferred to be equal to 0.
[0627] ph_deblocking_filter_disabled_flag equal to 1 does not apply the deblocking filter operation to the slice associated with PH. ph_deblocking_filter_disable equal to 0 ed_flag specifies whether the deblocking filter is applied to the slice associated with the PH. ph_deblocking_filter_disab If led_flag does not exist, pps_deblocking_filter_d isabled_flag.
[0628] ph_beta_offset_div2 and ph_tc_offset_div2 is the deblocking of β and tC applied to the luminance component of the slice associated with PH. Specifies the offset (divide by 2) of the logging parameter. The values of iv2 and ph_tc_offset_div2 are both in the range of -12 to 12. If not present, ph_beta_offset_div2 and The value of ph_tc_offset_div2 is pps_beta_offset _div2 and pps_tc_offset_div2.
[0629] ph_cb_beta_offset_div2 and ph_cb_tc_offse t_div2 is the div of β and tC applied to the Cb component of the slice associated with PH. Specifies the offset (divide by 2) for the deblocking parameters. The values of _offset_div2 and ph_cb_tc_offset_div2 are Both must be in the range of -12 to 12. If not present, ph_cb_beta The values of _offset_div2 and ph_cb_tc_offset_div2 are pps_cb_beta_offset_div2 and pps_cb_tc_o Inferred to be equal to ffset_div2.
[0630] ph_cr_beta_offset_div2 and ph_cr_tc_offse t_div2 is the β and t applied to the Cr component of the slice associated with PH. Specifies the offset (divide by 2) for the deblocking parameter C. The values of ta_offset_div2 and ph_cr_tc_offset_div2 are , both of which must be in the range of -12 to 12. If not present, ph_cr_be The values of ta_offset_div2 and ph_cr_tc_offset_div2 are , pps_cr_beta_offset_div2 and pps_cr_tc, respectively Inferred to be equal to _offset_div2.
[0631] ph_extension_length specifies the length of the PH extension data in bytes. , not including bits used for signaling the ph_extension_length itself. The value of ph_extension_length is in the range of 0 to 256. If not, the value of ph_extension_length is inferred to be equal to 0.
[0632] ph_extension_data_byte can have any value. Decoders conforming to the specification version should use ph_extension_data_byt The value of e must be ignored. It depends on the feature specified in the version of this specification. This does not affect the decoder's compatibility with
[0633] 7.4.8 Slice Header Semantics
[0634] 7.4.8.1 General slice header semantics
[0635] Luma quantization parameter for coding units, including cu_qp_delta_abs The variable CuQpDeltaVal, which defines the difference between cu_ and its prediction, is set to 0. Qp' of the coding unit containing the chroma_qp_offset_flag cb , Qp' cr , Qp' CbCr Used to determine the value of each quantization parameter The variable CuQpOffset specifies the value to be cb , CuQpOffset cr , and C uQpOffset CbCr are all set equal to 0.
[0636] picture_header_in_slice_header_fla equal to 1 g specifies the presence of PH syntax structures in the slice header. re_header_in_slice_header_flag indicates whether a PH syntax structure exists. It specifies that there is no For all coded slices in CLVS, picture_hea The values of der_in_slice_header_flag and , a requirement for bitstream conformance. picture_header_in_s for one coded slice If lice_header_flag is equal to 1, then nal_u is PH_NUT. VCL NAL units with nit_type shall not exist in CLVS. These are the requirements for bitstream conformance. picture_header_in_slice_header_flag is equal to 0 If necessary, all coded slices in the current picture are re_header_in_slice_header_flag is equal to 0. , the current PU shall have a PH NAL unit.
[0637] slice_subpic_id is the subpicture ID of the subpicture that contains the slice If slice_subpic_id exists, the variable CurrSubpi The value of cIdx is the slice of SubpicIdVal[CurrSubpicIdx]. _subpic_id is derived to be equal to (slice_s subpic_id does not exist), CurrSubpicIdx is equal to 0 The length of slice_subpic_id is derived from sps_subpic_id_ len_minus1+1 bits.
[0638] slice_address specifies the slice address of the slice. In this case, the value of slice_address is inferred to be equal to 0. e_flag equals 1 and NumSlicesInSubpic[CurrSubpi If [cIdx] is equal to 1, the value of slice_address is inferred to be equal to 0. can be. If rect_slice_flag is equal to 0, the following applies: -The slice address is the raster scan tile index. - The length of slice_address is Ceil(Log2(NumTilesI nPic)) bits. -slice_address is a value between 0 and NumTilesInPic-1 should be within the range of Otherwise (rect_slice_flag is equal to 1), the following applies: can be. - The slice address is the sub-picture level slice index of the slice . - The length of slice_address is Ceil(Log2(NumSlices InSubpic[CurrSubpicIdx])) bit. -slice_address value is 0~NumSlicesInSubpic[ CurrSubpicIdx]-1. The requirements for bitstream conformance are that the following constraints apply: -rect_slice_flag is equal to 0 or subpic_info_p If resent_flag is equal to 0, the value of slice_address is Any other coded slice NAL unit in the loaded picture It must not be equal to the slice_address value of the - Otherwise, slice_subpic_id and slice_address The set of s values is the same as any other coded s in the same coded picture. slice_subpic_id and slice_address of Rice NAL unit s must not be equal to the pair of values. The shape of the slices of the picture is such that each CTU, when decoded, has its entire left boundary and The entire top boundary is the boundary of one picture or the boundary of a previously decoded CTU. It must be so.
[0639] sh_extra_bit[i] may be equal to 1 or 0. A compliant decoder must ignore the value of sh_extra_bit[i]. Its value affects the conformance of the decoder to the features specified in this version of this specification. Not given.
[0640] num_tiles_in_slice_minus1+1 (if present) is the number of tiles in the slice num_tiles_in_slice_minu Specifies the number of tiles in a slice. The value of s1 should be in the range 0 to NumTilesInPic-1. The variable NumCtusInCurrSli that specifies the number of CTUs in the current slice. ce and the picture raster scan address of the ith CTB in the slice, where i is 0. A list of CtbAddr values ranging from NumCTUsInCurrSlice-1 to NumCTUsInCurrSlice-1. InCurrSlice[i] is derived as follows:
[0641] if(rect_slice_flag){ picLevelSliceIdx=slice_address for(j=0;j <CurrSubpicIdx;j++) picLevelSliceIdx+=NumSlicesInSubpic[j] NumCtusInCurrSlice=NumCtusInSlice[picLe velSliceIdx] for(i=0;i <NumCtusInCurrSlice;i++) CtbAddrInCurrSlice[i]=CtbAddrInSlice[p icLevelSliceIdx][i] (117) } else{ NumCtusInCurrSlice=0 for(tileIdx=slice_address;tileIdx<=slic e_address+num_tiles_in_slice_minus1;tile Idx++){ tileX=tileIdx%NumTileColumns tileY=tileIdx / NumTileColumns for(ctbY=tileRowBd[tileY];ctbY <tileRow Bd[tileY+1];ctbY++){ for(ctbX=tileColBd[tileX];ctbX <tileCo lBd[tileX+1];ctbX++){ CtbAddrInCurrSlice[NumCtusInCurrSlic e]=ctbY*PicWidthInCtb+ctbX NumCtusInCurrSlice++ } } } }
[0642] Variables SubpicLeftBoundaryPos, SubpicTopBounda ryPos, SubpicRightBoundaryPos, and SubpicBo tBoundaryPos is derived as follows:
[0643] if(subpic_treated_as_pic_flag[CurrSubpic Idx]){ SubpicLeftBoundaryPos=subpic_ctu_top_le ft_x[CurrSubpicIdx]*CtbSizeY SubpicRightBoundaryPos=Min(pic_width_ma x_in_luma_samples-1, (subpic_ctu_top_left_x[CurrSubpicIdx] + subpic_width_minus1[CurrSubpicIdx]+1) *CtbSizeY-1) SubpicTopBoundaryPos=subpic_ctu_top_lef t_y[CurrSubpicIdx]*CtbSizeY (118) SubpicBotBoundaryPos=Min(pic_height_max _in_luma_samples-1, (subpic_ctu_top_left_y[CurrSubpicIdx] + subpic_height_minus1[CurrSubpicIdx]+1 )*CtbSizeY-1) }
[0644] slice_type specifies the coding type of the slice according to Table 9 .
[0645] [Table 36]
[0646] If not present, the value of slice_type is inferred to be equal to 2. If ph_intra_slice_allowed_flag is equal to 0, the sli The value of ce_type shall be equal to 0 or 1. Within the range of DR_W_RADL~CRA_NUT and vps_independent nt_layer_flag[GeneralLayerIdx[nuh_layer_ If id]] is equal to 1, then slice_type shall be equal to 2. Variables MinQtLog2SizeY, MinQtLog2SizeC, MinQtSi zeY, MinQtSizeC, MaxBtSizeY, MaxBtSizeC, Min BtSizeY, MaxTtSizeY, MaxTtSizeC, MinTtSizeY , MaxMttDepthY and MaxMttDepthC are derived as follows: .
[0647] If slice_type equals 2(I), MinQtLog2SizeY=MinCbLog2SizeY+ph_log2 _diff_min_qt_min_cb_intra_slice_luma (11 9) 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) (1 twenty one) 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) (1 twenty three) MaxTtSizeC=1<<(MinQtLog2SizeC+ph_log2 _diff_max_tt_min_qt_intra_slice_chroma) (124) MaxMttDepthY=ph_max_mtt_hierarchy_dep th_intra_slice_luma (125) MaxMttDepthC=ph_max_mtt_hierarchy_dep th_intra_slice_chroma (126) CuQpDeltaSubdiv=ph_cu_qp_delta_subdiv _intra_slice (127) CuChromaQpOffsetSubdiv=ph_cu_chroma_q p_offset_subdiv_intra_slice (128) Otherwise(slice_type equal to0(B)or1(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_dep th_inter_slice (135) MaxMttDepthC=ph_max_mtt_hierarchy_dep th_inter_slice (136) CuQpDeltaSubdiv=ph_cu_qp_delta_subdiv _inter_slice (137) CuChromaQpOffsetSubdiv=ph_cu_chroma_q p_offset_subdiv_inter_slice (138) MinQtSizeY=1< <MinQtLog2SizeY (139) MinQtSizeC=1< <MinQtLog2SizeC (140) MinBtSizeY=1< <MinCbLog2SizeY (141) MinTtSizeY=1< <MinCbLog2SizeY (142)
[0648] slice_alf_enabled_flag equal to 1 indicates that the adaptive loop filter is Can be enabled and applied to the Y, Cb, or Cr color components in a slice. slice_alf_enabled_flag equal to 0 specifies that the slice Specifies that all color components in slice_al are disabled. The value of f_enabled_flag is assumed to be ph_alf_enabled_flag. can be.
[0649] slice_num_alf_aps_ids_luma is the number of ALs that the slice refers to Specifies the number of F APS. If slice_num_alf_aps_ids_luma does not exist, The value of slice_num_alf_aps_ids_luma is ph_num_alf It is inferred to be equal to the value of _aps_ids_luma.
[0650] slice_alf_aps_id_luma[i] is the luminance component of the slice referenced adaptation_parameter_set_id of the i-th ALF APS aps_params_type is equal to ALF_APS and adapta tion_parameter_set_id is slice_alf_aps_id_l The TemporalId of the APS NAL unit uma[i] is coded as The TemporalId of the slice NAL unit specified in the _alf_enabled_flag is equal to 1 and slice_alf_aps If _id_luma[i] does not exist, slice_alf_aps_id_lum The value of a[i] is inferred to be equal to the value of ph_alf_aps_id_luma[i]. do. aps_params_type equals ALF_APS and adaptation_ parameter_set_id is slice_alf_aps_id_luma[i ] equal to the alf_luma_filter_signal_ of the APS NAL unit The value of flag shall be equal to 1.
[0651] slice_alf_chroma_idc equal to 0 means that the adaptive loop filter is slice_alf_chrom equal to 1 indicates that it does not apply to the Cr and Cr color components. a_idc indicates that the adaptive loop filter is applied to the Cb color component. s equal to 2 lice_alf_chroma_idc specifies whether an adaptive loop filter is applied to the Cr color component. slice_alf_chroma_idc equal to 3 indicates that the adaptive loop Indicates that the filter is applied to the Cb and chroma components. If idc is not present, it is inferred to be equal to ph_alf_chroma_idc. can be.
[0652] slice_alf_aps_id_chroma refers to the chroma component of the slice. Specifies the adaptation_parameter_set_id of the ALF APS aps_params_type is equal to ALF_APS and adaptation _parameter_set_id is slice_alf_aps_id_chrom The TemporalId of an APS NAL unit that is a coded slice The TemporalId of the slice NAL unit shall be less than or equal to the slice_alf_ enabled_flag is equal to 1 and slice_alf_aps_id_c If chroma is not present, the value of slice_alf_aps_id_chroma is , is inferred to be equal to the value of ph_alf_aps_id_chroma. aps_params_type equals ALF_APS and adaptation_ parameter_set_id is slice_alf_aps_id_chroma alf_chroma_filter_sig of APS NAL unit equal to [i] The value of nal_flag shall be equal to 1.
[0653] slice_cc_alf_cb_enabled_flag equal to 0 means that the cross-connect Specifies that no component filter is applied to the Cb color component. sl equal to 1 ice_cc_alf_cb_enabled_flag is the cross-component filter This specifies that the filter is valid and may or may not be applied to the Cb color component. If ce_cc_alf_cb_enabled_flag does not exist, ph_cc_ It is inferred to be equal to alf_cb_enabled_flag.
[0654] slice_cc_alf_cb_aps_id refers to the Cb color component of the slice Specify the adaptation_parameter_set_id. aps_params_type equals ALF_APS and adaptation_ parameter_set_id is slice_cc_alf_cb_aps_id The TemporalId of an APS NAL unit is the TemporalId of coded slice N. It must be less than or equal to the TemporalId of the AL unit. slice_cc_alf _cb_enabled_flag is equal to 1 and slice_cc_alf_c If b_aps_id does not exist, slice_cc_alf_cb_aps_id The value is inferred to be equal to the value of ph_cc_alf_cb_aps_id. aps_params_type equals ALF_APS and adaptation_ parameter_set_id to slice_cc_alf_cb_aps_id Equal APS NAL unit alf_cc_cb_filter_signal_f The value of lag is assumed to be equal to 1.
[0655] slice_cc_alf_cr_enabled_flag equal to 0 means that the cross- Specifies that no component filter is applied to the Cr color component. sl equal to 1 ice_cc_alf_cb_enabled_flag is cross-component adaptation Specifies that the loop filter is enabled and may or may not be applied to the Cr color component. If slice_cc_alf_cr_enabled_flag does not exist, p It is inferred to be equal to h_cc_alf_cr_enabled_flag.
[0656] slice_cc_alf_cr_aps_id refers to the Cr color component of the slice Specifies the adaptation_parameter_set_id. ams_type is equal to ALF_APS and adaptation_parameter is APS NA where r_set_id is slice_cc_alf_cr_aps_id The TemporalId of an L unit is the TemporalId of the coded slice NAL unit. It must be less than or equal to emporalId. slice_cc_alf_cr_enab led_flag is equal to 1 and slice_cc_alf_cr_aps_id If slice_cc_alf_cr_aps_id does not exist, the value of slice_cc_alf_cr_aps_id is It is inferred to be equal to the value of _alf_cr_aps_id. aps_params_type equals ALF_APS and adaptation_ parameter_set_id to slice_cc_alf_cr_aps_id alf_cc_cr_filter_signal_f for equal APS NAL units The value of lag is assumed to be equal to 1.
[0657] color_plane_id is separate_colour_plane_ If flag is equal to 1, it identifies the color plane associated with the current slice. The value of color_plane_id must be in the range 0 to 2, and color_p lane_id values 0, 1, and 2 correspond to the Y, Cb, and Cr planes, respectively. The r_plane_id value 3 is reserved for future use by ITU-T|ISO / IEC. It is agreed upon. NOTE 1 – There are no dependencies between the decoding processes of different color planes of a picture.
[0658] num_idx_active_override_flag equal to 1 is used in conjunction with the syntax element num_ref_idx_active_minus1[0] is the number of P slices and B slices exists in the device and the syntax element num_ref_idx_active_minus1[1] Specifies that the num_ref_idx_activ parameter is present in the B slice. e_override_flag is the syntax element num_ref_idx_active_ minus1[0] and num_ref_idx_active_minus1[1] If it does not exist, num_ref_idx_active The value of _override_flag is inferred to be equal to 0.
[0659] num_ref_idx_active_minus1[i] is defined in Equation 143 is used to derive the variable NumRefIdxActive[i]. The value of f_idx_active_minus1[i] is in the range of 0 to 14. It should be. If i is equal to 0 or 1, and the current slice is a B slice, num_re f_idx_active_override_flag is equal to 1 and num_ref If _idx_active_minus1[i] does not exist, then num_ref_id Infer that x_active_minus1[i] is not 0. When the current slice is a P slice, num_ref_idx_active_o verride_flag is equal to 1 and num_ref_idx_active_mi If nus1[0] does not exist, num_ref_idx_active_minus Infer that 1[0] is not 0. The variable NumRefIdxActive[i] is derived as follows:
[0660] for(i=0;i<2;i++){ if(slice_type==B||(slice_type==P&&i==0) ){ if(num_ref_idx_active_override_flag) NumRefIdxActive[i]=num_ref_idx_active _minus1[i]+1 (143) else { if(num_ref_entries[i][RplsIdx[i]]>=nu m_ref_idx_default_active_minus1[i]+1) NumRefIdxActive[i]=num_ref_idx_defau lt_active_minus1[i]+1 else NumRefIdxActive[i]=num_ref_entries[i ][RplsIdx[i]] } }else / *slice_type==I||(slice_type==P&&i ==1)* / NumRefIdxActive[i]=0 }
[0661] The value of NumRefIdxActive[i]-1 is used to decode the slice. Specifies the maximum reference index of the reference picture list i that can be used. If the value of active[i] is equal to 0, the reference index of reference picture list i is used. The slice can be decoded without using When the current slice is a P slice, the value of NumRefIdxActive[0] is greater than 0. If the current slice is a B slice, NumRefIdxActive[0] and Both NumRefIdxActive[1] and NumRefIdxActive[1] shall be greater than 0.
[0662] cabac_init_flag Initialization test used in the initialization process of the context variable If cabac_init_flag is not present, It is assumed to be equal to 0.
[0663] slice_collocated_from_l0_flag equal to 1 means that the The co-located picture used for motion vector prediction is from reference picture list 0 slice_collocated_from equal to 0. _l0_flag specifies the co-located picture used for temporal motion vector prediction. This specifies that the image is derived from reference picture list 1. slice_type is B or P, and ph_temporal_mvp_ena bled_flag equals 1 and slice_collocated_from_l0 If _flag is not present, the following applies: - If rpl_info_in_ph_flag is equal to 1, slice_co llocated_from_l0_flag is ph_collocated_from Inferred to be equal to _l0_flag. - Otherwise (rpl_info_in_ph_flag is equal to 0 and sli If ce_type is equal to P, slice_collocated_from_l0 The value of _flag is inferred to be equal to 1).
[0664] slice_collocated_ref_idx, used for temporal motion vector prediction Specifies the reference index of the co-located picture to be slice_type is P or slice_type is equal to B and co If llocated_from_l0_flag is equal to 1, slice_col located_ref_idx refers to an entry in reference picture list 0 The ce_collocated_ref_idx value ranges from 0 to NumRefIdxAc It is assumed to be in the range of tive[0]-1. slice_type equals B and slice_collocated_from_ slice_collocated_ref_idx if l0_flag is equal to 0 The value of slice_collocated refers to an entry in reference picture list 1. _ref_idx is in the range 0 to NumRefIdxActive[1]-1 It shall be. If slice_collocated_ref_idx does not exist, the following applies: can be. - If rpl_info_in_ph_flag is equal to 1, slice_co The value of llocated_ref_idx is ph_collocated_ref_idx is inferred to be equal to - Otherwise (rpl_info_in_ph_flag is equal to 0), sl The value of ice_collocated_ref_idx is inferred to be equal to 0. The picture referenced by slice_collocated_ref_idx is It is assumed that the bitstream It is a conformance requirement. pi of the reference picture referenced by slice_collocated_ref_idx c_width_in_luma_samples and pic_height_in_lu The value of ma_samples is the pic_width_in_l of the current picture. Same as uma_samples and pic_height_in_luma_samples RprConstraintsActive[slice_coll It is a bitstream conformance requirement that [slice_collocated_from_l0_flag? 0:1][slice_collocated_ref_idx] equals 0.
[0665] slice_qp_delta is used for coding blocks in slices RuQp Y The first value of CuQpDeltaVal in the coding unit layer This value will be specified until it is corrected. If qp_delta_info_in_ph_flag is equal to 0, the Q of the slice p Y Quantization parameter SliceQp Y The initial value of is derived as follows: SliceQp Y =26+init_qp_minus26+slice_qp_ delta (144) SliceQp Y The value is in the range of -QpBdOffset to 63. When any of the following conditions is true: -wp_info_in_ph_flag value is equal to 1, pps_weight ed_pred_flag is equal to 1 and slice_type is P. -wp_info_in_ph_flag value is equal to 1, pps_weight ed_bipred_flag is equal to 1 and slice_type is B. The following applies: - The value of NumRefIdxActive[0] must be equal to or greater than the value of NumWeightsL0. It is assumed that the For each reference picture i in the range -0 to NumRefIdxActive[0]-1 For the picture index RefPicList[0][i], the reference picture index The luma weight, Cb weight, and Cr weight applied to L0[i], ChromaWeightL0[0][i], and ChromaWeig Applies to htL0[1][i]. wp_info_in_ph_flag equals 1 and pps_weighted_b If ipred_flag is equal to 1 and slice_type is equal to B, then the following applies: It is used. - The value of NumRefIdxActive[1] must be equal to or greater than the value of NumWeightsL1. It is assumed that the For each reference picture i in the range -0 to NumRefIdxActive[1]-1 For the picture index RefPicList[1][i], the reference picture index The luma weight, Cb weight, and Cr weight applied to L1[i], ChromaWeightL1[0][i], and ChromaWeig Applies to htL1[1][i].
[0666] slice_cb_qp_offset Qp' cb Determine the value of the quantization parameter Specifies the difference to be added to the value of pps_cb_qp_offset when The value of cb_qp_offset must be between -12 and +12. If p_offset is not present, it is inferred to be equal to 0. The value of p_offset+slice_cb_qp_offset is in the range of -12 to +12. It will be within the enclosure.
[0667] slice_cr_qp_offset Qp' cr Determine the value of the quantization parameter Specifies the difference to be added to the value of pps_cr_qp_offset when The value of cr_qp_offset must be between -12 and +12. If p_offset is not present, it is inferred to be equal to 0. The value of p_offset+slice_cr_qp_offset is in the range of -12 to +12. It will be within the enclosure.
[0668] slice_joint_cbcr_qp_offset Qp' CbCr Determine the value of Specifies the difference to be added to the value of pps_joint_cbcr_qp_offset when The value of slice_joint_cbcr_qp_offset must be between -12 and + Must be 12 or less. slice_joint_cbcr_qp_offset does not exist In this case, this is inferred to be equal to 0. The value of et_value+slice_joint_cbcr_qp_offset is - 12 or more + 12 or less.
[0669] cu_chroma_qp_offset_enabled_flag equal to 1 cu_chroma_qp_offset_flag specifies the conversion unit and palette code. cu_chroma_qp_ equal to 0 offset_enabled_flag is cu_chroma_qp_offset Specifies that _flag is not present in the translation unit or palette coding syntax. If it does not exist, cu_chroma_qp_offset_enabled_f The value of lag is assumed to be equal to 0.
[0670] slice_sao_luma_flag equal to 1 specifies the luminance in the current slice. Specifies that SAO is enabled for the component. slice_sao_l equal to 0 uma_flag indicates that SAO is disabled for the luma component in the current slice. If slice_sao_luma_flag does not exist, ph_sa Inferred to be equal to o_luma_enabled_flag.
[0671] slice_sao_chroma_flag equal to 1 indicates that the current slice Specifies that SAO is enabled for the chroma components. slice_sa equal to 0 o_chroma_flag indicates whether SAO is disabled for the chroma components in the current slice. slice_sao_chroma_flag does not exist. If ph_sao_chroma_enabled_flag is set, it is inferred to be equal to ph_sao_chroma_enabled_flag.
[0672] slice_deblocking_filter_override_f equal to 1 lag specifies the presence of deblocking parameters in the slice header. Equals slice_deblocking_filter_override_flag specifies that no deblocking parameters are present in the slice header. If not, slice_deblocking_filter_override_fla The value of g is equal to ph_deblocking_filter_override_flag It is inferred that this is correct.
[0673] slice_deblocking_filter_disabled_f equal to 1 lag indicates that the deblocking filter operation is not applied to the current slice. slice_deblocking_filter_disable equal to 0 ed_flag specifies whether the deblocking filter operation is applied to the current slice. slice_deblocking_filter_disabled If _flag does not exist, ph_deblocking_filter_disab It is inferred to be equal to led_flag.
[0674] slice_beta_offset_div2 and slice_tc_offse t_div2 is the deblocking of β and tC applied to the luma component of the current slice. Specifies the parameter offset (divide by 2). slice_cr_beta_offs The values of et_div2 and slice_tc_offset_div2 are both -1 It must be in the range 2 to 12. If not present, slice_beta_offs The values of et_div2 and slice_tc_offset_div2 are Equal to _beta_offset_div2 and ph_tc_offset_div2 It is inferred that
[0675] slice_cb_beta_offset_div2 and slice_cb_tc _offset_div2 is the deviation of β and tC applied to the Cb component of the current slice. Specifies the blocking parameter offset (divide by 2). slice_cb_bet a_offset_div2 and slice_cb_tc_offset_div2 All values must be in the range of -12 to 12. If not present, slice_ cb_beta_offset_div2 and slice_cb_tc_offset The values of _div2 are ph_cb_beta_offset_div2 and ph Inferred to be equal to _cb_tc_offset_div2.
[0676] slice_cb_beta_offset_div2 and slice_cb_tc _offset_div2 is the division of β and tC applied to the Cr component of the current slice. Specifies the blocking parameter offset (divide by 2). slice_cr_bet a_offset_div2 and slice_cr_tc_offset_div2 All values must be in the range of -12 to 12. If not present, slice_ cr_beta_offset_div2 and slice_cr_tc_offset The values of _div2 are ph_cr_beta_offset_div2 and ph Inferred to be equal to _cr_tc_offset_div2.
[0677] slice_ts_residual_coding_disabled_ equal to 1 flag is used to set the current slice using the residual_coding() syntax construct. Specifies that the residual samples of the transform skip block for slice_ts_residual_coding_disabled_flag , use the residual_ts_coding() syntax construct to slice_ If ts_residual_coding_disabled_flagg does not exist, If , it is inferred to be equal to 0.
[0678] slice_lmcs_enabled_flag equal to 1 indicates that the slice is enabled for the current slice. Specifies that luma mapping with chroma scaling is enabled. The new slice_lmcs_enabled_flag specifies whether the current slice is Specifies that luminance mapping with roma scaling is not enabled. slice_lm If cs_enabled_flag is not present, it is inferred to be equal to 0.
[0679] slice_scaling_list_present_flag equal to 1 means that S aps_params_type and ph_scaling equal to CALING_APS adaptation_parameter_set equal to _list_aps_id Based on the scaling list data contained in the reference scaling list APS with _id This specifies that the scaling list data used for the current slice is derived based on the slice_scaling_list_present_flag equal to 0 means The scaling list data used for the current picture is specified in 7.4.3.21. This specifies that the default scaling list data is derived from the specified value. If not present, the value of slice_scaling_list_present_flag is assumed to be 0. The variable NumEntryPoints that specifies the number of entry points in the current slice. is derived as follows:
[0680] NumEntryPoints=0 for(i=1;i <NumCtusInCurrSlice;i++){ ctbAddrX=CtbAddrInCurrSlice[i]%PicWidth InCtbsY ctbAddrY=CtbAddrInCurrSlice[i] / PicWidth InCtbsY (145) prevCtbAddrX=CtbAddrInCurrSlice[i-1]%Pi cWidthInCtbsY prevCtbAddrY=CtbAddrInCurrSlice[i-1] / Pi cWidthInCtbsY if(CtbToTileRowBd[ctbAddrY]!=CtbToTileR owBd[prevCtbAddrY]|| CtbToTileColBd[ctbAddrX]!=CtbToTileCo lBd[prevCtbAddrX]|| (ctbAddrY!=prevCtbAddrY&&sps_entry_po int_offsets_present_flag)) NumEntryPoints++ }
[0681] offset_len_minus1+1 is entry_point_offset _minus1[i] Specifies the length of the syntax element in bits. offset_len_ The value of minus1 must be in the range of 0 to 31.
[0682] entry_point_offset_minus1[i]+1 is the offset of the i-th entry Specifies the repoint offset in bytes, offset_len_minus1 plus The slice header is represented by 1 bit. The slice data following the slice header is It consists of Points+1 subsets, with subset index values ranging from 0 to Num The first byte of the slice data is byte 0. If present, the slice data part of the coded slice NAL unit The emulation prevention byte that appears in the Subset 0 is the coded slice data, Byte 0 of bit k to entry_point_offset_minus1[0] k, which ranges from 1 to NumEntryPoints-1, is the coding Bytes of the slice data that are matched, from firstByte[k] to lastByte[k ], and firstByte[k] and lastByte[k] are defined as follows: To do.
[0683]
number
[0684] The last subset (subset index equals NumEntryPoints) ) consists of the remaining bytes of the coded slice data. sps_entropy_coding_sync_enabled_flag is set to 0 Equally, if a slice contains more than one complete tile, each subset is consists of all coded bits of all CTUs in the slice The number of subsets (i.e., the value of NumEntryPoints + 1) is the number of entries in the slice. Equal to the number of tiles. sps_entropy_coding_sync_enabled_flag is set to 0 If equal and the slice contains a subset of CTU rows from a single tile, then NumE Let ntryPoints equal 0 and the number of subsets equal 1. The set consists of all coded bits of all CTUs in the slice. It shall be done. sps_entropy_coding_sync_enabled_flag is set to 1 If equal, each subset where k is in the range from 0 to NumEntryPoints The bit is the coded bit of all CTUs in a CTU row within a tile. The number of subsets (i.e., NumEntryPoints+1 The value of ) shall be equal to the total number of tile-specific CTU rows in the slice.
[0685] slice_header_extension_length is the length of the slice header Specifies the length of the extension data in bytes. slice_header_extension This does not include bits used to signal the _length itself. The value of r_extension_length should be in the range of 0 to 256. If not present, slice_header_extension_length The value of is inferred to be equal to 0.
[0686] slice_header_extension_data_byte[i] is any A decoder conforming to this specification version may have values of all slic Ignore the value of the e_header_extension_data_byte[i] syntax element The value must be a decoding value for the feature specified in the version of this specification. This does not affect the suitability of the
[0687] Exemplary Technical Problems Addressed by the Disclosed Technical Solutions
[0688] There are several potential issues with the current HLS design, which are described below. do.
[0689] (1) Temporal prediction flags in SPS, picture headers, and slice headers The control causes problems for P slices and / or B slices. a) Picture header and slice level control of temporal prediction flags is for P slices For uninitialized co-located pictures and / or co-located A reference index can be provided. b) Slice_colloc that references an entry in reference picture list 1 ated_ref_idx may be used for P slices. c) For P slices, the value of slice_collocated_ref_idx One entry in reference picture list 0 is added to NumRefIdxActi Please note that the range of ve[0]-1 may be exceeded. d) Picture-level and slice-level temporal prediction flags shall be co-located. Whether the picture retrieved is from L0 or L1, and which Regarding whether a reference picture refers to it, is temporal prediction allowed? There is no high level control, such as:
[0690] (2) To obtain a more accurate interpretation by taking into account the interaction of related syntactic elements, It may be necessary to modify the semantics of the CSS-related syntax elements. a) sps_independent_subpics_flag indicates that one subpic May be equal to 0 if only pictures are present. b) If there is only one slice in the subpicture, slice_width_i The value of n_tiles_minus1 must be calculated, not inferred. c) If there is only one slice and / or one tile in the picture, si ngle_slice_per_subpic_flag may be equal to 0. d) If no_pic_partition_flag is equal to 1, If not, single_slice_per_subpic_flag is equal to 0. Inferred. The value of sps_num_subpics_minus1+1 is greater than 1. In this case, the value of no_pic_partition_flag must not be 1. It is a bitstream conformance requirement, so a picture can contain only one subpicture. And since a subpicture only has one slice, single_s lice_per_subpic_flag should be equal to 1.
[0691] (3) In the sub-picture sub-bitstream extraction process, some of the syntax elements are incorrect. may not be set correctly. a) sps_ for the sub-picture extracted from the sub-bitstream extraction process independent_subpics_flag, subpic_treated_ as_pic_flag, loop_filter_across_subpic_en The syntax elements such as abled_flag and no_pic_partition_flag are It is not written and may not be desirable. b) The sub-picture sub-bitstream extraction process depends on the sub-picture ID, The subpicture ID may change from picture to picture, so that different pictures may have different subpicture IDs. This may result in extracting different subpicture indices, which may be undesirable. c) s of the output bistream in the subpicture sub-bitstream extraction process ps_num_subpics_minus1, pps_num_subpics_mi By writing 1 to nus1, you indicate that two subpictures should be extracted at once. This may be undesirable.
[0692] (4) The syntax elements in the reference picture list are not used for IDR pictures. May be present.
[0693] (5) This segmentation information is said to be identical for luma and chroma in the prediction tree. But it is not true.
[0694] (6) Coding tool syntax elements are conditioned by corresponding general constraint flags. The values of some general constraint flags are either unconstrained or unrestricted by the associated constraints. This is not conditioned by the rules and can cause some conflicts. a) res_change_in_clvs_allowed_flag is generally Constraint flag no_res_change_in_clvs_constraint_ Not constrained by the value of flag. b) window_explicit_signalling_flag is no Constrained by _res_change_in_clvs_constraint_flag Not promised. c) window_explicit_signalling_flag is Not constrained by s_change_in_clvs_allowed_flag. d) The value of sps_num_subpics_minus1 is one_subpic Not constrained by c_per_pic_constraint_flag. e) subpic_treated_as_pic_flag is one_sub pic_per_pic_constraint_flag and / or sps_nu m_subpics_minus1 and / or pps_num_subpics_m Not restricted by inus1. f) loop_filter_across_subpic_enabled_f lag is one_subpic_per_pic_constraint_flag and and / or sps_num_subpics_minus1 and / or pps_n It is not restricted to um_subpics_minus1. g) one_subpic_per_pic_constraint_flag is , constrained by one_slice_per_pic_constraint_flag It will never be done. h) no_bdpcm_constraint_flag is the same as no_transf It is not constrained by orm_skip_constraint_flag. i) num_slices_in_pic_minus1 is one_slice It is not constrained by _per_pic_constraint_flag. j) num_tiles_in_slice_minus1 is one_slic It is not constrained by e_per_pic_constraint_flag.
[0695] Exemplary Techniques and Embodiments
[0696] [ka]
[0697] Temporal Prediction Related HLS
[0698] 1. Two levels of control are available for TMVP, one at the picture level. and the other is at the slice / tile / subpicture / brick level. a) In one example, at least one inter-coded The first syntax element, which indicates whether a slice is present, enables TMVP and level (e.g., ph_temporal_mvp_allowed_flag) The signal may be signaled by In one example, it is signaled in the picture header or PPS. That's fine. ii. In one example, TMVP is enabled in the SPS, and / or or the current picture contains at least one inter-coded slice and / or RPL is present in the current picture header. may be known. b) In one example, a second bit indicating whether the current slice is TMVP enabled. A syntax element may depend on the first syntax element at the slice level (e.g., sh_tempor al_mvp_allowed_flag). i. In one example, sh_temporal_mvp_allowed_fla g is the number of times that ph_temporal_mvp_allowed_flag is equal to 1. It may only be signaled if the value is 0; otherwise it is inferred to be equal to 0. ii. In one example, sh_temporal_mvp_allowed_fl ag if ph_temporal_mvp_allowed_flag is equal to 0 may only be signaled by ; otherwise it is inferred to be equal to 1. c) In one example, a second configuration indicating whether the current slice is TMVP enabled. Sentence elements may be signaled at the slice level (e.g., sh_temporal_ mvp_allowed_flag), which means that the current slice header does not contain RP L is present and / or TMVP is enabled in the SPS, and / or or that the current slice is an inter-coded slice. It is something. d) In one example, TMVP information is signaled in a picture header or slice header. A third syntax element (e.g., tmvp_info_i n_ph_flag) is signaled. i. TMVP information may include information about whether TMVP is enabled. ii. TMVP information may include information about co-located reference pictures. stomach. iii. In one example, tmvp_info_in_ph_flag is Signaled only if P is enabled at the sequence level (e.g., sps _temporal_mvp_enabled_flag equals 1). e) In one example, if the second syntax element is not present, the second syntax element is a default. The value is inferred to be equal to the default value (e.g., the value of the first syntax element). If not present, the ph_tempo Inferred to be equal to ral_mvp_allowed_flag.
[0699] 2. Co-located picture information from PH to SH (e.g., co-located picture information) The picture selected is from list 0 and the reference picture of the co-located picture Whether and / or how the index is inherited is up to the user. Whether type and reference picture list information is present in the PH syntax structure (e.g., r pl_info_in_ph_flag=1). a) In one example, if slice_type is equal to P, then rpl_info_i n_ph_flag equals 1 (and / or ph_temporal_mvp_e enabled_flag is equal to 1), slice_collocated_fr om_l0_flag is the value of ph_collocated_from_l0_flag is set equal to 1 regardless of i. Or, if slice_type is equal to P, then slice_coll ocated_from_l0_flag is inferred to be equal to 1 regardless of other conditions. That's fine. b) In another example, slice_type is equal to B and slice_colloca If ted_from_l0_flag is equal to 1, slice_collocat The value of ed_ref_idx is a slice_ collocated_ref_idx is a number between 0 and NumRefIdxActive[0 ]-1. c) In one example, if slice_type is equal to P, TMVP is enabled. slice_collocated_from_l0_flag is equal to 1. It may be inferred that d) In one example, slice_type is equal to P, TMVP is enabled, and and slice_collocated_ref_idx is 0 to NumRefIdx If it is in the range Active[0]-1, then: e) In one example, slice_type is equal to P and TMVP is enabled. If so, RprConstraintsActive[0][ for P slice <sl ice_collocated_ref_idx] is required to be equal to 0 be. f) In one example, the following exemplary modifications can be introduced: slice_collocated_ref_idx, used for temporal motion vector prediction This specifies the reference index of the co-located picture to be
[0700] [ka]
[0701] slice_type equals B and slice_collocated_from_ slice_collocated_ref_idx if l0_flag is equal to 0 The value of slice_collocated refers to an entry in reference picture list 1. _ref_idx is in the range 0 to NumRefIdxActive[1]-1 It shall be. If slice_collocated_ref_idx does not exist, the following applies: can be. - If rpl_info_in_ph_flag is equal to 1, slice_col The value of located_ref_idx is set to ph_collocated_ref_idx are inferred to be equal. - Otherwise (rpl_info_in_ph_flag is equal to 0), sli The value of ce_collocated_ref_idx is inferred to be equal to 0. The picture referenced by slice_collocated_ref_idx is It is assumed that the bitstream is the same for all slices of a coded picture. This is a system conformance requirement. pi of the reference picture referenced by slice_collocated_ref_idx c_width_in_luma_samples and pic_height_in_lu The value of ma_samples is the pic_width_in_l of the current picture. Same as uma_samples and pic_height_in_luma_samples RprConstraintsActive[slice_coll ocated_from_l0_flag?0:1][slice_collocate It is a bitstream conformance requirement that [d_ref_idx] be equal to 0. be. g) In one example, ph_collocated_from_l0_flag is set to 0. If they are equal, the picture may be required to contain no P slices. i. In one example, the following exemplary modifications can be introduced: slice_type specifies the coding type of the slice according to Table 9 .
[0702] [Table 37]
[0703] If not present, the value of slice_type is inferred to be equal to 2. If ph_intra_slice_allowed_flag is equal to 0, the sli The value of ce_type shall be equal to 0 or 1. Within the range of DR_W_RADL~CRA_NUT and vps_independent nt_layer_flag[GeneralLayerIdx[nuh_layer_ If id]] is equal to 1, then slice_type shall be equal to 2.
[0704] [ka]
[0705] ii. Alternatively, whether to signal slice type is determined by the co-located The number of pictures that are selected may depend on whether the selected picture is from list 0 or not. 1. In one example, if all of the following conditions are true, the current picture header The signaling of slice types that refer to the data block may be skipped. -rpl_info_in_ph_flag equals 1. -ph_temporal_mvp_enabled_flag equals 1. -ph_intra_slice_allowed_flag equals 0. -ph_collocated_from_l0_flag equals 0. Alternatively, the slice type may be inferred as a B slice. h) In one example, ph_temporal_mvp_enabled_flag If the value is equal to 1 and rpl_info_in_ph_flag is equal to 1, the P slide The value of slice_collocated_from_l0_flag of the device is always equal to 1. The following exemplary modifications can be introduced: slice_collocated_from_l0_flag equal to 1 means that the The co-located picture used for motion vector prediction is from reference picture list 0 slice_collocated_from equal to 0. _l0_flag specifies the co-located picture used for temporal motion vector prediction. This specifies that the image is derived from reference picture list 1. [[slice_type equals B or P, ph_temporal_mvp_e enabled_flag is equal to 1 and slice_collocated_from If m_l0_flag is not present, the following applies: - If rpl_info_in_ph_flag is equal to 1, slice_col located_from_l0_flag is ph_collocated_from_ It is inferred to be equal to l0_flag. - Otherwise (rpl_info_in_ph_flag is equal to 0 and slic e_type is equal to P), slice_collocated_from_l0 The value of _flag is inferred to be equal to 1.
[0706] [ka]
[0707] i) In one example, slice_type is equal to P and slice_colloc slice_collocat if ated_from_l0_flag is equal to 0 ed_ref_idx refers to an inactive entry in reference picture list 1. and the reference picture referenced by that inactive entry in reference picture list 1. The reference picture may be referenced by an active entry in Reference Picture List 0. The following exemplary modifications can be introduced:
[0708] [ka]
[0709] If slice_collocated_ref_idx does not exist, the following applies: can be. - If rpl_info_in_ph_flag is equal to 1, slice_co The value of llocated_ref_idx is ph_collocated_ref_idx is inferred to be equal to - Otherwise (rpl_info_in_ph_flag is equal to 0), sl The value of ice_collocated_ref_idx is inferred to be equal to 0. The picture referenced by slice_collocated_ref_idx is It is assumed that the bitstream is the same for all slices of a coded picture. This is a system conformance requirement. pi of the reference picture referenced by slice_collocated_ref_idx c_width_in_luma_samples and pic_height_in_lu The value of ma_samples is the pic_width_in_l of the current picture. Same as uma_samples and pic_height_in_luma_samples RprConstraintsActive[slice_coll It is a bitstream conformance requirement that [slice_collocated_from_l0_flag?0:1][slice_collocated_ref_idx] equals 0.
[0710] j) Alternatively, B slices and P slices that refer to the same picture header may be different. Co-located pictures may also be used. i. In one example, even if RPL is signaled in the picture header, The reference picture index of the picture located in the slice is further signaled in the slice header. The number may be notified. 1. In one example, if the current slice is equal to a P slice, the RPL is signaled in the header and temporal motion vector prediction (e.g., ph_tempor al_mvp_enabled_flag is true) is enabled, and ph_co If llocated_from_l0_flag is equal to 0, the The reference picture index of the picture may also be signaled. a) Alternatively, it further points to reference picture list 0. ii. In one example, two co-located reference picture indexes are signaled. One for B slices and the other for P slices. and refer to the same picture header. 1. In one example, two indexes are May only be signaled if from_l0_flag is equal to 0. k) In one example, both B slices and P slices refer to the same picture header. The metric can signal an indication of whether a metric is present or not. i. Alternatively, a picture may contain an indication of the type of slice that references the same picture header. This may be signaled in the header. ii. Or, B slices (excluding P slices) that refer to the same picture header ) may signal an indication of whether only iii. Alternatively, P slices (excluding B slices) that refer to the same picture header Only the presence or absence of a . iv. Alternatively, B-slices and I-slices referencing the same picture header The UE may signal an indication of whether a signal is present. v. Or, only P-slices and I-slices that refer to the same picture header may signal an indication of whether a vi. Alternatively, slice type indications that refer to the same picture header may be RPL is signaled in the picture header only if RPL is signaled in the picture header. This may also be done. vii. Alternatively, the RPL may be any type of slice that references the same picture header. The indication is signaled in the picture header only if this indication is signaled in the picture header. The number will be notified. l) Or slice_type is equal to P and slice_collocat slice_collocated if ed_from_l0_flag is equal to 0 _ref_idx may be modified before use and ranges from 0 to NumRefIdxActive It is mapped to an index in the range [0]-1. i. In one example, slice_type is P and slice_collo If cated_from_l0_flag is equal to 0, slice_colloca ted_ref_idx points to an entry in reference picture list 0, and slice_co llocated_ref_idx is (slice_collocated_ref_i dx>(NumRefIdxActive[0]-1)?default_col_re f_idx:slice_collocated_ref_idx), and variable d efault_col_ref_idx is 0 to NumRefIdxActive[0] It is in the range of -1. 1. In one example, the variable default_col_ref_idx is set to 0. will be done. 2. In one example, this variable may be signaled. m) In a conforming bitstream, two picture headers associated with one picture header It may not be allowed for one slice to be a P slice and the other a B slice. n) In a conforming bitstream, one picture header in which RPL is signaled The two slices associated with are P slices and the other is a B slice. It doesn't have to be allowed. o) In a conforming bitstream, RPL is signaled with two reference picture lists This slice is a P-slice, not a slice associated with a single picture header. It does not have to be permitted to be a chair.
[0711] Subpicture related HLS
[0712] 3. The number of sub-pictures for each picture in CLVS (e.g., sps_num_sub bpics_minus1 and / or pps_num_subpics_minus 1) is similar to one_subpic_per_pic_constraint_flag. This may be conditioned by general constraint flags such as: a) In one example, one_subpic_per_pic_constraint If the general constraint flags such as _flag are equal to 1, sps_num_subpic The values of s_minus1 and / or pps_num_subpics_minus1 are , may be required to be equal to 0.
[0713] [ka]
[0714] 4. "No intra prediction, no inter prediction, and any sub-picture in CLVS" Syntax element specifying "no in-loop filtering behavior across structure boundaries" The element (e.g., sps_independent_subpics_flag) signals Whether or not this is done may depend on the number of sub-pictures for each picture in CLVS ( For example, sps_num_subpics_minus1). a) In one example, if there is only one sub-picture in each picture in CLVS, In this case, the syntax element sps_independent_subpics_flag specifies the signaling may be inferred to be equal to 1.
[0715] [ka]
[0716] 5. The value of subpic_treated_as_pic_flag is 1 in the picture. It may depend on whether only one sub-picture is present. a) In one example, one_subpic_per_pic_constraint If _flag is equal to 1, then subpic_treated_as_pic_fla The value of g may be required to be equal to one or may be inferred to be equal to one. b) In one example, if sps_num_subpics_minus1 is equal to 0, If so, the value of subpic_treated_as_pic_flag must be equal to 1. may be required or inferred to be equal to 1. c) In one example, if pps_num_subpics_minus1 is equal to 0, If so, the value of subpic_treated_as_pic_flag must be equal to 1. may be required.
[0717] 6.loop_filter_across_subpic_enabled_fla The value of g may depend on whether there is only one sub-picture in the picture. a) In one example, one_subpic_per_pic_constraint If _flag is equal to 1, loop_filter_across_subpic The value of _enabled_flag is required to be equal to 0, or It may be inferred that: b) In one example, if sps_num_subpics_minus1 is equal to 0, if loop_filter_across_subpic_enabled_flag The value of may be required or inferred to be equal to zero. c) In one example, if pps_num_subpics_minus1 is equal to 0, if loop_filter_across_subpic_enabled_flag The value of may be required to be equal to 0.
[0718] 7. The width of the i-th rectangular slice in tile columns (e.g., slice_width_i n_tiles_minus1) is specified by single_slice_p May depend on er_subpic_flag. a) In one example, slice_width_in_tiles_minus1 exists. does not exist, but single_slice_per_subpic_flag is equal to 1 If the slice_width_in_tiles_minus1 value is no longer set That's fine.
[0719] [ka]
[0720] 8. Each subpicture is a single rectangular slice (e.g., single_slice_pe r_subpic_flag) is configured as one_slice_per_ Conditional on general constraint flags such as pic_constraint_flag It may also be possible to a) In another example, the syntax element single_slice_per_subpic_ If flag is not present, single_slice_per_subpic_fla The value of g may be inferred to be equal to 1. b) In another example, the syntax element single_slice_per_subpic_ If flag is not present, single_slice_per_subpic_fla The value of g determines whether the current picture is split (e.g., no_pic_part It may be inferred according to the condition_flag. c) In one example, the following exemplary modifications can be introduced: single_slice_per_subpic_flag equal to 1 specifies that each subpic Specifies that the chart consists of one and only one rectangular slice. single equal to 0 _slice_per_subpic_flag specifies whether each subpicture is one or more rectangular slices. It specifies that it can consist of a single slice per subpi. If c_flag is equal to 1, then num_slices_in_pic_minus1 is inferred to be equal to sps_num_subpics_minus1. If not, the value of single_slice_per_subpic_flag is equal to 0. It is inferred that:
[0721] [ka]
[0722] [ka]
[0723] [ka]
[0724] [ka]
[0725] 9. In one example, the output sub-bitstream during sub-picture sub-bitstream extraction Regarding the derivation of frames, the extracted subpictures across different pictures in CLVS are All subpictures may be required to have the same subpicture index. a) For example, the target subpicture ID of the extracted subpicture is stored in CLVS. It is possible to refer to the same subpicture index between different pictures in a may be requested. b) For example, subpic_id_mapping_explicitly_sig If nulled_flag is equal to 1, then the subpicture sub-bitstream When extraction is processed, the subpicture ID mapping may not be signaled to the PPS. may be requested (e.g., subpic_id_mapping_in_pps_fl ag equals 0). i. In one example, subpic_id_mapping_explicitly If _signalled_flag is equal to 1, and the subpicture subbits Subpicture ID mapping is signaled to the SPS when stream extraction is processed. may be required (e.g., subpic_id_mapping_in_sps _flag equals 1). c) For example, which sub-pictures are extracted in the sub-picture sub-bitstream extraction process? may depend on the subpicture index. d) For example, which syntax elements are written in the sub-picture sub-bitstream extraction process? The replacement and / or deletion may depend on the subpicture index. e) In one example, the following exemplary modifications can be introduced:
[0726] C.7 Subpicture sub-bitstream extraction process
[0727] [ka]
[0728] The output of this process is the sub-bitstream outBitstream. The bitstream conformance requirement for an input bitstream is that it satisfies all of the following conditions: Let any output sub-bitstream that satisfies:
[0729] [ka]
[0730] The output sub-bitstream outBitstream is derived as follows: - The Bitstream extraction process specified in Appendix C.6 is This process is called with targetolsIdx and tIdTarget as input. The output of the logic is assigned to outBitstream. -Provide a replacement parameter set for the sub-bitstream outBitstream If external means not specified in this document are available, all parameters Replace the parameter set with the replacement parameter set. - Otherwise, the subpicture level information SEI message is sent inBitstream When present in m, the following applies:
[0731] [ka]
[0732] [ka]
[0733] [ka]
[0734] [ka]
[0735] -outBitstream is applicable to outBitstream, nesti ng_ols_flag is 1 and nesting_subpic_flag is 1 When it contains an SEI NAL unit that contains a scalable nested SEI message, Appropriate non-scalable nested SEs with loadType equal to 1 (picture timing) I message, or 130 (decoding unit information) in a scalable nested SEI message. The SEI message is extracted from the message and placed in the outBitstream.
[0736] 10. In one example, the output sub-bitstream during subpicture sub-bitstream extraction Regarding stream derivation, the extracted sub-bitstreams are It may be treated as a single sub-picture within the frame. a) In one example, the syntax element sps_independent_subpics_f lag is a syntactic construct that refers to the output sub-bitstream with the extracted sub-picture. In the case of a symmetric structure, it may be rewritten to be equal to 1. b) In one example, the syntax referenced in the extracted subpictures in all output layers The elements subpic_treated_as_pic_flag and / or loop_ filter_across_subpic_enabled_flag is the flag for output subpic may not be signaled (e.g....
Claims
1. 1. A video processing method, comprising: A conversion between a video including a video picture including a video slice and a bitstream of the video. This includes: the bitstream conforms to format rules; The format rule is that the slice type of the video slice is type P, and Co-located reference picture list if dynamic motion vector prediction is enabled Disabling the use of reference picture resampling (RPR) for reference pictures in Provides that The reference picture is a picture corresponding to the video slice used for the temporal motion vector prediction. A reference index of a picture located at a position is indicated. method.
2. The co-located reference picture list is a syntax element in a video slice header. It is determined based on the The syntax element indicates that the video slice is co-located with reference picture list 0. Indicates whether The method of claim 1.
3. The slice type of the video slice is P, and the temporal motion vector prediction is enabled, then the syntax element is inferred to be equal to 1. The method of claim 2.
4. the co-located reference picture list is reference picture list 0; The method according to claim 2 or 3.
5. 1. A video processing method, comprising: A conversion between a video including a video picture including a video slice and a bitstream of the video. This includes: the bitstream conforms to format rules; The format rule is such that a syntax element in a video slice header is indicates that the image slice is not co-located with reference picture list 0. specifies that the slice type of the slice excludes type P; method.
6. The formatting rules may further include: (1) The reference picture list information is in the video picture header of the bitstream. the law of nature, (2) temporal motion vector prediction is enabled for the video picture; (3) all coded video slices of the video picture are type B or has a slice type of type P, and (4) When the video picture is not located in the same position as reference picture list 0 、 Signaling of the slice type is omitted in the bitstream. It provides that, The method according to claim 5.
7. The slice type of the image slice is inferred to be type B. The method according to claim 5 or 6.
8. the converting includes encoding the video into the bitstream; The method according to any one of claims 1 to 7.
9. the converting includes decoding the video from the bitstream. The method according to any one of claims 1 to 7.
10. 1. A method for storing a video bitstream, comprising the steps of: generating a bitstream of the video from a video picture including the video slice; So, The bitstream has a slice type of the video slice of type P, If inter-frame motion vector prediction is enabled, the co-located reference picture list Active use of reference picture resampling (RPR) for reference pictures in a 3D image conforms to formatting rules that stipulate that use of The reference picture is a picture of the video slice used for the temporal motion vector prediction. Pointed to by the reference index of the co-located picture, Generating and storing the bitstream on a non-transitory computer-readable recording medium. nothing, method.
11. 1. A method for storing a video bitstream, comprising the steps of: Generating a bitstream of a video picture from a video picture including a video slice That is, The bitstream further comprises a syntax element in a video slice header, the syntax element being: If it indicates that the image slide is not located in the same position as reference picture list 0, The slice type of the data conforms to the format rules that prescribe excluding type P. R, Generating and storing the bitstream on a non-transitory computer-readable recording medium. nothing, method.
12. A processing device configured to implement the method according to one or more of claims 1 to 11. , a video decoding device.
13. A processing device configured to implement the method according to one or more of claims 1 to 11. , a video encoding device.
14. A computer program product having computer code stored thereon, When the code is executed by a processor, the processor performs any one of the above-mentioned processes according to claims 1 to 11. Implementing a method according to the present invention Computer program products.
15. A non-volatile memory for storing a bitstream of an image generated by a method executed by a video processing device. A temporary computer-readable recording medium, comprising: The method comprises: generating a bitstream of the video from a video picture including the video slice. fruit, The bitstream has a slice type of the video slice of type P and a time Co-located reference picture list when dynamic motion vector prediction is enabled Active use of reference picture resampling (RPR) for reference pictures in a 3D image conforms to formatting rules that stipulate that use of The reference picture is a picture corresponding to the video slice used for the temporal motion vector prediction. A reference index of a picture located at a position is indicated. A non-transitory computer-readable recording medium.
16. A non-transient storage device for storing a bitstream of an image generated by a method performed in a video processing device. A computer-readable recording medium comprising: The method comprises: generating a bitstream of the video from a video picture including the video slice. fruit, The bitstream includes a syntax element in a video slice header that indicates which video slice is being If the image slice is not co-located with the reference picture list 0, conforms to a format rule that specifies that slice types of exclude type P; A non-transitory computer-readable recording medium.
17. The methods, apparatus, bitstreams produced according to the methods, or systems described herein may be used in Tem.
Citation Information
Patent Citations
Triggering reference picture resampling in video coding
JP2023513344A