Video encoder, video decoder, methods for encoding and decoding, and video data streams for implementing advanced video coding concepts - Patent Application 20070122999

By incorporating indications for dependent random access pictures and managing coded picture buffers, the solution enhances parallel processing and buffer management in video codecs, addressing inefficiencies in existing codecs and improving video streaming performance.

JP7819154B2Active Publication Date: 2026-02-24DOLBY VIDEO COMPRESSION LLC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2023100607
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2020-05-22
Filing Date
2023-06-20
Publication Date
2026-02-24
Estimated Expiration
2041-05-21

AI Technical Summary

Technical Problem

Existing video codecs like HEVC do not efficiently support parallel processing capabilities for video encoding and decoding, particularly in handling dependencies between pictures and buffer management, which can impact efficiency and flexibility in video streaming.

Method used

The proposed solution involves generating video data streams that include indications for outputting preceding dependent random access pictures, managing coded picture buffer delays, and using scalable non-nested and nested supplemental enhancement information messages to enhance parallel processing and buffer management, allowing for more efficient video encoding and decoding.

Benefits of technology

This approach improves the efficiency of video encoding and decoding by enabling better parallel processing and buffer management, enhancing the flexibility and performance of video streaming systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000090_0000
    Figure 00000090_0000
  • Figure 00000090_0001
    Figure 00000090_0001
  • Figure 00000091_0000
    Figure 00000091_0000
Patent Text Reader

Abstract

To provide a video encoder, a video decoder, methods for encoding and decoding for achieving improved concepts for video encoding and video decoding, and a video data stream for achieving advanced video encoding concepts.SOLUTION: An apparatus (200) generating an output video data stream from an input video data stream having a video encoded thereinto determines whether a picture of a video preceding a dependent random access picture shall be output or not, and determines a first variable (a NoOutputBeforeDrapFlag) indicating whether the picture of the video that precedes the dependent random access picture shall be output or not.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to video encoding and video decoding, and in particular to a video encoder, a video decoder, a method for encoding and decoding, and a video data stream for implementing advanced video encoding concepts. [Background technology]

[0002] H.265 / HEVC (HEVC = High Efficiency Video Coding) is a video codec that already provides tools to enhance or even enable parallel processing in the encoder and / or decoder. For example, HEVC supports the subdivision of a picture into an array of tiles that are coded independently of each other. Another concept supported by HEVC relates to WPP, according to which CTU rows or lines of a picture may be processed in parallel, e.g., striped, from left to right, provided that some minimum CTU offset is respected in the processing of consecutive CTU lines (CTU = coding tree unit). However, it would be preferable to have a video codec at hand that supports parallel processing capabilities of a video encoder and / or video decoder even more efficiently.

[0003] In the following, we describe the state-of-the-art implementation of VCL partitioning (VCL = video coding layer).

[0004] Generally, in video coding, the coding process of picture samples requires smaller partitions, where the samples are divided into several rectangular regions for joint processing such as prediction or transform coding. Therefore, a picture is divided into blocks of a certain size that remains constant during the coding of a video sequence. In the H.264 / AVC standard, fixed-size blocks of 16x16 samples, so-called macroblocks, are used (AVC = Advanced Video Coding).

[0005] In the state-of-the-art HEVC standard (see [1]), there are coding tree blocks (CTBs) or coding tree units (CTUs) with a maximum size of 64x64 samples. In further descriptions of HEVC, the more general term CTU will be used for such kind of blocks.

[0006] The CTUs are processed in raster scan order, starting with the top left CTU and processing the CTUs in the picture linearly to the bottom right CTU.

[0007] The coded CTU data is organized into a kind of container called a slice. Originally, in conventional video coding standards, a slice refers to a segment of a picture that contains one or more consecutive CTUs. Slices are used to segment coded data. From another perspective, a complete picture can also be defined as one large segment, and therefore, historically, the term slice still applies. In addition to coded picture samples, slices also contain additional information related to the coding process of the slice itself, which is located in a so-called slice header.

[0008] According to the state of the art, the VCL (Video Coding Layer) also includes techniques for fragmentation and spatial partitioning. Such partitioning can be applied to video coding for various reasons, such as handling load balancing in parallelization, CTU size matching in network transmission, error mitigation, etc.

[0009] Other examples relate to RoI (RoI = Region of Interest) coding, where there is, for example, a region in the center of a picture that the viewer can select, for example, by a zoom-in operation (decoding only the RoI), or gradual decoder refresh (GDR), where intra data (typically contained in one frame of a video sequence) is temporally distributed over several consecutive frames, for example as a sequence of intra blocks that swipes across the picture plane and resets the temporal prediction chain locally in the same way that an intra picture does for the entire picture plane. In the latter case, there are two regions in each picture: one that has been recently reset and one that may be affected by errors and error propagation.

[0010] Reference picture resampling (RPR) is a technique used in video coding to adapt the quality / rate of video by using coarser quantization parameters as well as potentially adapting the resolution of each transmitted picture. Thus, the reference used for inter-prediction may have a different size than the picture currently being predicted for encoding. Essentially, RPR requires a resampling process within the prediction loop, e.g., upsampling and downsampling filters, to be defined.

[0011] Depending on the feature, RPR can result in a change in the coded picture size at any picture, or can be restricted to occur only at a few specific pictures, for example only at specific positions bounded by segment boundary adaptive HTTP streaming. Summary of the Invention [Problem to be solved by the invention]

[0012] It is an object of the present invention to provide an improved concept for video encoding and video decoding. [Means for solving the problem]

[0013] The object of the present invention is solved by the subject matter of the independent claims.

[0014] According to a first aspect of the present invention, there is provided an apparatus for receiving an input video data stream, the input video data stream having video encoded therein, the apparatus being configured to generate an output video data stream from the input video data stream, and further configured to determine whether a picture of the video preceding a dependent random access picture should be output.

[0015] Additionally, a video data stream is provided, in which video is encoded, the video data stream including an indication of whether a picture of the video preceding the dependent random access picture should be output.

[0016] Further provided is a video encoder configured to encode the video into a video data stream, and further configured to generate the video data stream such that the video data stream includes an indication of whether a picture of the video preceding the dependent random access picture should be output.

[0017] Further provided is a video decoder for receiving a video data stream having video stored therein, the video decoder configured to decode the video from the video data stream, the video decoder configured to decode the video in response to an indication of whether a picture of the video preceding the dependent random access picture should be output.

[0018] There is also provided a method for receiving an input video data stream, the input video data stream having video encoded therein, the method including generating an output video data stream from the input video data stream, the method further including determining whether a picture of the video preceding a dependent random access picture should be output.

[0019] Further provided is a method for encoding video into a video data stream, the method comprising generating the video data stream such that the video data stream includes an indication of whether a picture of the video preceding a dependent random access picture should be output.

[0020] Further provided is a method for receiving a video data stream containing video, the method comprising the step of decoding video from the video data stream, the step of decoding video being in response to an indication of whether a picture of the video preceding the dependent random access picture should be output.

[0021] Furthermore, a computer program is provided for performing one of the above methods when run on a computer or signal processor.

[0022] According to a second aspect of the present invention, there is provided an apparatus for receiving one or more input video data streams, wherein an input video is encoded into each of the one or more input video data streams. The apparatus is configured to generate an output video data stream from the one or more input video data streams, wherein the output video data stream encodes the output video, and the apparatus is configured to generate the output video data stream such that the output video is the input video encoded in one of the one or more input video data streams or such that the output video depends on at least one of the input video data streams. The apparatus is further configured to determine an access unit removal time of a current picture of a plurality of pictures of the output video from a coded picture buffer. The apparatus is configured to determine whether to use coded picture buffer delay offset information to determine the access unit removal time of the current picture from the coded picture buffer.

[0023] Additionally, a video data stream is provided, in which the video is encoded, the video data stream including encoded picture buffer delay offset information.

[0024] Further provided is a video decoder for receiving a video data stream stored in a video buffer, the video decoder configured to decode video from the video data stream, the video decoder further configured to decode the video as a function of an access unit removal time of a current picture of a plurality of pictures of the video from a coded picture buffer, and the video decoder configured to decode the video as a function of an indication of whether to use coded picture buffer delay offset information to determine the access unit removal time of the current picture from the coded picture buffer.

[0025] Further provided is a method for receiving one or more input video data streams, wherein the input video is encoded into each of the one or more input video data streams. The method includes generating an output video data stream from the one or more input video data streams, wherein the output video data stream encodes the output video, and wherein generating the output video data stream is performed such that the output video is the input video encoded in one of the one or more input video data streams or such that the output video depends on at least one of the input video data streams. The method further includes determining an access unit removal time of a current picture of a plurality of pictures of the output video from a coded picture buffer. The method further includes determining whether to use coded picture buffer delay offset information to determine the access unit removal time of the current picture from the coded picture buffer.

[0026] Further, according to one embodiment there is provided a method for encoding video into a video data stream, the method comprising generating the video data stream such that the video data stream includes encoded picture buffer delay offset information.

[0027] Further provided is a method for receiving a video data stream stored in a video stream, the method including decoding video from the video data stream, the decoding of the video being performed in response to an access unit removal time from a coded picture buffer of a current picture of a plurality of pictures of the video, and the decoding of the video being performed in response to an indication of whether to use coded picture buffer delay offset information to determine the access unit removal time of the current picture from the coded picture buffer.

[0028] Furthermore, a computer program is provided for performing one of the above methods when run on a computer or signal processor.

[0029] According to a third aspect of the present invention, there is provided a video data stream, the video data stream having encoded video, the video data stream further comprising an initial coded picture buffer removal delay, the video data stream further comprising an initial coded picture buffer removal offset, and the video data stream further comprising information indicating whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods.

[0030] Further provided is a video encoder configured to encode video into a video data stream, the video encoder configured to generate the video data stream such that the video data stream includes an initial coded picture buffer removal delay, the video encoder configured to generate the video data stream such that the video data stream includes an initial coded picture buffer removal offset, and the video encoder configured to generate the video data stream such that the video data stream includes information indicating whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods.

[0031] Further provided is an apparatus for receiving two input video data streams, a first input video data stream and a second input video data stream, each of which contains encoded input video. The apparatus is configured to generate an output video data stream from the two input video data streams, the output video data stream encoding the output video, the apparatus being configured to generate the output video data stream by concatenating the first input video data stream and the second input video data stream. The apparatus is further configured to generate the output video data stream such that the output video data stream includes an initial encoded picture buffer removal delay. The apparatus is further configured to generate the output video data stream such that the output video data stream includes an initial encoded picture buffer removal offset. The apparatus is further configured to generate the output video data stream such that the output video data stream includes information indicating whether the sum of the initial encoded picture buffer removal delay and the initial encoded picture buffer removal offset is defined to be constant over two or more buffering periods.

[0032] Further provided is a video decoder for receiving a video data stream stored in a video decoder. The video decoder is configured to decode video from the video data stream. The video data stream further includes an initial coded picture buffer removal delay. The video data stream further includes an initial coded picture buffer removal offset. The video data stream further includes information indicating whether a sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods. The video decoder is further configured to decode the video in response to the information indicating whether a sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods.

[0033] Further provided is a method for encoding video into a video data stream, the method including generating the video data stream such that the video data stream includes an initial encoded picture buffer removal delay, the method further including generating the video data stream such that the video data stream includes an initial encoded picture buffer removal offset, and the method further including generating the video data stream such that the video data stream includes information indicating whether the sum of the initial encoded picture buffer removal delay and the initial encoded picture buffer removal offset is defined to be constant over two or more buffering periods.

[0034] Further provided is a method for receiving two input video data streams, a first input video data stream and a second input video data stream. Each of the two input video data streams contains encoded input video. The method includes generating an output video data stream from the two input video data streams, the output video data stream encoding the output video, and an apparatus configured to generate the output video data stream by concatenating the first input video data stream and the second input video data stream. The method further includes generating the output video data stream such that the output video data stream includes an initial encoded picture buffer removal delay. The method further includes generating the output video data stream such that the output video data stream includes an initial encoded picture buffer removal offset. The method further includes generating the output video data stream such that the output video data stream includes information indicating whether the sum of the initial encoded picture buffer removal delay and the initial encoded picture buffer removal offset is defined to be constant over two or more buffering periods.

[0035] Further provided is a method for receiving a video data stream stored in a video stream. The method includes decoding video from the video data stream. The video data stream includes an initial coded picture buffer removal delay. Furthermore, the video data stream includes an initial coded picture buffer removal offset. Furthermore, the video data stream includes information indicating whether a sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods. The method includes decoding the video in response to the information indicating whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods.

[0036] Furthermore, a computer program is provided for performing one of the above methods when run on a computer or signal processor.

[0037] According to a fourth aspect of the present invention, there is provided a video data stream, in which video is encoded. The video data stream further includes an indication indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit among a plurality of access units of one coded video sequence of the video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit. If the indication has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of the plurality of output layer sets of the access unit. If the indication has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of the plurality of output layer sets of the access unit.

[0038] Further provided is a video encoder configured to encode video into a video data stream. The video encoder is further configured to generate the video data stream such that the video data stream includes an indication indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit among a plurality of access units of one coded video sequence of the one or more coded video sequences of the video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit. If the indication has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of the plurality of output layer sets of the access unit. If the indication has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of the plurality of output layer sets of the access unit.

[0039] Further provided is an apparatus for receiving an input video data stream, the input video data stream having encoded therein video. The apparatus is configured to generate a processed video data stream from the input video data stream. The apparatus is further configured to generate the processed video data stream such that the processed video data stream includes an indication indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit among a plurality of access units of one coded video sequence of the one or more coded video sequences of the processed video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit. If the indication has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of a plurality of output layer sets of the access unit. If the indication has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of a plurality of output layer sets of the access unit.

[0040] Further provided is a video decoder for receiving a video data stream storing video. The video decoder is configured to decode video from the video data stream. The video data stream includes an indication indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit among a plurality of access units of one coded video sequence of the video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit. If the indication has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of a plurality of output layer sets of the access unit. If the indication has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of a plurality of output layer sets of the access unit.

[0041] Further provided is a method for encoding video into a video data stream, the method including generating the video data stream such that the video data stream includes an indication indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit among a plurality of access units of one coded video sequence of the video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit, if the indication has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of the plurality of output layer sets of the access unit, if the indication has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of the plurality of output layer sets of the access unit.

[0042] Further provided is a method for receiving an input video data stream, the input video data stream having encoded video. The method includes generating a processed video data stream from the input video data stream. The method further includes generating the processed video data stream such that the processed video data stream includes an indication indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit among a plurality of access units of one coded video sequence of one or more coded video sequences of the processed video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit. If the indication has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of a plurality of output layer sets of the access unit. If the indication has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of a plurality of output layer sets of the access unit.

[0043] Further provided is a method for receiving a video data stream containing video, the method including decoding the video from the video data stream, wherein the video data stream includes an indication indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit among a plurality of access units of one coded video sequence of the video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit. If the indication has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of a plurality of output layer sets of the access unit. If the indication has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of a plurality of output layer sets of the access unit.

[0044] Furthermore, a computer program is provided for performing one of the above methods when run on a computer or signal processor.

[0045] According to a fifth aspect of the present invention, there is provided a video data stream, in which video is encoded. The video data stream further comprises one or more scalable nested supplemental enhancement information messages, the one or more scalable nested supplemental enhancement information messages comprising a plurality of syntax elements, each syntax element of the one or more syntax elements being defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or part of the video data stream.

[0046] Further provided is a video encoder configured to encode video into a video data stream. Further, the video encoder is configured to generate the video data stream such that the video data stream comprises one or more scalable nested supplemental enhancement information messages. Further, the video encoder is configured to generate the video data stream such that the one or more scalable nested supplemental enhancement information messages include a plurality of syntax elements. Further, the video encoder is configured to generate the video data stream such that each syntax element of the one or more syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or of a portion of the video data stream.

[0047] Further provided is an apparatus for receiving an input video data stream, the input video data stream having video encoded therein. The apparatus is configured to generate an output video data stream from the input video data stream. The video data stream includes one or more scalable nested supplemental enhancement information messages. The one or more scalable nested supplemental enhancement information messages include a plurality of syntax elements. Each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or part of the video data stream. The apparatus is configured to process the one or more scalable nested supplemental enhancement information messages.

[0048] Further provided is a video decoder for receiving a video data stream storing video. The video decoder is configured to decode video from the video data stream. The video data stream includes one or more scalable nested supplemental enhancement information messages. The one or more scalable nested supplemental enhancement information messages include a plurality of syntax elements. Each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each scalable nested supplemental enhancement information message of the video data stream or part of the video data stream. The video decoder is configured to decode the video according to the one or more syntax elements of the plurality of syntax elements.

[0049] Further provided is a method for encoding video into a video data stream, the method including generating the video data stream such that the video data stream includes one or more scalable nested supplemental enhancement information messages. The method further includes generating the video data stream such that the one or more scalable nested supplemental enhancement information messages include a plurality of syntax elements. The method further includes generating the video data stream such that each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or part of the video data stream.

[0050] Further provided is a method for receiving an input video data stream, the input video data stream having video encoded therein. The method includes generating an output video data stream from the input video data stream. The video data stream includes one or more scalable nested supplemental enhancement information messages. The one or more scalable nested supplemental enhancement information messages include a plurality of syntax elements. Each syntax element of one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or part of the video data stream. The method includes processing the one or more scalable nested supplemental enhancement information messages.

[0051] Further provided is a method for receiving a video data stream containing video. The method includes decoding video from the video data stream. The video data stream includes one or more scalable nested supplemental enhancement information messages. The one or more scalable nested supplemental enhancement information messages include a plurality of syntax elements. Each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each scalable nested supplemental enhancement information message of the video data stream or part of the video data stream. The decoding of the video is performed in response to the one or more syntax elements of the plurality of syntax elements.

[0052] Furthermore, a computer program is provided for performing one of the above methods when run on a computer or signal processor.

[0053] Preferred embodiments are provided in the dependent claims. [Brief explanation of the drawings]

[0054] Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. [Figure 1] 1 illustrates a video encoder for encoding video into a video data stream according to one embodiment. [Figure 2] 1 illustrates an apparatus for receiving an input video data stream according to an embodiment; [Figure 3] 1 illustrates a video decoder for receiving a video data stream containing video according to one embodiment; [Figure 4] The original bitstream (shown at the top of FIG. 4) and the bitstream after dropping pictures according to one embodiment (shown at the bottom of FIG. 4) are shown. [Figure 5] 10 illustrates splicing of two bitstreams after a picture is dropped from one of the bitstreams according to one embodiment. [Figure 6] 10 illustrates splicing of two bitstreams according to another embodiment. [Figure 7] 10 illustrates two sets of HRD SEIs, a scalable nested SEI and a scalable non-nested SEI, in a two-layer bitstream according to one embodiment. [Figure 8] 1 shows a video encoder. [Figure 9] 1 shows a video decoder. [Figure 10] It shows the relationship between a reconstructed signal, such as a reconstructed picture, on the one hand, and a combination of a prediction residual signal and a prediction signal signaled in a data stream on the other hand. DETAILED DESCRIPTION OF THE INVENTION

[0055] The following description of the figures begins with the presentation of a description of an encoder and decoder of a block-based predictive codec for encoding pictures of video to form an example of an encoding framework into which embodiments of the present invention may be incorporated. Each of the encoder and decoder is described with reference to Figures 8-10. Below, a description of embodiments of the inventive concepts is presented along with an explanation of how such concepts may be incorporated into the encoder and decoder of Figures 8 and 9, respectively, although the embodiments of Figures 1-3 and described below may also be used to form encoders and decoders that do not operate according to the underlying encoding framework of the encoder and decoder of Figures 8 and 9.

[0056] FIG. 8 illustrates a video encoder, an apparatus for predictively encoding picture 12 into data stream 14, illustratively using transform-based residual coding. The apparatus or encoder is indicated using the reference numeral 10. FIG. 9 illustrates a corresponding video decoder 20, e.g., apparatus 20 configured to predictively decode picture 12′ from data stream 14 also using transform-based residual decoding, with an apostrophe used to indicate that picture 12′ reconstructed by decoder 20 deviates from picture 12 originally encoded by apparatus 10 in terms of coding loss introduced by quantization of the prediction residual signal. While FIGS. 8 and 9 illustratively use transform-based predictive residual coding, embodiments of the present application are not limited to this type of predictive residual coding. This also applies to other details described with respect to FIGS. 8 and 9, as outlined below.

[0057] The encoder 10 is configured to perform a spatial-spectral transform of the prediction residual signal and to encode the prediction residual signal thus obtained into a data stream 14. Similarly, the decoder 20 is configured to decode the prediction residual signal from the data stream 14 and to perform a spectral-spatial transform of the prediction residual signal thus obtained.

[0058] Internally, the encoder 10 may comprise a prediction residual signal former 22 that generates a prediction residual 24 to measure the deviation of a prediction signal 26 from an original signal, e.g., from picture 12. The prediction residual signal former 22 may, for example, be a subtractor that subtracts the prediction signal from the original signal, e.g., from picture 12. The encoder 10 then further comprises a transformer 28 that performs a spatial-spectral transform on the prediction residual signal 24 to obtain a spectral-domain prediction residual signal 24′, which is quantized by a quantizer 32 also included in the encoder 10. The prediction residual signal 24″ thus quantized is coded into the bitstream 14. For this purpose, the encoder 10 may optionally comprise an entropy coder 34 that entropy codes the prediction residual signal that is transformed and quantized into the data stream 14. The prediction signal 26 is generated by a prediction stage 36 of the encoder 10 based on the prediction residual signal 24″, which is coded into the data stream 14 and decodable therefrom. For this purpose, the prediction stage 36 may internally comprise, as shown in FIG. 8 , an inverse quantizer 38 that inversely quantizes the prediction residual signal 24″ to obtain a spectral-domain prediction residual signal 24″ that corresponds to the signal 24′ without quantization losses, and an inverse transformer 40 that subjects the latter prediction residual signal 24″ to an inverse transformation, e.g., a spectral-spatial transformation, to obtain a prediction residual signal 24′″ that corresponds to the original prediction residual signal 24 without quantization losses. A combiner 42 of the prediction stage 36 then recombines the prediction signal 26 and the prediction residual signal 24′″, e.g., by addition, to obtain a reconstructed signal 46, e.g., a reconstruction of the original signal 12. The reconstructed signal 46 may correspond to the signal 12′. A prediction module 44 of the prediction stage 36 then generates the prediction signal 26 based on the signal 46, e.g., by using spatial prediction, e.g., intra-picture prediction, and / or temporal prediction, e.g., inter-picture prediction.

[0059] Similarly, decoder 20 may be internally configured from components corresponding to prediction stage 36, interconnected in a manner corresponding to a prediction stage, as shown in Figure 9. In particular, entropy decoder 50 of decoder 20 may entropy decode a quantized spectral domain prediction residual signal 24" from the data stream, with inverse quantizer 52, inverse transformer 54, combiner 56, and prediction module 58 interconnected and cooperating in the manner described above with respect to the modules of prediction stage 36 to recover a reconstructed signal based on prediction residual signal 24" such that the output of combiner 56 provides a reconstructed signal, i.e., picture 12', as shown in Figure 9.

[0060] Although not specifically described above, it is readily apparent that the encoder 10 can set several coding parameters, including, for example, prediction modes, motion parameters, etc., according to several optimization schemes, such as a method for optimizing several rate- and distortion-related criteria, such as coding cost. For example, the encoder 10 and decoder 20 and corresponding modules 44, 58 can each support different prediction modes, such as intra-coding and inter-coding modes. The granularity at which the encoder and decoder switch between these prediction mode types may correspond to the subdivision of the pictures 12 and 12′, respectively, into coding segments or coding blocks. For example, in units of these coding segments, a picture may be subdivided into intra-coded blocks and inter-coded blocks. The intra-coded blocks are predicted based on the respective blocks' spatially already coded / decoded neighbors, as outlined in more detail below. Several intra-coding modes, including a directional intra-coding mode or an angular intra-coding mode, may be selected for each intra-coding segment, and the respective segments are filled according to the mode by extrapolating to the respective intra-coding segment sample values ​​of neighbors along a specific direction specific to the respective directional intra-coding mode. The intra-coding modes may also include one or more further modes, such as, for example, a DC coding mode in which the prediction of each intra-coded block assigns a DC value to all samples in the respective intra-coded segment, and / or a planar intra-coding mode in which the prediction of each block is approximated or determined to be a spatial distribution of sample values ​​described by a two-dimensional linear function over the sample positions of the respective intra-coded block with a planar driving slope and offset defined by the two-dimensional linear function based on neighboring samples. In comparison, inter-coded blocks may, for example, be predicted temporally.For inter-coded blocks, motion vectors may be signaled in the data stream, indicating the spatial displacement of portions of previously coded pictures of the video to which picture 12 belongs, and the previously coded / decoded pictures are sampled to obtain a prediction signal for each inter-coded block. This means that in addition to the residual signal coding included in data stream 14, such as entropy-coded transform coefficient levels representing the quantized spectral domain prediction residual signal 24", data stream 14 may also encode some prediction parameters of the blocks, such as coding mode parameters for assigning coding modes to various blocks, motion parameters for inter-coded segments, and optional further parameters, such as parameters for controlling and signaling the subdivision of pictures 12 and 12' into their respective segments. Decoder 20 uses these parameters to subdivide the picture in the same way as the encoder did, assign the same prediction modes to the segments, and perform the same predictions, resulting in the same prediction signal.

[0061] 10 illustrates the relationship between a reconstructed signal such as reconstructed picture 12′, on the one hand, and the combination of a prediction residual signal 24′″ and a prediction signal 26 signaled in data stream 14, on the other hand. As already mentioned above, the combination may be additive. In FIG. 10, prediction signal 26 is illustrated as a subdivision of the picture area into intra-coded blocks, exemplarily shown with hatching, and inter-coded blocks, exemplarily shown without hatching. The subdivision may be a regular subdivision of the picture area into rows and columns of square or non-square blocks, or any other subdivision, such as a multi-tree subdivision of picture 12 from a tree root block into a plurality of leaf blocks of various sizes, such as a quadtree subdivision, a mixture of which is illustrated in FIG. 10, where the picture area is first subdivided into rows and columns of tree root blocks, which are then further subdivided into one or more leaf blocks according to a recursive multi-tree subdivision.

[0062] Again, data stream 14 may have an intra-coding mode coded for intra-coded blocks 80, which assigns one of several supported intra-coding modes to each intra-coded block 80. For inter-coded blocks 82, one or more motion parameters are coded into data stream 14. Generally speaking, inter-coded blocks 82 are not limited to being temporally coded. Alternatively, inter-coded blocks 82 may be any blocks predicted from previously coded portions beyond current picture 12 itself, such as a previously coded picture of the video to which picture 12 belongs, or, if the encoder and decoder are scalable encoder and decoder, respectively, a picture of another view or hierarchically lower layer.

[0063] The prediction residual signal 24"" in Figure 10 is also shown as a subdivision of the picture domain into blocks 84. These blocks are sometimes called transform blocks to distinguish them from the coding blocks 80 and 82. In fact, Figure 10 shows that the encoder 10 and decoder 20 may use two different subdivisions of the picture 12 and the picture 12' into blocks: one subdivision into coding blocks 80 and 82, and the other subdivision into transform blocks 84. While both subdivisions may be the same, e.g., each coding block 80 and 82 may simultaneously form a transform block 84, Figure 10 also shows the case where, e.g., the subdivision into transform blocks 84 forms an extension of the subdivision into coding blocks 80, 82, so that any boundary between the two blocks 80 and 82 covers the boundary between the two blocks 84, or each block 80, 82 coincides with one of the transform blocks 84 or with a cluster of transform blocks 84. However, these partitions may also be determined or selected independently of one another, such that the transformation blocks 84 may alternatively cross the block boundaries between the blocks 80, 82. Thus, as far as the subdivision into the transformation blocks 84 is concerned, similar statements apply as those presented with regard to the subdivision into the blocks 80, 82; for example, the blocks 84 may be the result of a regular subdivision of the picture area into blocks (with or without arrangement into rows and columns), a recursive multi-tree subdivision of the picture area, or a combination thereof, or any other type of blocking. As an aside, it should be noted that the blocks 80, 82, and 84 are not limited to being quadratic, rectangular, or any other shape.

[0064] 10 further illustrates that the combination of the prediction signal 26 and the prediction residual signal 24'''' directly results in the reconstructed signal 12'. However, it should be noted that, according to alternative embodiments, multiple prediction signals 26 can be combined into the prediction residual signal 24''' into the picture 12'.

[0065] In Figure 10, the transform blocks 84 have the following meaning: The transformer 28 and the inverse transformer 54 perform transforms in units of these transform blocks 84. For example, many codecs use some kind of DST or DCT for all transform blocks 84. Some codecs allow skipping the transform for some of the transform blocks 84 so that the prediction residual signal is directly coded in the spatial domain. However, according to the embodiments described below, the encoder 10 and the decoder 20 are configured so that they support several transforms. For example, the transforms supported by the encoder 10 and the decoder 20 are: DCT-II (or DCT-III), where DCT stands for Discrete Cosine Transform o DST-IV, where DST stands for Discrete Sine Transform DCT-IV DST-VII o Identity Transformation (IT) may include:

[0066] Naturally, the transformer 28 supports all of the forward transform versions of these transforms, while the decoder 20 or inverse transformer 54 supports the corresponding backward or inverse versions of the following: Inverse DCT-II (or Inverse DCT-III) o Reverse DST-IV o Inverse DCT-IV o Reverse DST-VII o Identity Transformation (IT).

[0067] The following description provides further details on which transforms may be supported by the encoder 10 and decoder 20. Note that in any case, the set of supported transforms may include only one transform, such as one spectral-to-spatial transform or one spatial-to-spectral transform.

[0068] As already outlined above, Figures 8-10 are presented as examples in which the inventive concepts further described below can be implemented to form specific examples of encoders and decoders according to the present application. To that extent, the encoders and decoders of Figures 8 and 9 may represent possible implementations of the encoders and decoders described later in this specification. However, Figures 8 and 9 are merely examples. However, an encoder according to embodiments of the present application may use concepts outlined in more detail below to perform block-based encoding of picture 12 differently from the encoder of Figure 8, for example, in that it is a still picture encoder rather than a video encoder, does not support inter-prediction, or performs the subdivision into blocks 80 in a different way than illustrated in Figure 10. Similarly, a decoder according to an embodiment of the present application may perform block-based decoding of picture 12′ from data stream 14 using the encoding concepts further outlined below, but may differ from decoder 20 of FIG. 9, for example, in that it is a still image decoder rather than a video decoder, in that it does not support intra prediction, or in that it subdivides picture 12′ into blocks in a different way than described with respect to FIG. 10, and / or in that it does not derive prediction residuals from data stream 14 in the transform domain but, for example, in the spatial domain.

[0069] 1 shows a video encoder 100 for encoding video into a video data stream according to one embodiment, configured to generate the video data stream such that the video data stream includes an indication of whether a picture of the video preceding a dependent random access picture should be output.

[0070] 2 illustrates an apparatus 200 for receiving an input video data stream, in which video is encoded, according to one embodiment, and configured to generate an output video data stream from the input video data stream.

[0071] 3 illustrates a video decoder 300 for receiving a video data stream containing video, according to one embodiment. The video decoder 300 is configured to decode video from the video data stream. The video decoder 300 is configured to decode the video in response to an indication of whether a picture of the video preceding the dependent random access picture should be output.

[0072] Further, a system according to an embodiment is provided, comprising the apparatus of Figure 2 and the video decoder of Figure 3. The video decoder 300 of Figure 3 is configured to receive the output video data stream of the apparatus of Figure 2. The video decoder 300 of Figure 3 is configured to decode video from the output video data stream of the apparatus 200 of Figure 2.

[0073] In one embodiment, the system may further comprise, for example, the video encoder 100 of Figure 1. The apparatus 200 of Figure 2 may be configured to receive, for example, the video data stream from the video encoder 100 of Figure 1 as an input video data stream.

[0074] The (optional) intermediate device 210 of the apparatus 200 may be configured to receive, for example, a video data stream from the video encoder 100 as an input video data stream and to generate an output video data stream from the input video data stream. For example, the intermediate device may be configured to, for example, modify (header / metadata) information of the input video data stream and / or to, for example, remove pictures from the input video data stream and / or to mix / splice the input video data stream with a further second bitstream in which a second video is encoded.

[0075] The (optional) video decoder 221 may be configured, for example, to decode video from the output video data stream.

[0076] The (optional) hypothetical reference decoder 222 may be configured, for example, to determine timing information of the video depending on the output video data stream, or may be configured, for example, to determine buffer information of a buffer in which the video or a portion of the video is stored.

[0077] The system comprises a video encoder 101 of FIG. 1 and a video decoder 151 of FIG.

[0078] The video encoder 101 is configured to generate an encoded video signal. The video decoder 151 is configured to decode the encoded video signal to reconstruct video pictures.

[0079] A first aspect of the present invention is Aspects 1-38.

[0080] A second aspect of the present invention is Aspects 39-78.

[0081] A third aspect of the present invention is Aspects 79-108.

[0082] A fourth aspect of the present invention is Aspects 109-134.

[0083] A fifth aspect of the present invention is Aspects 135-188.

[0084] The first aspect of the present invention will be described in detail below.

[0085] According to a first aspect of the present invention, there is provided an apparatus 200 for receiving an input video data stream, the input video data stream having video encoded therein. The apparatus 200 is configured to generate an output video data stream from the input video data stream. Furthermore, the apparatus 200 determines whether a picture of the video preceding a dependent random access picture should be output.

[0086] According to one embodiment, the apparatus 200 may be configured to determine, for example, a first variable (eg, NoOutputBeforeDrapFlag) indicating whether a picture of the video preceding the dependent random access picture should be output or not.

[0087] In one embodiment, the apparatus 200 may be configured to generate the output video data stream such that the output video data stream may include an indication that may indicate, for example, whether a picture of the video preceding the dependent random access picture should be output.

[0088] According to one embodiment, the apparatus 200 can be configured to generate an output video data stream such that the output video data stream can include supplemental enhancement information including, for example, an indication that can indicate whether a picture of the video preceding the dependent random access picture should be output.

[0089] In one embodiment, the picture of the video preceding the dependent random access picture may be, for example, an independent random access picture. The apparatus 200 may, for example, be configured to generate an output video data stream, whereby the output video data stream may, for example, include a flag (e.g., ph_pic_output_flag) having a predetermined value (e.g., 0) in the picture header of the independent random access picture, whereby the predetermined value (e.g., 0) of the flag (e.g., ph_pic_output_flag) may, for example, for an independent random access picture that directly precedes the dependent random access picture in the video data stream, indicate that the independent random access picture should not be output.

[0090] According to one embodiment, the flag may be, for example, a first flag, and the apparatus 200 may be configured to generate, for example, the output video data stream such that the output video data stream may include, for example, a further flag in a picture parameter set of the video data stream, the further flag being, for example, capable of indicating whether the first flag (e.g., ph_pic_output_flag) is present in the picture header of the independent random access picture.

[0091] In one embodiment, the apparatus 200 may be configured to generate the output video data stream such that the output video data stream may include, for example, a supplemental enhancement information flag in the supplemental enhancement information of the output video data stream, or a picture parameter set flag in the picture parameter set of the output video data stream, or a sequence parameter set flag in the sequence parameter set of the output video data stream, or an external means flag as an indication that may indicate, for example, whether a picture of the video preceding the dependent random access picture should be output, and the value of the external means flag may be set, for example, by an external unit external to the apparatus 200.

[0092] According to one embodiment, the apparatus 200 may be configured, for example, to determine the value of a second variable (e.g., PictureOutputFlag) of a picture of the video preceding the dependent random access picture depending on a first variable (e.g., NoOutputBeforeDrapFlag), the second variable (e.g., PictureOutputFlag) may, for example, indicate for the picture whether the picture should be output or not, and the apparatus 200 may be configured, for example, to output or not output the picture depending on the second variable (e.g., PictureOutputFlag).

[0093] In one embodiment, the picture of the video preceding the dependent random access picture may be, for example, an independent random access picture. The first variable (e.g., NoOutputBeforeDrapFlag) may indicate, for example, that the independent random access picture should not be output.

[0094] According to one embodiment, the picture of the video preceding the dependent random access picture may be, for example, an independent random access picture. The apparatus 200 may be configured, for example, to set a first variable (e.g., NoOutputBeforeDrapFlag) such that the first variable (e.g., NoOutputBeforeDrapFlag) may indicate, for example, that an independent random access picture should be output.

[0095] In one embodiment, apparatus 200 may be configured to signal to video decoder 300 whether or not a picture of the video preceding the dependent random access picture should be output, for example.

[0096] Additionally, a video data stream is provided, in which video is encoded, the video data stream including an indication of whether a picture of the video preceding the dependent random access picture should be output.

[0097] According to one embodiment, the video data stream may include supplemental enhancement information, including, for example, an indication that may indicate whether a picture of the video preceding the dependent random access picture should be output or not.

[0098] In one embodiment, the picture of the video preceding the dependent random access picture may be, for example, an independent random access picture. The video data stream may, for example, include a flag (e.g., ph_pic_output_flag) having a predetermined value (e.g., 0) in the picture header of the independent random access picture, such that the predetermined value (e.g., 0) of the flag (e.g., ph_pic_output_flag) may, for example, indicate, for an independent random access picture directly preceding said independent random access picture in the video data stream, that said independent random access picture should not be output.

[0099] According to one embodiment, the flag may be, for example, a first flag, and the video data stream may include, for example, a further flag in a picture parameter set of the video data stream, and the further flag may, for example, indicate whether the first flag (e.g., ph_pic_output_flag) is present in the picture header of the independent random access picture.

[0100] In one embodiment, the video data stream may include, for example, a supplemental enhancement information flag in the supplemental enhancement information of the output video data stream, or a picture parameter set flag in the picture parameter set of the output video data stream, or a sequence parameter set flag in the sequence parameter set of the output video data stream, or an external means flag as an indication that may indicate whether a picture of the video preceding the dependent random access picture should be output, and the value of the external means flag may be set, for example, by an external unit external to the device 200.

[0101] Also provided is a video encoder 100. The video encoder 100 may be configured, for example, to encode the video into a video data stream. Further, the video encoder 100 may be configured, for example, to generate the video data stream such that the video data stream includes an indication of whether a picture of the video preceding the dependent random access picture should be output.

[0102] According to one embodiment, the video encoder 100 may be configured to generate a video data stream such that the video data stream may include supplemental enhancement information, for example, including an indication that may indicate whether a picture of the video preceding the dependent random access picture should be output.

[0103] In one embodiment, the picture of the video preceding the dependent random access picture may be, for example, an independent random access picture. Video encoder 100 may be configured to generate the video data stream such that the video data stream may include, for example, a flag (e.g., ph_pic_output_flag) having a predetermined value (e.g., 0) in the picture header of the independent random access picture, such that the predetermined value (e.g., 0) of the flag (e.g., ph_pic_output_flag) may indicate, for example, for an independent random access picture directly preceding the independent random access picture in the video data stream, that the independent random access picture should not be output;

[0104] According to one embodiment, the flag may be, for example, a first flag, and the video encoder 100 may be configured, for example, to generate the video data stream such that the video data stream may include, for example, a further flag in the picture parameter set of the video data stream, and the further flag may, for example, indicate whether the first flag (e.g., ph_pic_output_flag) is present in the picture header of the independent random access picture.

[0105] In one embodiment, video encoder 100 may be configured to generate the video data stream such that the video data stream may include, for example, a supplemental enhancement information flag in the supplemental enhancement information of the output video data stream, or a picture parameter set flag in the picture parameter set of the output video data stream, or a sequence parameter set flag in the sequence parameter set of the output video data stream, or an external means flag as an indication that may indicate, for example, whether a picture of the video preceding the dependent random access picture should be output, and the value of the external means flag may be set, for example, by an external unit external to apparatus 200.

[0106] Further provided is a video decoder 300 for receiving a video data stream containing video, the video decoder 300 being configured to decode the video from the video data stream, the video decoder 300 being configured to decode the video in response to an indication of whether a picture of the video preceding the dependent random access picture should be output.

[0107] According to one embodiment, the video decoder 300 may be configured to decode the video depending on, for example, a first variable (e.g., NoOutputBeforeDrapFlag) that indicates whether a picture of the video preceding the dependent random access picture should be output.

[0108] In one embodiment, the video data stream may include an indication that may indicate, for example, whether a picture of the video preceding the dependent random access picture should be output. The video decoder 300 may be configured to decode the video according to, for example, the indication in the video data stream.

[0109] According to one embodiment, the video data stream may include supplemental enhancement information, including, for example, an indication that may indicate whether a picture of the video preceding the dependent random access picture should be output. The video decoder 300 may be configured to decode the video in response to the supplemental enhancement information, for example.

[0110] In one embodiment, the picture of the video preceding the dependent random access picture may be, for example, an independent random access picture. The video data stream may include, for example, a flag (e.g., ph_pic_output_flag) having a predetermined value (e.g., 0) in the picture header of the independent random access picture, such that the predetermined value (e.g., 0) of the flag (e.g., ph_pic_output_flag) may indicate, for example, an independent random access picture immediately preceding the independent random access picture in the video data stream, that the independent random access picture should not be output. The video decoder 300 may be configured to decode the video, for example, in response to the flag.

[0111] According to one embodiment, the flag may be, for example, a first flag, and the video data stream may include, for example, a further flag in a picture parameter set of the video data stream, the further flag may, for example, indicate whether the first flag (e.g., ph_pic_output_flag) is present in a picture header of the independent random access picture. The video decoder 300 may be configured to decode the video, for example, depending on the further flag.

[0112] In one embodiment, the video data stream may include, for example, a supplemental enhancement information flag in the supplemental enhancement information of the output video data stream, or a picture parameter set flag in the picture parameter set of the output video data stream, or a sequence parameter set flag in the sequence parameter set of the output video data stream, or an external means flag as an indication that may indicate whether a picture of the video preceding the dependent random access picture should be output or not, and the value of the external means flag may be set, for example, by an external unit external to apparatus 200. Video decoder 300 may be configured to, for example, decode the video according to an indication in the video data stream.

[0113] According to one embodiment, the video decoder 300 may be configured, for example, to reconstruct video from a video data stream. The video decoder 300 may be configured, for example, to output or not output pictures of the video preceding the dependent random access picture depending on a first variable (e.g., NoOutputBeforeDrapFlag).

[0114] In one embodiment, video decoder 300 may be configured to determine the value of a second variable (e.g., PictureOutputFlag) of a picture of the video preceding the dependent random access picture, for example, in response to a first variable (e.g., NoOutputBeforeDrapFlag), where the second variable (e.g., PictureOutputFlag) may indicate for the picture whether or not the picture should be output, and device 200 may be configured to output or not in response to the second variable (e.g., PictureOutputFlag).

[0115] According to one embodiment, the picture of the video preceding the dependent random access picture may be, for example, an independent random access picture. The video decoder 300 may be configured to decode the video in response to, for example, a first variable (e.g., NoOutputBeforeDrapFlag) indicating that the independent random access picture should not be output.

[0116] In one embodiment, the picture of the video preceding the dependent random access picture may be, for example, an independent random access picture. The video decoder 300 may be configured to decode the video in response to, for example, a first variable (e.g., NoOutputBeforeDrapFlag) indicating that an independent random access picture should be output.

[0117] Further provided is a system comprising an apparatus 200 as described above and a video decoder 300 as described above, the video decoder 300 being configured to receive the output video data stream of the apparatus 200. Further, the video decoder 300 being configured to decode video from the output video data stream of the apparatus 200.

[0118] According to an embodiment, the system may further comprise, for example, a video encoder 100. The apparatus 200 may, for example, be configured to receive a video data stream from the video encoder 100 as an input video data stream.

[0119] In particular, a first aspect of the present invention relates to a CVS that starts with a DRAP and omits the IDR output in decoding and conformance testing.

[0120] If a bitstream contains pictures marked as DRAP (i.e., only use the previous IRAP as a reference for the DRAP from there in the bitstream), it is possible to utilize these DRAP pictures for random access functionality with lower rate overhead. However, when using several target DRAPs to randomly access the stream, it is undesirable to display any initial pictures before the target DRAP (i.e., the target DRAP's associated IRAP) at the decoder output, as the temporal distance between these pictures would lead to choppy / unstable video playback when the video is played back at the original video rate until it is played back smoothly from the target DRAP.

[0121] It is therefore desirable to omit output of pictures before the DRAP picture, and this aspect of the invention provides a means to control the decoder accordingly.

[0122] In one embodiment, an external means of setting the PicOutputFlag variable of an IRAP picture is made available to the implementation using the following: - If some external means not specified in this specification is available to set a picture's variable NoOutputBeforeDrapFlag to a value, then the picture's NoOutputBeforeDrapFlag is set equal to the value provided by the external means. […] The variable PictureOutputFlag for the current picture is derived as follows: - PictureOutputFlag is set equal to 0 if sps_video_parameter_set_id is greater than 0 and the current layer is not an output layer (i.e., nuh_layer_id is not equal to OutputLayerIdInOls[TargetOlsIdx][i] for any value of i in the range 0 to NumOutputLayersInOls[TargetOlsIdx]-1, inclusive), or if one of the following conditions is true: - The current picture is an RASL picture and the associated IRAP picture's NoOutputBeforeRecoveryFlag is equal to 1. The current picture is a GDR picture with NoOutputBeforeRecoveryFlag set to 1, or a restored picture of a GDR picture with NoOutputBeforeRecoveryFlag set to 1. - The current picture is an IRAP picture with NoOutputBeforeDrapFlag equal to 1. - Otherwise, PictureOutputFlag is set equal to ph_pic_output_flag.

[0123] In another embodiment, NoOutputBeforeDrapFlag is set by external means only for the first IRAP picture in the CVS, and is set to 0 otherwise. - If some external means not specified in this specification is available to set a picture's variable NoOutputBeforeDrapFlag to a value, then the NoOutputBeforeDrapFlag of the first picture in the CVS is set equal to the value provided by the external means. Otherwise, NoOutputBeforeDrapFlag is set to 0.

[0124] The aforementioned flag NoOutputBeforeDrapFlag can also be associated with an alternative HRD timing signaled in the bitstream in case of picture removal between an IRAP picture and a DRAP picture, for example the use of the flag UseAltCpbParamsFlag in the VVC specification.

[0125] In an alternative embodiment, the constraint is that an IRAP picture immediately preceding a DRAP picture without an intervening non-DRAP picture has the output flag ph_pic_output_flag in the picture header set to a value of 0. In this case, whenever an extractor or player uses a DRAP for random access, i.e., whenever it removes intermediate pictures between an IRAP and a DRAP from the bitstream, it is also required to verify or adjust that the respective output flags are set to 0 and the output of the IRAP is omitted.

[0126] To simplify this operation, the original bitstream needs to be prepared accordingly. More specifically, the pps_output_flag_present_flag, which determines the presence of the flag ph_pic_output_flag in the picture header, is set equal to 1 so that the picture header can be easily modified without the need to change the parameter set. That is, It is a bitstream conformance requirement that if a PPS is referenced by a picture in a CVSS AU that has an associated DRAP AU, the value of pps_output_flag_present_flag must be equal to 1.

[0127] In addition to the above options, in another embodiment, the parameter set PPS or SPS indicates whether the first AU in the bitstream, i.e., the CRA or IDR constituting the CLVS start, should be output after decoding. System integration is therefore easier, as only the parameter set needs to be adjusted, instead of requiring relatively low-level syntax such as PH to also be changed when parsing a file of the file format ISOBMFF, for example.

[0128] An example is shown below. TIFF0007819154000001.tif67134 sps_pic_in_cvss_au_no_output_flag equal to 1 specifies that pictures in CVSS AUs that reference the SPS will not be output. sps_pic_in_cvss_au_no_output_flag equal to 0 specifies that pictures in CVSS AUs that reference the SPS may or may not be output.

[0129] It is a bitstream conformance requirement that the value of sps_pic_in_cvss_au_no_output_flag should be the same for any SPS referenced by any output layer in the OLS.

[0130] In 8.1.2 The variable PictureOutputFlag for the current picture is derived as follows: - PictureOutputFlag is set equal to 0 if sps_video_parameter_set_id is greater than 0 and the current layer is not an output layer (i.e., nuh_layer_id is not equal to OutputLayerIdInOls[TargetOlsIdx][i] for any value of i in the range 0 to NumOutputLayersInOls[TargetOlsIdx]-1, inclusive), or if one of the following conditions is true: - The current picture is an RASL picture and the associated IRAP picture's NoOutputBeforeRecoveryFlag is equal to 1. The current picture is a GDR picture with NoOutputBeforeRecoveryFlag set to 1, or a restored picture of a GDR picture with NoOutputBeforeRecoveryFlag set to 1. - Otherwise, if the current AU is a CVSS AU and sps_pic_in_cvss_au_no_output_flag is equal to 1, then PictureOutputFlag is set equal to 0. - Otherwise, PictureOutputFlag is set equal to ph_pic_output_flag. NOTE - In one implementation, the decoder can output pictures that do not belong to an output layer. For example, if there is only one output layer in an AU and a picture in the output layer is unavailable, e.g., due to loss or layer down-switching, the decoder can set PictureOutputFlag to 1 for the picture with the highest value of nuh_layer_id and ph_pic_output_flag equal to 1 among all pictures in the AU available to the decoder, and set PictureOutputFlag to 0 for all other pictures in the AU available to the decoder.

[0131] In another embodiment, for example, the requirements may be defined as follows: It is a bitstream conformance requirement that if a picture belongs to an IRAP AU and the IRAP AU immediately precedes a DRAP AU, the value of ph_pic_output_flag must be equal to 0.

[0132] The second aspect of the present invention will now be described in detail.

[0133] According to a second aspect of the present invention, there is provided an apparatus 200 for receiving one or more input video data streams. The input video is encoded into each of the one or more input video data streams. The apparatus 200 is configured to generate an output video data stream from the one or more input video data streams, the output video data stream encoding the output video, the apparatus being configured to generate the output video data stream such that the output video is the input video encoded in one of the one or more input video data streams or such that the output video depends on at least one of the input video of the one or more input video data streams. Furthermore, the apparatus 200 is configured to determine an access unit removal time of a current picture of a plurality of pictures of the output video from a coded picture buffer. The apparatus 200 is configured to determine whether to use coded picture buffer delay offset information to determine the access unit removal time of the current picture from the coded picture buffer.

[0134] According to one embodiment, the apparatus 200 may be configured to, for example, drop one or more groups of pictures of an input video of a first video data stream of the one or more input video data streams to generate an output video data stream. The apparatus 200 may be configured to, for example, determine an access unit removal time of at least one of the plurality of pictures of the output video from the coded picture buffer in response to coded picture buffer delay offset information.

[0135] In one embodiment, the first video received by apparatus 200 may be, for example, a preprocessed video resulting from an original video in which one or more groups of pictures have been dropped to generate the preprocessed video. Apparatus 200 may be configured to determine an access unit removal time of at least one of the plurality of pictures of the output video from the coded picture buffer, for example, in response to coded picture buffer delay offset information.

[0136] According to one embodiment, the buffer delay offset information depends on the number of pictures of the input video that are dropped.

[0137] In one embodiment, the one or more input video data streams are two or more input video data streams, and the apparatus 200 may be configured, for example, to splice the processed video and an input video of a second video data stream of the two or more input video data streams to obtain an output video, and may be configured, for example, to encode the output video into the output video data stream.

[0138] According to an embodiment, the apparatus 200 may be configured to determine whether to use the coded picture buffer delay offset information to determine the access unit removal time of the current picture depending on, for example, the position of the current picture in the output video. Alternatively, the apparatus 200 may be configured to determine whether to set the coded picture buffer delay offset value of the coded picture buffer delay offset information to 0 to determine the access unit removal time of the current picture depending on, for example, the position of the current picture in the output video.

[0139] In one embodiment, the apparatus 200 may be configured to determine whether to use coded picture buffer delay offset information to determine the access unit removal time of the current picture, for example, depending on the position of the previous non-discardable picture preceding the current picture in the output video.

[0140] According to one embodiment, the apparatus 200 may be configured to determine whether to use the coded picture buffer delay offset information to determine the access unit removal time of the current picture, depending on, for example, whether the previous non-discardable picture preceding the current picture in the output video may be, for example, the first picture in the previous buffering period.

[0141] In one embodiment, the apparatus 200 may be configured to determine whether to use the coded picture buffer delay offset information to determine the access unit removal time of the current picture depending on, for example, the concatenation flag, where the current picture is the first picture of the input video of the second video data stream.

[0142] According to one embodiment, the apparatus 200 may be configured to determine the access unit removal time of the current picture depending on, for example, the removal time of a previous picture.

[0143] In one embodiment, the apparatus 200 may be configured to determine the access unit removal time of the current picture as a function of, for example, initial coded picture buffer removal delay information.

[0144] According to one embodiment, the apparatus 200 may be configured to update the initial coded picture buffer removal delay information in response to a clock tick, for example, to obtain temporary coded picture buffer removal delay information for determining the access unit removal time of the current picture.

[0145] According to one embodiment, when the concatenation flag is set to a first value, the apparatus 200 is configured to use the coded picture buffer delay offset information to determine the one or more removal times. When the concatenation flag is set to a second value different from the first value, the apparatus 200 is configured not to use the coded picture buffer delay offset information to determine the one or more removal times.

[0146] In one embodiment, apparatus 200 may be configured to signal to video decoder 300 whether or not to use coded picture buffer delay offset information to determine, for example, the access unit removal time of the current picture from the coded picture buffer.

[0147] According to one embodiment, the current picture may be placed at the splicing point of the output video where, for example, two input videos are spliced ​​together.

[0148] Additionally, a video data stream is provided, in which the video is encoded, the video data stream including encoded picture buffer delay offset information.

[0149] According to one embodiment, the video data stream may include, for example, a concatenation flag.

[0150] In one embodiment, the video data stream may include, for example, initial coded picture buffer removal delay information.

[0151] According to one embodiment, when the concatenation flag is set to a first value (e.g., 0), the concatenation flag indicates that the coded picture buffer delay offset information should be used to determine one or more (picture or access unit) removal times, e.g., when it is known that some pictures (e.g., RASL pictures) have been dropped. When the concatenation flag is set to a second value (e.g., 1) different from the first value, the concatenation flag indicates that the indicated offset should not be used to determine one or more (picture or access unit) removal times, e.g., regardless of offset signaling and regardless of whether e.g., RASL pictures have been dropped. If no pictures are dropped, e.g., the offset is not used.

[0152] Further provided is a video encoder 100. The video encoder 100 is configured to encode video into a video data stream. The video encoder 100 is configured to generate the video data stream such that the video data stream includes coded picture buffer delay offset information.

[0153] According to one embodiment, the video encoder 100 may be configured to generate the video data stream such that the video data stream may include, for example, a concatenation flag.

[0154] In one embodiment, the video encoder 100 may be configured to generate the video data stream such that the video data stream may include, for example, coded picture buffer delay offset information.

[0155] Also provided is a video decoder 300 that receives a video data stream that stores video. The video decoder 300 is configured to decode the video from the video data stream. The video decoder 300 is further configured to decode the video in response to an access unit removal time of a current picture of a plurality of pictures of the video from a coded picture buffer. The video decoder 300 is configured to decode the video in response to an indication of whether to use coded picture buffer delay offset information to determine the access unit removal time of the current picture from the coded picture buffer.

[0156] According to one embodiment, an access unit removal time for at least one of a plurality of pictures of a video from a coded picture buffer depends on coded picture buffer delay offset information.

[0157] In one embodiment, the video decoder 300 is configured to decode the video depending on whether or not the coded picture buffer delay offset information is used to determine the access unit removal time of the current picture depending on the position of the current picture within the video.

[0158] According to one embodiment, the video decoder 300 may be configured to decode video depending on whether, for example, the coded picture buffer delay offset value of the coded picture buffer delay offset information may be set to, for example, 0.

[0159] In one embodiment, the video decoder 300 may be configured to determine whether to use coded picture buffer delay offset information to determine the access unit removal time of the current picture, for example, depending on the position of the previous non-discardable picture preceding the current picture in the video.

[0160] According to one embodiment, the video decoder 300 may be configured to determine whether to use the coded picture buffer delay offset information to determine the access unit removal time of the current picture, depending on, for example, whether a previous non-discardable picture preceding the current picture in the video may be, for example, the first picture in a previous buffering period.

[0161] In one embodiment, the video decoder 300 may be configured to determine whether to use the coded picture buffer delay offset information to determine the access unit removal time of the current picture depending on, for example, the concatenation flag, where the current picture is the first picture of the input video of the second video data stream.

[0162] According to one embodiment, the video decoder 300 may be configured to determine the access unit removal time of the current picture depending on, for example, the removal time of a previous picture.

[0163] In one embodiment, the video decoder 300 may be configured to determine the access unit removal time of the current picture as a function of, for example, initial coded picture buffer removal delay information.

[0164] According to one embodiment, the video decoder 300 may be configured to update the initial coded picture buffer removal delay information in response to clock ticks, for example, to obtain temporary coded picture buffer removal delay information for determining the access unit removal time of the current picture.

[0165] According to one embodiment, when the concatenation flag is set to a first value, the video decoder 300 is configured to use the coded picture buffer delay offset information to determine one or more removal times. When the concatenation flag is set to a second value different from the first value, the video decoder 300 is configured to not use the coded picture buffer delay offset information to determine one or more removal times.

[0166] Further provided is a system comprising an apparatus 200 as described above and a video decoder 300 as described above, the video decoder 300 being configured to receive the output video data stream of the apparatus 200. Further, the video decoder 300 being configured to decode video from the output video data stream of the apparatus 200.

[0167] According to an embodiment, the system may further comprise, for example, a video encoder 100. The apparatus 200 may, for example, be configured to receive a video data stream from the video encoder 100 as an input video data stream.

[0168] In particular, the second aspect of the present invention is that, since prevNonDiscardable in the case of alternative timing may already contain the alternative offset (CpbDelayOffset) (if it is not a BP start), for AUs with concatenation_flag==1, CpbDelayOffset should be set to 0 in time.

[0169] When splicing of two bitstreams occurs, the derivation of the AU removal time from the CPB is done differently than in the case of unspliced ​​bitstreams. At the splicing point, the buffering period SEI message (BP SEI message; SEI = supplemental enhancement information) contains concatenationFlag equal to 1. The decoder then needs to check the two values ​​and take the larger of both: the previous non-discardable Pic (prevNonDiscardablePic) removal time + delta signaled in the BP SEI message (auCpbRemovalDelayDeltaMinus1+1), or - Preceding Pic removal time + InitCpbRemovalDelay

[0170] However, if the previous Pic with the BP SEI message was an AU for which alternative timing was used to derive the removal time (i.e., the second timing information used when a RASL picture or a picture up to a DRAP is dropped), an offset is used (CpbDelayOffset) to calculate each removal time calculated as a delta relative to the previous Pic with a buffering period, i.e., AuNominalRemovalTime[firstPicInPrevBuffPeriod]+AuCpbRemovalDelayVal-CpbDelayOffset, as shown in Figure 4.

[0171] Figure 4 shows the original bitstream (top of Figure 4) and the bitstream after dropping pictures (bottom of Figure 4). We incorporate an offset into the calculation of the removal delay after dropping an AU (lines 1, 2, and 3 in the original bitstream).

[0172] Since the removal time is calculated using a delta to the removal time of the picture called firstPicInPrevBuffPeriod, an offset is added and then some AUs are dropped, hence CpbDelayOffset is needed to take into account (compensate for) the AU drops.

[0173] Figure 5 shows the splicing of two bitstreams (at different positions), a first bitstream (center left in Figure 5) and a second bitstream (center right in Figure 5) after a picture has been dropped from the original first bitstream (center left in Figure 5).

[0174] The example of using the previous Pic removal time as the anchor instead of the previous non-discardable picture is similar and also does not require the "-3" correction factor (CpbDelayOffset).

[0175] However, in the case of splicing as shown in FIG. 5, the two derivatives do not necessarily use the removal time (firstPicInPrevBuffPeriod) of the AU associated with the BP SEI message. As explained, in the case of splicing, a delta is added to either the prevNonDiscardablePic or the immediately preceding Pic. This means that if the prevNonDiscardablePic is not the firstPicInPrevBuffPeriod, the removal time of the prevNonDiscardablePic already accounts for the AU's drop, and no AUs are dropped between the prevNonDiscardablePic and the AU for which the removal time was calculated. If we assume that the previous Pic removal time is used instead, an equidistant removal time is achieved (if prevNonDiscardablePic is used instead), as in the case where the current AU (i.e., the splicing point with the new BP SEI message) has an InitialCpbRemovalDelay that forces the current AU's removal time to be after the desired removal time. In such a case, the removal time of the current AU cannot be smaller than the time calculated using the preceding Pic removal time + InitCpbRemovalDelay, as this may lead to a buffer underrun (the AU not being in the buffer before it needs to be removed). Therefore, as part of the present invention, in this case CpbDelayOffset is not used in the calculation or is considered equal to 0.

[0176] To summarize the embodiments herein, when a RASL AU is dropped from the bitstream, or when an AU between an IRAP AU and a DRAP AU is dropped according to a check, CpbDelayOffset is used for the calculation of the AU removal time. The check to determine if CpbDelayOffset is not used or is considered equal to 0 is one of the following: prevNonDiscardablePic is not firstPicInPrevBuffPeriod The preceding Pic removal time + InitCpbRemovalDelay is used to calculate the removal of the current AU

[0177] The embodiment herein may be as follows. - If AU n is the first AU of a BP that does not initialize the HRD, the following applies: The nominal removal time of AU n from the CPB is given by: if(!concatenationFlag){ baseTime = AuNominalRemovalTime[firstPicInPrevBuffPeriod] tmpCpbRemovalDelay = AuCpbRemovalDelayVal tmpCpbDelayOffset = CpbDelayOffset }else{ baseTime1 = AuNominalRemovalTime[prevNonDiscardablePic] tmpCpbRemovalDelay1 = (auCpbRemovalDelayDeltaMinus1+1) baseTime2 = AuNominalRemovalTime[n-1] tmpCpbRemovalDelay2 = (C.10) Ceil((InitCpbRemovalDelay[Htid][ScIdx]÷90000+ AuFinalArrivalTime[n-1]-AuNominalRemovalTime[n-1])÷ClockTick) if(baseTime1+ClockTick*tmpCpbRemovalDelay1< baseTime2+ClockTick*tmpCpbRemovalDelay2){ baseTime = baseTime2 tmpCpbRemovalDelay = tmpCpbRemovalDelay2 tmpCpbDelayOffset = 0 }else{ baseTime = baseTime1 tmpCpbRemovalDelay = tmpCpbRemovalDelay1 tmpCpbDelayOffset = ((prevNonDiscardablePic = = firstPicInPrevBuffPeriod)?CpbDelayOffset:0) } } AuNominalRemovalTime[n] = baseTime+(ClockTick*tmpCpbRemovalDelay-tmpCpbDelayOffset )

[0178] Alternatively, in another embodiment shown in FIG. 6, CpbDelayOffset for calculating the AU removal time when a RASL AU is dropped from the bitstream, or the AU removal time when an AU between an IRAP AU and a DRAP AU is dropped, depending on different checks including checking concatenationFlag.

[0179] In that case, the delta in the bitstream when concatenationFlag is set to 1 must match the appropriate value as if CpbDelayOffset had been taken into account (as is evident from comparing Figures 5 and 6), since CpbDelayOffset is not considered to apply or to be 0 for that shape.

[0180] The embodiment herein may be as follows. - If AU n is the first AU of a BP that does not initialize the HRD, the following applies: The nominal removal time of AU n from the CPB is given by: if(!concatenationFlag){ baseTime = AuNominalRemovalTime[firstPicInPrevBuffPeriod] tmpCpbRemovalDelay = AuCpbRemovalDelayVal tmpCpbDelayOffset = CpbDelayOffset }else{ baseTime1 = AuNominalRemovalTime[prevNonDiscardablePic] tmpCpbRemovalDelay1 = (auCpbRemovalDelayDeltaMinus1+1) baseTime2 = AuNominalRemovalTime[n-1] tmpCpbRemovalDelay2 = (C.10) Ceil((InitCpbRemovalDelay[Htid][ScIdx]÷90000+ AuFinalArrivalTime[n-1]-AuNominalRemovalTime[n-1])÷ClockTick) if(baseTime1+ClockTick*tmpCpbRemovalDelay1< baseTime2+ClockTick*tmpCpbRemovalDelay2){ baseTime = baseTime2 tmpCpbRemovalDelay = tmpCpbRemovalDelay2 }else{ baseTime = baseTime1 tmpCpbRemovalDelay = tmpCpbRemovalDelay1 } tmpCpbDelayOffset = 0 } AuNominalRemovalTime[n] = baseTime+(ClockTick*tmpCpbRemovalDelay-tmpCpbDelayOffset

[0181] The third aspect of the present invention will now be described in detail.

[0182] According to a third aspect of the present invention, there is provided a video data stream, the video data stream having encoded video, the video data stream further comprising an initial coded picture buffer removal delay, the video data stream further comprising an initial coded picture buffer removal offset, and the video data stream further comprising information indicating whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods.

[0183] According to one embodiment, the initial coded picture buffer removal delay may indicate, for example, the time that must elapse before transmitting the first access unit to the video decoder 300 for the first access unit of a picture of the video data stream that initializes the video decoder 300.

[0184] In one embodiment, the video data stream may include a single indication that may indicate, for example, whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset may be defined as constant over, for example, two or more buffering periods.

[0185] According to one embodiment, the video data stream may include, for example, a concatenation flag as a single indication that may indicate whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset may be defined to be constant, for example, over two or more buffering periods. When the concatenation flag is equal to a first value, the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is constant over two or more buffering periods. When the concatenation flag is different from the first value, the concatenation flag does not define whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is constant over two or more buffering periods.

[0186] In one embodiment, if no single indication indicates that the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods, the video data stream may include, for example, continuously updated information regarding the initial coded picture buffer removal delay information and continuously updated information regarding the initial coded picture buffer removal offset information.

[0187] According to one embodiment, if the video data stream includes information indicating that the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods, the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset may be defined to be constant, for example, starting from a current position in the video data stream.

[0188] Also provided is a video encoder 100. The video encoder 100 is configured to encode video into a video data stream. The video encoder 100 is further configured to generate the video data stream such that the video data stream includes an initial encoded picture buffer removal delay. The video encoder 100 is further configured to generate the video data stream such that the video data stream includes an initial encoded picture buffer removal offset. The video encoder 100 is further configured to generate the video data stream such that the video data stream includes information indicating whether the sum of the initial encoded picture buffer removal delay and the initial encoded picture buffer removal offset is defined to be constant over two or more buffering periods.

[0189] According to one embodiment, the initial coded picture buffer removal delay may indicate, for example, the time that must elapse before transmitting the first access unit to the video decoder 300 for the first access unit of a picture of the video data stream that initializes the video decoder 300.

[0190] In one embodiment, video encoder 100 may be configured to generate a video data stream such that the video data stream may include a single indication that may indicate, for example, whether the sum of the initial encoded picture buffer removal delay and the initial encoded picture buffer removal offset may be defined as constant over, for example, two or more buffering periods.

[0191] According to one embodiment, the video encoder 100 may be configured to generate a video data stream such that the video data stream may comprise, for example, a concatenation flag as a single indication. The concatenation flag may indicate, for example, whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset may be defined as constant, for example, over two or more buffering periods. When the concatenation flag is equal to a first value, the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is constant over two or more buffering periods. When the concatenation flag is different from the first value, the concatenation flag does not define whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is constant over two or more buffering periods.

[0192] In one embodiment, if no single indication indicates that the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods, video encoder 100 may be configured to generate a video data stream such that the video data stream may include, for example, continuously updated information regarding the initial coded picture buffer removal delay information and continuously updated information regarding the initial coded picture buffer removal offset information.

[0193] According to one embodiment, if the video data stream includes information that can indicate, for example, that the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods, then the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant starting from the current position in the video data stream.

[0194] Further provided is an apparatus 200 for receiving two input video data streams, a first input video data stream and a second input video data stream. Each of the two input video data streams contains encoded input video. The apparatus 200 is configured to generate an output video data stream from the two input video data streams, the output video data stream encoding the output video, the apparatus being configured to generate the output video data stream by concatenating the first input video data stream and the second input video data stream. The apparatus 200 is further configured to generate the output video data stream such that the output video data stream includes an initial encoded picture buffer removal delay. The apparatus 200 is further configured to generate the output video data stream such that the output video data stream includes an initial encoded picture buffer removal offset. The apparatus 200 is further configured to generate the output video data stream such that the output video data stream includes information indicating whether the sum of the initial encoded picture buffer removal delay and the initial encoded picture buffer removal offset is defined to be constant over two or more buffering periods.

[0195] According to one embodiment, the initial coded picture buffer removal delay may indicate, for example, the time that must elapse before transmitting the first access unit to the video decoder 300 for the first access unit of a picture in the output video data stream that initializes the video decoder 300.

[0196] In one embodiment, the apparatus 200 may be configured to generate the output video data stream such that the output video data stream may include a single indication that may indicate, for example, whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset may be defined as constant over, for example, two or more buffering periods.

[0197] According to one embodiment, the apparatus 200 may be configured to generate the output video data stream such that the output video data stream may include, for example, a concatenation flag as a single indication that may indicate whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset may be defined as constant, for example, over two or more buffering periods. When the concatenation flag is equal to a first value, the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is constant over two or more buffering periods. When the concatenation flag is different from the first value, the concatenation flag does not define whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is constant over two or more buffering periods.

[0198] In one embodiment, if no single indication indicates that the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods, then the apparatus 200 is configured to generate the output video data stream such that the output video data stream includes continuously updated information regarding the initial coded picture buffer removal delay information and continuously updated information regarding the initial coded picture buffer removal offset information.

[0199] According to one embodiment, if the video data stream includes information indicating that the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods, the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant starting from the current position in the video data stream.

[0200] Also provided is a video decoder 300 that receives a video data stream storing video. The video decoder 300 is configured to decode video from the video data stream. The video data stream further includes an initial coded picture buffer removal delay. The video data stream further includes an initial coded picture buffer removal offset. The video data stream further includes information indicating whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods. The video decoder 300 is also configured to decode the video in response to the information indicating whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over multiple buffering periods.

[0201] According to one embodiment, the initial coded picture buffer removal delay may indicate, for example, the time that must elapse before transmitting the first access unit to the video decoder 300 for the first access unit of a picture in the output video data stream that initializes the video decoder 300.

[0202] In one embodiment, the video data stream may include a single indication that may indicate, for example, whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset may be defined as constant over two or more buffering periods. Video decoder 300 may be configured to decode the video in response to the single indication, for example.

[0203] According to one embodiment, the video data stream may include, for example, a concatenation flag as a single indication that may indicate, for example, whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset may be defined as constant, for example, over two or more buffering periods. When the concatenation flag is equal to a first value, the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is constant over two or more buffering periods. When the concatenation flag is different from the first value, the concatenation flag does not define whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is constant over two or more buffering periods. The video decoder 300 is configured to decode the video according to the concatenation flag.

[0204] In one embodiment, if no single indication indicates that the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods, the video data stream includes continuously updated information regarding the initial coded picture buffer removal delay information and continuously updated information regarding the initial coded picture buffer removal offset information. Video decoder 300 is configured to decode video in response to the continuously updated information regarding the initial coded picture buffer removal delay information and the continuously updated information regarding the initial coded picture buffer removal offset information.

[0205] According to one embodiment, if the video data stream includes information indicating that the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods, the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant starting from the current position in the video data stream.

[0206] Further provided is a system comprising an apparatus 200 as described above and a video decoder 300 as described above, the video decoder 300 being configured to receive the output video data stream of the apparatus 200. Further, the video decoder 300 being configured to decode video from the output video data stream of the apparatus 200.

[0207] According to one embodiment, the system may further comprise, for example, a video encoder 100 . Aspects The device 200 according to any one of items 221 to 226 may, for example, Aspects 211 to 216, the video data stream may be received as an input video data stream from the video encoder 100 according to any one of 211 to 216.

[0208] In particular, the third aspect of the present invention relates to splicing, the initial Cpb removal delay, and the initial Cpb removal offset.

[0209] Currently, this specification indicates that the sum of the initial Cpb removal delay and the initial Cpb removal offset is constant within a CVS. Similar constraints are expressed for alternative timings. The initial Cpb removal delay indicates the time that must elapse for the first AU in the bitstream to initialize the decoder before sending the first AU for decoding. The initial Cpb removal offset is a property of the bitstream that means that the earliest arrival time of an AU at the decoder is not necessarily equidistant from time 0, when the first AU arrives at the decoder. This helps determine when the first bit of an AU can arrive at the decoder earliest.

[0210] The current constraint in the VVC draft specification states that the sum of these two values ​​must be constant within a CVS. Across the entire CVS, for each pair of values ​​of i and j, the sum of nal_initial_cpb_removal_delay[i][j] and nal_initial_cpb_removal_offset[i][j] is constant, and the sum of nal_initial_alt_cpb_removal_delay[i][j] and nal_initial_alt_cpb_removal_offset[i][j] is constant.

[0211] This problem manifests itself when editing or splicing bitstreams to form a new joint bitstream. It is also desirable to be able to indicate whether this property is satisfied across CVS boundaries in the bitstream, since having different values ​​of the sum can cause buffer underruns or overflows.

[0212] Thus, in one embodiment, from a certain point in the bitstream above (e.g., a splicing point), the value constraint on the constant sum of InitCpbRemovalDelay and InitCpbRemovalDelayOffset is reset, and an indication is carried in the bitstream that the sum before and after the point in the bitstream may be different. As long as this indication is not present in the bitstream, the sum remains constant.

[0213] for example, When concatenationFlag is equal to 0, it is a bitstream conformance constraint that the sum of InitCpbRemovalDelay and InitCpbRemovalDelayOffset is constant over the buffering period.

[0214] Otherwise, the sum of InitCpbRemovalDelay and InitCpbRemovalDelayOffset does not need to be constant over the buffering period. The values ​​of InitCpbRemovalDelay and InitCpbRemovalDelayOffset are updated to take into account the arrival time.

[0215] In one embodiment, if several bitstreams are spliced ​​together, at each splicing point a concatenation flag may define, for example, whether the sum remains constant or not.

[0216] The fourth aspect of the present invention will now be described in detail.

[0217] According to a fourth aspect of the present invention, there is provided a video data stream, in which video is encoded. The video data stream further includes an indication (e.g., general_same_pic_timing_in_all_ols_flag) indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit among a plurality of access units of one coded video sequence of one or more coded video sequences of the video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit. When the indication (e.g., general_same_pic_timing_in_all_ols_flag) has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of a plurality of output layer sets of the access unit. If an indication (e.g., general_same_pic_timing_in_all_ols_flag) has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of the multiple output layer sets of the access unit.

[0218] According to one embodiment, for example, if an indication (eg, general_same_pic_timing_in_all_ols_flag) has a first value, the network abstraction layer unit does not include other supplemental enhancement information messages different from picture timing supplemental enhancement information messages.

[0219] In one embodiment, for example, if an indication (eg, general_same_pic_timing_in_all_ols_flag) has a first value, the network abstraction layer unit does not include any other supplemental enhancement information messages.

[0220] According to one embodiment, for example, if the indication (e.g., general_same_pic_timing_in_all_ols_flag) has a first value, then for each network abstraction layer unit that includes a scalable non-nested picture timing supplemental enhancement information message for each access unit of a plurality of access units of one coded video sequence of one or more coded video sequences, the network abstraction layer unit does not include any other supplemental enhancement information message different from the picture timing supplemental enhancement information message or does not include any other supplemental enhancement information message.

[0221] In one embodiment, if the indication (e.g., general_same_pic_timing_in_all_ols_flag) has a first value, then for each network abstraction layer unit that includes a scalable non-nested picture timing supplemental enhancement information message for each access unit of each of the plurality of access units of one or more coded video sequences of the video data stream, the network abstraction layer unit does not include any other supplemental enhancement information message that is different from the picture timing supplemental enhancement information message or does not include any other supplemental enhancement information message.

[0222] Further, for example, a video encoder 100 may be provided. The video encoder 100 is configured to encode video into a video data stream. The video encoder 100 is further configured to generate the video data stream such that the video data stream includes an indication (e.g., general_same_pic_timing_in_all_ols_flag) indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit among a plurality of access units of one coded video sequence of one or more coded video sequences of the video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit. If the indication (e.g., general_same_pic_timing_in_all_ols_flag) has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of a plurality of output layer sets of the access unit. If an indication (e.g., general_same_pic_timing_in_all_ols_flag) has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of the multiple output layer sets of the access unit.

[0223] According to one embodiment, for example, when the indication (e.g., general_same_pic_timing_in_all_ols_flag) has a first value, the video encoder 100 is configured to generate a video data stream such that the network abstraction layer unit does not include any other supplemental enhancement information messages that are different from the picture timing supplemental enhancement information message.

[0224] In one embodiment, for example, if the indication (e.g., general_same_pic_timing_in_all_ols_flag) has a first value, the video encoder 100 is configured to generate a video data stream such that the network abstraction layer unit does not include any other supplemental enhancement information messages.

[0225] According to one embodiment, for example, when the indication (e.g., general_same_pic_timing_in_all_ols_flag) has a first value, the video encoder 100 may be configured to generate a video data stream such that, for each network abstraction layer unit that includes a scalable non-nested picture timing supplemental enhancement information message, for each access unit of a plurality of access units of one coded video sequence of one or more coded video sequences, the network abstraction layer unit does not include any other supplemental enhancement information message different from the picture timing supplemental enhancement information message or does not include any other supplemental enhancement information message.

[0226] In one embodiment, for example, when the indication (e.g., general_same_pic_timing_in_all_ols_flag) has a first value, the video encoder 100 may be configured to generate the video data stream such that, for each network abstraction layer unit that includes a scalable non-nested picture timing supplemental enhancement information message, for each access unit of each of a plurality of access units of one or more coded video sequences of the video data stream, the network abstraction layer unit does not include any other supplemental enhancement information message different from the picture timing supplemental enhancement information message or does not include any other supplemental enhancement information message.

[0227] Also provided is an apparatus 200 for receiving an input video data stream, the input video data stream having video encoded therein. The apparatus 200 is configured to generate a processed video data stream from the input video data stream. The apparatus 200 is further configured to generate the processed video data stream such that the processed video data stream includes an indication (e.g., general_same_pic_timing_in_all_ols_flag) indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit among a plurality of access units of one coded video sequence of one or more coded video sequences of the processed video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit. If the indication (e.g., general_same_pic_timing_in_all_ols_flag) has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of a plurality of output layer sets of the access unit. If an indication (e.g., general_same_pic_timing_in_all_ols_flag) has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of the multiple output layer sets of the access unit.

[0228] According to one embodiment, for example, if the indication (e.g., general_same_pic_timing_in_all_ols_flag) has a first value, the apparatus 200 is configured to generate a processed video data stream such that the network abstraction layer unit does not include any other supplemental enhancement information messages different from picture timing supplemental enhancement information messages.

[0229] In one embodiment, for example, if the indication (e.g., general_same_pic_timing_in_all_ols_flag) has a first value, the apparatus 200 is configured to generate a processed video data stream such that the network abstraction layer unit does not include other supplemental enhancement information messages.

[0230] According to one embodiment, for example, when the indication (e.g., general_same_pic_timing_in_all_ols_flag) has a first value, the apparatus 200 may be configured to generate, for example, for each network abstraction layer unit including a scalable non-nested picture timing supplemental enhancement information message for each access unit of a plurality of access units of one coded video sequence of one or more coded video sequences, the processed video data stream such that the network abstraction layer unit does not include any other supplemental enhancement information message different from the picture timing supplemental enhancement information message or does not include any other supplemental enhancement information message.

[0231] In one embodiment, for example, when the indication (e.g., general_same_pic_timing_in_all_ols_flag) has a first value, the apparatus 200 may be configured to generate the processed video data stream such that, for each network abstraction layer unit that includes a scalable non-nested picture timing supplemental enhancement information message for each access unit of each of a plurality of access units of one or more coded video sequences of the processed video data stream, the network abstraction layer unit does not include any other supplemental enhancement information message different from the picture timing supplemental enhancement information message or does not include any other supplemental enhancement information message.

[0232] Further provided is a video decoder 300 for receiving a video data stream storing video. The video decoder 300 is configured to decode video from the video data stream. The video data stream includes an indication (e.g., general_same_pic_timing_in_all_ols_flag) indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit among a plurality of access units of one coded video sequence of one or more coded video sequences of the video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit. When the indication (e.g., general_same_pic_timing_in_all_ols_flag) has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of a plurality of output layer sets of the access unit. If an indication (e.g., general_same_pic_timing_in_all_ols_flag) has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of the multiple output layer sets of the access unit. Video decoder 300 is configured to decode video according to the indication.

[0233] According to one embodiment, for example, if an indication (eg, general_same_pic_timing_in_all_ols_flag) has a first value, the network abstraction layer unit does not include other supplemental enhancement information messages different from picture timing supplemental enhancement information messages.

[0234] In one embodiment, for example, if an indication (e.g., general_same_pic_timing_in_all_ols_flag) has a first value, the network abstraction layer unit does not include any other supplemental enhancement information messages. Video decoder 300 is configured to decode video according to the indication.

[0235] According to one embodiment, for example, if the indication (e.g., general_same_pic_timing_in_all_ols_flag) has a first value, then for each network abstraction layer unit that includes a scalable non-nested picture timing supplemental enhancement information message for each access unit of a plurality of access units of one coded video sequence of one or more coded video sequences, the network abstraction layer unit does not include any other supplemental enhancement information message different from the picture timing supplemental enhancement information message or does not include any other supplemental enhancement information message.

[0236] In one embodiment, for example, if the indication (e.g., general_same_pic_timing_in_all_ols_flag) has a first value, then for each network abstraction layer unit that includes a scalable non-nested picture timing supplemental enhancement information message for each access unit of each of the plurality of access units of one or more coded video sequences of the video data stream, the network abstraction layer unit does not include any other supplemental enhancement information message different from the picture timing supplemental enhancement information message or does not include any other supplemental enhancement information message.

[0237] Further provided is a system comprising an apparatus 200 as described above and a video decoder 300 as described above, the video decoder 300 being configured to receive the processed video data stream of the apparatus 200. The video decoder 300 is further configured to decode video from the output video data stream of the apparatus 200.

[0238] According to an embodiment, the system may further comprise, for example, a video encoder 100. The apparatus 200 may, for example, be configured to receive a video data stream from the video encoder 100 as an input video data stream.

[0239] In particular, a fourth aspect of the present invention relates to constraining a PT SEI from being paired with another HRD SEI when general_same_pic_timing_in_all_ols_flag is equal to 1.

[0240] The VVC draft specification includes a flag called general_same_pic_timing_in_all_ols_flag in the general HRD parameters structure that has the following semantics: general_same_pic_timing_in_all_ols_flag equal to 1 specifies that scalable non-nested PT SEI messages in each AU apply to AUs of any OLS in the bitstream and that no scalable nested PT SEI messages exist. general_same_pic_timing_in_all_ols_flag equal to 0 specifies that scalable non-nested PT SEI messages in each AU may or may not apply to AUs of any OLS in the bitstream and that scalable nested PT SEI messages may exist.

[0241] Generally, when an OLS sub-bitstream is extracted from the original bitstream (including OLS and non-OLS data), the corresponding HRD-related timing / buffer information of the target OLS in the form of buffering period, picture timing, and decoding unit information SEI messages, encapsulated in so-called scalable nested SEI messages, is decapsulated. This decapsulated SEI message is then used to replace the non-scalable nested HRD SEI information in the original bitstream. However, in many scenarios, the content of some messages, such as picture timing SEI messages, may remain the same when a layer is dropped, i.e., dropped from one OLS to its subset. Therefore, the general_same_pic_timing_in_all_ols_flag provides a shortcut so that only BP and DUI SEI messages are replaced, but the PT SEI in the original bitstream may remain valid, i.e., is not removed during extraction when general_same_pic_timing_in_all_ols_flag is equal to 1. Therefore, there is no need to encapsulate the replacement PT SEI message in the scalable nested SEI message that carries the replacement BP and DUI SEI messages, and no bitrate overhead is introduced for this information.

[0242] However, in the state of the art, PT SEI messages are allowed to be carried together with other HRD SEI messages within one SEI NAL unit (NAL unit = Network Abstraction Layer unit), i.e., BP, PT, and SEI messages can all be encapsulated within the same Prefix SEI NAL unit. Therefore, an extractor must inspect such SEI NAL units more deeply to understand the contained messages, and actually rewrite the Show SEI NAL unit (i.e., remove non-PT SEI messages) if only one of the contained messages (PT) should be retained during the extraction procedure. To avoid this tedious low-level processing and allow an extractor to operate entirely on the non-parameter set part of the bitstream at the NAL unit level, it is part of the present invention that the bitstream constraint does not allow such bitstream construction. In one embodiment, the constraint is expressed as follows: general_same_pic_timing_in_all_ols_flag equal to 1 specifies that scalable non-nested PT SEI messages in each AU apply to the AUs of any OLS in the bitstream, and that no scalable nested PT SEI messages exist. general_same_pic_timing_in_all_ols_flag equal to 0 specifies that scalable non-nested PT SEI messages in each AU may or may not apply to the AUs of any OLS in the bitstream, and that scalable nested PT SEI messages may exist. When general_same_pic_timing_in_all_ols_flag is equal to 1, the bitstream conformance constraint is that all general SEI messages in the bitstream, including an SEI message (Picture Timing) with payload_type equal to 1, do not include an SEI message with payload_type not equal to 1.

[0243] The fifth aspect of the present invention will be described in detail below.

[0244] According to a fifth aspect of the present invention, there is provided a video data stream, in which video is encoded. The video data stream further comprises one or more scalable nested supplemental enhancement information messages, the one or more scalable nested supplemental enhancement information messages comprising a plurality of syntax elements, each syntax element of the one or more syntax elements being defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or part of the video data stream.

[0245] According to one embodiment, a video data stream may, for example, include one or more scalable non-nested supplemental enhancement information messages. The one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include a plurality of syntax elements. Each syntax element of the one or more syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or part of the video data stream and in each of the scalable non-nested supplemental enhancement information messages of the video data stream or part of the video data stream.

[0246] In one embodiment, the video data stream may include, for example, a plurality of access units, and each access unit of the plurality of access units may be assigned, for example, to one of a plurality of pictures of the video. A portion of the video data stream may be, for example, an access unit of the plurality of access units of the video data stream. Each syntax element of one or more syntax elements of the plurality of syntax elements may be defined, for example, to have the same size in each of the scalable nested supplemental enhancement information messages of the access unit.

[0247] According to one embodiment, the video data stream may include, for example, one or more scalable non-nested supplemental enhancement information messages. The one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include a plurality of syntax elements. Each syntax element of the one or more syntax elements may be defined to have the same size, for example, in each of the scalable nested supplemental enhancement information messages of an access unit and in each of the scalable non-nested supplemental enhancement information messages of the access unit.

[0248] In one embodiment, the portion of the video data stream may be, for example, a coded video sequence of the video data stream, and each syntax element of the one or more syntax elements of the plurality of syntax elements may be defined to have the same size in each of the scalable nested supplemental enhancement information messages of the coded video sequence, for example.

[0249] According to one embodiment, a video data stream may include, for example, one or more scalable non-nested supplemental enhancement information messages. The one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include a plurality of syntax elements. Each syntax element of the one or more syntax elements may, for example, be defined to have the same size in each of the scalable nested supplemental enhancement information messages of a coded video sequence and in each of the scalable non-nested supplemental enhancement information messages of the coded video sequence.

[0250] In one embodiment, each syntax element of one or more syntax elements of the plurality of syntax elements may be defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream, for example.

[0251] According to one embodiment, each syntax element of one or more syntax elements of the plurality of syntax elements may be defined to have the same size, for example, in each scalable nested supplemental enhancement information message of the video data stream and in each scalable non-nested supplemental enhancement information message of the video data stream.

[0252] In one embodiment, the video data stream or a portion of the video data stream may, for example, include at least one buffering period supplemental enhancement information message, wherein the buffering period supplemental enhancement information message defines a size of each syntax element of one or more syntax elements of a plurality of syntax elements.

[0253] According to one embodiment, the buffering period supplemental extension information message may include, in order to define a size for each of one or more syntax elements of a plurality of syntax elements: bp_cpb_initial_removal_delay_length_minus1 element, bp_cpb_removal_delay_length_minus1 element, bp_dpb_output_delay_length_minus1 element, bp_du_cpb_removal_delay_increment_length_minus1 element, bp_dpb_output_delay_du_length_minus1 element It includes at least one of the following:

[0254] In one embodiment, for each access unit of a plurality of access units of a video data stream that includes a scalable nested buffering period supplemental enhancement information message, the access unit may also include, for example, a non-scalable nested buffering period supplemental enhancement information message.

[0255] According to one embodiment, for each single layer access unit of a plurality of single layer access units of a video data stream that includes a scalable nested buffering period supplemental enhancement information message, the single layer access unit may also include, for example, a non-scalable nested buffering period supplemental enhancement information message.

[0256] Further provided is a video encoder 100. The video encoder 100 is configured to encode video into a video data stream. The video encoder 100 is further configured to generate the video data stream such that the video data stream comprises one or more scalable nested supplemental enhancement information messages. The video encoder 100 is further configured to generate the video data stream such that the one or more scalable nested supplemental enhancement information messages include a plurality of syntax elements. The video encoder 100 is further configured to generate the video data stream such that each syntax element of the one or more syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or of a portion of the video data stream.

[0257] According to one embodiment, video encoder 100 may be configured to generate a video data stream such that the video data stream may comprise, for example, one or more scalable non-nested supplemental enhancement information messages. Video encoder 100 may be configured to generate a video data stream such that, for example, one or more scalable nested supplemental enhancement information messages and one or more scalable non-nested supplemental enhancement information messages include a plurality of syntax elements. Video encoder 100 may be configured to generate a video data stream such that, for example, each syntax element of one or more syntax elements of the plurality of syntax elements may be defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or a portion of the video data stream and in each of the scalable non-nested supplemental enhancement information messages of the video data stream or a portion of the video data stream.

[0258] In one embodiment, video encoder 100 may be configured to generate the video data stream such that the video data stream may include, for example, multiple access units, each of which may be assigned to, for example, one of multiple pictures of a video. A portion of the video data stream may be, for example, an access unit of the multiple access units of the video data stream. Video encoder 100 may be configured to generate the video data stream such that, for example, each syntax element of one or more syntax elements of the multiple syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the access unit.

[0259] According to one embodiment, video encoder 100 may be configured to generate a video data stream such that the video data stream may comprise, for example, one or more scalable non-nested supplemental enhancement information messages. Video encoder 100 may be configured to generate a video data stream such that, for example, one or more scalable nested supplemental enhancement information messages and one or more scalable non-nested supplemental enhancement information messages include a plurality of syntax elements. Video encoder 100 may be configured to generate a video data stream such that, for example, each syntax element of one or more syntax elements of the plurality of syntax elements may be defined to have the same size, for example, in each of the scalable nested supplemental enhancement information messages of an access unit and in each of the scalable non-nested supplemental enhancement information messages of the access unit.

[0260] In one embodiment, the portion of the video data stream may be, for example, an encoded video sequence of the video data stream. Video encoder 100 may be configured to generate the video data stream such that, for example, each syntax element of one or more syntax elements of the plurality of syntax elements is defined to have the same size in, for example, each of the scalable nested supplemental enhancement information messages of the encoded video sequence.

[0261] According to one embodiment, video encoder 100 may be configured to generate a video data stream such that the video data stream may comprise, for example, one or more scalable non-nested supplemental enhancement information messages. Video encoder 100 may be configured to generate a video data stream such that, for example, one or more scalable nested supplemental enhancement information messages and one or more scalable non-nested supplemental enhancement information messages include a plurality of syntax elements. Video encoder 100 may be configured to generate a video data stream such that, for example, each syntax element of one or more syntax elements of the plurality of syntax elements may be defined to have the same size, for example, in each of the scalable nested supplemental enhancement information messages of the coded video sequence and in each of the scalable non-nested supplemental enhancement information messages of the coded video sequence.

[0262] In one embodiment, the video encoder 100 may be configured to generate the video data stream such that, for example, each syntax element of one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream.

[0263] According to one embodiment, the video encoder 100 may be configured to generate a video data stream such that, for example, each syntax element of one or more syntax elements of a plurality of syntax elements may be defined to have the same size, for example, in each of the scalable nested supplemental enhancement information messages of the video data stream and in each of the scalable non-nested supplemental enhancement information messages of the video data stream.

[0264] In one embodiment, the video encoder 100 may be configured to generate a video data stream such that, for example, the video data stream or a portion of the video data stream may include, for example, at least one buffering period supplemental enhancement information message, the buffering period supplemental enhancement information message defining a size of each syntax element of one or more syntax elements of a plurality of syntax elements.

[0265] According to one embodiment, video encoder 100 may, for example, further include a buffering period supplemental enhancement information message that defines a size for each of one or more syntax elements of a plurality of syntax elements, such as: bp_cpb_initial_removal_delay_length_minus1 element, bp_cpb_removal_delay_length_minus1 element, bp_dpb_output_delay_length_minus1 element, bp_du_cpb_removal_delay_increment_length_minus1 element, bp_dpb_output_delay_du_length_minus1 element The video data stream may be configured to generate the video data stream to include at least one of:

[0266] In one embodiment, video encoder 100 may be configured, for example, to generate a video data stream whereby for each access unit of a plurality of access units of the video data stream that includes a scalable nested buffering period supplemental enhancement information message, said access unit may also include, for example, a non-scalable nested buffering period supplemental enhancement information message.

[0267] According to one embodiment, the video encoder 100 may be configured to generate the video data stream such that, for each single layer access unit of a plurality of single layer access units of the video data stream that includes, for example, a scalable nested buffering period supplemental enhancement information message, the single layer access unit may also include, for example, a non-scalable nested buffering period supplemental enhancement information message.

[0268] Further provided is an apparatus 200 for receiving an input video data stream. The input video data stream contains encoded video. The apparatus 200 is configured to generate an output video data stream from the input video data stream. The video data stream includes one or more scalable nested supplemental enhancement information messages. The one or more scalable nested supplemental enhancement information messages include a plurality of syntax elements. Each syntax element of the one or more syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or part of the video data stream. The apparatus 200 is configured to process the one or more scalable nested supplemental enhancement information messages.

[0269] According to one embodiment, the video data stream may include, for example, one or more scalable non-nested supplemental enhancement information messages. The one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include a plurality of syntax elements. Each syntax element of the one or more syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or part of the video data stream and in each of the scalable non-nested supplemental enhancement information messages of the video data stream or part of the video data stream. The apparatus 200 is configured to process the one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages.

[0270] In one embodiment, the video data stream may include, for example, a plurality of access units, and each access unit of the plurality of access units may be assigned, for example, to one of a plurality of pictures of the video. A portion of the video data stream may be, for example, an access unit of the plurality of access units of the video data stream. Each syntax element of one or more syntax elements of the plurality of syntax elements may be defined, for example, to have the same size in each of the scalable nested supplemental enhancement information messages of the access unit.

[0271] According to one embodiment, the video data stream may include, for example, one or more scalable non-nested supplemental enhancement information messages. The one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include a plurality of syntax elements. Each syntax element of the one or more syntax elements may be defined to have the same size, for example, in each of the scalable nested supplemental enhancement information messages of an access unit and in each of the scalable non-nested supplemental enhancement information messages of the access unit. Apparatus 200 may be configured, for example, to process the one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages.

[0272] In one embodiment, the portion of the video data stream may be, for example, a coded video sequence of the video data stream, and each syntax element of the one or more syntax elements of the plurality of syntax elements may be defined to have the same size in each of the scalable nested supplemental enhancement information messages of the coded video sequence, for example.

[0273] According to one embodiment, the video data stream may include, for example, one or more scalable non-nested supplemental enhancement information messages. The one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include a plurality of syntax elements. Each syntax element of the one or more syntax elements may, for example, be defined to have the same size in each of the scalable nested supplemental enhancement information messages of the coded video sequence and in each of the scalable non-nested supplemental enhancement information messages of the coded video sequence. Apparatus 200 may, for example, be configured to process the one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages.

[0274] In one embodiment, each syntax element of one or more syntax elements of the plurality of syntax elements may be defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream, for example.

[0275] According to one embodiment, each syntax element of one or more syntax elements of the plurality of syntax elements may be defined to have the same size, for example, in each scalable nested supplemental enhancement information message of the video data stream and in each scalable non-nested supplemental enhancement information message of the video data stream. Apparatus 200 may be configured, for example, to process one or more scalable nested supplemental enhancement information messages and one or more scalable non-nested supplemental enhancement information messages.

[0276] In one embodiment, the video data stream or a portion of the video data stream may, for example, include at least one buffering period supplemental enhancement information message, the buffering period supplemental enhancement information message defining the size of one or more of a plurality of syntax elements. Apparatus 200 may, for example, be configured to process the at least one buffering period supplemental enhancement information message.

[0277] According to one embodiment, the buffering period supplemental extension information message includes, in order to define the size of the one or more of the plurality of syntax elements: bp_cpb_initial_removal_delay_length_minus1 element, bp_cpb_removal_delay_length_minus1 element, bp_dpb_output_delay_length_minus1 element, bp_du_cpb_removal_delay_increment_length_minus1 element, bp_dpb_output_delay_du_length_minus1 element It includes at least one of the following:

[0278] In one embodiment, for each access unit of a plurality of access units of a video data stream that includes a scalable nested buffering period supplemental enhancement information message, the access unit may also include, for example, a scalable non-nested buffering period supplemental enhancement information message. Apparatus 200 may, for example, be configured to process scalable nested supplemental enhancement information messages and scalable non-nested supplemental enhancement information messages.

[0279] According to one embodiment, for each single layer access unit of a plurality of single layer access units of a video data stream that includes a scalable nested buffering period supplemental enhancement information message, the single layer access unit may also include, for example, a scalable non-nested buffering period supplemental enhancement information message. Apparatus 200 may, for example, be configured to process scalable nested supplemental enhancement information messages and scalable non-nested supplemental enhancement information messages.

[0280] Further provided is a video decoder 300 for receiving a video data stream storing video. The video decoder 300 is configured to decode video from the video data stream. The video data stream includes one or more scalable nested supplemental enhancement information messages. The one or more scalable nested supplemental enhancement information messages include a plurality of syntax elements. Each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or part of the video data stream. The video decoder 300 is configured to decode video according to the one or more syntax elements of the plurality of syntax elements.

[0281] According to one embodiment, a video data stream may, for example, include one or more scalable non-nested supplemental enhancement information messages. The one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include a plurality of syntax elements. Each syntax element of the one or more syntax elements may, for example, be defined to have the same size in each scalable nested supplemental enhancement information message of the video data stream or part of the video data stream and in each scalable non-nested supplemental enhancement information message of the video data stream or part of the video data stream.

[0282] In one embodiment, the video data stream may include, for example, a plurality of access units, and each access unit of the plurality of access units may be assigned, for example, to one of a plurality of pictures of the video. A portion of the video data stream may be, for example, an access unit of the plurality of access units of the video data stream. Each syntax element of one or more syntax elements of the plurality of syntax elements may be defined, for example, to have the same size in each of the scalable nested supplemental enhancement information messages of the access unit.

[0283] According to one embodiment, the video data stream may include, for example, one or more scalable non-nested supplemental enhancement information messages. The one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include a plurality of syntax elements. Each syntax element of the one or more syntax elements may be defined to have the same size, for example, in each of the scalable nested supplemental enhancement information messages of an access unit and in each of the scalable non-nested supplemental enhancement information messages of the access unit.

[0284] In one embodiment, the portion of the video data stream may be, for example, a coded video sequence of the video data stream, and each syntax element of the one or more syntax elements of the plurality of syntax elements may be defined to have the same size in each of the scalable nested supplemental enhancement information messages of the coded video sequence, for example.

[0285] According to one embodiment, a video data stream may include, for example, one or more scalable non-nested supplemental enhancement information messages. The one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include a plurality of syntax elements. Each syntax element of the one or more syntax elements may, for example, be defined to have the same size in each of the scalable nested supplemental enhancement information messages of a coded video sequence and in each of the scalable non-nested supplemental enhancement information messages of the coded video sequence.

[0286] In one embodiment, each syntax element of one or more syntax elements of the plurality of syntax elements may be defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream, for example.

[0287] According to one embodiment, each syntax element of one or more syntax elements of the plurality of syntax elements may be defined to have the same size, for example, in each scalable nested supplemental enhancement information message of the video data stream and in each scalable non-nested supplemental enhancement information message of the video data stream.

[0288] In one embodiment, the video data stream or a portion of the video data stream may, for example, include at least one buffering period supplemental enhancement information message, wherein the buffering period supplemental enhancement information message defines a size of each syntax element of one or more syntax elements of a plurality of syntax elements.

[0289] According to one embodiment, the buffering period supplemental extension information message may include, in order to define a size for each of one or more syntax elements of a plurality of syntax elements: bp_cpb_initial_removal_delay_length_minus1 element, bp_cpb_removal_delay_length_minus1 element, bp_dpb_output_delay_length_minus1 element, bp_du_cpb_removal_delay_increment_length_minus1 element, bp_dpb_output_delay_du_length_minus1 element It includes at least one of the following:

[0290] In one embodiment, for each access unit of a plurality of access units of a video data stream that includes a scalable nested buffering period supplemental enhancement information message, the access unit may also include, for example, a non-scalable nested buffering period supplemental enhancement information message.

[0291] According to one embodiment, for each single layer access unit of a plurality of single layer access units of a video data stream that includes a scalable nested buffering period supplemental enhancement information message, the single layer access unit may also include, for example, a non-scalable nested buffering period supplemental enhancement information message.

[0292] Further provided is a system comprising an apparatus 200 as described above and a video decoder 300 as described above, the video decoder 300 being configured to receive the output video data stream of the apparatus 200. Further, the video decoder 300 being configured to decode video from the output video data stream of the apparatus 200.

[0293] According to an embodiment, the system may further comprise, for example, a video encoder 100. The apparatus 200 may, for example, be configured to receive a video data stream from the video encoder 100 as an input video data stream.

[0294] In particular, a fifth aspect of the present invention relates to constraining all BP SEI messages in a bitstream to indicate the same length of a particular variable-length coded syntax element and to be non-scalable nested without non-scalable nested variants within the same AU.

[0295] The buffering period SEI message, picture timing SEI message, and decoding unit information SEI message provide precise timing information for NAL units in the bitstream and are used to control their transition through the decoder's buffers during conformance testing. Some syntax elements in the PT and DUI SEI messages are coded with variable lengths, and the lengths of these syntax elements are conveyed in the BP SEI message. This parsing dependency is a design trade-off. The benefit of saving transmission of those length syntax elements in each PT or DUI SEI message is achieved for the cost of not allowing parsing of the PT and DUI SEI messages without first parsing the associated BP SEI message. Because the BP SEI message (once per multiple frames) is transmitted much less frequently than the PT message (once per frame) or the DUI SEI message (multiple times per frame), bit savings are achieved through this common design trade-off, similar to how the picture header structure can reduce the bit cost of slice headers when many slices are used.

[0296] More specifically, the BP SEI message in the current VVC draft specification contains the following syntax elements, which are the roots of parsing dependencies: bp_cpb_initial_removal_delay_length_minus1, which specifies the coding length of the alternative timing initial CPB removal delay for the AU in the PT SEI message, and bp_cpb_removal_delay_length_minus1, which specifies the coding length of the CPB removal delay and the removal delay offset of the AU in the PT SEI message; bp_dpb_output_delay_length_minus1, which specifies the coding length of the DPB output delay of the AU in the PT SEI message, and bp_du_cpb_removal_delay_increment_length_minus1, which specifies the coded length of the individual and common CPB removal delays of DUs in PT SEI messages and the CPB removal delays of DUs in DUI SEI messages; ·bp_dpb_output_delay_du_length_minus1, which specifies the coding length DPB output delay of the AU in the PT SEI message and the DU SEI message.

[0297] However, a problem arises when a bitstream comprises multiple OLSs. While BP / PT / DUI SEI messages that apply to an OLS representing a bitstream are carried verbatim within the bitstream, making it easy to track parsing dependencies, other pairs of BP / PT / DUI SEI messages corresponding to OLSs representing (sub)bitstreams are carried in encapsulated form in so-called scalable nesting SEI messages. Nevertheless, given that parsing dependencies apply and the number of OLSs can be very high, it is a considerable burden for a decoder or parser to keep track of the correct encapsulating BP SEI message for parsing dependencies when processing the encapsulated PT and DUI SEI messages. In particular, these messages may also be encapsulated in different scalable nesting SEI messages.

[0298] Therefore, as part of the present invention, in one embodiment, a bitstream constraint is established that the coded value of each syntax element describing a length must be the same in all scalable nested and non-nested BP SEI messages within an AU. Thus, a decoder or parser need only store the respective length values ​​when parsing the first non-scalable BP SEI message within an AU, and can resolve parsing dependencies for all PT and DUI SEI messages within the buffering period starting with the respective AU, regardless of whether they are encapsulated in a scalable nesting SEI message. Below are example specification texts for each: It is a bitstream conformance requirement that all scalable nested and non-nested buffering period SEI messages within an AU have the same respective values ​​of the syntax elements bp_cpb_initial_removal_delay_length_minus1, bp_cpb_removal_delay_length_minus1, bp_dpb_output_delay_length_minus1, bp_du_cpb_removal_delay_increment_length_minus1, bp_dpb_output_delay_du_length_minus1.

[0299] In another embodiment, the constraint is expressed only for scalable nested BP SEI messages whose current scalable non-nested BP SEI message is within a buffering period determined as follows: It is a bitstream conformance requirement that all scalable nested buffering period SEI messages within a buffering period have the same values ​​of the syntax elements bp_cpb_initial_removal_delay_length_minus1, bp_cpb_removal_delay_length_minus1, bp_dpb_output_delay_length_minus1, bp_du_cpb_removal_delay_increment_length_minus1, bp_dpb_output_delay_du_length_minus1 as the scalable non-nested buffering period SEI messages of the buffering period.

[0300] Here, the BP of the bitstream defines the range of constraints of the scalable nested BP from one scalable nested BP to the next scalable nested BP.

[0301] In another embodiment, the constraint is expressed for all AUs of the bitstream, for example as follows: It is a bitstream conformance requirement that all scalable nested and non-nested buffering period SEI messages in a bitstream have the same respective values ​​of the syntax elements bp_cpb_initial_removal_delay_length_minus1, bp_cpb_removal_delay_length_minus1, bp_dpb_output_delay_length_minus1, bp_du_cpb_removal_delay_increment_length_minus1, bp_dpb_output_delay_du_length_minus1.

[0302] In another embodiment, the constraints are expressed only for AUs in the CVS, so that the smart encoder can still facilitate differences in duration of BPs in the bitstream due to the encoding of the associated delay and offset syntax elements. The specification text is as follows: It is a bitstream conformance requirement that all scalable nested and non-nested buffering period SEI messages within a CVS have the same respective values ​​of the syntax elements bp_cpb_initial_removal_delay_length_minus1, bp_cpb_removal_delay_length_minus1, bp_dpb_output_delay_length_minus1, bp_du_cpb_removal_delay_increment_length_minus1, bp_dpb_output_delay_du_length_minus1.

[0303] Here, the constraint range is CVS.

[0304] Specifically, the buffering period, i.e., the BP SEI message, specifies a so-called buffering period where the timing of each picture is anchored to the picture at the start of the buffering period. The start of the buffering period is useful, for example, to test the suitability of random access functions in the bitstream.

[0305] FIG. 7 shows two sets of HRD SEIs, a scalable nested SEI and a scalable non-nested SEI, in a two-layer bitstream according to one embodiment.

[0306] For example, in a multi-layer scenario such as that shown in Figure 7, the scalable nested HRD SEI provides a different buffering period setting (via BPs at POC 0 and POC 3) than the scalable non-nested SEI (POC 0 only) used when only layer L0 is extracted from POC 3 and played back.

[0307] However, this also comes at the cost of increased complexity of tracking parsing dependencies between PT messages and individual BP messages as explained above, which is undesirable. Therefore, as part of the present invention, in one embodiment, it is prohibited to have a scalable nested BP SEI message in an AU without a non-scalable nested BP SEI message, as follows: It is a bitstream conformance requirement that a scalable nested BP SEI message is not within an AU that does not contain a scalable non-nested BP SEI message.

[0308] Since the above usage scenario is limited to multi-layer bitstreams, in another embodiment the relevant constraints are limited to single-layer bitstreams as follows: It is a requirement of bitstream conformance that a scalable nested BP SEI message is not within a single-layer AU that does not contain a scalable non-nested BP SEI message.

[0309] Although some aspects have been described in the context of an apparatus, it will be apparent that these aspects also represent a description of a corresponding method, where a block or device corresponds to a method step or feature of a method step. Similarly, aspects described in the context of a method step also represent a description of a corresponding block or item or feature of a corresponding apparatus. Some or all of the method steps may be performed by (or using) a hardware apparatus, such as, for example, a microprocessor, a programmable computer, or an electronic circuit. In some embodiments, one or more of the most important method steps may be performed by such an apparatus.

[0310] Depending on specific implementation requirements, embodiments of the present invention can be implemented in hardware or software, or at least partly in hardware, or at least partly in software. Implementation can be performed using a digital storage medium, such as a floppy disk, DVD, Blu-ray, CD, ROM, PROM, EPROM, EEPROM, or flash memory, on which electronically readable control signals are stored, which cooperate (or can cooperate) with a programmable computer system to perform the respective methods. Thus, the digital storage medium may be computer-readable.

[0311] Some embodiments according to the present invention include a data carrier having electronically readable control signals that can cooperate with a programmable computer system to perform one of the methods described herein.

[0312] Generally, embodiments of the present invention can be implemented as a computer program product having program code that operates to perform one of the methods when the computer program product is run on a computer, and the program code can be stored on, for example, a machine-readable carrier.

[0313] Other embodiments comprise the computer program for performing one of the methods described herein, stored on a machine readable carrier.

[0314] In other words, therefore, an embodiment of the inventive methods is a computer program having a program code for performing one of the methods described herein, when the computer program runs on a computer.

[0315] A further embodiment of the inventive method is therefore a data carrier (or digital storage medium, or computer readable medium) having recorded thereon a computer program for performing one of the methods described herein. The data carrier, digital storage medium, or recording medium is typically tangible and / or non-transitory.

[0316] A further embodiment of the inventive method is, therefore, a data stream or a sequence of signals representing the computer program for performing one of the methods described herein, The data stream or the sequence of signals can for example be arranged to be transmitted via a data communication connection, for example via the Internet.

[0317] A further embodiment comprises a processing means, for example a computer, or a programmable logic device, configured to or adapted to perform one of the methods described herein.

[0318] A further embodiment comprises a computer having installed thereon the computer program for performing one of the methods described herein.

[0319] Further embodiments according to the invention comprise an apparatus or system configured to transfer (e.g. electronically or optically) a computer program for performing one of the methods described herein to a receiver. The receiver may for example be a computer, a mobile device, a memory device, etc. The apparatus or system may for example comprise a file server for transferring the computer program to the receiver.

[0320] In some embodiments, a programmable logic device (e.g., a field programmable gate array) may be used to perform some or all of the functions of the methods described herein. In some embodiments, a field programmable gate array may cooperate with a microprocessor to perform one of the methods described herein. In general, the methods are preferably performed by any hardware apparatus.

[0321] The apparatus described herein may be implemented using a hardware apparatus, or using a computer, or using a combination of a hardware apparatus and a computer.

[0322] The methods described herein may be performed using a hardware apparatus, or using a computer, or using a combination of a hardware apparatus and a computer.

[0323] The above-described embodiments are merely illustrative of the principles of the present invention. It is understood that modifications and variations of the arrangements and details described herein will be apparent to those skilled in the art. It is therefore intended to be limited only by the scope of the appended claims and not by the specific details presented by way of illustration and description of the embodiments herein.

[0324] Cited literature [1]ISO / IEC,ITU-T. High efficiency video encoding. ITU-T Recommendation H.265|ISO / IEC 23008 10(HEVC), 1st edition, 2013; 2nd edition, 2014.

[0325] The following describes exemplary embodiments of the present invention.

[0326] <Aspect 1> An apparatus (200) for receiving an input video data stream, comprising: the input video data stream has video encoded therein; the apparatus (200) is configured to generate an output video data stream from the input video data stream; The apparatus (200) determines whether a picture of the video preceding a dependent random access picture should be output. Equipment (200).

[0327] <Aspect 2> The apparatus (200) of aspect 1, wherein the apparatus (200) is configured to determine a first variable (NoOutputBeforeDrapFlag) indicating whether the picture of the video preceding the dependent random access picture should be output.

[0328] <Aspect 3> The apparatus (200) of aspect 2, wherein the apparatus (200) is configured to generate the output video data stream such that the output video data stream includes an indication indicating whether the picture of the video preceding the dependent random access picture should be output.

[0329] <Aspect 4> The apparatus (200) of aspect 3, wherein the apparatus (200) is configured to generate the output video data stream such that the output video data stream includes supplemental enhancement information including the indication indicating whether the picture of the video preceding the dependent random access picture should be output.

[0330] <Aspect 5> a picture of the video preceding the dependent random access picture is an independent random access picture; the apparatus (200) is configured to generate the output video data stream such that the output video data stream includes a flag (ph_pic_output_flag) having a predetermined value (0) in a picture header of the independent random access picture, whereby the predetermined value (0) of the flag (ph_pic_output_flag) indicates, for the independent random access picture that immediately precedes the dependent random access picture in the video data stream, that the independent random access picture should not be output; The apparatus (200) according to embodiment 3.

[0331] <Aspect 6> The apparatus (200) of aspect 5, wherein the flag is a first flag, and the apparatus (200) is configured to generate the output video data stream such that the output video data stream includes a further flag in a picture parameter set of the video data stream, the further flag indicating whether the first flag (ph_pic_output_flag) is present in the picture header of the independent random access picture.

[0332] <Aspect 7> The apparatus (200) may include, as the indication of whether the picture of the video preceding the dependent random access picture should be output from the output video data stream: a supplemental enhancement information flag in the supplemental enhancement information of the output video data stream, or a picture parameter set flag in a picture parameter set of the output video data stream, or a sequence parameter set flag in a sequence parameter set of the output video data stream, or an external means flag, the value of which is set by an external unit external to the device (200); and generating the output video data stream to include The apparatus (200) according to embodiment 3.

[0333] <Aspect 8> the device (200) is configured to determine a value of a second variable (PictureOutputFlag) for the picture of the video preceding the dependent random access picture in response to the first variable (NoOutputBeforeDrapFlag), the second variable (PictureOutputFlag) indicating for the picture whether the picture should be output or not, and the device (200) is configured to output or not output the picture in response to the second variable (PictureOutputFlag). The device (200) according to any one of aspects 2 to 7.

[0334] <Aspect 9> the picture of the video preceding the dependent random access picture is an independent random access picture; the first variable (NoOutputBeforeDrapFlag) indicating that the independent random access picture should not be output; The device (200) according to any one of aspects 2 to 8.

[0335] <Aspect 10> the picture of the video preceding the dependent random access picture is an independent random access picture; the apparatus (200) is configured to set the first variable (NoOutputBeforeDrapFlag) so that the first variable (NoOutputBeforeDrapFlag) indicates that the independent random access picture should be output. The device (200) according to any one of aspects 2 to 8.

[0336] <Aspect 11> The apparatus (200) according to any one of aspects 1 to 10, wherein the apparatus (200) is configured to signal to the video decoder (300) whether a picture of the video preceding a dependent random access picture should be output.

[0337] <Aspect 12> a video data stream, the video data stream is encoded with video; the video data stream includes an indication of whether a picture of the video preceding a dependent random access picture should be output; Video data stream.

[0338] <Aspect 13> The video data stream of aspect 12, wherein the output video data stream includes supplemental enhancement information including the indication of whether the picture of the video preceding the dependent random access picture should be output.

[0339] <Aspect 14> a picture of the video preceding the dependent random access picture is an independent random access picture; the video data stream includes a flag (ph_pic_output_flag) having a predetermined value (0) in a picture header of the independent random access picture, whereby the predetermined value (0) of the flag (ph_pic_output_flag) indicates, for the independent random access picture that immediately precedes the dependent random access picture in the video data stream, that the independent random access picture should not be output; 13. The video data stream according to claim 12.

[0340] <Aspect 15> A video data stream as described in aspect 14, wherein the flag is a first flag, and the video data stream includes a further flag in a picture parameter set of the video data stream, the further flag indicating whether the first flag (ph_pic_output_flag) is present in the picture header of the independent random access picture.

[0341] <Aspect 16> The video data stream may include, as the indication of whether the picture of the video preceding the dependent random access picture should be output: a supplemental enhancement information flag in the supplemental enhancement information of the output video data stream, or a picture parameter set flag in a picture parameter set of the output video data stream, or a sequence parameter set flag in a sequence parameter set of the output video data stream, or an external means flag, the value of which is set by an external unit external to the device (200); Including, 13. The video data stream according to claim 12.

[0342] <Aspect 17> A video encoder (100), the video encoder (100) configured to encode video into a video data stream; the video encoder (100) is configured to generate the video data stream such that the video data stream includes an indication of whether a picture of the video preceding a dependent random access picture should be output; Video Encoder (100).

[0343] <Aspect 18> A video encoder (100) according to aspect 17, wherein the video encoder (100) is configured to generate the video data stream such that the video data stream includes supplemental enhancement information including the indication indicating whether the picture of the video preceding the dependent random access picture should be output.

[0344] <Aspect 19> the picture of the video preceding the dependent random access picture is an independent random access picture; the video encoder (100) is configured to generate the video data stream such that the output video data stream includes a flag (ph_pic_output_flag) having a predetermined value (0) in a picture header of the independent random access picture, whereby the predetermined value (0) of the flag (ph_pic_output_flag) indicates that the independent random access picture should not be output for the independent random access picture that immediately precedes the dependent random access picture in the video data stream; 18. The video encoder (100) of embodiment 17.

[0345] <Aspect 20> A video encoder (100) according to aspect 19, wherein the flag is a first flag, and the video encoder (100) is configured to generate the video data stream such that the video data stream includes a further flag in a picture parameter set of the video data stream, the further flag indicating whether the first flag (ph_pic_output_flag) is present in the picture header of the independent random access picture.

[0346] <Aspect 21> The video encoder (100) may include a video data stream including, as the indication of whether the picture of the video preceding the dependent random access picture should be output, a supplemental enhancement information flag in the supplemental enhancement information of the output video data stream, or a picture parameter set flag in a picture parameter set of the output video data stream, or a sequence parameter set flag in a sequence parameter set of the output video data stream, or an external means flag, the value of which is set by an external unit external to the device (200); configured to generate the video data stream to include 18. The video encoder (100) of embodiment 17.

[0347] <Aspect 22> A video decoder (300) for receiving a video data stream containing video, the video decoder (300) configured to decode the video from the video data stream; the video decoder (300) is configured to decode the video in response to an indication of whether a picture of the video preceding a dependent random access picture should be output; A video decoder (300).

[0348] <Aspect 23> The video decoder (300) of aspect 22, wherein the video decoder (300) is configured to decode the video according to a first variable (NoOutputBeforeDrapFlag) indicating whether the picture of the video preceding the dependent random access picture should be output.

[0349] <Aspect 24> the video data stream includes the indication of whether the picture of the video preceding the dependent random access picture should be output; 24. The video decoder (300) of aspect 23, wherein the video decoder (300) is configured to decode the video according to the representation in the video data stream.

[0350] <Aspect 25> the video data stream includes supplemental enhancement information including the indication of whether the picture of the video preceding the dependent random access picture should be output; 25. The video decoder (300) of aspect 24, wherein the video decoder (300) is configured to decode the video according to the supplemental enhancement information.

[0351] <Aspect 26> the picture of the video preceding the dependent random access picture is an independent random access picture; the video data stream includes a flag (ph_pic_output_flag) having a predetermined value (0) in a picture header of the independent random access picture, whereby the predetermined value (0) of the flag (ph_pic_output_flag) indicates, for the independent random access picture that immediately precedes the dependent random access picture in the video data stream, that the independent random access picture should not be output; the video decoder (300) is configured to decode the video in response to the flag; 25. The video decoder (300) of embodiment 24.

[0352] <Aspect 27> the flag is a first flag, and the video data stream includes a further flag in a picture parameter set of the video data stream, the further flag indicating whether the first flag (ph_pic_output_flag) is present in the picture header of the independent random access picture; the video decoder (300) is configured to decode the video in response to the further flag; 27. The video decoder (300) of embodiment 26.

[0353] <Aspect 28> The video data stream may include, as the indication of whether the picture of the video preceding the dependent random access picture should be output: a supplemental enhancement information flag in the supplemental enhancement information of the output video data stream, or a picture parameter set flag in a picture parameter set of the output video data stream, or a sequence parameter set flag in a sequence parameter set of the output video data stream, or an external means flag, the value of which is set by an external unit external to the device (200); Including, the video decoder (300) is configured to decode the video according to the representation in the video data stream; 25. The video decoder (300) of embodiment 24.

[0354] <Aspect 29> the video decoder (300) configured to reconstruct the video from the video data stream; the video decoder (300) is configured to output or not output the picture of the video preceding the dependent random access picture in response to the first variable (NoOutputBeforeDrapFlag); A video decoder (300) according to any one of aspects 23 to 28.

[0355] <Aspect 30> A video decoder (300) according to any one of aspects 23 to 29, wherein the video decoder (300) is configured to determine the value of a second variable (PictureOutputFlag) for the picture of the video preceding the dependent random access picture in accordance with the first variable (NoOutputBeforeDrapFlag), the second variable (PictureOutputFlag) indicating for the picture whether the picture should be output or not, and the device (200) is configured to output or not output the picture in accordance with the second variable (PictureOutputFlag).

[0356] <Aspect 31> the picture of the video preceding the dependent random access picture is an independent random access picture; The video decoder (300) according to any one of aspects 23 to 30, wherein the video decoder (300) is configured to decode the video in response to the first variable (NoOutputBeforeDrapFlag) indicating that the independent random access picture should not be output.

[0357] <Aspect 32> the picture of the video preceding the dependent random access picture is an independent random access picture; The video decoder (300) according to any one of aspects 23 to 30, wherein the video decoder (300) is configured to decode the video in response to the first variable (NoOutputBeforeDrapFlag) indicating that the independent random access picture should be output.

[0358] <Aspect 33> An apparatus (200) according to any one of aspects 1 to 11; A video decoder (300) according to any one of aspects 22 to 32; Equipped with A video decoder (300) according to any one of aspects 22 to 32 is configured to receive an output video data stream of the device (200) according to any one of aspects 1 to 11; A video decoder (300) according to any one of aspects 22 to 32 is configured to decode the output video data stream to the video of the device (200) according to any one of aspects 1 to 11. system.

[0359] <Aspect 34> The system further comprises a video encoder (100) according to any one of aspects 17 to 21; The apparatus (200) according to any one of aspects 1 to 11 is configured to receive, as the input video data stream, the video data stream from the video encoder (100) according to any one of aspects 17 to 21. The system described in embodiment 33.

[0360] <Aspect 35> 1. A method for receiving an input video data stream, the input video data stream having encoded video, The method includes generating an output video data stream from the input video data stream; The method includes determining whether a picture of the video preceding a dependent random access picture should be output; method.

[0361] <Aspect 36> 1. A method for encoding video into a video data stream, comprising: the method comprising generating the video data stream such that the video data stream includes an indication of whether a picture of the video preceding a dependent random access picture should be output; method.

[0362] <Aspect 37> 1. A method for receiving a video data stream containing video, comprising: The method includes decoding the video from the video data stream; the step of decoding the video is performed in response to an indication of whether a picture of the video preceding a dependent random access picture should be output. method.

[0363] <Aspect 38> A computer program for performing the method according to any one of aspects 35 to 37 when the computer program is run on a computer or signal processor.

[0364] <Aspect 39> An apparatus (200) for receiving one or more input video data streams, each of the one or more input video data streams encoding an input video; the apparatus (200) is configured to generate an output video data stream from the one or more input video data streams, the output video data stream encoding an output video, the apparatus being configured to generate the output video data stream such that the output video is the input video encoded with one of the one or more input video data streams or such that the output video depends on the input video of at least one of the one or more input video data streams; The apparatus (200) is configured to determine an access unit removal time of a current picture of the plurality of pictures of the output video from a coded picture buffer; the apparatus (200) is configured to determine whether to use coded picture buffer delay offset information to determine the access unit removal time of the current picture from the coded picture buffer. Equipment (200).

[0365] <Aspect 40> the apparatus (200) is configured to drop one or more groups of pictures of the input video of a first video data stream of the one or more input video data streams to generate the output video data stream; the apparatus (200) is configured to determine an access unit removal time for at least one of the plurality of pictures of the output video from the coded picture buffer in response to the coded picture buffer delay offset information. 39. The apparatus (200) of claim 39.

[0366] <Aspect 41> the first video received by the device (200) is a pre-processed video resulting from an original video in which one or more groups of pictures have been dropped to generate a processed video; the apparatus (200) is configured to determine an access unit removal time of at least one of the plurality of pictures of the output video from the coded picture buffer in response to the coded picture buffer delay offset information. 39. The apparatus (200) of claim 39.

[0367] <Aspect 42> 42. The apparatus (200) according to aspect 40 or 41, wherein the buffer delay offset information depends on the number of pictures of the input video that are dropped.

[0368] <Aspect 43> the one or more input video data streams are two or more input video data streams; the apparatus (200) is configured to splice the processed video and the input video of a second video data stream of the two or more input video data streams to obtain the output video, and is configured to encode the output video into the output video data stream. The apparatus (200) according to any one of embodiments 40 to 42.

[0369] <Aspect 44> the apparatus (200) is configured to determine whether to use coded picture buffer delay offset information to determine the access unit removal time of the current picture depending on the position of the current picture in the output video, or the apparatus (200) is configured to determine whether to set a coded picture buffer delay offset value of the coded picture buffer delay offset information to 0 to determine the access unit removal time of the current picture according to the position of the current picture in the output video. 44. The apparatus (200) of embodiment 43.

[0370] <Aspect 45> The apparatus (200) of aspect 43 or 44, wherein the apparatus (200) is configured to determine whether to use coded picture buffer delay offset information to determine the access unit removal time of the current picture depending on the position of a previous non-discardable picture preceding the current picture in the output video.

[0371] <Aspect 46> The apparatus (200) of aspect 45 is configured to determine whether to use coded picture buffer delay offset information to determine the access unit removal time of the current picture depending on whether the previous non-discardable picture preceding the current picture in the output video is the first picture in a previous buffering period.

[0372] <Aspect 47> The apparatus (200) described in any of aspects 43 to 46, wherein the apparatus (200) is configured to determine whether to use coded picture buffer delay offset information to determine the access unit removal time of the current picture in accordance with a concatenation flag, and the current picture is the first picture of the input video of the second video data stream.

[0373] <Aspect 48> The apparatus (200) according to any of aspects 39 to 47, wherein the apparatus (200) is configured to determine the access unit removal time of the current picture depending on a removal time of a previous picture.

[0374] <Aspect 49> The apparatus (200) according to any of aspects 39 to 48, wherein the apparatus (200) is configured to determine the access unit removal time of the current picture in response to initial coded picture buffer removal delay information.

[0375] <Aspect 50> The apparatus (200) of aspect 49 is configured to update the initial coded picture buffer removal delay information in accordance with a clock tick to obtain temporary coded picture buffer removal delay information and determine the access unit removal time of the current picture.

[0376] <Aspect 51> If the concatenation flag is set to a first value, the apparatus (200) is configured to determine one or more removal times using the coded picture buffer delay offset information; The apparatus (200) of aspect 47, wherein, when the concatenation flag is set to a second value different from the first value, the apparatus (200) is configured not to use the coded picture buffer delay offset information to determine the one or more removal times.

[0377] <Aspect 52> The apparatus (200) of any of aspects 39 to 51, wherein the apparatus (200) is configured to signal to a video decoder (300) whether or not to use the coded picture buffer delay offset information to determine the access unit removal time of the current picture from the coded picture buffer.

[0378] <Aspect 53> 53. The apparatus (200) of aspect 52, wherein the current picture is positioned at a splicing point of the output video where two input videos are spliced ​​together.

[0379] <Aspect 54> a video data stream, the video data stream is encoded with video; the video data stream includes coded picture buffer delay offset information; Video data stream.

[0380] <Aspect 55> The video data stream of embodiment 54, wherein the video data stream includes a concatenation flag.

[0381] <Aspect 56> 56. The video data stream of aspect 54 or 55, wherein the video data stream includes initial coded picture buffer removal delay information.

[0382] <Aspect 57> When the concatenation flag is set to a first value, the concatenation flag indicates that the coded picture buffer delay offset information should be used to determine one or more removal times; When the concatenation flag is set to a second value different from the first value, the concatenation flag indicates that the indicated offset is not used to determine the one or more removal times. A video data stream according to embodiment 55.

[0383] <Aspect 58> A video encoder (100), the video encoder (100) configured to encode video into a video data stream; the video encoder (100) is configured to generate the video data stream such that the video data stream includes coded picture buffer delay offset information; Video Encoder (100).

[0384] <Aspect 59> 59. The video encoder (100) of aspect 58, wherein the video encoder (100) is configured to generate the video data stream such that the video data stream includes a concatenation flag.

[0385] <Aspect 60> 60. The video encoder (100) of aspect 58 or 59, wherein the video encoder (100) is configured to generate the video data stream such that the video data stream includes coded picture buffer delay offset information.

[0386] <Aspect 61> When the concatenation flag is set to a first value, the concatenation flag indicates that the coded picture buffer delay offset information should be used to determine one or more removal times; When the concatenation flag is set to a second value different from the first value, the concatenation flag indicates that the indicated offset is not used to determine the one or more removal times. 60. The video encoder (100) of embodiment 59.

[0387] <Aspect 62> A video decoder (300) for receiving a video data stream in which video is stored, the video decoder (300) configured to decode the video from the video data stream; the video decoder (300) is configured to decode the video according to an access unit removal time of a current picture of a plurality of pictures of the video from a coded picture buffer; the video decoder (300) is configured to decode the video in response to an indication of whether to use the coded picture buffer delay offset information to determine the access unit removal time of the current picture from the coded picture buffer. A video decoder (300).

[0388] <Aspect 63> 63. The video decoder (300) of claim 62, wherein the access unit removal time of at least one of the plurality of pictures of the video from the coded picture buffer depends on the coded picture buffer delay offset information.

[0389] <Aspect 64> A video decoder (300) according to aspect 62 or 63, wherein the video decoder (300) is configured to decode the video depending on whether or not coded picture buffer delay offset information is used to determine the access unit removal time of the current picture depending on the position of the current picture within the video.

[0390] <Aspect 65> A video decoder (300) according to aspect 62 or 63, wherein the video decoder (300) is configured to decode the video depending on whether the coded picture buffer delay offset value of the coded picture buffer delay offset information is set to 0 or not.

[0391] <Aspect 66> A video decoder (300) according to any of aspects 62 to 65, wherein the video decoder (300) is configured to determine whether to use coded picture buffer delay offset information to determine the access unit removal time of the current picture depending on the position of a previous non-discardable picture preceding the current picture in the video.

[0392] <Aspect 67> A video decoder (300) according to aspect 66, wherein the video decoder (300) is configured to determine whether to use coded picture buffer delay offset information to determine the access unit removal time of the current picture depending on whether the previous non-discardable picture preceding the current picture in the video is the first picture in the previous buffering period.

[0393] <Aspect 68> A video decoder (300) according to any of aspects 62 to 67, wherein the video decoder (300) is configured to determine, in accordance with a concatenation flag, whether to use coded picture buffer delay offset information to determine the access unit removal time of the current picture, the current picture being the first picture of the input video of the second video data stream.

[0394] <Aspect 69> 69. The video decoder (300) according to any of aspects 62 to 68, wherein the video decoder (300) is configured to determine the access unit removal time of the current picture depending on a removal time of a previous picture.

[0395] <Aspect 70> 70. The video decoder (300) according to any of aspects 62 to 69, wherein the video decoder (300) is configured to determine the access unit removal time of the current picture in response to initial coded picture buffer removal delay information.

[0396] <Aspect 71> A video decoder (300) according to aspect 70, wherein the video decoder (300) is configured to update the initial coded picture buffer removal delay information in response to clock ticks to obtain temporary coded picture buffer removal delay information and determine the access unit removal time of the current picture.

[0397] <Aspect 72> If the concatenation flag is set to a first value, the video decoder (300) is configured to use the coded picture buffer delay offset information to determine one or more removal times; A video decoder (300) according to aspect 68, wherein when the concatenation flag is set to a second value different from the first value, the video decoder (300) is configured not to use the coded picture buffer delay offset information to determine the one or more removal times.

[0398] <Aspect 73> An apparatus (200) according to any one of aspects 39 to 53; A video decoder (300) according to any one of aspects 62 to 72; Equipped with A video decoder (300) according to any one of aspects 62 to 72, configured to receive an output video data stream of the device (200) according to any one of aspects 39 to 53; The video decoder (300) according to any one of aspects 62 to 72 is configured to decode the video from the output video data stream of the device (200) according to any one of aspects 39 to 53. system.

[0399] <Aspect 74> The system further comprises a video encoder (100) according to any one of aspects 58 to 61; The apparatus (200) according to any one of aspects 39 to 53 is configured to receive, as the input video data stream, the video data stream from the video encoder (100) according to any one of aspects 58 to 61. The system described in embodiment 73.

[0400] <Aspect 75> 1. A method for receiving one or more input video data streams, each of the one or more input video data streams encoding an input video, the method comprising: the method includes generating an output video data stream from the one or more input video data streams, the output video data stream encoding an output video, the generating the output video data stream being performed such that the output video is the input video being encoded within an input video data stream of the one or more input video data streams or such that the output video depends on the input video of at least one of the one or more input video data streams; The method includes determining an access unit removal time of a current picture of a plurality of pictures of the output video from a coded picture buffer; the method comprising determining whether to use coded picture buffer delay offset information to determine the access unit removal time of the current picture from the coded picture buffer; method.

[0401] <Aspect 76> 1. A method for encoding video into a video data stream, comprising: the method comprising generating the video data stream such that the video data stream includes coded picture buffer delay offset information; method.

[0402] <Aspect 77> 1. A method for receiving a video data stream having stored video, comprising: The method includes decoding the video from the video data stream; the decoding of the video is performed in response to an access unit removal time of a current picture of a plurality of pictures of the video from a coded picture buffer; the decoding of the video is performed in response to an indication of whether to use coded picture buffer delay offset information to determine the access unit removal time of the current picture from the coded picture buffer. method.

[0403] <Aspect 78> 78. A computer program for performing the method according to any of embodiments 75 to 77 when the computer program is run on a computer or signal processor.

[0404] <Aspect 79> a video data stream, the video data stream is encoded with video; the video data stream includes an initial coded picture buffer removal delay; the video data stream includes an initial coded picture buffer removal offset; the video data stream includes information indicating whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods; Video data stream.

[0405] <Aspect 80> A video data stream as described in aspect 79, wherein the initial coded picture buffer removal delay indicates the time that must elapse for a first access unit of a picture of the video data stream that initializes the video decoder (300) before the first access unit is sent to the video decoder (300).

[0406] <Aspect 81> The video data stream of aspect 80, wherein the video data stream includes a single indication of whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over the two or more buffering periods.

[0407] <Aspect 82> the video data stream includes as the single indication a concatenation flag indicating whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over the two or more buffering periods; if the concatenation flag is equal to a first value, the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is constant over the two or more buffering periods; if the concatenation flag is different from the first value, the concatenation flag does not define whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is constant over the two or more buffering periods; A video data stream according to embodiment 81.

[0408] <Aspect 83> A video data stream as described in aspect 81 or 82, wherein if the single indication does not indicate that the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over the two or more buffering periods, the video data stream includes continuously updated information regarding the initial coded picture buffer removal delay information and continuously updated information regarding the initial coded picture buffer removal offset information.

[0409] <Aspect 84> A video data stream described in any of aspects 79 to 83, wherein if the video data stream includes information indicating that the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over the two or more buffering periods, the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant starting from a current position in the video data stream.

[0410] <Aspect 85> A video encoder (100), the video encoder (100) configured to encode video into a video data stream; the video encoder (100) is configured to generate the video data stream such that the video data stream includes an initial coded picture buffer removal delay; the video encoder (100) is configured to generate the video data stream such that the video data stream includes an initial coded picture buffer removal offset; the video encoder (100) is configured to generate the video data stream such that the video data stream includes information indicating whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined as constant over two or more buffering periods. Video Encoder (100).

[0411] <Aspect 86> A video encoder (100) according to aspect 85, wherein the initial coded picture buffer removal delay indicates the time that must elapse for a first access unit of a picture of the video data stream that initializes the video decoder (300) before transmitting the first access unit to the video decoder (300).

[0412] <Aspect 87> A video encoder (100) according to aspect 86, wherein the video encoder (100) is configured to generate the video data stream such that the video data stream includes a single indication indicating whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over the two or more buffering periods.

[0413] <Aspect 88> the video encoder (100) is configured to generate the video data stream such that the video data stream includes as the single indication a concatenation flag indicating whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined as constant over the two or more buffering periods; if the concatenation flag is equal to a first value, the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is constant over the two or more buffering periods; A video encoder (100) according to aspect 87, wherein, if the concatenation flag is different from the first value, the concatenation flag does not define whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is constant over the two or more buffering periods.

[0414] <Aspect 89> A video encoder (100) according to aspect 87 or 88, wherein if the single indication does not indicate that the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over the two or more buffering periods, the video encoder (100) is configured to generate the video data stream such that the video data stream includes continuously updated information regarding the initial coded picture buffer removal delay information and continuously updated information regarding the initial coded picture buffer removal offset information.

[0415] <Aspect 90> A video encoder (100) according to any one of aspects 85 to 89, wherein if the video data stream includes information indicating that the sum of the initial coding picture buffer removal delay and the initial coding picture buffer removal offset is defined to be constant over the two or more buffering periods, the sum of the initial coding picture buffer removal delay and the initial coding picture buffer removal offset is defined to be constant starting from a current position in the video data stream.

[0416] <Aspect 91> 1. An apparatus (200) for receiving two input video data streams, a first input video data stream and a second input video data stream, each of the two input video data streams encoding an input video; the apparatus (200) is configured to generate an output video data stream from the two input video data streams, the output video data stream encoding an output video, the apparatus being configured to generate the output video data stream by concatenating the first input video data stream and the second input video data stream; the apparatus (200) is configured to generate the output video data stream such that the output video data stream includes an initial coded picture buffer removal delay; the apparatus (200) is configured to generate the output video data stream such that the output video data stream includes an initial coded picture buffer removal offset; the apparatus (200) is configured to generate the output video data stream such that the output video data stream includes information indicating whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined as constant over two or more buffering periods. Equipment (200).

[0417] <Aspect 92> The apparatus (200) of aspect 91, wherein the initial coded picture buffer removal delay indicates the time that must elapse for the first access unit of a picture of the output video data stream that initializes the video decoder (300) before the first access unit is sent to the video decoder (300).

[0418] <Aspect 93> The apparatus (200) of aspect 92 is configured to generate the output video data stream such that the output video data stream includes a single indication of whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over the two or more buffering periods.

[0419] <Aspect 94> the apparatus (200) is configured to generate the output video data stream such that the output video data stream includes as the single indication a concatenation flag that indicates whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined as constant over the two or more buffering periods; if the concatenation flag is equal to a first value, the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is constant over the two or more buffering periods; if the concatenation flag is different from the first value, the concatenation flag does not define whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is constant over the two or more buffering periods; 94. The apparatus (200) according to embodiment 93.

[0420] <Aspect 95> The apparatus (200) of aspect 93 or 94, wherein if the single indication does not indicate that the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over the two or more buffering periods, the apparatus (200) is configured to generate the output video data stream such that the output video data stream includes continuously updated information regarding the initial coded picture buffer removal delay information and continuously updated information regarding the initial coded picture buffer removal offset information.

[0421] <Aspect 96> An apparatus (200) described in any of aspects 91 to 95, wherein if the video data stream includes information indicating that the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over the two or more buffering periods, the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant starting from a current position in the video data stream.

[0422] <Aspect 97> A video decoder (300) for receiving a video data stream in which video is stored, the video decoder (300) configured to decode the video from the video data stream; the video data stream includes an initial coded picture buffer removal delay; the video data stream includes an initial coded picture buffer removal offset; the video data stream includes information indicating whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods; the video decoder (300) is configured to decode the video in response to information indicating whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined as constant over the two or more buffering periods. A video decoder (300).

[0423] <Aspect 98> A video decoder (300) according to aspect 97, wherein the initial coded picture buffer removal delay indicates the time that must elapse before transmitting the first access unit to the video decoder (300) for the first access unit of a picture of the output video data stream that initializes the video decoder (300).

[0424] <Aspect 99> the video data stream includes a single indication of whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over the two or more buffering periods; the video decoder (300) is configured to decode the video in accordance with the single display; A video decoder (300) according to embodiment 98.

[0425] <Aspect 100> the video data stream includes as the single indication a concatenation flag indicating whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over the two or more buffering periods; if the concatenation flag is equal to a first value, the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is constant over the two or more buffering periods; if the concatenation flag is different from the first value, the concatenation flag does not define whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is constant over the two or more buffering periods; the video decoder (300) is configured to decode the video in response to the concatenation flag; A video decoder (300) according to embodiment 99.

[0426] <Aspect 101> if the single indication does not indicate that the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over the two or more buffering periods, the video data stream includes continuously updated information regarding the initial coded picture buffer removal delay information and continuously updated information regarding the initial coded picture buffer removal offset information; the video decoder (300) is configured to decode the video in response to the continuously updated information regarding the initial coded picture buffer removal delay information and the continuously updated information regarding the initial coded picture buffer removal offset information. A video decoder (300) according to aspect 99 or 100.

[0427] <Aspect 102> A video decoder (300) according to any of aspects 97 to 101, wherein if the video data stream includes information indicating that the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over the two or more buffering periods, the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant starting from a current position in the video data stream.

[0428] <Aspect 103> An apparatus (200) according to any one of aspects 91 to 96; A video decoder (300) according to any one of aspects 97 to 102; Equipped with A video decoder (300) according to any one of aspects 97 to 102, configured to receive an output video data stream of the device (200) according to any one of aspects 91 to 96; A video decoder (300) according to any one of aspects 97 to 102, configured to decode the video from the output video data stream of the device (200) according to any one of aspects 91 to 96. system.

[0429] <Aspect 104> The system further comprises a video encoder (100) according to any one of aspects 85 to 90; The apparatus (200) according to any one of aspects 91 to 96 is configured to receive, as the input video data stream, the video data stream from the video encoder (100) according to any one of aspects 85 to 90. The system described in embodiment 103.

[0430] <Aspect 105> 1. A method for encoding video into a video data stream, comprising: The method includes generating the video data stream such that the video data stream includes an initial coded picture buffer removal delay; The method includes generating the video data stream such that the video data stream includes an initial coded picture buffer removal offset; the method comprising generating the video data stream such that the video data stream includes information indicating whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods; method.

[0431] <Aspect 106> 1. A method for receiving two input video data streams, the first input video data stream and the second input video data stream, each of the two input video data streams encoding an input video; The method includes generating an output video data stream from the two input video data streams, the output video data stream encoding an output video, and an apparatus configured to generate the output video data stream by concatenating the first input video data stream and the second input video data stream; The method includes generating the output video data stream such that the output video data stream includes an initial coded picture buffer removal delay; The method includes generating an output video data stream such that the output video data stream includes an initial coded picture buffer removal offset; the method comprising generating the output video data stream such that the output video data stream includes information indicating whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods; method.

[0432] <Aspect 107> 1. A method for receiving a video data stream having video stored thereon, comprising: The method includes decoding the video from the video data stream; the video data stream includes an initial coded picture buffer removal delay; the video data stream includes an initial coded picture buffer removal offset; the video data stream includes information indicating whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant over two or more buffering periods; the method includes decoding the video in response to the information indicating whether the sum of the initial coded picture buffer removal delay and the initial coded picture buffer removal offset is defined to be constant across the two or more buffering periods. method.

[0433] <Aspect 108> A computer program for performing the method according to any of aspects 105 to 107 when the computer program is run on a computer or signal processor.

[0434] <Aspect 109> a video data stream, the video data stream is encoded with video; the video data stream includes an indication (general_same_pic_timing_in_all_ols_flag) indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit of the plurality of access units of one coded video sequence of the one or more coded video sequences of the video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit; When the indication (general_same_pic_timing_in_all_ols_flag) has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of the plurality of output layer sets of the access unit; When the indication (general_same_pic_timing_in_all_ols_flag) has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of the multiple output layer sets of the access unit. Video data stream.

[0435] <Aspect 110> A video data stream as described in aspect 109, wherein when the indication (general_same_pic_timing_in_all_ols_flag) has the first value, the network abstraction layer unit does not include any other supplemental enhancement information messages different from picture timing supplemental enhancement information messages.

[0436] <Aspect 111> A video data stream according to aspect 109 or 110, wherein if the indication (general_same_pic_timing_in_all_ols_flag) has the first value, the network abstraction layer unit does not include any other supplemental enhancement information messages.

[0437] <Aspect 112> A video data stream described in any of aspects 109 to 111, wherein when the indication (general_same_pic_timing_in_all_ols_flag) has the first value, for each network abstraction layer unit that includes a scalable non-nested picture timing supplemental enhancement information message for each access unit of the plurality of access units of one coded video sequence among the one or more coded video sequences, the network abstraction layer unit does not include any other supplemental enhancement information message different from the picture timing supplemental enhancement information message or does not include any other supplemental enhancement information message.

[0438] <Aspect 113> A video data stream described in any of aspects 109 to 111, wherein when the indication (general_same_pic_timing_in_all_ols_flag) has the first value, for each network abstraction layer unit that includes a scalable non-nested picture timing supplemental enhancement information message for each access unit of each of the plurality of access units of the one or more coded video sequences of the video data stream, the network abstraction layer unit does not include any other supplemental enhancement information message different from the picture timing supplemental enhancement information message or does not include any other supplemental enhancement information message.

[0439] <Aspect 114> A video encoder (100), the video encoder (100) configured to encode video into a video data stream; the video encoder (100) is configured to generate the video data stream such that the video data stream includes an indication (general_same_pic_timing_in_all_ols_flag) indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit of the plurality of access units of one coded video sequence of the one or more coded video sequences of the video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit; When the indication (general_same_pic_timing_in_all_ols_flag) has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of the plurality of output layer sets of the access unit; When the indication (general_same_pic_timing_in_all_ols_flag) has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of the multiple output layer sets of the access unit. Video Encoder (100).

[0440] <Aspect 115> A video encoder (100) according to aspect 114, wherein when the indication (general_same_pic_timing_in_all_ols_flag) has the first value, the network abstraction layer unit does not include any other supplemental enhancement information message different from the picture timing supplemental enhancement information message.

[0441] <Aspect 116> A video encoder (100) according to aspect 114 or 115, wherein if the indication (general_same_pic_timing_in_all_ols_flag) has the first value, the network abstraction layer unit does not include any other supplemental enhancement information messages.

[0442] <Aspect 117> A video encoder (100) according to any of aspects 114 to 116, wherein when the indication (general_same_pic_timing_in_all_ols_flag) has the first value, the video encoder (100) is configured to generate the video data stream such that, for each network abstraction layer unit including a scalable non-nested picture timing supplemental enhancement information message for each access unit of the plurality of access units of one coded video sequence among the one or more coded video sequences, the network abstraction layer unit does not include any other supplemental enhancement information message different from the picture timing supplemental enhancement information message or does not include any other supplemental enhancement information message.

[0443] <Aspect 118> A video encoder (100) according to any of aspects 114 to 116, wherein when the indication (general_same_pic_timing_in_all_ols_flag) has the first value, the video encoder (100) is configured to generate the video data stream such that, for each network abstraction layer unit including a scalable non-nested picture timing supplemental enhancement information message for each access unit of each of the plurality of access units of the one or more coded video sequences of the video data stream, the network abstraction layer unit does not include any other supplemental enhancement information message different from the picture timing supplemental enhancement information message or does not include any other supplemental enhancement information message.

[0444] <Aspect 119> An apparatus (200) for receiving an input video data stream, the input video data stream having encoded video; the apparatus (200) is configured to generate a processed video data stream from the input video data stream; the apparatus (200) is configured to generate the processed video data stream such that the processed video data stream includes an indication (general_same_pic_timing_in_all_ols_flag) indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit of the plurality of access units of one coded video sequence of the one or more coded video sequences of the processed video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit; When the indication (general_same_pic_timing_in_all_ols_flag) has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of the plurality of output layer sets of the access unit; When the indication (general_same_pic_timing_in_all_ols_flag) has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of the multiple output layer sets of the access unit. Equipment (200).

[0445] <Aspect 120> The apparatus (200) of aspect 119 is configured to generate the processed video data stream such that the network abstraction layer unit does not include any other supplemental enhancement information messages that are different from picture timing supplemental enhancement information messages when the indication (general_same_pic_timing_in_all_ols_flag) has the first value.

[0446] <Aspect 121> The apparatus (200) of aspect 119 or 120, wherein, when the indication (general_same_pic_timing_in_all_ols_flag) has the first value, the apparatus (200) is configured to generate the processed video data stream such that the network abstraction layer unit does not include any other supplemental enhancement information messages.

[0447] <Aspect 122> An apparatus (200) according to any of aspects 119 to 121, wherein, when the indication (general_same_pic_timing_in_all_ols_flag) has the first value, the apparatus (200) is configured to generate the processed video data stream for each network abstraction layer unit including a scalable non-nested picture timing supplemental enhancement information message for each access unit of the plurality of access units of one coded video sequence among the one or more coded video sequences, such that the network abstraction layer unit does not include any other supplemental enhancement information message different from the picture timing supplemental enhancement information message or does not include any other supplemental enhancement information message.

[0448] <Aspect 123> An apparatus (200) described in any of aspects 119 to 121, wherein when the indication (general_same_pic_timing_in_all_ols_flag) has the first value, the apparatus (200) is configured to generate the processed video data stream such that, for each network abstraction layer unit including a scalable non-nested picture timing supplemental enhancement information message for each access unit of each of the plurality of access units of the one or more coded video sequences of the processed video data stream, the network abstraction layer unit does not include any other supplemental enhancement information message different from the picture timing supplemental enhancement information message or does not include any other supplemental enhancement information message.

[0449] <Aspect 124> A video decoder (300) for receiving a video data stream containing video, the video decoder (300) configured to decode the video from the video data stream; the video data stream includes an indication (general_same_pic_timing_in_all_ols_flag) indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit of the plurality of access units of one coded video sequence of the one or more coded video sequences of the video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit; When the indication (general_same_pic_timing_in_all_ols_flag) has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of the plurality of output layer sets of the access unit; If the indication (general_same_pic_timing_in_all_ols_flag) has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of the plurality of output layer sets of the access unit; the video decoder (300) is configured to decode the video in response to the display; A video decoder (300).

[0450] <Aspect 125> A video decoder (300) according to aspect 124, wherein when the indication (general_same_pic_timing_in_all_ols_flag) has the first value, the network abstraction layer unit does not include any other supplemental enhancement information message different from the picture timing supplemental enhancement information message.

[0451] <Aspect 126> A video decoder (300) according to aspect 124 or 125, wherein if the indication (general_same_pic_timing_in_all_ols_flag) has the first value, the network abstraction layer unit does not include any other supplemental enhancement information messages.

[0452] <Aspect 127> A video decoder (300) according to any of aspects 124 to 126, wherein, when the indication (general_same_pic_timing_in_all_ols_flag) has the first value, for each network abstraction layer unit that includes a scalable non-nested picture timing supplemental enhancement information message for each access unit of the plurality of access units of one coded video sequence among the one or more coded video sequences, the network abstraction layer does not include any other supplemental enhancement information message different from the picture timing supplemental enhancement information message or does not include any other supplemental enhancement information message.

[0453] <Aspect 128> A video decoder (300) according to any of aspects 124 to 126, wherein, when the indication (general_same_pic_timing_in_all_ols_flag) has the first value, for each network abstraction layer unit that includes a scalable non-nested picture timing supplemental enhancement information message for each access unit of the plurality of access units of each of the one or more coded video sequences of the video data stream, the network abstraction layer unit does not include any other supplemental enhancement information message different from the picture timing supplemental enhancement information message or does not include any other supplemental enhancement information message.

[0454] <Aspect 129> An apparatus (200) according to any one of aspects 119 to 123; A video decoder (300) according to any one of aspects 124 to 128; Equipped with A video decoder (300) according to any one of aspects 124 to 128, configured to receive a processed video data stream of the device (200) according to any one of aspects 119 to 123; A video decoder (300) according to any one of aspects 124 to 128, configured to decode video from an output video data stream of an apparatus (200) according to any one of aspects 119 to 123. system.

[0455] <Aspect 130> The system further comprises a video encoder (100) according to any one of aspects 114 to 118; The system described in aspect 129, wherein the device (200) described in any of aspects 119 to 123 is configured to receive the video data stream from the video encoder (100) described in any of aspects 114 to 118 as the input video data stream.

[0456] <Aspect 131> 1. A method for encoding video into a video data stream, comprising: the method includes generating the video data stream such that the video data stream includes an indication (general_same_pic_timing_in_all_ols_flag) indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit of the plurality of access units of one coded video sequence of the one or more coded video sequences of the video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit; When the indication (general_same_pic_timing_in_all_ols_flag) has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of the plurality of output layer sets of the access unit; When the indication (general_same_pic_timing_in_all_ols_flag) has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of the multiple output layer sets of the access unit. method.

[0457] <Aspect 132> 1. A method for receiving an input video data stream, the input video data stream having encoded video, The method includes generating a processed video data stream from the input video data stream; the method includes generating the processed video data stream such that the processed video data stream includes an indication (general_same_pic_timing_in_all_ols_flag) indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit of the plurality of access units of one coded video sequence of the one or more coded video sequences of the processed video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit; When the indication (general_same_pic_timing_in_all_ols_flag) has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of the plurality of output layer sets of the access unit; When the indication (general_same_pic_timing_in_all_ols_flag) has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of the multiple output layer sets of the access unit. method.

[0458] <Aspect 133> 1. A method for receiving a video data stream containing video, comprising: The method includes decoding the video from the video data stream; the video data stream includes an indication (general_same_pic_timing_in_all_ols_flag) indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit of the plurality of access units of one coded video sequence of the one or more coded video sequences of the video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit; When the indication (general_same_pic_timing_in_all_ols_flag) has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of the plurality of output layer sets of the access unit; If the indication (general_same_pic_timing_in_all_ols_flag) has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of the plurality of output layer sets of the access unit; the step of decoding the video is performed in response to the display. method.

[0459] <Aspect 134> A computer program for performing the method according to any of aspects 131 to 133 when the computer program is run on a computer or signal processor.

[0460] <Aspect 135> a video data stream, the video data stream is encoded with video; the video data stream includes one or more scalable nested supplemental enhancement information messages; the one or more scalable nested supplemental enhancement information messages include a plurality of syntax elements; each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or part of the video data stream; Video data stream.

[0461] <Aspect 136> the video data stream includes one or more scalable non-nested supplemental enhancement information messages; the one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include the plurality of syntax elements; each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or the portion of the video data stream and in each of the scalable non-nested supplemental enhancement information messages of the video data stream or the portion of the video data stream; A video data stream as described in embodiment 135.

[0462] <Aspect 137> the video data stream includes a plurality of access units, each access unit of the plurality of access units being assigned to one of a plurality of pictures of the video; the portion of the video data stream is an access unit of the plurality of access units of the video data stream; each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the access unit; A video data stream as described in embodiment 135.

[0463] <Aspect 138> the video data stream includes one or more scalable non-nested supplemental enhancement information messages; the one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include the plurality of syntax elements; each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the access unit and in each of the scalable non-nested supplemental enhancement information messages of the access unit; A video data stream as described in embodiment 137.

[0464] <Aspect 139> the portion of the video data stream is a coded video sequence of the video data stream; each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the coded video sequence. A video data stream as described in embodiment 135.

[0465] <Aspect 140> the video data stream includes one or more scalable non-nested supplemental enhancement information messages; the one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include the plurality of syntax elements; each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the coded video sequence and in each of the scalable non-nested supplemental enhancement information messages of the coded video sequence. A video data stream as described in embodiment 139.

[0466] <Aspect 141> A video data stream as described in aspect 135, wherein each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream.

[0467] <Aspect 142> A video data stream as described in aspect 141, wherein each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream and in each of the scalable non-nested supplemental enhancement information messages of the video data stream.

[0468] <Aspect 143> A video data stream described in any of aspects 135 to 142, wherein the video data stream or the portion of the video data stream includes at least one buffering period supplemental extension information message, and the buffering period supplemental extension information message defines the size of each syntax element of the one or more syntax elements of the plurality of syntax elements.

[0469] <Aspect 144> The buffering period supplemental extension information message may include, to define the size for each of the one or more syntax elements of the plurality of syntax elements: bp_cpb_initial_removal_delay_length_minus1 element, bp_cpb_removal_delay_length_minus1 element, bp_dpb_output_delay_length_minus1 element, bp_du_cpb_removal_delay_increment_length_minus1 element, bp_dpb_output_delay_du_length_minus1 element The video data stream of embodiment 143, comprising at least one of:

[0470] <Aspect 145> A video data stream as described in aspect 143 or 144, wherein for each access unit of a plurality of access units of the video data stream that includes a scalable nested buffering period supplemental enhancement information message, the access unit also includes a scalable non-nested buffering period supplemental enhancement information message.

[0471] <Aspect 146> A video data stream as described in aspect 143 or 144, wherein for each single layer access unit of a plurality of single layer access units of the video data stream that includes a scalable nested buffering period supplemental enhancement information message, the single layer access unit also includes a non-scalable nested buffering period supplemental enhancement information message.

[0472] <Aspect 147> A video encoder (100), the video encoder (100) configured to encode video into a video data stream; the video encoder (100) is configured to generate the video data stream such that the video data stream includes one or more scalable nested supplemental enhancement information messages; the video encoder (100) is configured to generate the video data stream such that the one or more scalable nested supplemental enhancement information messages include a plurality of syntax elements; the video encoder (100) is configured to generate the video data stream such that each syntax element of one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or part of the video data stream. Video Encoder (100).

[0473] <Aspect 148> the video encoder (100) is configured to generate the video data stream such that the video data stream includes one or more scalable non-nested supplemental enhancement information messages; the video encoder (100) is configured to generate the video data stream such that the one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include the plurality of syntax elements; the video encoder (100) is configured to generate the video data stream such that each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or the portion of the video data stream and in each of the scalable non-nested supplemental enhancement information messages of the video data stream or the portion of the video data stream. 148. A video encoder (100) according to embodiment 147.

[0474] <Aspect 149> The video encoder (100) is configured to generate the video data stream such that the video data stream includes a plurality of access units, each access unit of the plurality of access units being assigned to one of a plurality of pictures of the video; the portion of the video data stream is one access unit of the plurality of access units of the video data stream; the video encoder (100) is configured to generate the video data stream such that each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the access unit. 148. A video encoder (100) according to embodiment 147.

[0475] <Aspect 150> the video encoder (100) is configured to generate the video data stream such that the video data stream includes one or more scalable non-nested supplemental enhancement information messages; the video encoder (100) is configured to generate the video data stream such that the one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include the plurality of syntax elements; the video encoder (100) is configured to generate the video data stream such that each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the access unit and in each of the scalable non-nested supplemental enhancement information messages of the access unit. 150. A video encoder (100) according to embodiment 149.

[0476] <Aspect 151> the portion of the video data stream is a coded video sequence of the video data stream; the video encoder (100) is configured to generate the video data stream such that each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the coded video sequence. 148. A video encoder (100) according to embodiment 147.

[0477] <Aspect 152> the video encoder (100) is configured to generate the video data stream such that the video data stream includes one or more scalable non-nested supplemental enhancement information messages; the video encoder (100) is configured to generate the video data stream such that the one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include the plurality of syntax elements; the video encoder (100) is configured to generate the video data stream such that each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the coded video sequence and in each of the scalable non-nested supplemental enhancement information messages of the coded video sequence. 152. The video encoder (100) of embodiment 151.

[0478] <Aspect 153> A video encoder (100) as described in aspect 147, wherein the video encoder (100) is configured to generate the video data stream such that each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream.

[0479] <Aspect 154> A video encoder (100) as described in aspect 153, wherein the video encoder (100) is configured to generate the video data stream such that each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream and in each of the scalable non-nested supplemental enhancement information messages of the video data stream.

[0480] <Aspect 155> A video encoder (100) according to any of aspects 147 to 154, wherein the video encoder (100) is configured to generate the video data stream such that the video data stream or the portion of the video data stream includes at least one buffering period supplemental extension information message, the buffering period supplemental extension information message defining the size of each syntax element of the one or more syntax elements of the plurality of syntax elements.

[0481] <Aspect 156> The video encoder (100) further comprises: bp_cpb_initial_removal_delay_length_minus1 element, bp_cpb_removal_delay_length_minus1 element, bp_dpb_output_delay_length_minus1 element, bp_du_cpb_removal_delay_increment_length_minus1 element, bp_dpb_output_delay_du_length_minus1 element 156. The video encoder (100) of embodiment 155, configured to generate the video data stream to include at least one of:

[0482] <Aspect 157> A video encoder (100) according to aspect 155 or 156, wherein the video encoder (100) is configured to generate the video data stream such that for each access unit of a plurality of access units of the video data stream that includes a scalable nested buffering period supplemental enhancement information message, the access unit also includes a buffering period supplemental enhancement information message that is not scalable nested.

[0483] <Aspect 158> A video encoder (100) according to aspect 155 or 156, wherein the video encoder (100) is configured to generate the video data stream such that for each single-layer access unit of a plurality of single-layer access units of the video data stream that includes a scalable nested buffering period supplemental enhancement information message, the single-layer access unit also includes a buffering period supplemental enhancement information message that is not scalable nested.

[0484] <Aspect 159> An apparatus (200) for receiving an input video data stream, the input video data stream having encoded video; the apparatus (200) is configured to generate an output video data stream from the input video data stream; the video data stream includes one or more scalable nested supplemental enhancement information messages; the one or more scalable nested supplemental enhancement information messages include a plurality of syntax elements; each syntax element of one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or portion of the video data stream; the apparatus (200) is configured to process the one or more scalable nested supplemental enhancement information messages; Equipment (200).

[0485] <Aspect 160> the video data stream includes one or more scalable non-nested supplemental enhancement information messages; the one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include the plurality of syntax elements; each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or the portion of the video data stream and in each of the scalable non-nested supplemental enhancement information messages of the video data stream or the portion of the video data stream; the apparatus (200) is configured to process the one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages. The apparatus (200) according to embodiment 159.

[0486] <Aspect 161> the video data stream includes a plurality of access units, each access unit of the plurality of access units being assigned to one of a plurality of pictures of the video; the portion of the video data stream is one access unit of the plurality of access units of the video data stream; each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the access unit; The apparatus (200) according to embodiment 159.

[0487] <Aspect 162> the video data stream includes one or more scalable non-nested supplemental enhancement information messages; the one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include the plurality of syntax elements; each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the access unit and in each of the scalable non-nested supplemental enhancement information messages of the access unit; the apparatus (200) is configured to process the one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages. The apparatus (200) according to embodiment 161.

[0488] <Aspect 163> the portion of the video data stream is a coded video sequence of the video data stream; each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the coded video sequence. The apparatus (200) according to embodiment 159.

[0489] <Aspect 164> the video data stream includes one or more scalable non-nested supplemental enhancement information messages; the one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include the plurality of syntax elements; each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the coded video sequence and in each of the scalable non-nested supplemental enhancement information messages of the coded video sequence; the apparatus (200) is configured to process the one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages. The apparatus (200) of embodiment 163.

[0490] <Aspect 165> The apparatus (200) of aspect 159, wherein each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream.

[0491] <Aspect 166> each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream and in each of the scalable non-nested supplemental enhancement information messages of the video data stream; the apparatus (200) is configured to process the one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages. The apparatus (200) of embodiment 165.

[0492] <Aspect 167> the video data stream or the portion of the video data stream includes at least one buffering period supplemental enhancement information message, the buffering period supplemental enhancement information message defining a size of the one or more of the plurality of syntax elements; the apparatus (200) is configured to process the at least one buffering period supplemental extension information message; The device (200) according to any one of embodiments 159 to 166.

[0493] <Aspect 168> The buffering period supplemental extension information message may include, in order to define a size of the one or more of the plurality of syntax elements: bp_cpb_initial_removal_delay_length_minus1 element, bp_cpb_removal_delay_length_minus1 element, bp_dpb_output_delay_length_minus1 element, bp_du_cpb_removal_delay_increment_length_minus1 element, bp_dpb_output_delay_du_length_minus1 element The apparatus (200) of embodiment 167, comprising at least one of:

[0494] <Aspect 169> for each access unit of a plurality of access units of the video data stream that includes a scalable nested buffering period supplemental enhancement information message, the access unit also includes a scalable non-nested buffering period supplemental enhancement information message; the apparatus (200) is configured to process the scalable nested supplemental enhancement information message and the scalable non-nested supplemental enhancement information message; 169. The apparatus (200) of any one of embodiments 167 to 168.

[0495] <Aspect 170> for each single layer access unit of a plurality of single layer access units of the video data stream that includes a scalable nested buffering period supplemental enhancement information message, the single layer access unit also includes a scalable non-nested buffering period supplemental enhancement information message; the apparatus (200) is configured to process the scalable nested supplemental enhancement information message and the scalable non-nested supplemental enhancement information message; 169. The apparatus (200) of any one of embodiments 167 to 168.

[0496] <Aspect 171> A video decoder (300) for receiving a video data stream containing video, the video decoder (300) configured to decode the video from the video data stream; the video data stream includes one or more scalable nested supplemental enhancement information messages; the one or more scalable nested supplemental enhancement information messages include a plurality of syntax elements; each syntax element of one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or portion of the video data stream; the video decoder (300) is configured to decode the video in response to the one or more syntax elements of the plurality of syntax elements; A video decoder (300).

[0497] <Aspect 172> the video data stream includes one or more scalable non-nested supplemental enhancement information messages; the one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include the plurality of syntax elements; each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or the portion of the video data stream and in each of the scalable non-nested supplemental enhancement information messages of the video data stream or the portion of the video data stream; The video decoder (300) according to embodiment 171.

[0498] <Aspect 173> the video data stream includes a plurality of access units, each access unit of the plurality of access units being assigned to one of a plurality of pictures of the video; the portion of the video data stream is one access unit of the plurality of access units of the video data stream; each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the access unit; The video decoder (300) according to embodiment 171.

[0499] <Aspect 174> the video data stream includes one or more scalable non-nested supplemental enhancement information messages; the one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include the plurality of syntax elements; each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the access unit and in each of the scalable non-nested supplemental enhancement information messages of the access unit; The video decoder (300) according to embodiment 173.

[0500] <Aspect 175> the portion of the video data stream is a coded video sequence of the video data stream; each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the coded video sequence. The video decoder (300) according to embodiment 171.

[0501] <Aspect 176> the video data stream includes one or more scalable non-nested supplemental enhancement information messages; the one or more scalable nested supplemental enhancement information messages and the one or more scalable non-nested supplemental enhancement information messages include the plurality of syntax elements; each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the coded video sequence and in each of the scalable non-nested supplemental enhancement information messages of the coded video sequence. The video decoder (300) according to embodiment 175.

[0502] <Aspect 177> A video decoder (300) as described in aspect 171, wherein each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream.

[0503] <Aspect 178> A video decoder (300) as described in aspect 177, wherein each syntax element of the one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream and in each of the scalable non-nested supplemental enhancement information messages of the video data stream.

[0504] <Aspect 179> A video decoder (300) according to any of aspects 171 to 178, wherein the video data stream or the portion of the video data stream includes at least one buffering period supplemental extension information message, the buffering period supplemental extension information message defining the size of each syntax element of the one or more syntax elements of the plurality of syntax elements.

[0505] <Aspect 180> The buffering period supplemental extension information message may include, to define the size for each of the one or more syntax elements of the plurality of syntax elements: bp_cpb_initial_removal_delay_length_minus1 element, bp_cpb_removal_delay_length_minus1 element, bp_dpb_output_delay_length_minus1 element, bp_du_cpb_removal_delay_increment_length_minus1 element, bp_dpb_output_delay_du_length_minus1 element 179. The video decoder (300) of claim 179, comprising at least one of:

[0506] <Aspect 181> A video decoder (300) according to aspect 179 or 180, wherein for each access unit of a plurality of access units of the video data stream that includes a scalable nested buffering period supplemental enhancement information message, the access unit also includes a non-scalable nested buffering period supplemental enhancement information message.

[0507] <Aspect 182> A video decoder (300) according to aspect 179 or 180, wherein for each single layer access unit of a plurality of single layer access units of the video data stream that includes a scalable nested buffering period supplemental enhancement information message, the single layer access unit also includes a non-scalable nested buffering period supplemental enhancement information message.

[0508] <Aspect 183> An apparatus (200) according to any one of aspects 159 to 170; A video decoder (300) according to any one of aspects 171 to 182; Equipped with A video decoder (300) according to any one of aspects 171 to 182, configured to receive the output video data stream of the device (200) according to any one of aspects 159 to 170; A video decoder (300) according to any one of aspects 171 to 182, configured to decode the video from the output video data stream of the device (200) according to any one of aspects 159 to 170. system.

[0509] <Aspect 184> The system further comprises a video encoder (100) according to any one of aspects 147 to 158; The apparatus (200) according to any one of aspects 159 to 170 is configured to receive the video data stream from the video encoder (100) according to any one of aspects 147 to 158 as the input video data stream. The system described in embodiment 183.

[0510] <Aspect 185> 1. A method for encoding video into a video data stream, comprising: The method includes generating the video data stream such that the video data stream includes one or more scalable nested supplemental enhancement information messages; The method includes generating the video data stream such that the one or more scalable nested supplemental enhancement information messages include a plurality of syntax elements; the method comprising generating the video data stream such that each syntax element of one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or part of the video data stream; method.

[0511] <Aspect 186> 1. A method for receiving an input video data stream, the input video data stream having encoded video, The method includes generating an output video data stream from the input video data stream; the video data stream includes one or more scalable nested supplemental enhancement information messages; the one or more scalable nested supplemental enhancement information messages include a plurality of syntax elements; each syntax element of one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or portion of the video data stream; the method including processing the one or more scalable nested supplemental enhancement information messages; method.

[0512] <Aspect 187> 1. A method for receiving a video data stream containing video, comprising: The method includes decoding the video from the video data stream; the video data stream includes one or more scalable nested supplemental enhancement information messages; the one or more scalable nested supplemental enhancement information messages include a plurality of syntax elements; each syntax element of one or more syntax elements of the plurality of syntax elements is defined to have the same size in each of the scalable nested supplemental enhancement information messages of the video data stream or portion of the video data stream; wherein the decoding of the video is performed in response to the one or more syntax elements of the plurality of syntax elements. method.

[0513] <Aspect 188> A computer program for performing the method according to any of embodiments 185 to 187 when the computer program is run on a computer or signal processor.

Claims

1. A video decoder (300) for receiving a video data stream containing video, comprising: the video decoder (300) is configured to decode the video from the video data stream; the video data stream includes an indication (general_same_pic_timing_in_all_ols_flag) that indicates whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit of a plurality of access units of one coded video sequence of the one or more coded video sequences of the video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit; When the indication (general_same_pic_timing_in_all_ols_flag) has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of the plurality of output layer sets of the access unit; if the indication (general_same_pic_timing_in_all_ols_flag) has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of the plurality of output layer sets of the access unit; the video decoder (300) is configured to decode the video in response to the display; A video decoder (300).

2. 2. The video decoder (300) of claim 1, wherein if the indication has the first value, the network abstraction layer unit does not include any other supplemental enhancement information messages with different picture timing.

3. 3. The video decoder (300) of claim 1 or 2, wherein if the indication has the first value, all supplemental enhancement information messages have the same payload type.

4. A video decoder (300) according to any one of claims 1 to 3, wherein when the indication (general_same_pic_timing_in_all_ols_flag) has the first value, the network abstraction layer unit does not include any other supplemental enhancement information message different from a picture timing supplemental enhancement information message.

5. The video decoder (300) of any one of claims 1 to 4, wherein if the indication (general_same_pic_timing_in_all_ols_flag) has the first value, the network abstraction layer unit does not include any other supplemental enhancement information messages.

6. A video encoder (100), comprising: The video encoder (100) is configured to encode video into a video data stream; the video encoder (100) is configured to generate the video data stream such that the video data stream includes an indication (general_same_pic_timing_in_all_ols_flag) indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit of a plurality of access units of one coded video sequence of the one or more coded video sequences of the video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit; When the indication (general_same_pic_timing_in_all_ols_flag) has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of the plurality of output layer sets of the access unit; If the indication (general_same_pic_timing_in_all_ols_flag) has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of the multiple output layer sets of the access unit; A video encoder (100).

7. 7. The video encoder of claim 6, wherein when the indication (general_same_pic_timing_in_all_ols_flag) has the first value, the network abstraction layer unit does not include any other supplemental enhancement information messages that have different picture timing.

8. 8. A video encoder (100) according to claim 6 or 7, wherein if the indication has the first value, all supplemental enhancement information messages have the same payload type.

9. A video encoder (100) according to any one of claims 6 to 8, wherein when the indication (general_same_pic_timing_in_all_ols_flag) has the first value, the network abstraction layer unit does not include any other supplemental enhancement information message different from a picture timing supplemental enhancement information message.

10. The video encoder (100) of any one of claims 6 to 9, wherein if the indication (general_same_pic_timing_in_all_ols_flag) has the first value, the network abstraction layer unit does not include any other supplemental enhancement information messages.

11. 1. A method for receiving a video data stream containing video, comprising: The method includes decoding the video from the video data stream; the video data stream includes an indication (general_same_pic_timing_in_all_ols_flag) that indicates whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit of a plurality of access units of one coded video sequence of the one or more coded video sequences of the video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit; When the indication (general_same_pic_timing_in_all_ols_flag) has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of the plurality of output layer sets of the access unit; if the indication (general_same_pic_timing_in_all_ols_flag) has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of the plurality of output layer sets of the access unit; the step of decoding the video is performed in response to the display. method.

12. 1. A method for encoding video into a video data stream, comprising: the method includes generating the video data stream such that the video data stream includes an indication (general_same_pic_timing_in_all_ols_flag) indicating whether a scalable non-nested picture timing supplemental enhancement information message of a network abstraction layer unit of one access unit of a plurality of access units of one coded video sequence of the one or more coded video sequences of the video data stream is defined to apply to all output layer sets of a plurality of output layer sets of the access unit; When the indication (general_same_pic_timing_in_all_ols_flag) has a first value, the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit is defined to apply to all output layer sets of the plurality of output layer sets of the access unit; If the indication (general_same_pic_timing_in_all_ols_flag) has a value different from the first value, the indication does not define whether the scalable non-nested picture timing supplemental enhancement information message of the network abstraction layer unit of the access unit applies to all output layer sets of the multiple output layer sets of the access unit; method.

13. A computer program for carrying out the method according to claim 11 or 12 when the computer program is run on a computer or signal processor.