Cross random access point signal notification extension

The implementation of signaling mechanisms and unique identifiers for DRAP/CRR pictures in video bitstreams addresses decoding errors and improves coding efficiency by ensuring accurate reference management and decoding when these points are used as random access points.

JP7623496B2Active Publication Date: 2025-01-28DOUYIN VISION CO LTD +1

Patent Information

Application Number
JP2023539841
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2021-01-06
Filing Date
2021-12-28
Publication Date
2025-01-28
Estimated Expiration
2041-12-28

AI Technical Summary

Technical Problem

Existing video coding technologies lack effective mechanisms for signaling and managing cross-random access point references (CRR) and dependent random access points (DRAP) in video bitstreams and media files, leading to potential decoding errors and inefficiencies when these points are used as random access points.

Method used

Implementing a signaling mechanism through SEI messages to indicate whether pictures preceding DRAP/CRR pictures in the decryption order can be referenced for output, and ensuring proper identification and management of CRR pictures using unique identifiers and layer restrictions, thereby correcting the DRAP sample group semantics in ISOBMFF.

Benefits of technology

Ensures accurate decoding and display of video content when DRAP/CRR pictures are used as random access points, improving coding efficiency and reducing errors by ensuring proper reference management and identification in video bitstreams and media files.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007623496000023
    Figure 0007623496000023
  • Figure 0007623496000024
    Figure 0007623496000024
  • Figure 0007623496000025
    Figure 0007623496000025
Patent Text Reader

Abstract

A mechanism for processing video data is disclosed, in which one or more Random Access Point (RAP) picture identifiers are signaled for one or more Cross RAP Reference (CRR) pictures, and conversion is performed between visual media data and a bitstream based on the one or more RAP picture identifiers.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS This application is 、Y The benefit of International Application No. PCT / CN2021 / 070400, filed on January 6, 2021 by e-Kui Wang et al. and entitled "Signalling Of Cross Random Access Point Referencing In Video Bitstreams And Media Files" This is a national stage of International Application No. PCT / CN2021 / 141942, filed December 28, 2021, which claims priority to. All of the aforementioned patent applications are incorporated herein by reference in their entireties.

[0002] This patent document relates to the creation, storage and consumption of digital audiovisual media information in file formats. [Background technology]

[0003] Digital video accounts for the largest bandwidth usage on the Internet and other digital communications networks, and the bandwidth demands for digital video use will continue to grow as the number of connected user devices capable of receiving and displaying video increases. Summary of the Invention

[0004] A first aspect relates to a method for processing video data, comprising determining one or more Random Access Picture (RAP) picture identifiers for one or more Cross RAP Reference (CRR) pictures, and converting between visual media data and a bitstream based on the one or more RAP picture identifiers.

[0005] Optionally, in any of the aforementioned aspects, another implementation form of the aspect provides that one or more RAP picture identifiers are coded in a coded layer video sequence minus 1 (t2drap_rap_id_in_clvs_minus1) field, respectively.

[0006] Optionally, in any of the aforementioned aspects, another implementation form of the present aspect provides that one or more RAP picture identifiers are included in a Type 2 Dependent Random Access Point (DRAP) Supplemental Enhancement Information (SEI) message, respectively.

[0007] Optionally, in any of the aforementioned aspects, another implementation form of the aspect provides that one or more RAP picture identifiers are each defined by a value that is one more than the value of the t2drap_rap_id_in_clvs_minus1 field.

[0008] Optionally, in any of the above aspects, another implementation of the aspect provides that one or more RAP picture identifiers for each CRR picture are set to a value greater than 0.

[0009] Optionally, in any of the aforementioned aspects, another implementation of the present aspect provides that each CRR picture is associated with one Intra Random Access Point (IRAP) picture, and the IRAP picture is associated with a RAP picture identifier of 0.

[0010] Optionally, in any of the above aspects, another implementation of the aspect provides that the RAP picture identifier of the IRAP picture is inferred to be 0 and is not signaled.

[0011] Optionally, in any of the above aspects, another implementation of the aspect provides that the one or more RAP picture identifiers are different for each CRR picture associated with the same IRAP picture.

[0012] Optionally, in any of the above aspects, another implementation of the aspect provides that the one or more RAP picture identifiers are represented as RapPicIds.

[0013] Optionally, in any of the aforementioned aspects, another implementation form of the present aspect provides that other syntax elements in the Type 2 DRAP SEI message are signaled only if the RAP picture identifier in the Type 2 DRAP SEI message is greater than 0.

[0014] Optionally, in any of the above-mentioned aspects, another implementation form of the present aspect provides that the CRR picture is represented as a Type 2 DRAP picture.

[0015] Optionally, in any of the aforementioned aspects, another implementation form of the present aspect provides that the CRR picture is represented as an Enhanced Dependent Random Access Point (EDRAP) picture.

[0016] Optionally, in any of the aforementioned aspects, another implementation form of the present aspect provides that one or more RAP picture identifiers are included in the SEI message, respectively.

[0017] Optionally, in any of the aforementioned aspects, another implementation of this aspect provides for constraining the bitstream such that any picture in the same layer as the CRR picture and following the CRR picture in decoding order follows in output order any picture in the same layer and preceding the CRR picture in decoding order.

[0018] Optionally, in any of the aforementioned aspects, another implementation of the aspect provides that the Type 2 DRAP SEI message includes an indication of whether a picture that follows the CRR picture in decoding order and precedes the CRR picture in output order is permitted to refer to a reference picture that is located before the CRR picture in decoding order for inter prediction.

[0019] Optionally, in any of the aforementioned aspects, another implementation of the aspect provides that the indication further indicates whether the picture is allowed to reference a reference picture if the reference picture is in the same layer as the picture.

[0020] Optionally, in any of the aforementioned aspects, another implementation of the aspect provides that the indication is a one bit flag.

[0021] Optionally, in any of the aforementioned aspects, another implementation of the aspect provides that the indication is one bit in a t2drap_reserved_zero_13bits field.

[0022] Optionally, in any of the preceding aspects, another implementation of the aspect provides that the converting includes generating a bitstream according to the visual media data.

[0023] Optionally, in any of the preceding aspects, another implementation of the aspect provides that the converting includes parsing the bitstream to obtain the visual media data.

[0024] A second aspect is an apparatus for processing video data comprising a processor and a non-transitory memory having instructions stored thereon that, when executed by the processor, cause the processor to perform a method of any of the previous aspects.

[0025] A third aspect is a non-transitory computer-readable medium comprising a computer program product for use in a video coding device, the computer program product comprising computer-executable instructions stored on the non-transitory computer-readable medium that, when executed by a processor, causes the video coding device to perform a method of any of the preceding aspects.

[0026] For the sake of clarity, any one of the above-described embodiments may be combined with any other one of the above-described embodiments to create a new embodiment within the scope of the present disclosure.

[0027] These and other features will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings and claims.

[0028] For a more complete understanding of this disclosure, reference should be made to the following brief description taken in conjunction with the accompanying drawings and detailed description, where like reference numbers represent like parts. [Brief description of the drawings]

[0029] [Figure 1] A schematic diagram showing an exemplary mechanism for random access when decoding a bitstream using IRAP pictures. [Diagram 2] FIG. 1 is a schematic diagram illustrating an exemplary mechanism for random access when decoding a bitstream using DRAP pictures. [Diagram 3] A schematic diagram showing an exemplary mechanism for random access when decoding a bitstream using CRR pictures. [Figure 4] 1 is a schematic diagram illustrating an example mechanism for signaling an external bitstream to support CRR-based random access. [Diagram 5] FIG. 13 is a schematic diagram illustrating potential decoding errors when a picture follows a DRAP and / or CRR picture in decoding order and precedes the DRAP and / or CRR picture in output order. [Figure 6] FIG. 1 is a schematic diagram illustrating a media file stored in the International Organization for Standardization (ISO) Base Media File Format (ISOBMFF). [Figure 7] FIG. 2 is a schematic diagram illustrating a bitstream containing encoded visual media data. [Figure 8] FIG. 1 is a block diagram illustrating an example of a video processing system. [Figure 9] FIG. 1 is a block diagram illustrating an example of a video processing device. [Figure 10] 1 is a flow chart illustrating an example of a method for video processing. [Figure 11] FIG. 1 is a block diagram illustrating an example of a video coding system. [Figure 12] FIG. 2 is a block diagram illustrating an example of an encoder. [Figure 13] FIG. 2 is a block diagram illustrating an example of a decoder. [Figure 14] FIG. 1 is a circuit diagram illustrating an example of an encoder. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0030] Although the following provides exemplary implementations for one or more embodiments, it should be understood at the outset that the disclosed systems and / or methods may be implemented using any number of technologies, whether currently known or yet to be developed. The present disclosure should in no way be limited to the exemplary implementations, drawings, and technologies illustrated below, including the exemplary designs and implementations illustrated and described herein, but may be modified within the scope of the appended claims, along with their full scope of equivalents.

[0031] The term Generic Video Coding (VVC), also known as H.266, is used in certain descriptions for ease of understanding only and not to limit the scope of the disclosed technology. As such, the technology described herein is applicable to other video codec protocols and designs. In this specification, editorial changes to the VVC standard or the International Organization for Standardization (ISO) Base Media File Format (ISOBMFF) file format standard are indicated in the text by bold italics indicating text that has been struck out and underlines indicating text that has been added.

[0032] This patent document relates to video coding, video file formats, video signaling, and video applications. Specifically, this document relates to enhanced signaling of cross random access point (RAP) references in video coding based on Supplemental Enhancement Information (SEI) messages, and signaling of cross RAP references (CRR) in media files. The disclosed examples may be applied, individually or in various combinations, to any video coding standard or non-standard video codec, such as VVC, and any media file format, such as ISOBMFF.

[0033] This disclosure includes the following abbreviations: Adaptive Color Transform (ACT), Adaptive Loop Filter (ALF), Adaptive Motion Vector Resolution (AMVR), Adaptive Parameter Set (APS), Access Unit (AU), Access Unit Delimiter (AUD), Advanced Video Coding (Rec. ITU-TH.264 | ISO / IEC 14496-10) (AVC)), Bidirectional Prediction (B), Bidirectional Prediction with CU Level Weighting (BCW), Bidirectional Optical Flow (BDOF), Block-Based Delta Pulse Code Modulation (BDPCM), Buffering Period (BP), Context-Based Adaptive Binary Arithmetic Coding (CABAC), Coding Block (CB), Constant Bit Rate (CBR), Cross Component Adaptive Loop Filter (CCALF), Coded Layer Picture Sequence (CLVS), Coded Layer Picture Sequence Start (CLVSS), Coded Picture Buffer (CPB), Clean Random Access (CRA), Cyclic Redundancy Check (CRC), Cross RAP Reference (CRR), Coding Tree Block (CTB), Coding Tree Unit (CTU), Coding Unit (CU), Coded Video Sequence (CVS), Start of Coded Video Sequence (CVSS), Decoding Capability Information (DCI), Decoded Picture Buffer (DPB), Dependent Random Access Point (DRAP), Decoding Unit (DU), Decoding Unit Information (DUI), Exponential Golomb (EG), k-th Exponential Golomb (EGk), End of Bitstream (EOB), End of Sequence (EOS), Filler Data (FD), First In, First Out (FIFO), Fixed Length (FL), Green, Blue, and Red (GBR), General Constraint Information (GCI), Gradual Decoding Update (GDR), Geometric Partitioning Mode (GPM), Rec. ITU-T H.265|High Efficiency Video Coding (HEVC), also known as ISO / IEC 23008-2, Hypothetical Reference Decoder (HRD), Hypothetical Stream Scheduler (HSS), Intra (I), Intra Block Copy (IBC), Instantaneous Decoding Update (IDR), Inter-Layer Reference Picture (ILRP), Intra Random Access Point (IRAP), Low Frequency Non-Divisible Transform (LFNST), Minimum Probability Symbol (LPS), Least Significant Bit (LSB), Long Term Reference Picture (LTRP), Luminance Mapping with Chroma Scaling (LMCS), Matrix-Based Intra Prediction (MIP), Maximum Probability Symbol (MPS), Most Significant Bit (MSB), Multiple Transform Selection (MTS), Motion Vector Prediction (MVP), Network Abstraction Layer (NAL), Output Layer Set (OLS), Operation Point (OP), Operation Point Information (OPI), Prediction (P), Picture Header (PH), Picture Order Count (POC), Picture Parameter Set (PPS), Prediction Fine Tuning Optical Flow (PROF), Picture Timing (PT), Picture Unit (PU), Quantization Parameter (QP), Random Access Decodable Leading Picture (RADL), Random Access Point (RAP), Random Access Skip Leading Picture (RASL), Raw Byte Sequence Payload (RBSP), Red, Green, and Blue (RGB), Reference Picture List (RPL), Sample Adaptive Offset (SAO), Sample Aspect Ratio (SAR), Supplementary Enhancement Information (SEI), Slice Header (SH), Sub-Picture Level Information (SLI), String of Data Bits (SODB), Sequence Parameter Set (SPS), Short-Term Reference Picture (STRP), Progressive Temporal Sub-layer Access (STSA), Shortened Rice (TR), Transform Unit (TU), Variable Bitrate (VBR), Video Coding Layer (VCL), Video Parameter Set (VPS), Rec. ITU-T H.274|Also known as ISO / IEC 23002-7, Generic Supplementary Enhancement Information (VSEI), Video Usability Information (VUI), Rec.ITU-T H.266|Also known as ISO / IEC 23090-3, Generic Video Coding (VVC). .

[0034] Video coding standards have evolved primarily through the development of ITU-T and ISO / IEC standards. ITU-T produced H.261 and H.263, while ISO / IEC produced MPEG-1 and MPEG-4 Visual, and the two organizations jointly produced H.262 / MPEG-2Video, H.264 / MPEG-4 Advanced Video Coding (AVC), and H.265 / HEVC standards. Since H.262, video coding standards have been based on hybrid video coding structures, where transform coding is also used in addition to temporal prediction. To explore further video coding techniques beyond HEVC, the Video Coding Experts Group (VCEG) and MPEG jointly established the Joint Video Exploration Team (JVET). Many methods have been adopted by JVET and incorporated into reference software called Joint Exploration Mode (JEM). JVET was later renamed the Joint Video Exploration Team (JVET) when the Generic Video Coding (VVC) project was officially launched. VVC is a coding standard that aims to reduce the bit rate by 50% compared to HEVC. VVC was developed by JVET.

[0035] The VVC and VSEI standards are designed for use in the broadest possible range of applications, including television broadcast, video conferencing, playback from storage media, adaptive bitrate streaming, video region extraction, compositing and combining content from multiple coded video bitstreams, multi-view video, scalable layered coding, and viewport-adaptive 360° immersive media applications.

[0036] The Essential Video Coding (EVC) standard (ISO / IEC 23094-1) is another video coding standard developed by MPEG.

[0037] File format standards are discussed below. Media streaming applications are typically based on Internet Protocol (IP), Transmission Control Protocol (TCP), and Hypertext Transfer Protocol (HTTP) transport methods and typically rely on file formats such as ISOBMFF. One such streaming system is Dynamic Adaptive Streaming over HTTP (DASH). Video may be encoded in a video format such as AVC and / or HEVC. The encoded video may be encapsulated in ISOBMFF tracks and included in DASH representations and segments. Important information about the video bitstream, such as profile, tier, level, etc., may be exposed as file format level metadata and / or DASH Media Presentation Description (MPD) for content selection. For example, such information may be used to select appropriate media segments, both for initialization at the start of a streaming session and for stream adaptation during a streaming session.

[0038] Similarly, when using the ISOBMFF image format, a file format standard specific to the image format, such as the AVC image file format and the HEVC image file format, may be adopted. The VVC video file format, which is a file format for storing VVC video content based on the ISOBMFF, is being developed by MPEG. Also, the VVC image file format, which is a file format for storing image content coded using VVC, based on the ISOBMFF, is being developed by MPEG.

[0039] Support for random access in HEVC and VVC is described below. Random access refers to starting access and decoding of a bitstream from a picture that is not the first picture of the bitstream in decoding order. To support tuning and channel switching in broadcast / multicast and multi-party video conferencing, local playback and searching in streaming, and stream adaptation in streaming, the bitstream should contain frequent random access points. Such random access points are typically intra-coded pictures, but may also be inter-coded pictures (e.g., in the case of gradual decoding updates). An intra-coded picture is a picture that is coded with reference to blocks within the picture, and an inter-coded picture is a picture that is coded with reference to blocks of other pictures.

[0040] HEVC includes signaling of intra random access point (IRAP) pictures in the header of the NAL unit by the NAL unit type. HEVC supports three types of IRAP pictures: Instantaneous Decoding Refresh (IDR), Clean Random Access (CRA), and Broken Link Access (BLA) pictures. IDR pictures constrain the inter-picture prediction structure to not reference any pictures before the current group of pictures (GOP) and are traditionally called closed GOP random access points. CRA pictures relax the restrictions by allowing a picture to reference pictures before the current GOP, which are all discarded in the case of random access. CRA pictures are called open GOP random access points. BLA pictures are typically generated by splicing two bitstreams or parts of them at a CRA picture, for example at stream switching. To enable better system usage of IRAP pictures, six different NAL units are defined that signal properties of IRAP pictures that can be used in conjunction with the stream access point types defined by the ISO Base Media File Format (ISOBMFF), which are also used for random access support in Dynamic Adaptive Streaming over HTTP (DASH).

[0041] VVC supports three types of IRAP pictures, two types of IDR pictures (one with an associated RADL picture and the other without an associated RADL picture) and one type of CRA picture, which are used in the same way as HEVC. The BLA picture type in HEVC is not included in VVC. This is because the basic function of a BLA picture can be realized by a CRA picture plus an end-of-sequence NAL unit, the presence of which indicates that the following picture starts a new CVS in the single-layer bitstream. Furthermore, there was a demand during the development of VVC to specify fewer NAL unit types than HEVC, as indicated by the use of 5 bits instead of 6 bits for the NAL unit type field of the NAL unit header.

[0042] Another difference in random access support between VVC and HEVC is that VVC supports GDR in a more prescriptive way. In GDR, bitstream decoding can start with an inter-coded picture. At the first picture at the random access point, only a part of the picture can be correctly decoded. However, after several pictures, the entire picture area can be correctly decoded and displayed. AVC and HEVC also support GDR using a recovery point SEI message for signaling GDR random access points and recovery points. In VVC, a NAL unit type is defined to indicate a GDR picture, and recovery points are signaled in the picture header syntax structure. CVS and bitstreams can start with a GDR picture. Thus, the entire bitstream is allowed to contain only inter-coded pictures, without any intra-coded pictures. The main advantage of defining GDR support in this way is to provide GDR-compatible operation. GDR allows an encoder to smooth the bitrate of the bitstream by distributing intra-coded slices or blocks (which are less compressed than inter-coded slices / blocks) across multiple pictures, rather than intra-coding the entire picture. This allows for significant end-to-end delay reduction, which is considered more important due to the increasing use of ultra-low latency applications such as wireless displays, online gaming, drone-based applications, etc.

[0043] Another GDR-related feature in VVC is virtual boundary signaling. The boundary between updated regions (correctly decoded regions in GDR) and non-updated regions in the pictures between the GDR picture and the recovery point can be signaled as a virtual boundary. If signaled, no in-loop filtering is applied across the boundary. This can avoid inconsistencies in the decoding of some samples at or near the boundary. This can be useful if the application decides to display correctly decoded regions during the GDR process. IRAP and GDR pictures can be collectively referred to as Random Access Point (RAP) pictures.

[0044] VUI and SEI messages are described below. VUI is a syntax structure transmitted as part of the SPS (and possibly also in the VPS for HEVC). VUI does not affect the normative decoding process, but carries information that can be used for proper rendering of the coded video. SEI assists processes related to decoding, display, or other purposes. Like VUI, SEI does not affect the normative decoding process. SEI is carried in SEI messages. Decoder support for SEI messages is optional. However, SEI messages affect bitstream conformance. For example, if the syntax of SEI messages in a bitstream does not follow this standard, the bitstream is not conformant. Several SEI messages are used in the HRD standard.

[0045] The VUI syntax structure and most of the SEI messages used in VVC are not specified in the VVC standard, but are specified in the VSEI standard. SEI messages used for HRD conformance testing are specified in the VVC standard. VVC defines five SEI messages related to HRD conformance testing, and VSEI specifies 20 additional SEI messages. The SEI messages carried in the VSEI standard do not directly affect the operation of a conforming decoder and are defined to be used in a coding format independent manner, allowing the VSEI to be used with other video coding standards in addition to VVC. Rather than specifically referencing VVC syntax element names, the VSEI standard refers to variables whose values ​​are set within the VVC standard.

[0046] Compared to HEVC, the VUI syntax structure in VVC focuses only on information related to the proper rendering of pictures and does not contain timing information or bitstream restriction indications. In VVC, the VUI is signaled within the SPS, which contains one length field before the VUI syntax structure, signaling the length of the VUI payload in bytes. This allows decoders to easily jump around information and allows for extension of the VUI syntax by adding new syntax elements directly at the end of the VUI syntax structure, similar to the syntax extension of SEI messages.

[0047] The VUI syntax structure includes the following information: an indication of whether the content is interlaced or progressive, an indication of whether the content contains frame-packed stereoscopic or projected omnidirectional video, the sample aspect ratio, an indication of whether the content is suitable for overscan displays, a color description including color primaries, color matrices and color transformation characteristics to support ultra-high definition (UHD) vs. high definition (HD) color spaces and high dynamic range (HDR) signaling, and an indication of chroma position relative to luma (compared to HEVC, signaling of progressive content is clarified).

[0048] If the SPS does not include a VUI, this information is considered unspecified and is to be conveyed via external means or specified by the application if the bitstream contents are intended to be rendered on a display.

[0049] Table 1 lists the SEI messages defined in VVC, including their syntax and semantics. Of the 20 SEI messages defined in the VVC standard, many are inherited from HEVC (e.g., the filler payload and both user data SEI messages). Some SEI messages are intended to correctly process or render the coded video content. This is the case for the display color quantity mastering, content light level information, and / or alternative transfer characteristic SEI messages, which are particularly relevant for HDR content. Other examples include the isotropic projection, spherical rotation, area-wise packing, and / or omnidirectional viewport SEI messages, which are relevant for signaling and processing 360° video content.

[0050] Table 1: List of SEI messages in VVC v1

[0051] [Table 1]

[0052] [Table 2]

[0053] The SEI messages specified in VVC v1 include a frame field information SEI message, a sample aspect ratio information SEI message, and a sub-picture level information SEI message. The frame field information SEI message includes information to indicate how the associated picture should be displayed (e.g., field parity or frame repetition period), the source scan type of the associated picture, and whether the associated picture is a duplicate of a previous picture. This information may be signaled together with the timing information of the associated picture in a picture timing SEI message in a video coding standard. However, frame field information and timing information are two different kinds of information that do not necessarily need to be signaled together. In a typical example, timing information is signaled at the system level, but frame field information is signaled in the bitstream. Therefore, frame field information is removed from the picture timing SEI message and instead signaled in a dedicated SEI message. This change also supports changing the syntax of the frame field information to convey additional and clearer instructions to the display, such as combining fields for frame repetition or pairing more values.

[0054] While the sample aspect ratio SEI message allows to signal different sample aspect ratios for different pictures in the same sequence, the corresponding information contained in the VUI applies to the entire sequence. This may be relevant in the case of using reference picture resampling functions with scaling factors that cause different pictures of the same sequence to have different sample aspect ratios.

[0055] The sub-picture level information SEI message specifies the level information of a sub-picture sequence.

[0056] The DRAP indication SEI message will be described later. The VSEI standard includes a DRAP indication SEI message, which is defined as follows:

[0057] [Table 3]

[0058] A picture associated with a Dependent Random Access Point (DRAP) Indication SEI message is called a DRAP picture. The presence of a DRAP Indication SEI message indicates that the picture ordering and picture referencing constraints specified in this section apply. These constraints may enable a decoder to properly decode the DRAP picture and pictures following the DRAP picture, both in decoding order and output order, without having to decode any other pictures except the DRAP picture's associated IRAP picture.

[0059] The constraints indicated by the presence of a DRAP indication SEI message are as follows and all shall apply: The DRAP picture is a trailing picture. The DRAP picture has a temporal sub-layer identifier equal to 0. The DRAP picture does not contain any pictures in the active entries of the DRAP picture's reference picture list, except for the DRAP picture's associated IRAP picture. Any picture following after the DRAP picture in both decoding order and output order does not contain any pictures preceding the DRAP picture in decoding order or output order, in the active entries of that picture's reference picture list, except for the DRAP picture's associated IRAP picture.

[0060] DRAP signaling in media files is described below. ISOBMFF includes a signaling mechanism for DRAP based on sample groups as follows: A DRAP sample group is defined as follows: A DRAP sample is a sample for which all subsequent samples in decoding order are correctly decoded if the closest initial sample preceding the DRAP sample is available. An initial sample is a stream access point (SAP) sample of type 1, 2, or 3 and is either a synchronous sample or is marked as such by a SAP sample group. For example, if the 32nd sample in a file is an initial sample containing an I-picture, then the 48th sample may contain a P-picture and be marked as a member of a dependent random access point sample group. This indicates that random access can be performed at the 48th sample by first decoding the 32nd sample (ignoring samples 33-47) and then continuing decoding from the 48th sample.

[0061] A sample can be a member of a subordinate random access point sample group (hence called a DRAP sample) only if the following conditions are met: A DRAP sample only references the closest preceding initial sample. When starting decoding at a DRAP sample, the DRAP sample and all samples following the DRAP sample in output order can be correctly decoded. This occurs after decoding the closest preceding SAP sample of type 1, 2 or 3, which can be for example a synchronization sample or marked by a SAP sample group. A DRAP sample can only be used in combination with SAP samples of type 1, 2 and 3. This is to enable the ability to generate a sequence of decodable samples by concatenating the preceding SAP sample to the DRAP sample and the samples following the DRAP sample in output order. An exemplary syntax for a DRAP sample group is as follows: class VisualDRAPEntry() extends VisualSampleGroupEntry('drap'){ unsigned int(3)DRAP_type; unsigned int(29)reserved=0; }

[0062] Exemplary semantics for DRAP sample groups are as follows: DRAP_type is a non-negative integer. If DRAP_type is in the range 1 to 3, then DRAP_type indicates the SAP_type (specified in Annex I) to which the DRAP sample would have corresponded, and the DRAP sample was independent of the closest preceding SAP. Other type values ​​are reserved. Reserved shall be equal to 0. The meaning of this subclause applies only to sample group description entries with reserved value 0. Parsers shall permit and ignore sample group description entries with reserved value greater than 0 when parsing this sample group.

[0063] In the following, a video coding approach based on Cross RAP Reference (CRR), also called External Decoding Refresh (EDR) and / or Type 2 DRAP, is described. The basic idea of ​​this video coding approach is as follows: Instead of coding random access points as intra-coded IRAP pictures (except for the very first picture in the bitstream), random access points are coded using inter prediction to avoid the unavailability of previous pictures when coded as IRAP pictures. This mechanism provides a limited number of previous pictures (usually representing different scenes of the video content) via a separate video bitstream (which may also be called an external stream and / or external means). Such previous pictures are called external pictures. As a result, each external picture can be used for inter prediction reference by pictures that straddle the random access point. An improvement in coding efficiency comes from coding random access points as inter predicted pictures, making more reference pictures available for pictures that follow the EDR picture in decoding order. Bitstreams coded with such a video coding approach can be used for ISOBMFF and DASH based applications, as described below.

[0064] DASH content creation operations are described below. Video content is coded into one or more representations, each with a particular spatial resolution, temporal resolution, and quality. Each representation of the video content is represented by a main stream and possibly also by an outer stream. The main stream contains coded pictures that may or may not contain EDR pictures. If at least one EDR picture is included in the main stream, then an outer stream is also present, and this outer stream contains outer pictures. If no EDR pictures are included in the main stream, then there is no outer stream. Each main stream is carried in a main stream representation (MSR). Each EDR picture in the MSR is the first picture of a segment.

[0065] Each external stream, if present, is carried in an External Stream Representation (ESR). For each segment in the MSR that starts with an EDR picture, there exists a segment in the corresponding ESR with the same segment start time derived from the MPD, which carries the external pictures required to decode that EDR picture and subsequent pictures in decoding order in the bitstream carried in the MSR. MSRs of the same video content are included in one Adaptation Set (AS). ESRs of the same video content are included in one AS.

[0066] The DASH streaming operation is described below: A client obtains an MPD of a DASH media presentation, parses the MPD, selects an MSR, and determines a start presentation time for consuming the content. The client requests segments of the MSR, starting with the segment containing a picture with a presentation time equal to (or close enough to) the start presentation time. If the first picture of the start segment is an EDR picture, then preferably it also requests a corresponding segment in the associated ESR (with the same segment start time derived from the MPD) before requesting the MSR segment. Otherwise, no segment of the associated ESR is requested.

[0067] When switching to a different MSR, the client requests segments of the switch to the MSR starting from the first segment with a segment start time greater than the segment start time of the last requested segment of the switch from the MSR. If the first picture in the start segment in the destination MSR is an EDR picture, the corresponding segment in the associated ESR is also requested, preferably before requesting the MSR segment. Otherwise, no segment in the associated ESR is requested.

[0068] When continuously operating on the same MSR (after a search or stream switch operation, after decoding the starting segment), do not request segments of the associated ESR, including when requesting any segment starting at an EDR picture.

[0069] In the following, the signaling of cross RAP reference in video is described. The CRR can be signaled in an SEI message called DRAP indication SEI message of type 2 as follows: The DRAP indication SEI message syntax of type 2 is as follows:

[0070] [Table 4]

[0071] The semantics of the type 2 DRAP indication SEI message are as follows: A picture associated with a type 2 DRAP indication SEI message is called a type 2 DRAP picture. A type 1 DRAP picture (associated with a DRAP indication SEI message) and a type 2 DRAP picture are collectively called a DRAP picture. The presence of a type 2 DRAP indication SEI message indicates that the picture order and picture referencing constraints specified in this subclause apply. These constraints allow a decoder to properly decode a type 2 DRAP picture and pictures that follow the type 2 DRAP picture in the same layer and in both decoding order and output order. This may be achieved without the need to decode other pictures in the same layer, except for the picture list referenceablePictures, which contains a list of IRAP or DRAP pictures in decoding order that are in the same CLVS and are identified by the t2drap_ref_rap_id[i] syntax element.

[0072] All constraints indicated by the presence of a type 2 DRAP indication SEI message shall apply, as follows: A type 2 DRAP picture is a trailing picture. A type 2 DRAP picture has a temporal sub-layer identifier equal to 0. A type 2 DRAP picture does not contain any pictures of the same layer in the active entries of the type 2 DRAP picture's reference picture list, except for referenceablePictures. Any pictures following a type 2 DRAP picture in the same layer and in both decoding order and output order, does not contain any pictures preceding the type 2 DRAP picture in the active entries of the type 2 DRAP picture's reference picture list, except for referenceablePictures, in the same layer and in decoding order or output order. Any pictures in the list referenablePictures do not contain any pictures in the active entries of the picture's reference picture list that are not pictures of the same layer and at an earlier position in the list referenceablePictures. As a result, the first picture in referenceablePictures does not have a picture from the same layer in the active entries of its reference picture list, even if the picture is a DRAP picture rather than an IRAP picture.

[0073] t2drap_rap_id_in_clvs specifies the RAP picture identifier of a type 2 DRAP picture, denoted as RapPicId. Each IRAP or DRAP picture is associated with a RapPicId. The value of RapPicId for an IRAP picture is inferred to be equal to 0. The value of RapPicId shall be different for any two IRAP or DRAP pictures in a CLVS. t2drap_reserved_zero_13bits shall be equal to 0 in bitstreams conforming to this version of this specification. Other values ​​of t2drap_reserved_zero_13bits are reserved. Decoders shall ignore the value of t2drap_reserved_zero_13bits. t2drap_num_ref_rap_pics_minus1+1 indicates the number of IRAP or DRAP pictures that are in the same CLVS as the DRAP picture of type 2 and may be included in the active entries of the reference picture list of the DRAP picture of type 2. t2drap_ref_rap_id[i] indicates the RapPicId of the i-th IRAP or DRAP picture that is in the same CLVS as the DRAP picture of type 2 and may be included in the active entries of the reference picture list of the DRAP picture of type 2.

[0074] Examples of technical problems that the disclosed technical proposal aims to solve are given below. For example, the signaling of CRR and / or DRAP in video bitstreams and media files has the following problems: The DRAP indication SEI message lacks signaling indicating whether a picture that follows the DRAP picture in decoding order and precedes the DRAP picture in output order can be correctly decoded when randomly accessed from the DRAP picture. Such a picture may be erroneously decoded in this case because it references a picture that precedes the DRAP picture in decoding order for inter prediction.

[0075] Figure 5 shows an example of pictures that follow an associated DRAP picture in decoding order and precede the associated DRAP picture in output order. Each box is a picture shown in decoding order from left to right. The numbers in the boxes are the output order, also known as the picture order count of the pictures. The arrows indicate an inter-prediction relationship between two pictures with the picture on the right (arrow head) using the picture on the left (arrow origin) as a reference picture.

[0076] In the example shown in FIG. 5, inter prediction from picture 6 to picture 8 may be turned off (the arrow connecting the two pictures is removed). In this case, picture 8 can be correctly decoded when random access is performed from DRAP picture (picture 10). However, when inter prediction from picture 6 to picture 8 is used, picture 8 cannot be correctly decoded when DRAP picture (picture 10) is used as a random access point. Such an indication of whether inter prediction is turned off is useful for the system to know when to start presenting the video when random access is performed from a DRAP picture. For example, with such an indication, when random access is performed from DRAP picture (picture 10), the application system can know whether the presentation can start from picture 8 or from picture 10.

[0077] The type 2 DRAP indication SEI message also does not provide a signaling mechanism to indicate whether a picture following the type 2 DRAP picture in decoding order and preceding the type 2 DRAP picture in output order can be correctly restored when randomly accessed from the type 2 DRAP picture. Such a picture may be erroneously decoded when it references a picture preceding the type 2 DRAP picture in decoding order for inter prediction. Such an indication would be useful for a system to determine when to start presenting video when randomly accessed from a type 2 DRAP picture. A mechanism for signaling the CRR in a media file is also lacking.

[0078] Furthermore, the semantics of the DRAP sample group in ISOBMFF is incorrect. ISOBMFF states that a DRAP sample is a sample in which, if the closest initial sample preceding the DRAP sample is available for reference, all subsequent samples in the decoding order are correctly decoded. However, even if the closest initial sample preceding the DRAP sample is available for reference, a sample following the DRAP sample in the decoding order and preceding the DRAP sample in the output order may refer to a picture that is earlier than the picture of the closest initial sample for reference. In such a case, such a sample (picture) cannot be correctly decoded.

[0079] This specification discloses a mechanism that addresses one or more of the above-mentioned problems. For example, a DRAP picture is a random access point picture that is coded by inter prediction with reference to an IRAP picture. Furthermore, a CRR picture, also known as a type 2 DRAP and / or an enhanced dependent random access point (EDRAP) picture, is a random access point picture that is coded via inter prediction with reference to an IRAP picture and is allowed to reference one or more other dependent random access point pictures. Thus, CRR / DRAP / type 2 DRAP can be considered as a type of DRAP. DRAP and CRR are designed under the assumption that the video is managed in a specific order. However, an encoder is allowed to reorder the pictures to improve coding efficiency. Thus, video pictures can have an output order and a decoding order. The output order is the order in which the pictures are presented / displayed, and the decoding order is the order in which the pictures are coded into a bitstream. Some DRAP and CRR designs do not take such distinctions into account, and therefore errors may occur when video is coded using DRAP and / or CRR and the encoder decides to reorder pictures. Specifically, an error may occur when an inter-predicted picture follows a DRAP / CRR picture in decoding order and precedes the DRAP / CRR picture in output order. Such a picture may be allowed to be coded with reference to a further picture that precedes the DRAP / CRR picture in decoding order, and therefore an error may occur. When a DRAP / CRR picture is used by a decoder as a random access point, the picture may or may not be fully decodable based on whether inter prediction is used by referencing further pictures. Furthermore, various signaling mechanisms may not fully support DRAP and / or CRR.

[0080] Thus, the present disclosure includes a signaling mechanism for indicating whether an inter-predicted picture that follows a DRAP / CRR picture in decoding order and precedes the DRAP / CRR picture in output order is allowed to reference other pictures preceding the DRAP / CRR picture. In one example, this signaling mechanism is an SEI message in the encoded bitstream. If such inter-prediction references are allowed, the inter-predicted picture is not displayed when using the DRAP / CRR picture as a random access point. If such inter-prediction references are not allowed, the inter-predicted picture may be displayed when using the DRAP / CRR picture as a random access point. Furthermore, the present disclosure describes sample groups and / or sample entries that may be included in an ISOBMFF media file to describe the DRAP and / or CRR pictures. This allows a decoder to determine the presence and location of the DRAP and / or CRR pictures at the file format level.

[0081] Further, the present disclosure includes a mechanism for signaling the CRR picture. Each CRR picture is identified by a Type 2 DRAP RAP identifier in the Coded Layer Video Sequence Minus 1 (t2drap_rap_id_in_clvs_minus1) field. In one example, the value of the t2drap_rap_id_in_clvs_minus1 field plus 1 defines the RAP picture identifier (RapPicId) of the CRR picture. Each IRAP and CRR picture is associated with a RapPicId. The RapPicId of an IRAP picture is 0. The RapPicId of each CRR picture is a non-zero positive value that is different from the RapPicIds of other CRR pictures associated with the same IRAP picture. The identifier of the CRR picture may be included in the Type 2 DRAP SEI message. This approach uniquely identifies each IRAP picture and the CRR picture associated with that IRAP picture. However, this approach also allows CRR pictures to reuse the RapPicId across multiple periods in the same video sequence.

[0082] In order to solve the above problems, the methods summarized below are disclosed. These items are examples for explaining the general concept and should not be interpreted in a narrow sense. Furthermore, these items may be applied individually or may be combined in any manner.

[0083] Example 1

[0084] In one example, an indication is added to the DRAP indication SEI message syntax to indicate whether a picture in the same layer as the DRAP picture, which follows the DRAP picture in decoding order and precedes the DRAP picture in output order, is allowed to reference a picture in the same layer that precedes the DRAP picture in decoding order for inter prediction. If such reference is not allowed, the decoder can correctly decode and display such a picture when the DRAP is used as a random access point. If reference is allowed, decoding may not be possible and such a picture should not be displayed by the decoder when using the DRAP as random access. In one example, the indication is a one-bit flag. In one example, the flag is set equal to X (X is 1 or 0), indicating that a picture in the same layer following the DRAP picture in decoding order and preceding the DRAP picture in output order is allowed to reference a picture in the same layer that precedes the DRAP picture in decoding order for inter prediction. In one example, the flag may be set equal to 1-X (X is 1 or 0), indicating that a picture following the DRAP picture in decoding order in the same layer and preceding the DRAP picture in output order does not refer to a picture preceding the DRAP picture in decoding order in the same layer for inter prediction. In one example, this indication is a multi-bit index. In one example, the constraint requires that a picture following the DRAP picture in decoding order in the same layer follows a picture preceding the DRAP picture in decoding order in the same layer in output order.

[0085] Example 2

[0086] In one example, an additional SEI message is specified, the presence of which indicates that a picture following the DRAP picture in the bitstream in decoding order in the same layer and preceding the DRAP picture in output order does not refer to a picture preceding the DRAP picture in decoding order in the same layer for inter prediction. In one example, the presence of this SEI message indicates that a picture following the DRAP picture in the bitstream in decoding order in the same layer and preceding the DRAP picture in output order is permitted to refer to a picture preceding the DRAP picture in decoding order in the same layer for inter prediction. In one example, the constraint requires that any picture following the DRAP picture in decoding order in the same layer follows any picture preceding the DRAP picture in decoding order in the same layer in output order.

[0087] Example 3

[0088] In one example, an additional SEI message is specified. The presence of this additional SEI message indicates that a picture following the DRAP picture associated with both the SEI message and the DRAP indication SEI message in decoding order in the same layer and preceding the DRAP picture in output order does not refer to a picture preceding the DRAP picture in decoding order in the same layer for inter prediction. In one example, the absence of this additional SEI message indicates that a picture following the DRAP picture associated with both the additional SEI message and the DRAP indication SEI message in decoding order in the same layer and preceding the DRAP picture in output order is permitted to refer to a picture preceding the DRAP picture in decoding order in the same layer for inter prediction. In one example, the constraint guarantees that any picture following the DRAP picture in decoding order in the same layer follows the picture preceding the DRAP picture in decoding order in output order.

[0089] Example 4

[0090] In one example, an additional SEI message is specified, and an indication is added to the additional SEI message syntax to indicate whether a picture following the DRAP picture associated with both the additional SEI message and the DRAP indication SEI message in decoding order in the same layer and preceding the DRAP picture in output order is allowed to refer to a picture preceding the DRAP picture in decoding order in the same layer for inter prediction. In one example, the indication is a 1-bit flag. In one example, the flag is set equal to X (X is 1 or 0), indicating that a picture following the DRAP picture in decoding order in the same layer and preceding the DRAP picture in output order is allowed to refer to a picture preceding the DRAP picture in decoding order in the same layer for inter prediction. In one example, the flag is further set equal to 1-X (X is 1 or 0), indicating that a picture following the DRAP picture in decoding order in the same layer and preceding the DRAP picture in output order does not refer to a picture preceding the DRAP picture in decoding order in the same layer for inter prediction. In one example, the indication is a multi-bit index. In one example, the constraint requires that any picture following the DRAP picture in decoding order in the same layer follows any picture preceding the DRAP picture in decoding order in the same layer in output order.

[0091] Example 5

[0092] In one example, an indication is added to the type 2 DRAP indication SEI message syntax. This indication indicates whether a picture following the type 2 DRAP picture in decoding order and preceding the type 2 DRAP picture in output order in the same layer is allowed to refer to a picture preceding the type 2 DRAP picture in decoding order in the same layer for inter prediction. In one example, this indication is a 1-bit flag. In one example, the flag is set equal to X (X is 1 or 0), indicating that a picture following the DRAP picture in decoding order in the same layer and preceding the DRAP picture in output order is allowed to refer to a picture preceding the DRAP picture in decoding order in the same layer for inter prediction. In one example, furthermore, a flag is set equal to 1-X (X is 1 or 0) to indicate that a picture following the DRAP picture in decoding order and preceding the DRAP picture in output order in the same layer does not refer to a picture preceding the DRAP picture in decoding order in the same layer for inter prediction. In one example, the flag is added by reusing one bit from the t2drap_reserved_zero_13bits field of the type 2 DRAP indication SEI message syntax. In one example, the indication is a multi-bit index. In one example, the constraint requires that any picture following the DRAP picture in decoding order in the same layer follows any picture preceding the DRAP picture in decoding order in the same layer in output order.

[0093] Example 6

[0094] In another example, the indication is associated with a DRAP or a DRAP picture of type 2. In one example, the indication may be signaled for each DRAP or DRAP of type 2.

[0095] Example 7

[0096] In one example, an additional sample group is defined to signal the CRR in an ISOBMFF file (eg, samples containing type 2 DRAP pictures).

[0097] Example 8

[0098] In one example, the DRAP sample group is extended to signal a CRR (e.g., a sample that contains a type 2 DRAP picture) in an ISOBMFF file, for example, by using the sample's version field in a group box (e.g., SampleToGroupBox or CompactSampleToGroupBox) or the sample's grouping_type_parameter field (or a portion thereof) in the group box.

[0099] Example 9

[0100] In one example, the DRAP sample entry includes a field indicating the number of random access point (RAP) samples required for random access from a member of the DRAP sample group. The required RAP samples are either initial samples or DRAP samples. In one example, the DRAP sample entry further includes a field indicating a RAP identifier of a member of the DRAP sample group. In one example, the field indicating the RAP identifier is coded using 16 bits. In one example, the field indicating the RAP identifier is coded using 32 bits. In one example, the DRAP sample entry does not include a field indicating a RAP identifier of a member of the DRAP sample group. The RAP identifier may be signaled in the sub-sample information box, the sample auxiliary information size box, and / or another box. In one example, the DRAP sample entry does not include a field indicating a RAP identifier of a member of the DRAP sample group. In one example, the RAP identifier is a sample number. In one example, the DRAP sample entry further includes several fields indicating the RAP identifiers of the required RAP samples required for random access from a member of the DRAP sample group. In one example, each field indicating the RAP identifier of a required RAP sample is coded using 16 bits. In one example, each field indicating the RAP identifier of a required RAP sample is coded using 32 bits. In one example, each field indicating the RAP identifier of a required RAP sample directly represents the RAP identifier of the required RAP sample. In one example, the fields indicating the RAP identifiers of the required RAP samples each represent the difference between the RAP identifiers of two RAP samples. In one example, the i-th field (i is equal to 0) of the fields indicating the RAP identifiers of the required RAP samples represents the difference between the RAP identifier of the current sample (e.g., a sample of the current DRAP sample group) and the i-th RAP identifier of the first required RAP sample.In one example, the i-th field (i is greater than 0) of the fields indicating the RAP identifiers of required RAP samples represents the difference between the RAP identifier of the (i-1)th required RAP sample and the RAP identifier of the i-th required RAP sample. In one example, the i-th field (i is greater than 0) of the fields indicating the RAP identifiers of required RAP samples represents the difference between the RAP identifier of the i-th required RAP sample and the RAP identifier of the (i-1)th required RAP sample.

[0101] Example 10

[0102] In one example, a dependent random access point (DRAP) sample is a sample in which all samples can be correctly decoded in both decoding order and output order when the closest initial sample preceding the DRAP sample is available for reference.

[0103] Example 11

[0104] In one example, the type 2 DRAP SEI message syntax is modified such that all other syntax elements in the SEI message other than the t2drap_rap_id_in_clvs syntax element are signaled only if t2drap_rap_id_in_clvs is greater than 0.

[0105] Example 12

[0106] In one example, the Type 2 DRAP SEI message syntax is modified to replace the t2drap_rap_id_in_clvs syntax element with t2drap_rap_id_in_clvs_minus1, and the semantics are changed as follows: t2drap_rap_id_in_clvs_minus1+1 specifies the RAP picture identifier, denoted as RapPicId, of the CRR picture.

[0107] Example 13

[0108] In one example, Type 2 DRAP SEI message semantics are modified such that each IRAP or DRAP picture is associated with a RapPicId, the RapPicId values ​​of any two CRR pictures associated with an IRAP picture are different, the RapPicId value of the CRR picture is greater than 0, and one IRAP picture's RapPicId value is inferred to be equal to 0.

[0109] Some illustrative examples of the above-mentioned aspects are set out below, with the relevant portions already added or modified in bold underline and portions deleted in bold italics.

[0110] In an implementation example, the syntax for the Type 2 DRAP indication SEI message is modified as follows:

[0111] [Table 5]

[0112] Furthermore, the semantics of the type 2 DRAP indication SEI message are modified as follows: A picture associated with a type 2 DRAP indication SEI message is called a type 2 DRAP picture. A type 1 DRAP picture (associated with a DRAP indication SEI message) and a type 2 DRAP picture are collectively called a DRAP picture. The presence of a type 2 DRAP indication SEI message indicates that the picture ordering and picture referencing constraints specified in this subclause apply. These constraints allow a decoder to properly decode a type 2 DRAP picture and the pictures that follow it in the same layer and in both decoding order and output order without having to decode other pictures in the same layer, except for a list of pictures referenceablePictures, which consists of a list of IRAP or DRAP pictures in decoding order that are in the same CLVS and are identified by the t2drap_ref_rap_id[i] syntax element.

[0113] All constraints indicated by the presence of a type 2 DRAP indication SEI message shall apply, as follows: A type 2 DRAP picture is a trailing picture. A type 2 DRAP picture has a temporal sub-layer identifier equal to 0. A type 2 DRAP picture does not contain pictures of the same layer in the active entry of its reference picture list, except for referenceablePictures. Any pictures that are in the same layer and that follow a type 2 DRAP picture in both decoding order and output order do not contain pictures that are in the same layer and that precede the type 2 DRAP picture in decoding order or output order, except for referenceablePictures, in the active entry of its reference picture list.

[0114] [ka]

[0115] Any picture in the list referenceablePictures does not contain a picture in the active entry of its reference picture list that is not also a picture in the same layer and earlier in the list referenceablePictures. NOTE - As a result, the first picture in referenceablePictures does not contain a picture from the same layer in the active entry of its reference picture list, even if it is a DRAP picture rather than an IRAP picture.

[0116] t2drap_rap_id_in_clvs specifies the RAP picture identifier for type 2 DRAP pictures, denoted as RapPicId. Each IRAP or DRAP picture is associated with a RapPicId. The value of RapPicId for an IRAP picture is inferred to be equal to 0. The value of RapPicId shall be different for any two IRAP or DRAP pictures in a CLVS. t2drap_reserved_zero_13bits shall be equal to 0 in bitstreams conforming to this version of this specification. Other values ​​of t2drap_reserved_zero_13bits are reserved for future use by ITU-T|ISO / IEC. Decoders shall ignore the value of t2drap_reserved_zero_13bits. t2drap_num_ref_rap_pics_minus1+1 indicates the number of IRAP or DRAP pictures that are in the same CLVS as the DRAP picture of type 2 and may be included in the active entries of the reference picture list of the DRAP picture of type 2. t2drap_ref_rap_id[i] indicates the RapPicId of the i-th IRAP or DRAP picture that is in the same CLVS as the DRAP picture of type 2 and may be included in the active entries of the reference picture list of the DRAP picture of type 2.

[0117] [ka]

[0118] [ka]

[0119] [ka]

[0120] [ka]

[0121] [ka]

[0122] [ka]

[0123] [ka]

[0124] Furthermore, the RAP_id field for each DRAP sample is signaled in the Sub-Sample Information box, the Sample Auxiliary Information Size box, or the Additional box.

[0125] [ka]

[0126] [ka]

[0127] In another implementation example, the RAP sample identifier of a RAP sample is defined to be set equal to the sample number of the RAP sample, the RAP_Id of the current sample is the sample number of the current sample, and the variable RefRapId[i] represents the sample number of the i-th RAP sample.

[0128] In another implementation, the RAP_id field, if present in the sample group description, and the ref_RAP_id[i] field are coded using 32 bits.

[0129] [ka]

[0130]

change

[0131]

change

[0132]

change

[0133]

change

[0134]

change

[0135]

change

[0136] FIG. 1 is a schematic diagram illustrating an exemplary mechanism for random access when decoding a bitstream with IRAP pictures. Specifically, FIG. 1 illustrates a bitstream 100 including an IRAP picture 101 and a non-IRAP picture 103. The IRAP picture 101 is a picture that is coded according to intra prediction and can be used as an access point to the bitstream 100. Intra prediction is the process of coding blocks of a picture by referencing other blocks in the same picture. A picture coded according to intra prediction can be decoded without referencing other pictures. On the other hand, a non-IRAP picture 103 is a picture that cannot be used as an access point and can be decoded after decoding the associated IRAP picture 101. For example, the non-IRAP picture 103 is usually coded according to inter prediction. Inter prediction is the process of coding blocks of a picture by referencing blocks of other pictures that are designated as reference pictures. A picture coded based on inter prediction can be correctly decoded only if all reference pictures of that picture have also been decoded. Both IRAP pictures 101 and non-IRAP pictures 103 may be designated as reference pictures for other non-IRAP pictures 103.

[0137] Depending on the coding technique, different types of IRAP pictures 101 can be used. In this example, the IRAP pictures 101 include IDR and CRA pictures. An IDR picture is an intra-coded picture that can be used as the first picture of a coded video sequence. A CRA picture is an intra-coded picture that allows the use of an associated first picture. A first picture is a picture that precedes the associated IRAP picture 101 in output order but follows the IRAP picture 101 in decoding order. A decoder can start decoding at the beginning of the bitstream 100. However, a user often wants to jump to a specific point in the bitstream and start watching from a selected point. The points that a user can select as the starting point for decoding are called random access points.

[0138] In general, any IRAP picture 101 can be used as a random access point. Once an IRAP picture 101 is selected as a random access point, all associated non-IRAP pictures 103 (e.g., following the selected IRAP picture 101) can also be decoded. In this example, it is shown that a user selects CRA4 for random access. The decoder can start decoding from CRA4 without decoding pictures before CRA4. This is because pictures following an IRAP picture are generally prevented from referencing pictures before the IRAP picture. Thus, once CRA4 is selected as a random access point, the decoder can decode CRA4 for display and then decode the non-IRAP pictures 103 following CRA4 based on CRA4. This allows the decoder to start presenting the bitstream from the random access point (e.g., CRA4) without decoding pictures before the random access point.

[0139] Figure 2 is a schematic diagram showing an exemplary mechanism for random access when decoding a bitstream using a DRAP picture. Specifically, Figure 2 shows a bitstream 200 including an IRAP picture 201, a non-IRAP picture 203, and a DRAP picture 205. The IRAP picture 201 and the non-IRAP picture 203 may be substantially similar to the IRAP picture 101 and the non-IRAP picture 103, respectively. In this example, an IDR picture is used as the IRAP picture 201.

[0140] Also included is a DRAP picture 205. The DRAP picture 205 is a picture that is coded according to inter prediction and can be used as an access point to the bitstream 200. For example, each DRAP picture 205 can be coded by referring to the IRAP picture 201. FIG. 2 includes arrows indicating pictures coded according to inter prediction from the associated reference picture. As shown in the figure, each DRAP picture 205 is coded with reference to IDR0. In this way, any DRAP picture 205 can be used as a random access point as long as the decoder can decode the associated IRAP picture 201. In the illustrated example, DRAP4 is selected as the random access point. The decoder should recognize that the DRAP picture 205 is used in the bitstream 200 and should recognize, for example by signaling, the IRAP picture 201 used as a reference picture for the DRAP picture 205. The decoder can then decode IDR0 for use in random access and decode DRAP4 based on IDR0. The decoder can then decode the non-IRAP picture 203 that follows DRAP4 based on DRAP4. The decoder can begin presenting the decoded video at DRAP4.

[0141] Pictures coded with inter prediction are more compressed than pictures coded with intra prediction. Thus, the DRAP picture 205 is more compressed than the IRAP picture 101 in the bitstream 100. Thus, the use of the DRAP picture 205 reduces the amount of data signaled in the bitstream 200 over time (e.g., bit rate) relative to the bitstream 100, at the cost of more complex signaling mechanisms and decoding processes.

[0142] Figure 3 is a schematic diagram of an exemplary mechanism of random access when decoding a bitstream using a CRR picture. Specifically, Figure 3 shows a bitstream 300 including an IRAP picture 301, a non-IRAP picture 303, and a CRR picture 305. The IRAP picture 301 and the non-IRAP picture 303 may be substantially similar to the IRAP picture 101 and the non-IRAP picture 103, respectively. The CRR picture 305 is a picture coded according to inter prediction and can be used as an access point to the bitstream 300. The CRR picture 305 may be considered as a type of DRAP picture. The CRR picture 305 can be coded with reference to both the IRAP picture 301 and any other CRR picture 305, while the DRAP picture is coded with reference to the IRAP picture. Because a CRR picture 305 is a type of DRAP picture, the CRR picture 305 is also known as an EDRAP picture and / or a DRAP picture of type 2, and these terms can be used interchangeably. Figure 3 includes arrows that indicate pictures that are coded according to inter prediction from an associated reference picture.

[0143] In the illustrated example, all CRR pictures 305 are coded by referencing the IRAP picture 301, shown as IDR0. CRR3, CRR4, CRR5 are also coded by referencing CRR2. Thus, a decoder can use any CRR picture 305 as a random access point, as long as it can decode the associated IRAP picture 301 and the associated CRR picture 305 used as a reference picture. In the illustrated example, CRR4 is selected as a random access point. The decoder needs to know that the CRR picture 305 is used in the bitstream 300, and can know, for example by signaling, which IRAP picture 301 and which CRR picture 305 are used as reference pictures for other CRR pictures 305. The decoder can then decode IDR0 and CRR2 for use in random access, and decode CRR4 based on IDR0 and CRR2. The decoder can then decode the non-IRA P picture 303 following CRR4 based on CRR4. The decoder can start presenting the decoded video in CRR4.

[0144] Inter prediction works by matching a block in a picture with a similar reference block in a reference picture. Then, instead of encoding the current block, the encoder may encode a motion vector that points to the reference block. Any difference between the current block and the reference block is encoded as a residual. The closer the current block and the reference block match, the less residual is encoded. Thus, by better matching the current block and the reference block, less data is coded and compression is better. The advantage of CRR over DRAP is that more pictures can be used, resulting in better matching and better compression. CRR over DRAP has higher signaling and decoding costs.

[0145] FIG. 4 is a schematic diagram illustrating an example mechanism for signaling an external bitstream 401 to support random access based on CRR. As mentioned above, management of reference pictures for CRR is more complicated than management of reference pictures for DRAP. FIG. 4 illustrates a main bitstream 400 including coded video to be decoded by a decoder. The main bitstream 400 is substantially similar to the bitstream 300, but the reference numbers are omitted for ease of explanation. The external bitstream 401 is used to support random access. Specifically, the external bitstream 401 includes a set of reference pictures corresponding to each CRR picture. When random access occurs, the encoder and / or video server can transmit the main bitstream 400 starting from the access point and the portion of the external bitstream 401 that corresponds to the access point. For example, a user can select CRR3 for random access. The decoder can then request the main bitstream 400 starting at CRR3. The encoder / video server can then start transmitting the main bitstream 400 at CRR3. The encoder / video server may also transmit the portion of the external bitstream 401 that corresponds to the random access point. In this example, the encoder / video server transmits IDR0 and CRR2. In this way, the decoder receives the CRR picture at the random access point and all reference pictures required to decode the CRR picture. The decoder can then decode CRR3 and start displaying the video from that point on. To reduce data transmission, the encoder / video server may transmit only the portion of the external bitstream 401 that is required to decode the random access point and not transmit further data unless another random access occurs and / or a subsequent CRR picture uses a reference picture that is not provided for the current random access point.

[0146] 5 is a diagram 500 illustrating potential decoding errors when a picture follows a DRAP and / or CRR picture in decoding order and precedes the DRAP and / or CRR picture in output order. As in the previous figure, arrows represent inter prediction by pointing towards the inter predicted picture and away from the associated reference picture.

[0147] An encoder can reorder pictures to improve compression. Thus, the order in which pictures should be presented to a user is known as output order. The order in which pictures are coded into a bitstream is known as decoding order. Pictures may be identified by a picture order count, which may be any value in ascending order that uniquely identifies a picture. In diagram 500, pictures are shown in decoding order. However, pictures are numbered based on picture order count and increase in output order. As can be seen from the picture order count, picture 8 is out of output order and follows picture 10, which is a random access point. Thus, picture 8 is an inter-predicted picture 503 that precedes the random access point in output order and follows the random access point in decoding order. In this example, picture 10 is a DRAP / CRR picture 505, which may be either a DRAP picture or a CRR / EDRAP / type 2 DRAP picture, as the case may be. In this example, inter-predicted picture 503 is coded via inter prediction with reference to picture 6 with reference to picture 507. Thus, picture 6 becomes reference picture 502 of inter-predicted picture 503.

[0148] The diagram 500 shows a potential coding error because the inter-predicted picture 503 references 507 the reference picture 502 via inter prediction. Specifically, the inter-predicted picture 503 references 507 the reference picture 502, which is located following the DRAP / CRR picture 505 in decoding order, preceding the DRAP / CRR picture 505 in output order, and preceding the DRAP / CRR picture 505 in decoding order. When decoding the bitstream from picture 4, which is an IRAP picture of type IDR, the reference picture 502 is decoded and stored in the reference picture buffer, so that the inter-predicted picture 503 can be correctly decoded. However, if the DRAP / CRR picture 505 is used for random access, the reference picture 502 is skipped and not decoded. Thus, if the inter-predicted picture 503 references the reference picture 502, the inter-predicted picture 503 cannot be correctly decoded. The encoder has the option of not allowing the reference 507. For example, the encoder may restrict every inter-predicted picture 503 to only refer to the picture of the associated random access point and the picture following the associated access point in decoding order. If reference 507 is not allowed, the inter-predicted picture 503 can always be decoded because the inter-predicted picture 503 is not allowed to refer to a picture before the DRAP / CRR picture 505. However, if reference 507 is allowed, if the encoder decides to encode the inter-predicted picture 503 to the reference picture 502 by reference 507, the inter-predicted picture 503 cannot be directly decoded. Note that allowing reference 507 does not necessarily cause an error because the encoder is not required to use reference 507. However, if reference 507 is allowed, an error occurs when reference 507 is selected and then the DRAP / CRR picture 505 is used for random access. This may result in seemingly random errors from the user's perspective, degrading the user's experience.

[0149] This disclosure includes several mechanisms to address this issue. For example, an encoder can signal to a decoder whether reference 507 is allowed. If reference 507 is allowed, the decoder should not display an inter-predicted picture 503 that precedes the DRAP / CRR picture 505 in output order and follows the DRAP / CRR picture 505 in decoding order when the DRAP / CRR picture 505 is used for random access, since the inter-predicted picture 503 may or may not be decoded (depending on whether the encoder chooses to use reference 507). If reference 507 is not allowed, the decoder should display an inter-predicted picture 503 associated with the DRAP / CRR picture 505 when the DRAP / CRR picture 505 is used for random access. Furthermore, the DRAP and CRR signaling mechanisms are not fully specified. Therefore, this disclosure includes a mechanism for signaling a description of the use of the DRAP and CRR in a media file to more efficiently decode the DRAP / CRR picture 505 and / or related pictures after random access by a decoder.

[0150] In another example, the coding process may be constrained so that the reference 507 does not occur. For example, pictures may be divided into layers, and each layer may be associated with a different frame rate. This allows the decoder to select a layer with a frame rate that the decoder can support. The decoder then displays all pictures of the selected layer and all pictures of layers below the selected layer to achieve the desired frame rate. The error shown in diagram 500 can be prevented if the encoder requires that a picture in the same layer as the DRAP / CRR picture 505 (e.g., inter-predicted picture 503) and following the DRAP / CRR picture 505 in decoding order follow in output order a picture in the same layer and preceding the DRAP / CRR picture 505 in decoding order.

[0151] 6 is a schematic diagram illustrating a media file 600 stored in an ISOBMFF. For example, the media file 600 may be stored in an ISOBMFF and used as a DASH representation. The ISOBMFF media file 600 is stored in multiple boxes that carry objects and / or data associated with the media content or media presentation. For example, the media file 600 may comprise a file type box (e.g., ftyp) 630, a movie box (e.g., moov) 610, and a media data box (e.g., mdat) 620.

[0152] The file type box 630 may carry data that describes the entire file, and therefore may carry file-level data. Thus, a file-level box is any box that contains data related to the entire media file 600. For example, the file type box 630 may contain a file type that indicates a version number of the ISO standard and / or compatibility information for the media file 600. The movie box 610 may carry data that describes a movie contained in the media file, and therefore may carry movie-level data. A motion level box is any box that contains data that describes the entire movie contained in the media file 600. The movie box 610 may contain a wide range of sub-boxes that are used to contain data for various purposes. For example, the movie box 610 contains a track box (trak) that carries metadata that describes a track of the media presentation. Note that a track can be referred to as a timed sequence of related samples. For example, a media track may contain a series of pictures or sampled audio, and a metadata track may contain a series of metadata corresponding to these pictures and / or audio. Data that describes a track is track-level data, and thus any box that describes a track is a track-level box.

[0153] The media data box 620 consists of interleaved time-ordered media data (e.g., video pictures and / or audio to be coded) of a media presentation. For example, the media data box 620 may contain a bitstream of video data coded according to VVC, AVC, HEVC, etc. The media data box 620 may contain video, audio, text or other media data for display to a user. In ISOBMFF, pictures, audio and text are collectively referred to as samples. This is in contrast to the terminology used in video coding standards, where a sample is a pixel to be coded / decoded. Thus, the term sample can refer to an entire picture (file format level) or a group of pixels (bitstream level), depending on the context.

[0154] As mentioned above, the present disclosure provides an additional mechanism for signaling the use of DRAP and / or CRR at the file format level. This allows a decoder to recognize the use of DRAP and / or CRR by loading parameters into the moov box 610 before actually decoding the bitstream of samples included in the mdat box 620. For example, the moov box 610 can include a DRAP sample group box 625 and / or an EDRAP sample group box 621. The sample group box can describe which samples are of the type corresponding to the sample group box. In one example, DRAP and CRR are both described in the DRAP sample group box 625, for example, by treating CRR as a subtype of DRAP. In another example, a CRR sample is described by an EDRAP sample group box 621, and a DRAP sample is described by a DRAP sample group box 625, respectively. In one example, the DRAP sample group 625 can include a DRAP sample entry 627. Each DRAP sample entry 627 can then describe an associated sample coded according to the DRAP. In one example, the EDRAP sample group 621 can include EDRAP sample entries 623. Each EDRAP sample entry 623 can then describe an associated sample coded based on a CRR / EDRAP / DRAP of type 2. Each DRAP / CRR sample description can include a sample identifier for the picture, an identifier for the sample that includes the associated reference picture, an indication of the number of samples and / or the number of RAP samples required to perform random access from the picture, and / or additional information that is useful to a decoder when selecting and performing random access in a DRAP / CRR picture.

[0155] The moov box 610 may also include a wide range of other boxes 629. In some examples, a description of the DRAP / CRR sample may be included in one or more of the other boxes 629. For example, the other box 629 may include a sample of a group box (SampleToGroupBox), and the DRAP and / or CRR sample may be described in the SampleToGroupBox. In another example, the other box 629 may include a compact sample of a group box (CompactSampleToGroupBox), and the DRAP and / or CRR sample may be described in the CompactSampleToGroupBox. As a specific example, the DRAP and / or CRR sample may be described in a group type parameter (group_type_parameter) field in the SampleToGroupBox and / or CompactSampleToGroupBox. In another example, the other box 629 may include a subsample information box, and the DRAP and / or CRR sample may be described in the subsample information box. In another example, other boxes 629 may include a sample auxiliary information size box, and the DRAP and / or CRR samples may be described in the sample auxiliary information size box. Additionally, any other box described herein may be included in other boxes 629 and may include a description of the DRAP and / or CRR samples.

[0156] FIG. 7 is a block diagram of a bitstream 700 including encoded video media data. The bitstream 700 includes media data coded / compressed by an encoder for decoding / decompression by a decoder. For example, the bitstream 700 may be included in the media data box 620 of the ISOBMFF media file 600. Furthermore, the bitstream 700 may be included in a representation in DASH. The bitstream 700 may be coded according to various coding formats such as VVC, AVC, EVC, HEVC, etc. In some coding formats, the bitstream 700 is represented as a series of NAL units. A NAL unit is a data unit sized to be placed in a data packet. For example, VVC includes many types of NAL units. The bitstream 700 may include video coding layer (VCL) NAL units that include video data and non-VCL NAL units that include data that describes the VCL NAL units, describes the coding tools used, and describes coding constraints. In one example, the bitstream 700 may include a picture 710 coded in a VCL NAL unit. The picture 710 can be an IRAP picture, an inter-predicted picture, a DRAP picture, a CRR picture, etc. The non-VCL NAL units may include various messages and parameter sets that describe the mechanism used to code the picture 710. Although many VCL NAL units are included in VVC, this disclosure focuses on SEI NAL units. For example, the SEI NAL units can include SEI messages. SEI NAL messages include data that aids in processing related to decoding, display, or other purposes, but are not required to determine sample values ​​of a picture being decoded in a decoding process. In one example, the SEI messages can include a DRAP indication SEI message 716 and / or a type 2 DRAP indication SEI message 717. The DRAP indication SEI message 716 is an SEI message that includes data that describes the use of a DRAP picture.The type 2 DRAP indication SEI message 717 is an SEI message that includes data describing the use of CRR / EDRAP / DRAP pictures of type 2. The DRAP indication SEI message 716 and / or the type 2 DRAP indication SEI message 717 may be associated with DRAP and / or CRR / EDRAP / DRAP pictures of type 2 and may indicate how such pictures should be treated during decoding.

[0157] In one example, the DRAP indication SEI message 716 may include an indication as to whether a picture following the DRAP picture in decoding order and preceding the DRAP picture in output order is permitted to refer to a reference picture located before the DRAP picture in decoding order for inter prediction. In one example, the DRAP indication SEI message 716 may include an indication as to whether a picture following the CRR / EDRAP / type 2 DRAP picture in decoding order and preceding the DRAP picture in output order is permitted to refer to a reference picture located before the DRAP picture in decoding order for inter prediction. In one example, the type 2 DRAP indication SEI message 717 may include an indication as to whether a picture following the CRR / EDRAP / type 2 DRAP picture in decoding order and preceding the DRAP picture in output order is permitted to refer to a reference picture located before the DRAP picture in decoding order for inter prediction. Thus, based on this example, the decoder can read the DRAP instruction SEI message 716 and / or type 2 DRAP instruction SEI message 717 and determine whether to present a picture that follows the DRAP / CRR picture in decoding order and precedes the DRAP / CRR picture in output order when using the DRAP / CRR picture as a random access point.

[0158] In a specific example, the DRAP indication SEI message 716 can be associated with a DRAP picture, and the type 2 DRAP indication SEI message 717 can be associated with a CRR / EDRAP / type 2 DRAP picture. In a further example, the type 2 DRAP indication SEI message 717 can include a T2drap_reserved_zero_13bits field 701, and a bit from the T2drap_reserved_zero_13bits field 701 can be used to indicate whether a picture following the CRR / EDRAP / type 2 DRAP picture in decoding order and preceding the DRAP picture in output order is permitted to refer to a reference picture located before the DRAP picture in decoding order for inter prediction. In another example, a field in the DRAP indication SEI message 716 can include a similar indication for a DRAP picture. In another example, a multi-bit indicator in the DRAP indication SEI message 716 and / or the type 2 DRAP indication SEI message 717 can be used for this purpose.

[0159] In a specific example, the DRAP indication SEI message 716 may include a t2drap_rap_id_in_clvs_minus1 field 703. The t2drap_rap_id_in_clvs_minus1 field 703 includes a RapPicId that identifies an associated CRR picture. The RapPicId included in the t2drap_rapid_in_clvs_minus1 field 703 is a non-zero positive value. Furthermore, the RapPicId is different for each CRR picture that references a common IRAP picture. This allows each CRR picture to be uniquely identified. However, RapPicIds can be reused between different periods of video that reference different IRAP pictures.

[0160] FIG. 8 is a block diagram illustrating an example video processing system 800 in which various techniques disclosed herein may be implemented. Various implementations may include some or all of the components of system 800. System 800 may include an input 802 for receiving video content. The video content may be received in a raw or uncompressed format, e.g., 8 or 10-bit multi-component pixel values, or may be received in a compressed or encoded format. Input 802 may represent a network interface, a peripheral bus interface, or a storage interface. Examples of network interfaces include wired interfaces, such as Ethernet, passive optical network (PON), and wireless interfaces, such as Wi-Fi or cellular interfaces.

[0161] The system 800 may include a coding component 804 that may implement various coding or encoding methods described herein. The coding component 804 may reduce the average bit rate of the video from the input 802 to the output of the coding component 804, generating a coded representation of the video. Thus, this coding technique may be referred to as a video compression or video transcoding technique. The output of the coding component 804 may be stored or transmitted via a connected communication, as represented by component 806. The stored or communicated bitstream (or coded) representation of the video received at the input 802 may be used by component 808 to generate pixel values ​​or displayable video that are sent to a display interface 810. The process of generating video viewable by a user from the bitstream representation may be referred to as video unfolding. Additionally, although certain video processing operations are referred to as "coding" operations or tools, it will be understood that the coding tools or operations are used in an encoder, and that corresponding decoding tools or operations that reverse the results of the coding are performed by a decoder.

[0162] Examples of peripheral bus interfaces or display interfaces may include Universal Serial Bus (USB) or High-Definition Multimedia Interface (HDMI) or DisplayPort, etc. Examples of storage interfaces include Serial Advanced Technology Attachment (SATA), PCI, IDE interfaces, etc. The techniques described herein may be implemented in a variety of electronic devices, such as mobile phones, laptops, smartphones, or other devices capable of digital data processing and / or video display.

[0163] FIG. 9 is a block diagram illustrating an example of a video processing device 900. The device 900 may be used to implement one or more methods described herein. The device 900 may be implemented by a smartphone, a tablet, a computer, an Internet of Things (IoT) receiver, etc. The device 900 may include one or more processors 902, one or more memories 904, and video processing hardware 906. The processor(s) 902 may be configured to implement one or more methods described herein. The memory(s) 904 may be used to store data and code used to implement the methods and techniques described herein. The video processing hardware 906 may be used to implement the techniques described herein in a hardware circuit. In some embodiments, the video processing hardware 906 may be at least partially included in the processing device 902, e.g., a graphics co-processor.

[0164] FIG. 10 is a flow chart illustrating an example of a method 1000 of video processing. The method 1000 includes, at step 1002, determining (e.g., signaling) one or more RAP picture identifiers for one or more CRR pictures. At step 1004, converting between visual media data and a bitstream based on the RAP picture identifiers. The RAP picture identifiers may be coded in a t2drap_rap_id_in_clvs_minus1 field, respectively, and may be coded in an SEI message, such as a DRAP SEI message of type 2. In one example, each RAP picture identifier may be defined by a value of the t2drap_rap_id_in_clvs_minus1 field plus 1. The RAP picture identifier of each CRR picture may be set to a value greater than 0. Each CRR picture is associated with an IRAP picture. An IRAP picture may be associated with a RAP picture identifier of 0. In one example, the RAP picture identifier of an IRAP picture may be inferred to be 0 and may not be signaled. The RAP picture identifier is different for each CRR picture associated with the same IRAP picture. This allows the RAP picture identifier to uniquely identify the CRR picture and allows the RAP picture identifier to be reused in different periods of the same video employing different IRAP pictures. The RAP picture identifier may be represented as RapPicId. The RapPicId may be used to indicate a particular CRR picture. For example, the RapPicId may indicate which CRR picture is associated with the SEI message. The RapPicId may also indicate which CRR picture is used as a reference picture for the current CRR picture.

[0165] In some examples, other syntax elements in the type 2 DRAP SEI message are signaled only if the RAP picture identifier in the type 2 DRAP SEI message is greater than 0. In addition, in some examples, the CRR picture may be represented as a type 2 DRAP picture and / or an EDRAP picture. Also, in an embodiment of the present invention, the type 2 DRAP SEI message includes an indication on whether a picture following the CRR picture in decoding order and preceding the CRR picture in output order is allowed to refer to a reference picture located before the CRR picture in decoding order for inter prediction. This indication further indicates whether the picture is allowed to refer to a reference picture if the reference picture is in the same layer as the picture. In some examples, this indication is a one-bit flag, such as a bit in the t2drap_reserved_zero_13bits field. In some examples, the bitstream is constrained such that a picture that is in the same layer as the CRR picture and that follows the CRR picture in decoding order follows in output order a picture that is in the same layer as the CRR picture and that precedes the CRR picture in decoding order.

[0166] 11 is a block diagram illustrating an example video coding system 1100 that may utilize techniques of this disclosure. As shown in FIG. 11, the video coding system 1100 may include a source device 1110 and a destination device 1120. The source device 1110 generates encoded video data, which may also be referred to as a video encoding device. The destination device 1120 may decode the encoded video data generated by the source device 1110 and may be referred to as a video decoding device.

[0167] The source device 1110 may include a video source 1112, a video encoder 1114, and an input / output (I / O) interface 1116. The video source 1112 may include a source such as a video capture device, an interface for receiving video data from a video content provider, and / or a computer graphics system for generating the video data, or a combination of these sources. The video data may include one or more pictures. The video encoder 1114 encodes the video data from the video source 1112 and generates a bitstream. The bitstream may include a sequence of bits that form a coded representation of the video data. The bitstream may include a coded picture and associated data. A coded picture is a coded representation of a picture. The associated data may include a sequence parameter set, a picture parameter set, and other syntax structures. The I / O interface 1116 may include a modulator / demodulator (modem) and / or a transmitter. The coded video data may be transmitted directly to the destination device 1120 via the I / O interface 1116 over the network 1130. The encoded video data may also be stored on a storage medium / server 1140 for access by the destination device 1120 .

[0168] The destination device 1120 may include an I / O interface 1126, a video decoder 1124, and a display device 1122. The I / O interface 1126 may include a receiver and / or a modem. The I / O interface 1126 may obtain the encoded video data from the source device 1110 or the storage medium / server 1140. The video decoder 1124 may decode the encoded video data. The display device 1122 may display the decoded video data to a user. The display device 1122 may be integrated with the destination device 1120 or may be external to the destination device 1120 that may be configured to interface with an external display device.

[0169] Video encoder 1114 and video decoder 1124 may operate in accordance with a video compression standard, such as the High Efficiency Video Coding (HEVC) standard, the Versatile Video Coding (VVC) standard, and other current and / or future standards.

[0170] 12 is a block diagram illustrating an example of a video encoder 1200, which may be the video encoder 1114 in the system 1100 shown in FIG. 11. The video encoder 1200 may be configured to perform any or all of the techniques of this disclosure. In the example of FIG. 12, the video encoder 1200 comprises multiple functional components. The techniques described in this disclosure may be shared among various components of the video encoder 1200. In some examples, a processor may be configured to perform any or all of the techniques described in this disclosure.

[0171] The functional components of the video encoder 1200 may include a division unit 1201, a prediction unit 1202, which may include a mode selection unit 1203, a motion estimation unit 1204, a motion compensation unit 1205, an intra prediction unit 1206, a residual generation unit 1207, a transform processing unit 1208, a quantization unit 1209, an inverse quantization unit 1210, an inverse transform unit 1211, a reconstruction unit 1212, a buffer 1213, and an entropy coding unit 1214.

[0172] In other examples, the video encoder 1200 may include more, fewer, or different functional components. In one example, the prediction unit 1202 may include an intra block copy (IBC) unit. The IBC unit may perform prediction in an IBC mode where at least one reference picture is the picture in which the current video block is located.

[0173] Furthermore, some components, such as the motion estimation unit 1204 and the motion compensation unit 1205, may be highly integrated, but are represented separately in the example of FIG. 12 for purposes of illustration.

[0174] The division unit 1201 may divide a picture into one or more video blocks. The video encoder 1200 and the video decoder 1300 may support a variety of video block sizes.

[0175] The mode selection unit 1203 may select one of intra or inter coding modes, for example based on the error result, and provide the resulting intra or inter coded block to the residual generation unit 1207 to generate and provide residual block data to the reconstruction unit 1212 to reconstruct the coded block for use as a reference picture. In some examples, the mode selection unit 1203 may select a combined intra and inter prediction (CIIP) mode in which prediction is based on an inter prediction signal and an intra prediction signal. The mode selection unit 1203 may select a resolution of the motion vector for the block (e.g., sub-pixel or integer pixel precision) in the case of inter prediction.

[0176] To perform inter prediction on a current video block, motion estimation unit 1204 may generate motion information for the current video block by comparing the current video block with one or more reference frames from buffer 1213. Motion compensation unit 1205 may determine a predicted video block for the current video block based on the motion information and decoded samples of pictures from buffer 1213 other than the picture associated with the current video block.

[0177] Motion estimation unit 1204 and motion compensation unit 1205 may perform different operations on the current video block depending on whether the current video block is an I slice, a P slice, or a B slice, for example.

[0178] In some examples, motion estimation unit 1204 may perform unidirectional prediction on the current video block, and motion estimation unit 1204 may search a reference picture in list 0 or list 1 for a reference video block for the current video block. Motion estimation unit 1204 may generate a reference index indicating a reference picture in list 0 or list 1 that contains the reference video block, and a motion vector indicating a spatial displacement between the current video block and the reference video block. Motion estimation unit 1204 may output the reference index, prediction direction indicator, and motion vector as motion information for the current video block. Motion compensation unit 1205 may generate a predicted video block for the current block based on the reference video block indicated by the motion information of the current video block.

[0179] In another example, motion estimation unit 1204 may perform bidirectional prediction for the current video block, and motion estimation unit 1204 may search reference pictures in list 0 for a reference video block for the current video block and may also search reference pictures in list 1 for another reference video block for the current video block. Motion estimation unit 1204 may generate reference indexes indicating reference pictures in list 0 and list 1 that contain the reference video blocks, and motion vectors indicating spatial displacements between the reference video blocks and the current video block. Motion estimation unit 1204 may output the reference index and the motion vector of the current video block as motion information of the current video block. Motion compensation unit 1205 may generate a predicted video block of the current video block based on the reference video block indicated by the motion information of the current video block.

[0180] In some examples, motion estimation unit 1204 may output a full set of motion information for a decoder's decoding process. In some examples, motion estimation unit 1204 may not output a full set of motion information for the current picture. Rather, motion estimation unit 1204 may signal motion information of the current video block by reference to motion information of another video block. For example, motion estimation unit 1204 may determine that the motion information of the current video block is sufficiently similar to the motion information of a neighboring video block.

[0181] In one example, motion estimation unit 1204 may indicate in a syntax structure associated with the current video block a value that indicates to video decoder 1300 of FIG. 13 that the current video block has the same motion information as another video block.

[0182] In another example, motion estimation unit 1204 may identify another video block and a motion vector differential (MVD) in a syntax structure associated with the current video block. The motion vector differential indicates a difference between the motion vector of the current video block and the motion vector of the indicated video block. Video decoder 1300 may use the motion vector of the indicated video block and the motion vector differential to determine the motion vector of the current video block.

[0183] As mentioned above, the video encoder 1200 may predictively signal motion vectors. Two examples of predictive signaling techniques that may be implemented by the video encoder 1200 include advanced motion vector prediction (AMVP) and merge mode signaling.

[0184] The intra prediction unit 1206 may perform intra prediction on the current video block. If the intra prediction unit 1206 performs intra prediction on the current video block, the intra prediction unit 1206 may generate predictive data for the current video block based on decoded samples of other video blocks in the same picture. The predictive data for the current video block may include a predicted video block and various syntax elements.

[0185] Residual generation unit 1207 may generate residual data for the current video block by subtracting the predicted video block of the current video block from the current video block. The residual data for the current video block may include residual video blocks that correspond to different sample components of the samples in the current video block.

[0186] In other examples, for example, in skip mode, there may be no residual data for the current video block, and residual generation unit 1207 may not perform the subtraction operation.

[0187] Transform processing unit 1208 may generate one or more transform coefficient image blocks for the current video block by applying one or more transforms to a residual video block associated with the current video block.

[0188] After the transform processing unit 1208 generates the transform coefficient image block associated with the current video block, the quantization unit 1209 may quantize the transform coefficient image block associated with the current video block based on one or more quantization parameter (QP) values ​​associated with the current video block.

[0189] Inverse quantization unit 1210 and inverse transform unit 1211 may apply inverse quantization and inverse transform, respectively, to the transform coefficient image block to reconstruct a residual video block from the transform coefficient image block. Reconstruction unit 1212 may add the reconstructed residual video block to corresponding samples from one or more predicted video blocks generated by prediction unit 1202 to generate a reconstructed video block associated with the current block for storing in buffer 1213.

[0190] After reconstruction unit 1212 reconstructs the video block, a loop filtering operation may be performed to reduce video blocking artifacts in the video block.

[0191] Entropy encoding unit 1214 may receive data from other functional components of video encoder 1200. Once entropy encoding unit 1214 receives the data, entropy encoding unit 1214 may perform one or more entropy encoding operations to generate entropy encoded data, and output a bitstream including the entropy encoded data.

[0192] FIG. 13 is a block diagram illustrating an example of a video decoder 1300, which may be the video decoder 1124 in the system 1100 shown in FIG.

[0193] Video decoder 1300 may be configured to perform any or all of the techniques of this disclosure. In the example of FIG. 13, video decoder 1300 comprises multiple functional modules. Techniques described in this disclosure may be shared among various components of video decoder 1300. In some examples, a processor may be configured to perform any or all of the techniques described in this disclosure.

[0194] 13, the video decoder 1300 includes an entropy decoding unit 1301, a motion compensation unit 1302, an intra prediction unit 1303, an inverse quantization unit 1304, an inverse transform unit 1305, a reconstruction unit 1306, and a buffer 1307. The video decoder 1300, in some examples, may perform a decoding path that is approximately the reverse of the encoding path described with respect to the video encoder 1200 (FIG. 12).

[0195] The entropy decoding unit 1301 may retrieve an encoded bitstream. The encoded bitstream may include entropy coded video data (e.g., coded blocks of video data). The entropy decoding unit 1301 may decode the entropy coded video data, and from the entropy decoded video data, the motion compensation unit 1302 may determine motion information including motion vectors, motion vector precision, reference picture list index, and other motion information. The motion compensation unit 1302 may determine such information, for example, by performing AMVP and merge mode.

[0196] The motion compensation unit 1302 may generate motion compensated blocks, possibly performing the interpolation based on an interpolation filter. An identifier for the interpolation filter used with sub-pixel accuracy may be included in the syntax element.

[0197] Motion compensation unit 1302 may calculate interpolated values ​​for sub-integer pixels of the reference block using an interpolation filter as used by video encoder 1200 during encoding of the video block. Motion compensation unit 1302 may determine the interpolation filter used by video encoder 1200 according to received syntax information and generate a predictive block using the interpolation filter.

[0198] The motion compensation unit 1302 may use some of the following information to decode the encoded video sequence: syntax information to determine the size of blocks used to code frames and / or slices of the encoded video sequence, partitioning information describing how each macroblock of a picture of the encoded video sequence is partitioned, a mode indicating how each partition is coded, one or more reference frames (and reference frame lists) for each inter-coded block, and other information to decode the encoded video sequence.

[0199] An intra prediction unit 1303 may form a prediction block from spatially neighboring blocks, e.g., using an intra prediction mode received in the bitstream. An inverse quantization unit 1304 inverse quantizes, i.e., dequantizes, the quantized video block coefficients provided to the bitstream and decoded by the entropy decoding unit 1301. An inverse transform unit 1305 applies an inverse transform.

[0200] The reconstruction unit 1306 may sum the residual block with a corresponding prediction block generated by the motion compensation unit 1302 or the intra prediction unit 1303 to form a decoded block. If desired, a deblocking filter may be applied to filter the decoded block to remove blockiness artifacts. The decoded video block is stored in a buffer 1307, which provides reference blocks for subsequent motion compensation / intra prediction and generates a decoded video for display on a display device.

[0201] FIG. 14 is a circuit diagram of an exemplary encoder 1400. The encoder 1400 is suitable for implementing the technique of VVC. The encoder 1400 includes three in-loop filters, namely, a deblocking filter (DF) 1402, a sample adaptive offset (SAO) 1404, and an adaptive loop filter (ALF) 1406. Unlike the DF 1402, which uses a predefined filter, the SAO 1404 and the ALF 1406 utilize the original samples of the current picture to add an offset, together with coded side information signaling the offset and filter coefficients, and also apply a finite impulse response (FIR) filter to reduce the mean square error between the original samples and the reconstructed samples, respectively. The ALF 1406 is located at the last processing stage of each picture and can be considered as a tool that tries to capture and correct artifacts generated in the previous stage.

[0202] The encoder 1400 further includes an intra prediction component 1408 configured to receive an input video, and a motion estimation / motion compensation (ME / MC) component 1410. The intra prediction component 1408 is configured to perform intra prediction, and the ME / MC component 1410 is configured to perform inter prediction using a reference picture obtained from a reference picture buffer 1412. Residual blocks from the inter prediction or intra prediction are provided to a transform (T) component 1414 and a quantization (Q) component 1416 to generate quantized residual transform coefficients, which are provided to an entropy coding component 1418. The entropy coding component 1418 entropy codes the prediction results and the quantized transform coefficients and transmits them towards a video decoder (not shown). Quantized components output from the quantization component 1416 may be provided to an inverse quantization (IQ) component 1420, an inverse transform component 1422, and a reconstruction (REC) component 1424. The REC component 1424 can output pictures to the DF 1402, the SAO 1404, and the ALF 1406, and can filter these pictures before being stored in the reference picture buffer 1412.

[0203] Next, some suitable solutions are listed by way of examples.

[0204] The following solutions provide examples of the techniques considered herein.

[0205] 1. A visual media processing method (e.g., method 1000 shown in FIG. 10) includes performing a conversion (1004) between a video including a picture and a bitstream of the video, wherein the picture is coded in the bitstream as a dependent random access point (DRAP) picture, the bitstream conforming to a format rule, the format rule specifying whether a supplemental enhancement information (SEI) message includes a syntax element indicating whether one or more pictures of the same layer as the DRAP picture that follow the DRAP picture in decoding order and precede the DRAP picture in output order reference pictures of the same layer for inter prediction, and the picture is prior to the DRAP in decoding order.

[0206] 2. The method according to solution 1, wherein the SEI message is a DRAP indication SEI message.

[0207] 3. The method according to solution 1, wherein the SEI message is different from the DRAP indication SEI message included in the bitstream.

[0208] 4. A method according to any one of Solutions 2 to 3, wherein the format rules specify that the presence of an SEI message indicates that one or more pictures of the same layer as the DRAP picture that follow the DRAP picture in decoding order and precede the DRAP picture in output order are allowed to reference pictures of the same layer for inter prediction, and the pictures are earlier than the DRAP picture in decoding order.

[0209] 5. A method according to any of Solutions 2 to 3, wherein the format rules specify that the presence of an SEI message indicates that one or more pictures of the same layer as the DRAP picture that follow the DRAP picture in decoding order and precede the DRAP picture in output order are not permitted to reference pictures of the same layer for inter prediction, and the pictures are earlier than the DRAP picture in decoding order.

[0210] 6. The method according to any one of solutions 1 to 5, wherein the syntax element comprises a one-bit flag.

[0211] The following solutions represent exemplary implementations of the techniques discussed in the previous section.

[0212] 7. A method of video processing comprising performing a conversion between video including one or more pictures and a bitstream of the video, the bitstream including a type 2 dependent random access point (DRAP) picture, the bitstream conforming to a format rule, the format rule specifying that the bitstream includes a specific type of dependent random access point (DRAP) indication syntax message for indicating whether a picture in a layer that follows the type 2 DRAP picture in decoding order and precedes the type 2 DRAP picture in output order is allowed to reference a picture in a layer that is before the type 2 DRAP picture in decoding order for inter prediction.

[0213] 8. The method according to solution 7, wherein the particular type of the DRAP instruction syntax message corresponds to a DRAP instruction syntax message of type 2.

[0214] 9. The method according to solution 7, wherein the particular type of the DRAP instruction syntax message corresponds to the DRAP instruction syntax message.

[0215] 10. The method according to any one of solutions 7 to 9, wherein the syntax element comprises a one-bit flag.

[0216] The following solutions represent exemplary implementations of the techniques discussed in the previous section.

[0217] 11. A method of video processing includes performing a conversion between video and a bitstream of video, the bitstream conforming to format rules that specify whether and how a Cross Random Access Point Reference (CRR) is signaled in a file format that stores the bitstream.

[0218] 12. The method of solution 11, wherein the format rule defines a sample group that indicates a CRR.

[0219] 13. The method according to solution 11, wherein the format rule defines that the Dependent Random Access Point (DRAP) sample group includes a CRR.

[0220] 14. The method according to solution 13, wherein the DRAP sample group for signaling a CRR includes a version field or a grouping_type_parameter field for signaling a CRR.

[0221] The following solutions represent exemplary implementations of the techniques discussed in the previous section.

[0222] 15. A method of video processing comprising performing a conversion between video and a video bitstream, the bitstream conforming to a format rule specifying that if the bitstream contains a dependent random access point (DRAP) picture, a field is included in a DRAP sample entry field indicating the number of random access point (RAP) samples requested for random access from members of the DRAP sample group.

[0223] 16. The method of solution 15, wherein the format rules further specify including another field indicating the RAP identifiers of members of the DRAP sample group.

[0224] The following solutions represent exemplary implementations of the techniques discussed in the previous section.

[0225] 17. The method according to any one of Solutions 1 to 16, wherein a dependent random access point (DRAP) sample is a sample that allows all samples to be correctly decoded in both decoding order and output order if the closest initial sample preceding the DRAP sample can be used for reference.

[0226] 18. The method according to any one of Solutions 1 to 17, further comprising storing the bitstream in a file that complies with the file format.

[0227] 19. A method according to any one of solutions 1 to 17, wherein the bitstream is read from a file conforming to a file format.

[0228] 20. The method according to any one of solutions 18 to 19, wherein the file format is the International Organization for Standardization Base Media File Format (ISOBMFF).

[0229] 21. A video decoding device comprising a processor configured to implement a method according to one or more of solutions 1 to 20.

[0230] 22. A video encoding device comprising a processor configured to implement a method according to one or more of solutions 1 to 20.

[0231] 23. A computer program product having computer code stored thereon, the code causing the processor to implement a method according to any one of solutions 1 to 20 when executed by the processor.

[0232] 24. A computer-readable medium carrying a bitstream compliant with a bitstream format generated according to any of solutions 1 to 20.

[0233] 25. A method comprising generating a bitstream according to the method of any one of solutions 1 to 20 and writing the bitstream to a computer-readable medium.

[0234] 26. A method, apparatus or system as described herein.

[0235] In the solutions described herein, an encoder may comply with the format rules by generating a coded representation according to the format rules. In the solutions described herein, a decoder may use the format rules to parse syntax elements in the coded representation with knowledge of the presence or absence of the syntax elements according to the format rules to generate decoded video.

[0236] In this specification, the term "video processing" may refer to video encoding, video decoding, video compression, or video decompression. For example, a video compression algorithm may be applied during conversion from a pixel representation of a video to a corresponding bitstream representation, or vice versa. The bitstream representation of a current video block may correspond to bits spread to the same or different locations in the bitstream, for example, as specified by the syntax. For example, one macroblock may be coded in terms of a transformed and coded error residual value, and coded using bits in a header and other fields in the bitstream. Furthermore, during conversion, the decoder may parse the bitstream with the knowledge that some fields may or may not be present based on the determination, as described in the above solution. Similarly, the encoder may determine whether a particular syntax field should or should not be included in the coded representation and generate the coded representation accordingly by including or excluding the syntax field in the coded representation.

[0237] Implementations of the solutions, examples, embodiments, modules, and functional operations disclosed herein, including the structures disclosed herein and their structural equivalents, may be implemented in digital electronic circuitry, or computer software, firmware, or hardware, or in one or more combinations thereof. The disclosed and other embodiments may be implemented as one or more computer program products, i.e., one or more modules of computer program instructions encoded on a computer-readable medium for implementation by or for controlling the operation of a data processing apparatus. The computer-readable medium may be a machine-readable storage device, a machine-readable storage substrate, a memory device, a composition of matter that provides a machine-readable propagated signal, or one or more combinations thereof. The term "data processing apparatus" includes all apparatus, devices, and machines for processing data, including, for example, a programmable processor, a computer, or multiple processors or computers. In addition to hardware, the apparatus may include code that creates an environment for the execution of the computer program, such as code that constitutes a processor firmware, a protocol stack, a database management system, an operating system, or one or more combinations thereof. A propagated signal is an artificially generated signal, for example a machine-generated electrical, optical, or electromagnetic signal, that is generated to encode information for transmission to an appropriate receiving device.

[0238] A computer program (also called a program, software, software application, script, or code) can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program does not necessarily correspond to a file in a file system. A program may be recorded as part of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), may be stored in a single file dedicated to the program, or may be stored in multiple coordinating files (e.g., files that store one or more modules, subprograms, or code portions). A computer program can be deployed to run on one computer, or it can be deployed to run on multiple computers located at one site or distributed across multiple sites and interconnected by a communication network.

[0239] The processes and logic flows described herein may be performed by one or more programmable processors executing one or more computer programs to perform functions by operating on input data and generating output. The processes and logic flows may also be performed by, and an apparatus may be implemented as, special purpose logic circuitry, such as a Field Programmable Gate Array (FPGA) or an Application Specific Integrated Circuit (ASIC).

[0240] Processors suitable for executing computer programs include, for example, both general purpose and special purpose microprocessors, as well as any one or more processors of any kind of digital computer. Generally, a processor receives instructions and data from a read-only memory or a random access memory or both. The essential elements of a computer are a processor for performing instructions and one or more storage devices for storing instructions and data. Generally, a computer may include one or more mass storage devices, such as magnetic, magneto-optical, or optical disks, for storing data, or may be operatively coupled to receive data from or transfer data to these mass storage devices. However, a computer need not have such devices. Computer-readable media suitable for storing computer program instructions and data include all forms of non-volatile memory, media, and memory devices, including, for example, erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), flash storage devices, magnetic disks, such as internal hard disks or removable disks, magneto-optical disks, and semiconductor storage devices such as compact disk read-only memory (CD-ROM) and digital versatile disk read-only memory (DVD-ROM) disks. The processor and the memory may be supplemented by, or incorporated in, special purpose logic circuitry.

[0241] Although this patent specification includes many features, these should not be construed as limiting the scope of any subject matter or the scope of the claims, but rather as descriptions of features that may be specific to particular embodiments of a particular technology. Certain features described in this patent document in the context of separate embodiments may be implemented in combination in one example. Conversely, various features described in the context of one example may be implemented in multiple embodiments separately or in any suitable subcombination. Furthermore, although features may be described above as acting in a particular combination and initially claimed as such, one or more features from a claimed combination may, in some cases, be extracted from the combination, and the claimed combination may be directed to a subcombination or a variation of the subcombination.

[0242] Similarly, although operations are shown in a particular order in the figures, this should not be understood as requiring that such operations be performed in the particular order or sequential order shown, or that all of the operations shown be performed, to achieve desired results, nor should the separation of various system components in the embodiments described in this patent specification be understood as requiring such separation in all embodiments.

[0243] Only some implementations and examples have been described; other embodiments, extensions and variations are possible based on the content described and illustrated in this patent specification.

[0244] A first component is directly coupled to a second component when there are no intervening components, other than lines, traces, or another medium, between the first and second components. A first module is indirectly coupled to a second module when there are intervening components, other than lines, traces, or other medium, between the first and second modules. The term "coupled" and variations thereof include both direct and indirect coupling. Use of the term "about" means a range that includes ±10% of the subsequent number, unless otherwise specified.

[0245] Although several examples have been provided in this disclosure, it should be understood that the disclosed systems and methods may be embodied in many other specific forms without departing from the spirit or scope of the disclosure. The examples should be considered as illustrative and not restrictive, and the invention should not be limited to the details set forth herein. For example, various elements or components may be combined or integrated in another system, or certain features may be omitted or not implemented.

[0246] Additionally, the techniques, systems, subsystems, and methods described and illustrated in various examples, disjunctively or disjunctively, may be combined or integrated with other systems, modules, techniques, or methods without departing from the scope of the disclosure. Other items illustrated or described as being coupled may be directly connected, indirectly coupled, or may communicate electrically, mechanically, or otherwise, through some interface, device, or intermediate module. Other examples of modifications, substitutions, and alterations may be ascertained by those skilled in the art and may be made without departing from the spirit and scope disclosed herein.

Claims

1. 1. A method for processing video data, comprising the steps of: determining one or more random access point (RAP) picture identifiers for one or more cross RAP reference (CRR) pictures, each of the CRR pictures being associated with one intra random access point (IRAP) picture, the IRAP pictures being associated with a RAP picture identifier of 0; converting between visual media data and a bitstream based on the one or more RAP picture identifiers; having the one or more RAP picture identifiers are different for each of the CRR pictures associated with the same IRAP picture; method.

2. 2. The method of claim 1 , wherein the one or more RAP picture identifiers are each coded with a field, the field indicating a value of a picture identifier minus one, the picture identifier corresponding to a CRR picture of a coded layered video sequence.

3. 3. The method of claim 1, wherein the one or more RAP picture identifiers are each included in a dependent random access point (DRAP) supplemental enhancement information (SEI) message of a second type rather than in a DRAP SEI message of a first type, a DRAP picture of a first type corresponding to the DRAP SEI message of the first type is coded with reference to an IRAP picture, a DRAP picture of a second type corresponding to the DRAP SEI message of the second type is coded with reference to an IRAP picture, and further wherein reference to one or more other DRAP pictures is allowed.

4. The method of claim 2 , wherein the one or more RAP picture identifiers are each defined by a value equal to the value of the field plus one.

5. The method of claim 1 , wherein the one or more RAP picture identifiers for each of the CRR pictures are set to a value greater than 0.

6. The method of claim 1 , wherein a RAP picture identifier of the IRAP picture is inferred to be 0 and is not signaled.

7. The method of claim 1 , wherein the one or more RAP picture identifiers are represented as RapPicIds.

8. The method of claim 1, wherein other syntax elements in a DRAP SEI message of a second type are signaled only if a RAP picture identifier in the DRAP SEI message of the second type is greater than 0.

9. The method according to claim 1 , wherein the CRR picture is represented as an Enhanced Dependent Random Access Point (EDRAP) picture.

10. The method of claim 1 , wherein the converting comprises generating the bitstream according to the visual media data.

11. The method of claim 1 , wherein the converting comprises parsing the bitstream to obtain the visual media data.

12. 1. An apparatus for processing video data, comprising a processor and a non-transitory memory having instructions, comprising: The instructions, when executed by the processor, cause the processor to: determining one or more Random Access Point (RAP) picture identifiers for one or more Cross RAP Reference (CRR) pictures, each of the CRR pictures being associated with one Intra Random Access Point (IRAP) picture, the IRAP pictures being associated with a RAP picture identifier of 0; performing a conversion between visual media data and a bitstream based on the one or more RAP picture identifiers; The one or more RAP picture identifiers are different for each of the CRR pictures associated with a same IRAP picture.

13. A non-transitory computer-readable storage medium having instructions stored thereon, comprising: The instructions cause a processor to: determining one or more Random Access Point (RAP) picture identifiers for one or more Cross RAP Reference (CRR) pictures, each of the CRR pictures being associated with one Intra Random Access Point (IRAP) picture, the IRAP pictures being associated with a RAP picture identifier of 0; performing a conversion between visual media data and a bitstream based on the one or more RAP picture identifiers; The one or more RAP picture identifiers are different for each of the CRR pictures associated with a same IRAP picture.

Citation Information

Patent Citations

  • Subordinate random access point picture

    JP2017522766A

  • DRAP Identification and Decoding

    US20160373777A1

Cited By

  • Cross random access point signaling enhancements

    US12684129B2