Patent Description:
In the following, different inventive embodiments and aspects will be described.

In state-of-the-art lossy video compression, the encoder quantizes the prediction residual or the transformed prediction residual using a specific quantization step size Δ. The smaller the step size, the finer the quantization and the smaller the error between original and reconstructed signal. Recent video coding standards (such as H. <NUM> and H. <NUM>) derive that quantization step size Δ using an exponential function of a so-called quantization parameter (QP), e.g.: <MAT>.

The exponential relationship between quantization step size and quantization parameter allows a finer adjustment of the resulting bit rate. The decoder needs to know the quantization step size to perform the correct scaling of the quantized signal. This stage is sometimes referred to as "inverse quantization" although quantization is irreversible. That is why the decoder parses the scaling factor or QP from the bitstream. The QP signalling is typically performed hierarchically, i.e. a base QP is signalled at a higher level in the bitstream, e.g. at picture level. At sub-picture level, where a picture can consist of multiple slices, tiles or bricks, only a delta to the base QP is signalled. In order to adjust the bitrate at an even finer granularity, a delta QP can even be signalled per block or area of blocks, e.g. signaled in one transform unit within an NxN area of coding blocks in HEVC. Encoders usually use the delta QP technique for subjective optimization or rate-control algorithms. Without loss of generality, it is assumed in the following that the base unit in the presented invention is a picture, and hence, the base QP is signalled by the encoder for each picture consisting of a single slice. In addition to this base QP, also referred to as slice QP, a delta QP can be signalled for each transform block (or any union of transform block, also referred to as quantization group).

State-of-the-art video coding schemes, such as High Efficiency Video Coding (HEVC), or the upcoming Versatile Video Coding (VVC) standard, optimize the energy compaction of various residual signal types by allowing additional transforms beyond widely used integer approximations of the type II discrete cosine transform (DCT-II). The HEVC standard further specifies an integer approximation of the type-VII discrete sine transform (DST-VII) for <NUM>×<NUM> transform blocks using specific intra directional modes. Due to this fixed mapping, there is no need to signal whether DCT-II or DST-VII is used. In addition to that, the identity transform can be selected for <NUM>×<NUM> transform blocks. Here the encoder needs to signal whether DCT-II/DST-VII or identity transform is applied. Since the identity transform is the matrix equivalent to a multiplication with <NUM>, it is also referred to as transform skip. Furthermore, the current VVC development allows the encoder to select more transforms of the DCT/DST family for the residual as well as additional non-separable transforms, which are applied after the DCT/DST transform at the encoder and before the inverse DCT/DST at the decoder. Both, the extended set of DCT/DST transforms and the additional non-separable transforms, require additional signalling per transform block.

<FIG> illustrates the hybrid video coding approach with forward transform and subsequent quantization of the residual signal <NUM> at the encoder <NUM>, and scaling of the quantized transform coefficients followed by inverse transform for the decoder <NUM>. The transform and quantization related blocks <NUM>/<NUM> and <NUM>/<NUM> are highlighted.

Modern image and video coding solutions such as High Efficiency Video Coding (HEVC, H. <NUM>, ISO/IEC <NUM>-<NUM>) and the currently developed Versatile Video Coding (VVC, H. <NUM>) allow to efficiently compress still or moving picture content even at very low bit-rates. The typical use case of these codec (coder-decoder) solutions is the lossy compression of high-resolution video material for broadcasting (e. , television) and streaming (e. , video-over-IP) applications. Nonetheless, the codecs also support lossless compression, thus allowing mathematically perfect reconstruction of the coded input signals upon decoding. More specifically, HEVC provides several pulse code modulation (PCM) related coding tools as well as a so-called transquant bypass coding mode, which facilitates lossless coding by simplifying the entropy coding process and by disabling the quantization, transform (DCT or DST), and deblocking steps. Details can be found in the HEVC syntax and decoding specification which is publicly available [<NUM>].

In the current version of VVC, the successor of HEVC under development, the lossless coding functionality of HEVC has largely been taken over, at least in the reference coding and decoding software [<NUM>]. This means that both the PCM related coding tools as well as the transform quantization bypass coding mode are available for activation by both HEVC encoders and current VVC reference encoder. Moreover, the transform quantization bypass coding flag (a <NUM>-bit syntax element) is specified not only for an entire bit-stream or picture (frame) of a bit-stream but for individual subblocks (coding units, CUs or transform units, TUs) of said bit-stream or frame. In other words, in both HEVC and VVC, transform quantization bypass coding can be enabled on a subblock basis, thus allowing to disable the quantization, transform, and deblocking coding tools individually per subblock.

Recently, a contribution to the VVC standardization activity within JVET as described above has been introduced, which corrects a particular lossless coding related shortcoming of the transform skip coding functionality in the current VVC draft, which also exists in HEVC and which specifies that, for a given coding subblock (CU or TU), the inverse residual coefficient transform operation (inverse DCT or DST) is bypassed. More specifically, the contribution proposes to restrict the quantization step-size, governed by a quantization parameter (QP), to a value greater than or equal to one (represented by a QP of <NUM>) in case of activated transform skipping in a subblock. As a result, with a QP of <NUM> and disabled in-loop filtering in the spatial area covered by said subblock, lossless coding can be achieved when transform skipping is activated. This behavior, however, is identical to the use of the transform quantization bypass coding mode, as quantization with QP=<NUM> (i. , unity step-size) effectively represents the bypassing of the quantization algorithm.

Moreover, to reach lossless coding with acceptably low bit-rate using VVC or any other video codec with similar loss coding functionality and tool sets, it may be necessary to alter the behavior of some other newly introduced coding tools, which are not available in HEVC and previous video coding standards. Specifically,.

It is the objective of the present invention to provide a solution for the abovementioned two drawbacks of redundant lossless coding ability (regarding transform quantization bypass and transform skipping functionality) and the necessity of modifying behavioral details of some coding tools when lossless coding is desired.

Therefore, it is desired to provide concepts for lossless coding of a picture or a video with acceptably low bit-rate and/or an improved lossless compression.

This is achieved by the subject matter of the independent claims of the present application.

Further embodiments according to the invention are defined by the subject matter of the dependent claims of the present application.

In accordance with a first aspect of the present invention, the inventors of the present application realized that one problem encountered when trying to improve a lossless coding of a picture or a video stems from the fact that some tools of a decoder or encoder, like adaptive loop filter (ALF) and reshaper tools, result in a lossy coding. According to the first aspect of the present application, this difficulty is overcome by disabling one or more tools for processing a prediction residual corrected predictive reconstruction to avoid a loss of information after a lossless reconstruction of a predetermined portion of a picture. In other words, post reconstruction modifications of samples of the predetermined portion of a picture are disabled. Additionally, the first aspect is based on the idea that the one or more tools can be disabled for lossless coding without the necessity of a syntax element indicating a lossless prediction residual coding for the predetermined portion of the picture. The decoder and encoder may be configured to infer that the lossless prediction residual coding is to be used for the predetermined portion of the picture based on the plurality of coding parameters contained in a data stream, whereby no explicit signaling of the lossless coding is necessary. The decoder is configured to advantageously switch between lossless coding and lossy coding for individual portions of a picture. No additional signaling indicating lossless coding for the individual portions of the picture is necessary. This results in a reduced amount of data to be encoded and in a reduced amount of data used to decode the predetermined portion of the picture. An improved lossless coding compression can be achieved. It is possible that the data stream comprises a lossless coding syntax element which indicates whether a predetermined region of the picture or the whole picture is coded using lossless coding, but it is no longer necessary that the data stream comprises for each portion of the picture the lossless coding syntax element. This is due to the ability of the decoder and/or encoder to check whether coding parameter indicate the lossless prediction residual coding. Furthermore, it was found, that a higher coding efficiency and a reduced bit rate can be achieved by combining the disabling of one or more tools of a decoder or encoder and the checking whether the plurality of coding parameters is indicative of a coding parameter setting corresponding to a lossless prediction residual coding.

Accordingly, in accordance with a first aspect of the present application, a decoder for decoding a picture from a data stream, is configured to check whether a plurality of coding parameters, e.g., a quantization parameter (QP) and/or a transform mode (TM), which are contained in the data stream, relate to a predetermined portion of the picture and control a prediction residual transform mode and a quantization accuracy with respect to the predetermined portion, are indicative of a coding parameter setting corresponding to a lossless prediction residual coding. Such a coding parameter setting corresponding to a lossless prediction residual coding is, e.g., represented by (QP, TM) = (<NUM>, transform skip) or (QP, TM) = (<NUM>. <NUM>, transform skip). The coding parameter setting corresponds to the lossless prediction residual coding either because such a coding is immediately signaled by the coding parameter setting or by leading to such a coding by the decoder being configured to interpret or change such a coding parameter setting to the coding parameter setting leading to lossless residual coding, such as mapping of a quantization parameter smaller than four (QP<<NUM>) to a quantization parameter equal to four (QP=<NUM>) in case of the transform mode being transform skip. This interpretation or change of a coding parameter setting may be based on the plurality of coding parameters. The decoder may be configured to derive from the plurality of coding parameters whether lossy or lossless prediction residual coding is to be used for the predetermined portion of the picture. Responsive to the plurality of coding parameters being indicative of the coding parameter setting corresponding to the lossless prediction residual coding, the decoder is configured to set one or more predetermined coding options relating to one or more tools, e.g., deblocking, sample adaptive offset filtering (SAO) and/or adaptive loop filtering (ALF), of the decoder for processing a prediction residual corrected predictive reconstruction with respect to the predetermined portion so that the one or more tools are disabled with respect to the predetermined portion.

Parallel to the decoder an encoder for encoding a picture into a data stream, is configured to signal a plurality of coding parameters in the data stream and check whether the plurality of coding parameters, which relate to a predetermined portion of the picture and control a prediction residual transform mode and a quantization accuracy with respect to the predetermined portion, are indicative of a coding parameter setting corresponding to a lossless prediction residual coding. Responsive to the plurality of coding parameters being indicative of the coding parameter setting corresponding to the lossless prediction residual coding, the encoder is configured to set one or more predetermined coding options relating to one or more tools of the encoder for processing a prediction residual corrected predictive reconstruction with respect to the predetermined portion so that the one or more tools are disabled with respect to the predetermined portion in a prediction-loop of the encoder.

An embodiment is related to a computer program having a program code for performing, when running on a computer, a herein described method.

The description is not always fully consistent in the use of the expressions "embodiment" and "invention". When used with reference to subject-matter that does not fall under the scope of any of the appended claims, said expressions are to be understood as meaning "example" or "further disclosure".

In the following description, various embodiments of the invention are described with reference to the following drawings, in which:.

In the following description, a plurality of details is set forth to provide a more throughout explanation of embodiments of the present invention. However, it will be apparent to those skilled in the art that embodiments of the present invention may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form rather than in detail in order to avoid obscuring embodiments of the present invention. In addition, features of the different embodiments described herein after may be combined with each other, unless specifically noted otherwise.

The following description of the figures starts with a presentation of a description of an encoder and a decoder of a block-based predictive codec for coding pictures of a video in order to form an example for a coding framework into which embodiments of the present invention may be built in.

The respective encoder and decoder are described with respect to <FIG>. The herein described embodiments of the concept of the present invention could be built into the encoder and decoder of <FIG>, <FIG> and <FIG>, respectively, although the embodiments described with <FIG>, may also be used to form encoders and decoders not operating according to the coding framework underlying the encoder and decoder of <FIG>, <FIG> and <FIG>.

<FIG> shows an apparatus (e. a video encoder and/or a picture encoder) for predictively coding a picture <NUM> into a data stream <NUM> exemplarily using transform-based residual coding. The apparatus, or encoder, is indicated using reference sign <NUM>. <FIG> shows also the apparatus for predictively coding a picture <NUM> into a data stream <NUM>, wherein a possible prediction module <NUM> is shown in more detail. <FIG> shows a corresponding decoder <NUM>, i.e. an apparatus <NUM> configured to predictively decode the picture <NUM>' from the data stream <NUM> also using transform-based residual decoding, wherein the apostrophe has been used to indicate that the picture <NUM>' as reconstructed by the decoder <NUM> deviates from picture <NUM> originally encoded by apparatus <NUM> in terms of coding loss introduced by a quantization of the prediction residual signal. <FIG>, <FIG> and <FIG> exemplarily use transform based prediction residual coding, although embodiments of the present application are not restricted to this kind of prediction residual coding. This is true for other details described with respect to <FIG>, <FIG> and <FIG>, too, as will be outlined hereinafter.

The encoder <NUM> is configured to subject the prediction residual signal to spatial-to-spectral transformation and to encode the prediction residual signal, thus obtained, into the data stream <NUM>. Likewise, the decoder <NUM> is configured to decode the prediction residual signal from the data stream <NUM> and subject the prediction residual signal, thus obtained, to spectral-to-spatial transformation.

Internally, the encoder <NUM> may comprise a prediction residual signal former <NUM> which generates a prediction residual <NUM> so as to measure a deviation of a prediction signal <NUM> from the original signal, i.e. from the picture <NUM>, wherein the prediction signal <NUM> can be interpreted as a linear combination of a set of one or more predictor blocks according to an embodiment of the present invention. The prediction residual signal former <NUM> may, for instance, be a subtractor which subtracts the prediction signal from the original signal, i.e. from the picture <NUM>. The encoder <NUM> then further comprises a transformer <NUM> which subjects the prediction residual signal <NUM> to a spatial-to-spectral transformation to obtain a spectral-domain prediction residual signal <NUM>' which is then subject to quantization by a quantizer <NUM>, also comprised by the encoder <NUM>. The thus quantized prediction residual signal <NUM>" is coded into bitstream <NUM>. To this end, encoder <NUM> may optionally comprise an entropy coder <NUM> which entropy codes the prediction residual signal as transformed and quantized into data stream <NUM>.

The prediction signal <NUM> is generated by a prediction stage <NUM> of encoder <NUM> on the basis of the prediction residual signal <NUM>" encoded into, and decodable from, data stream <NUM>. To this end, the prediction stage <NUM> may internally, as is shown in <FIG>, comprise a dequantizer <NUM> which dequantizes prediction residual signal <NUM>" so as to gain spectral-domain prediction residual signal <NUM>‴, which corresponds to signal <NUM>' except for quantization loss, followed by an inverse transformer <NUM> which subjects the latter prediction residual signal <NUM>‴ to an inverse transformation, i.e. a spectral-to-spatial transformation, to obtain prediction residual signal 24ʺʺ, which corresponds to the original prediction residual signal <NUM> except for quantization loss. A combiner <NUM> of the prediction stage <NUM> then recombines, such as by addition, the prediction signal <NUM> and the prediction residual signal 24ʺʺ so as to obtain a reconstructed signal <NUM>, i.e. a reconstruction of the original signal <NUM>. Reconstructed signal <NUM> may correspond to signal <NUM>'. A prediction module <NUM> of prediction stage <NUM> then generates the prediction signal <NUM> on the basis of signal <NUM> by using, for instance, spatial prediction, i.e. intra-picture prediction, and/or temporal prediction, i.e. inter-picture prediction, as shown in <FIG> in more detail.

Likewise, decoder <NUM>, as shown in <FIG>, may be internally composed of components corresponding to, and interconnected in a manner corresponding to, prediction stage <NUM>. In particular, entropy decoder <NUM> of decoder <NUM> may entropy decode the quantized spectral-domain prediction residual signal <NUM>" from the data stream, whereupon dequantizer <NUM>, inverse transformer <NUM>, combiner <NUM> and prediction module <NUM>, interconnected and cooperating in the manner described above with respect to the modules of prediction stage <NUM>, recover the reconstructed signal on the basis of prediction residual signal <NUM>" so that, as shown in <FIG>, the output of combiner <NUM> results in the reconstructed signal, namely picture <NUM>'.

Although not specifically described above, it is readily clear that the encoder <NUM> may set some coding parameters including, for instance, prediction modes, motion parameters and the like, according to some optimization scheme such as, for instance, in a manner optimizing some rate and distortion related criterion, i.e. coding cost. For example, encoder <NUM> and decoder <NUM> and the corresponding modules <NUM>, <NUM>, respectively, may support different prediction modes such as intra-coding modes and inter-coding modes. The granularity at which encoder and decoder switch between these prediction mode types may correspond to a subdivision of picture <NUM> and <NUM>', respectively, into coding segments or coding blocks. In units of these coding segments, for instance, the picture may be subdivided into blocks being intra-coded and blocks being inter-coded.

Intra-coded blocks are predicted on the basis of a spatial, already coded/decoded neighborhood (e. a current template) of the respective block (e. a current block) as is outlined in more detail below. Several intra-coding modes may exist and be selected for a respective intra-coded segment including directional or angular intra-coding modes according to which the respective segment is filled by extrapolating the sample values of the neighborhood along a certain direction which is specific for the respective directional intra-coding mode, into the respective intra-coded segment. The intra-coding modes may, for instance, also comprise one or more further modes such as a DC coding mode, according to which the prediction for the respective intra-coded block assigns a DC value to all samples within the respective intra-coded segment, and/or a planar intra-coding mode according to which the prediction of the respective 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 driving tilt and offset of the plane defined by the two-dimensional linear function on the basis of the neighboring samples.

Compared thereto, inter-coded blocks may be predicted, for instance, temporally. For inter-coded blocks, motion vectors may be signaled within the data stream <NUM>, the motion vectors indicating the spatial displacement of the portion of a previously coded picture (e. a reference picture) of the video to which picture <NUM> belongs, at which the previously coded/decoded picture is sampled in order to obtain the prediction signal for the respective inter-coded block. This means, in addition to the residual signal coding comprised by data stream <NUM>, such as the entropy-coded transform coefficient levels representing the quantized spectral-domain prediction residual signal <NUM>", data stream <NUM> may have encoded thereinto coding mode parameters for assigning the coding modes to the various blocks, prediction parameters for some of the blocks, such as motion parameters for inter-coded segments, and optional further parameters such as parameters for controlling and signaling the subdivision of picture <NUM> and <NUM>', respectively, into the segments. The decoder <NUM> uses these parameters to subdivide the picture in the same manner as the encoder did, to assign the same prediction modes to the segments, and to perform the same prediction to result in the same prediction signal.

<FIG> illustrates the relationship between the reconstructed signal, i.e. the reconstructed picture <NUM>', on the one hand, and the combination of the prediction residual signal 24ʺʺ as signaled in the data stream <NUM>, and the prediction signal <NUM>, on the other hand. As already denoted above, the combination may be an addition. The prediction signal <NUM> is illustrated in <FIG> as a subdivision of the picture area into intra-coded blocks which are illustratively indicated using hatching, and inter-coded blocks which are illustratively indicated not-hatched. The subdivision may be any subdivision, such as a regular subdivision of the picture area into rows and columns of square blocks or non-square blocks, or a multi-tree subdivision of picture <NUM> from a tree root block into a plurality of leaf blocks of varying size, such as a quadtree subdivision or the like, wherein a mixture thereof is illustrated in <FIG> in which the picture area is first subdivided into rows and columns of tree root blocks which are then further subdivided in accordance with a recursive multi-tree subdivisioning into one or more leaf blocks.

Again, data stream <NUM> may have an intra-coding mode coded thereinto for intra-coded blocks <NUM>, which assigns one of several supported intra-coding modes to the respective intra-coded block <NUM>. For inter-coded blocks <NUM>, the data stream <NUM> may have one or more motion parameters coded thereinto. Generally speaking, inter-coded blocks <NUM> are not restricted to being temporally coded. Alternatively, inter-coded blocks <NUM> may be any block predicted from previously coded portions beyond the current picture <NUM> itself, such as previously coded pictures of a video to which picture <NUM> belongs, or picture of another view or an hierarchically lower layer in the case of encoder and decoder being scalable encoders and decoders, respectively.

The prediction residual signal 24ʺʺ in <FIG> is also illustrated as a subdivision of the picture area into blocks <NUM>. These blocks might be called transform blocks in order to distinguish same from the coding blocks <NUM> and <NUM>. In effect, <FIG> illustrates that encoder <NUM> and decoder <NUM> may use two different subdivisions of picture <NUM> and picture <NUM>', respectively, into blocks, namely one subdivisioning into coding blocks <NUM> and <NUM>, respectively, and another subdivision into transform blocks <NUM>. Both subdivisions might be the same, i.e. each coding block <NUM> and <NUM>, may concurrently form a transform block <NUM>, but <FIG> illustrates the case where, for instance, a subdivision into transform blocks <NUM> forms an extension of the subdivision into coding blocks <NUM>, <NUM> so that any border between two blocks of blocks <NUM> and <NUM> overlays a border between two blocks <NUM>, or alternatively speaking each block <NUM>, <NUM> either coincides with one of the transform blocks <NUM> or coincides with a cluster of transform blocks <NUM>. However, the subdivisions may also be determined or selected independent from each other so that transform blocks <NUM> could alternatively cross block borders between blocks <NUM>, <NUM>. As far as the subdivision into transform blocks <NUM> is concerned, similar statements are thus true as those brought forward with respect to the subdivision into blocks <NUM>, <NUM>, i.e. the blocks <NUM> may be the result of a regular subdivision of picture area into blocks (with or without arrangement into rows and columns), the result of a recursive multi-tree subdivisioning of the picture area, or a combination thereof or any other sort of blockation. Just as an aside, it is noted that blocks <NUM>, <NUM> and <NUM> are not restricted to being of quadratic, rectangular or any other shape.

<FIG> further illustrates that the combination of the prediction signal <NUM> and the prediction residual signal 24ʺʺ directly results in the reconstructed signal <NUM>'. However, it should be noted that more than one prediction signal <NUM> may be combined with the prediction residual signal <NUM>"" to result into picture <NUM>' in accordance with alternative embodiments.

In <FIG>, the transform blocks <NUM> shall have the following significance. Transformer <NUM> and inverse transformer <NUM> perform their transformations in units of these transform blocks <NUM>. For instance, many codecs use some sort of DST (discrete sine transform) or DCT (discrete cosine transform) for all transform blocks <NUM>. Some codecs allow for skipping the transformation so that, for some of the transform blocks <NUM>, the prediction residual signal is coded in the spatial domain directly. However, in accordance with embodiments described below, encoder <NUM> and decoder <NUM> are configured in such a manner that they support several transforms. For example, the transforms supported by encoder <NUM> and decoder <NUM> could comprise:.

Naturally, while transformer <NUM> would support all of the forward transform versions of these transforms, the decoder <NUM> or inverse transformer <NUM> would support the corresponding backward or inverse versions thereof:.

The subsequent description provides more details on which transforms could be supported by encoder <NUM> and decoder <NUM>. In any case, it should be noted that the set of supported transforms may comprise merely one transform such as one spectral-to-spatial or spatial-to-spectral transform, but it is also possible, that no transform is used by the encoder or decoder at all or for single blocks <NUM>, <NUM>, <NUM>.

As already outlined above, <FIG> have been presented as an example where the inventive concept described herein may be implemented in order to form specific examples for encoders and decoders according to the present application. Insofar, the encoder and decoder of <FIG>, <FIG> and <FIG>, respectively, may represent possible implementations of the encoders and decoders described herein before. <FIG>, <FIG> and <FIG> are, however, only examples. An encoder according to embodiments of the present application may, however, perform block-based encoding of a picture <NUM> using the concept outlined in more detail before or hereinafter and being different from the encoder of <FIG> or <FIG> such as, for instance, in that the sub-division into blocks <NUM> is performed in a manner different than exemplified in <FIG> and/or in that no transform (e.g. transform skip/identity transform) is used at all or for single blocks. Likewise, decoders according to embodiments of the present application may perform block-based decoding of picture <NUM>' from data stream <NUM> using a coding concept further outlined below, but may differ, for instance, from the decoder <NUM> of <FIG> in that same sub-divides picture <NUM>' into blocks in a manner different than described with respect to <FIG> and/or in that same does not derive the prediction residual from the data stream <NUM> in transform domain, but in spatial domain, for instance and/or in that same does not use any transform at all or for single blocks.

According to an embodiment the inventive concept described in the following can concern the transformer <NUM>/inverse transformer <NUM> and the quantizer <NUM>/dequantizer <NUM> of the encoder or the inverse transformer <NUM> and the dequantizer <NUM> of the decoder. According to an embodiment, the transformer <NUM>, the inverse transformer <NUM>, <NUM>, the quantizer <NUM> and/or the dequantizer <NUM>, <NUM> can be disabled for lossless coding of a block of a picture, wherein lossless coding is indicated by coding parameters, like a quantization parameter and a transform mode. The inventive concept may also concern further processing of the prediction residual <NUM>" and/or the prediction signal <NUM> and/or the prediction residual corrected predictive reconstruction <NUM>, wherein the focus is on the function of the decoder/encoder at lossless coding.

The quantization step size, i.e. the quantization accuracy, can be varied depending on the selected transform and transform block size as described below. The description is written from the decoder perspective and the decoder-side scaling <NUM> (multiplication) with the quantization step size can be seen as being the inverse (non-reversible) of the encoder-side division by the step size.

On the decoder side, the scaling <NUM>, i.e. the dequantization, of (quantized) transform coefficient levels in current video coding standards like H. <NUM>/HEVC is designed for transform coefficients resulting from DCT/DST integer transforms with higher precision as illustrated in <FIG>. In there, the variable bitdepth specifies the bit depth of the image samples, e.g. <NUM> or <NUM>-bit. The variables log2TbW and log2TbH specify the binary logarithm of the transform block width and height, respectively. <FIG> shows a decoder-side scaling <NUM> and inverse transform <NUM> in recent video coding standards such as H. <NUM>/HEVC.

It should be noted that, at the decoder, the two 1D DCT/DST-based integer transforms <NUM><NUM> introduce an additional factor of <MAT>, which needs to be compensated by scaling with the inverse. For non-square blocks with an odd log2TbH + log2TbW, the scaling includes a factor of <MAT>. This can be taken into account by either adding a scale factor of <NUM>/<NUM> or using a different set of levelScale values that incorporate that factor for this case, e.g. levelScale[ ] = {<NUM>,<NUM>,<NUM>,<NUM>,<NUM>,<NUM>}. For the identity transform or transform skip case <NUM><NUM>, this does not apply.

It can be seen that the step size or scaling factor ( <MAT>) becomes smaller then <NUM> for QPs less than <NUM> because levelScale for these QPs is less than <NUM>=<NUM><NUM>. For the transform coefficients, this is not a problem since the integer forward transform <NUM><NUM> increases the precision of the residual signal and consequently the dynamic range. However, for the residual signal in case of the identity transform or transform skip <NUM><NUM>, there is no increase in dynamic range. In this case, the scaling factor less than <NUM> could introduce a distortion for the QPs < <NUM> which is not there for QP <NUM>, which has a scaling factor of <NUM>. This is contradictory to the quantizer design intent where decreasing the QP should decrease the distortion.

Varying the quantization step size depending on the selected transform, e.g. whether the transform is skipped or not, could be used to derive a different quantization step size for transform skip <NUM><NUM>. Especially for the lowest QPs <NUM>,<NUM>,<NUM> and <NUM>, this would solve the problem of having a quantization step size / scaling factor less than <NUM> for the lowest QPs. In one example shown in <FIG>, the solution could be to clip <NUM> the quantization parameter to the minimum allowed value of four (QP'), resulting in a quantization step size that cannot be lower than one. In addition to that, the size-dependent normalization <NUM><NUM> with bdShift1 and the final rounding <NUM><NUM> to the bit depth with bdShift2, required by the transform, can be moved to the transform path <NUM>. This would reduce the transform skip scaling to a downshift by <NUM>-bit with rounding. In another example, a bitstream restriction can be defined that does not allow an encoder to use QP values that result in a scaling factor of less than <NUM> for transform skip instead of clipping the QP value to <NUM>. <FIG> shows an improved decoder-side scaling <NUM> and inverse transform <NUM> according the present invention.

At the other end of the bit-rate range, i.e. for lower bit rates, the quantization step size for the identity transform <NUM><NUM> may be decreased by an offset, resulting in a higher fidelity for block that does not apply a transform or that does apply the identity transform <NUM><NUM>. This would enable the encoder to select appropriate QP values for transform skip blocks to achieve higher compression efficiency. This aspect is not limited to the identity transform / transform skip <NUM><NUM>, it can also be used to modify the QP for other transform types <NUM><NUM> by an offset. An encoder would, e.g., determine this offset in a way that increases the coding efficiency, e.g. by maximizing perceived visual quality or minimizing objective distortion like a square error for a given bitrate, or by reducing the bitrate for a given quality/distortion. This (in terms of the applied criterion) optimal derivation from the slice QP depends, for example, on the content, bit-rate or complexity operation point, and further factors such as selected transform and transform block size. The present invention describes methods for signaling the QP offset for the case of multiple transforms. Without loss of generality, given two alternative transforms, a fixed QP offset may be transmitted by the encoder in a high-level syntax structure (such as sequence parameter set, picture parameter set, tile group header, slice header, or similar) for each of the two alternative transforms. Alternatively, the QP offset is, e.g., transmitted by the encoder for each transform block when the encoder has selected the alternative transform. A combination of the two approaches is the signaling of a basis QP offset in a high-level syntax structure and an additional offset for each transform block that uses the alternative transform. The offset can be a value that is added or subtracted to a basis QP or an index into a set of offset values. That set can be predefined or signaled in a high-level syntax structure.

<FIG> shows features and functionalities of a decoder, for example, of a decoder <NUM> or <NUM> shown in <FIG>. Also the following description is mainly written from the decoder perspective it is clear that an encoder may comprise parallel features.

A picture <NUM> is encoded into a data stream <NUM> by the encoder and the decoder is configured to provide a reconstructed picture based on the data stream <NUM>, wherein the reconstructed picture equals the picture <NUM> or has no recognizable minimal differences to the picture <NUM> in case of lossless coding. The picture <NUM> can be divided into portions <NUM>, i.e. blocks, and regions <NUM>. A region <NUM> comprises a plurality of portions <NUM>. A predetermined portion <NUM> is within a predetermined region <NUM>. The data stream <NUM> may comprise portion individual information, like a plurality <NUM> of coding parameters, and region individual information, like optionally a lossless coding syntax element <NUM>. The plurality <NUM> of coding parameters relate to a predetermined portion <NUM> of the picture <NUM> and control a prediction residual transform mode, e.g. within the transformer <NUM> and the inverse transformer <NUM>, <NUM> shown in <FIG>, and a quantization accuracy, e.g. within the quantizer <NUM> and the dequantizer <NUM>, <NUM> shown in <FIG>, with respect to the predetermined portion <NUM>. The prediction residual transform mode may be controlled by a transform mode indicating syntax element <NUM><NUM>. The quantization accuracy may be controlled by a quantization parameter (QP) <NUM><NUM>,.

A decoder for decoding the picture <NUM> from the data stream <NUM> is configured to check <NUM> whether a plurality <NUM> of coding parameters, is indicative of a coding parameter setting corresponding, either because immediately signaling such a coding, or by leading to such a coding by the decoder being configured to interpret or change such a setting to a setting leading to lossless residual coding, such as mapping QP<<NUM> to QP= <NUM> in case of TM = transform skip, to a lossless prediction residual coding <NUM><NUM>. An encoder for encoding the picture <NUM> into the data stream <NUM> may also be configured to check whether the plurality <NUM> of coding parameters, is indicative of a coding parameter setting corresponding to the lossless prediction residual coding <NUM><NUM>. (QP,TM)=(<NUM>,transform skip) or (QP, TM) = (<NUM>. <NUM>, transform skip) may represent a coding parameter setting corresponding to lossless prediction residual coding <NUM><NUM>. A coding parameter setting of a quantization parameter <NUM><NUM> to a quantization accuracy equal or finer than a predetermined quantization accuracy and/or a transform mode indicating syntax element <NUM><NUM> to a transform skip as transform mode may correspond to the lossless prediction residual coding <NUM><NUM>.

According to an embodiment, the decoder/encoder is configured to read/signal the plurality <NUM> of coding parameters from/into the data stream <NUM> and check whether the prediction residual transform mode indicated by the plurality <NUM> of coding parameters, e.g. indicated by the transform mode indicating syntax element <NUM><NUM>, corresponds to a transform skip mode and whether a quantization accuracy indicated by the plurality <NUM> of coding parameters, e.g. indicated by the quantization parameter <NUM><NUM>, corresponds to a quantization step size finer than a predetermined quantization step size, e.g., corresponds to QP<<NUM>, corresponding to no quantization and, if yes, change the quantization step size to the predetermined quantization step size, e.g. QP=<NUM>. If the transform mode is set to transform skip, the decoder/encoder is configured to map a quantization parameter <NUM><NUM>, finer than the predetermined quantization accuracy (QP<<NUM>) to a quantization parameter <NUM><NUM> equal the predetermined quantization accuracy to enable a lossless coding. The predetermined quantization accuracy might represent no quantization <NUM>, <NUM> or a bypassing or disabling of a quantization <NUM>, <NUM>.

Responsive to the plurality <NUM> of coding parameters being indicative of the coding parameter setting corresponding to the lossless prediction residual coding <NUM><NUM>, the decoder/encoder is configured to set <NUM> one or more predetermined coding options relating to one or more tools of the decoder/encoder for processing a prediction residual corrected predictive reconstruction (e.g. in the prediction-loop of the encoder) with respect to the predetermined portion <NUM> so that the one or more tools are disabled with respect to the predetermined portion <NUM>. The prediction residual corrected predictive reconstruction may represent the output, i.e. the reconstructed signal <NUM>, of the combiner <NUM> or <NUM>, respectively, as shown in <FIG>. The one or more tools, e.g., relate to deblocking, SAO, ALF and may be positioned downstream the output <NUM> of the combiner <NUM> or <NUM>, respectively.

According to an embodiment the decoder/encoder is configured to set the one or more predetermined coding options with respect to the predetermined portion <NUM> so that the one or more tools are disabled <NUM> with respect to the predetermined portion <NUM> if the plurality of coding parameters are indicative of the coding parameter setting corresponding to the lossless prediction residual coding <NUM>, and to a predetermined tool state if the plurality of coding parameters are not indicative of the coding parameter setting corresponding to the lossless prediction residual coding, i.e. in a lossy coding case <NUM><NUM>.

The decoder is optionally configured to read from the data stream <NUM> a lossless coding syntax element <NUM> (e.g., determined and encoded by the encoder) which indicates whether a predetermined region <NUM> of the picture, which covers or contains the predetermined portion <NUM>, is coded into the data stream <NUM> using, not exclusively, but for portions fulfilling the check <NUM>, lossless coding or lossy coding. The decoder is configured to set <NUM> the one or more predetermined coding options so that the one or more tools are disabled with respect to the predetermined portion <NUM> if the lossless coding syntax element <NUM> indicates that the predetermined region <NUM> of the picture <NUM> is coded into the data stream <NUM> using lossless coding <NUM><NUM>, and if the plurality <NUM> of coding parameters are indicative of the coding parameter setting corresponding to the lossless prediction residual coding <NUM><NUM>. Additionally, the decoder is configured to set <NUM> the one or more predetermined coding options to a predetermined tool state if the plurality <NUM> of coding parameters do not indicate, i.e. are not equal to, the coding parameter setting corresponding to the lossless prediction residual coding <NUM><NUM> or the lossless coding syntax element <NUM> indicates that the predetermined region <NUM> of the picture <NUM> is coded into the data stream <NUM> using lossy coding <NUM><NUM>. The lossless coding syntax element <NUM> is signaled for a region <NUM> of the picture <NUM> and for each portion <NUM> within the region <NUM> the decoder/encoder checks <NUM> whether the plurality <NUM> of coding parameters indicate for the individual portion <NUM> a lossless coding <NUM><NUM> or a lossy coding <NUM><NUM>. Thus it is possible that some of the portions are decoded/encoded differently than indicated by the lossless coding syntax element <NUM> for the whole region <NUM>.

According to an embodiment, the decoder is configured to determine the predetermined tool state depending on one or more syntax elements <NUM>, e.g. syntax elements relating to SAO, ALF or the like, in the data stream <NUM>. In case of lossless coding <NUM><NUM> the decoder is configured to skip <NUM> reading the one or more tool syntax elements <NUM>, since the one or more tools are disabled <NUM>. Optionally, at least one of the one or more syntax elements <NUM> is absent from the data stream <NUM> if the one or more predetermined coding options with respect to the predetermined portion <NUM> are set so that the one or more tools are disabled <NUM> with respect to the predetermined portion <NUM>, compare aspect <NUM>.

According to an embodiment, the decoder is configured to set <NUM> one or more further coding options with respect to the predetermined portion <NUM>, e.g., described with respect to the following aspects <NUM> to <NUM> in the description below, to a default state responsive to the plurality <NUM> of coding parameters being indicative of the coding parameter setting corresponding to the lossless prediction residual coding <NUM><NUM>. The default state may represent a reduction of a filtering or a disabling of a filtering, cf. aspect <NUM>, in terms of low-pass filtering for a derivation of a prediction signal, e.g. the prediction signal <NUM> shown in <FIG>, for the predetermined portion <NUM> and/or a perfectly invertible transform, cf. aspect <NUM>, to be performed on a prediction residual signal, e.g. the prediction residual signal <NUM> shown in <FIG>. The further coding options may relate to a binarization, cf. aspect <NUM>, of prediction residual data into bin strings and context-adaptive binary entropy decoding of the bin strings and/or a usage of a perfectly invertible transform, cf. aspect <NUM>, on a prediction residual <NUM>‴, 24ʺʺ or a prediction residual corrected reconstruction <NUM> of the predetermined portion <NUM> and/or a disabling or reduction of a filtering, cf. aspect <NUM>, for a derivation of the prediction signal <NUM> for the predetermined portion and/or a disabling of a processing of a prediction residual corrected predictive reconstruction <NUM> with respect to the predetermined portion <NUM> or a prediction residual re-quantization, cf. aspect <NUM>. Similarly, for an encoder the further coding options may relate to a binarization of prediction residual data into bin strings and context-adaptive binary entropy encoding of the bin strings and/or a usage of a perfectly invertible transform on a prediction residual <NUM>‴, <NUM>‴′ or a prediction residual corrected reconstruction <NUM> of the predetermined portion in a prediction-loop of the encoder and/or a disabling or reduction of a filtering for a derivation of a prediction signal <NUM> for the predetermined portion and/or a disabling of a processing of a prediction residual corrected predictive reconstruction <NUM> with respect to the predetermined portion <NUM> or a prediction residual quantization.

An encoder can be configured to determine and encode the plurality <NUM> of coding parameters, lossless coding syntax element <NUM> and/or the tool syntax elements <NUM> in the data stream <NUM>. The encoder can comprise parallel features and/or functionalities as described with regard to the decoder. This applies at least for the prediction-loop <NUM> of the encoder which has the same features and/or functionalities as the decoder. But it is clear, that features relating to the inverse transformer <NUM> or the dequantizer <NUM> of the decoder can similarly also be applied to the transformer <NUM> and/or the quantizer <NUM> of the encoder.

One or more of the following aspects may be integrated in the decoder/encoder described with regard to <FIG>. Alternatively, the following aspects can be implemented individually in a decoder or encoder.

The basic approach of this aspect is to make a subblock-wise transform quantization bypass coding flag obsolete since, with the corrections described above, its functionality is completely provided by the subblock-wise transform skipping functionality when a coding quantization parameter (QP) of <NUM> (unity step-size) is employed and post reconstruction modifications of block samples by coding tools such as in-loop filters are disabled. The deactivation of such post filters can be achieved by the conditioning on the transform skip mode and a QP that is lower or equal than four.

In the following paragraphs, different possible implementations are specified.

An embodiment of aspect <NUM> is by means of a coding block-wise (here, transform block-wise and color component-wise) one-bit transform skipping indicator, called transform_skip_flag. This indicator is transmitted as part of the transform unit coding syntax, for example, as shown in table <NUM>. The plurality <NUM> of coding parameters may comprise the transform_skip_flag, i.e. the transform mode indicating syntax element <NUM><NUM>, controlling the prediction residual transform mode with respect to the predetermined portion <NUM> of the picture <NUM>. The transform_skip_flag defines a transform skip as the transform mode, i.e. the prediction residual transform mode, for the predetermined portion <NUM>.

Depending on this transform_skip_flag (value <NUM> if transform skipping is used, value <NUM> otherwise), an actual quantization parameter qP <NUM><NUM> may be determined, for example, as specified in equations (<NUM>)-(<NUM>), for palette coding as described under item <NUM>, as well as equation (<NUM>), for transform coefficients scaling as described under item <NUM>, otherwise. The plurality <NUM> of coding parameters may comprise this quantization parameter qP <NUM><NUM> controlling the quantization accuracy with respect to the predetermined portion <NUM> of the picture <NUM>.

Output of this process is an array recSamples[ x ][ y ], with x = <NUM>. nCbW - <NUM>, y = <NUM>. nCbH - <NUM> specifying reconstructed sample values for the block.

Depending on the value of treeType, the variables startComp, numComps and maxNumPalettePredictorSize are derived as follows:.

Depending on the value of cIdx, the variables nSubWidth and nSubHeight are derived as follows:.

The ( nCbW x nCbH ) block of the reconstructed sample array recSamples at location ( xCbComp, yCbComp ) is represented by recSamples[ x ][ y ] with x = <NUM>. nCbW - <NUM> and y = <NUM>. nCbH - <NUM>, and the value of recSamples[ x ][ y ] for each x in the range of <NUM> to nCbW - <NUM>, inclusive, and each y in the range of <NUM> to nCbH - <NUM>, inclusive, is derived as follows:.

Output of this process is the (nTbW)x(nTbH) array d of scaled transform coefficients with elements d[ x ][ y ].

The quantization parameter qP and the variable QpActOffset are derived as follows:.

The quantization parameter qP is modified and the variables rectNonTsFlag and bdShift are derived as follows:.

According to an embodiment, the value of qP is limited to be greater than or equal to a minimum of QpPrimeTsMin, a constant (across the given video sequence) specified in equation (<NUM>):
sps_internal_bitdepth_minus_input_bitdepth specifies the minimum allowed quantization parameter for transform skip mode as follows: <MAT>.

The value of sps_internal_bitdepth_minus_input_bitdepth shall be in the range of <NUM> to <NUM>, inclusive.

In other words, the decoder/encoder is configured to read/signal the plurality <NUM> of coding parameters from/into the data stream <NUM> and check whether the prediction residual transform mode indicated by the plurality of coding parameters corresponds to a transform skip mode and to a quantization step size finer than a predetermined quantization step size, i.e. the QpPrimeTsMin, corresponding to no quantization, and, if yes, change the quantization step size to the predetermined quantization step size. QpPrimeTsMin, finally, is governed by a sequence-wise transmitted (in the sequence header) parameter sps_internal_bitdepth_minus_input_bitdepth. The predetermined quantization step size may be dependent on an internal bitdepth and an input bitdepth, e.g., it may be dependent on a difference between the internal bit-depth and the input bit-depth. The decoder/encoder may be configured to deduce a minimum for a quantization step size scale parameter, i.e. the predetermined quantization step size and/or the QpPrimeTsMin, based on the difference, and adhere to the minimum quantization step size scale parameter for portions <NUM> in a prediction residual transform skip mode. The decoder/encoder may be configured to in adhering to the minimum quantization step size scale parameter for portions <NUM> coded in a prediction residual transform skip mode, change a signaled quantization step size scale parameter <NUM><NUM> signaled in the data stream <NUM> for the portions <NUM>, to equal the minimum quantization step size scale parameter in case of the signaled quantization step size scale parameter falling below the minimum quantization step size scale parameter. Note that, when this parameter equals zero (which is a commonly encountered case), QpPrimeTsMin results in a value of <NUM>.

Thus, using element sps_internal_bitdepth_minus_input_bitdepth, element transform_skip_flag, and variable QpPrimeTsMin, it is possible to achieve lossless coding of prediction residual corrected predictive reconstructed picture samples in a specific picture region, such as a coding or transform unit, and a specific color component.

To reach lossless coding even in the presence of in-loop "post-reconstruction" deblocking filtering, the deblocking filtering parameters are also conditioned on the actual quantization parameter qP, in a manner that the filering is, effectively, bypassed when the qP value is less than or equal to QpPrimeTsMin. This is achieved by a corresponding specification of the deblocking parameters β' and tc' to both equal zero, as shown in Table <NUM> and equations (<NUM>) and (<NUM>) of item <NUM>. Note that this may require transmitting specific appropriate values for sh_luma_beta_offset_div2 for equation (<NUM>) and sh_luma_tc_offset_div2 for equation (<NUM>) in cases where QpPrimeTsMin of equation (<NUM>) is greater than <NUM> (which results from sps_internal_bitdepth_minus_input_bitdepth > <NUM>). The decoder/encoder is configured to infer that one or more predetermined coding options relating to one or more tools of the decoder/encoder for processing a prediction residual corrected predictive reconstruction with respect to the predetermined portion <NUM> or for prediction residual re-quantization/quantization are to be set <NUM> so that the one or more tools are disabled with respect to the predetermined portion <NUM>, if the predetermined portion <NUM> of the picture <NUM> is coded into the data stream <NUM> using lossless coding <NUM><NUM>, and by deriving <NUM> the one or more predetermined coding options from the plurality <NUM> of coding parameters, if the predetermined portion <NUM> of the picture is coded into the data stream <NUM> using lossy coding <NUM><NUM>.

The sample values pl,k and qj,k with i = <NUM>. Max( <NUM>, maxFilterLengthP ), j = <NUM>. Max( <NUM>, maxFilterLengthQ) and k = <NUM> and <NUM> are derived as follows:.

The variable qpoffset is derived as follows:.

The variables QpQ and QpP are set equal to the QpY values of the coding units which include the coding blocks containing the sample q<NUM>,<NUM> and p<NUM>,<NUM>, respectively.

The variable qP is derived as follows: <MAT>.

The value of the variable β' is determined as specified in table <NUM> based on the quantization parameter Q derived as follows: <MAT> where sh_luma_beta_offset_div2 is the value of the syntax element sh_luma_beta_offset_div2 for the slice that contains sample q<NUM>,<NUM>.

The variable β is derived as follows: <MAT>.

The value of the variable tc' is determined as specified in table <NUM> based on the quantization parameter Q derived as follows: <MAT> where sh_luma_tc_offset_div2 is the value of the syntax element sh_luma_tc_offset_div2 for the slice that contains sample q<NUM>,<NUM>.

The variable tc is derived as follows: <MAT> <MAT>.

To streamline the VVC configuration for lossless coding ability, it is proposed to introduce a new one-bit flag, to be called lossless_coding herein, into the sequence, frame, picture, sub-picture, tile-group, or slice header syntax of an image or video coding bit-stream. In other words, a new "global" (relative to the subblock level) flag is proposed to be introduced, which can have a value of <NUM> (no lossless coding operation, i. , normal mode) or <NUM> (lossless mode) and which controls the operation (activation or deactivation or algorithmic details) of at least two coding tools provided (i. , specified) by the affected image or video codec. More specifically, the operation of at least <NUM> of the following list of tools depends on the lossless_coding flag:.

This third aspect specifies in detail how the value of the lossless_coding flag or the inferred meaning of the transform mode (indicating transform skipping functionality) and QP (indicating a particular step-size), as mentioned in Aspect <NUM> above, changes the behavior of the entropy coding, inter-component transform, prediction, and in-loop filtering tools for a given picture region or portion associated with said lossless_coding flag or said inferred meaning.

A quantization parameter (QP) equals to four and the usage of the transform skip mode results in the lossless quantization mode of the residual signal. A bitdepth correction is necessary when the input bitdepth and the internal bitdeph differs. A difference between the input bitdepth and the internal bitdepth can be realized by signaling the input bitdepth in the high-level syntax. Alternatively, the difference between the input and the internal bitdepth can be transmitted in the high-level syntax. Another alternative is the signaling of the minimum allowed QP for transform skip in the high-level syntax, either absolutely or relative to the base QP.

An embodiment is related to a video decoder configured to perform video decoding from a data stream <NUM> at an internal bit-depth and video output at an input bit-depth or internal bit-depth. The video decoder is configured to read from the data stream a syntax element which indicates a difference between the internal bit-depth and the input bit-depth. Parallel a video encoder is configured to perform video encoding into a data stream <NUM> at an internal bit-depth and receive video input at an input bit-depth or internal bit-depth. The video encoder is configured to encode into the data stream <NUM> the syntax element which indicates the difference between the internal bit-depth and the input bit-depth.

A bit-depth transition may be performed from an internally-reconstructed video version <NUM> to the input bit-depth. The decoder may be configured to perform this transition before the video output and the encoder may be configured to perform this transition in the prediction-loop <NUM>.

According to an embodiment, the decoder/encoder is configured to deduce a minimum for a quantization step size scale parameter, e.g. the quantization parameter <NUM><NUM>, based on the difference, e.g., owing to a difference of non-zero, another QP than <NUM> may result in lossless coding or almost lossless coding, and adhere to the minimum quantization step size scale parameter for portions of the video coded in a prediction residual transform skip mode. The decoder/encoder is configured to map a quantization step size scale parameter <NUM><NUM> finer than the minimum, e.g., QP<<NUM>, to a quantization step size scale parameter <NUM><NUM> equal the minimum to enable a lossless coding. For lossless coding, the minimum might be associated with no quantization <NUM>, <NUM> or a bypassing or disabling of a quantization <NUM>, <NUM>. The decoder/encoder may be configured to in adhering to the minimum quantization step size scale parameter for video portions <NUM> coded in a prediction residual transform skip mode, change a signaled quantization step size scale parameter signaled in the data stream <NUM> for the video portions <NUM>, to equal the minimum quantization step size scale parameter in case of the signaled quantization step size scale parameter falling below the minimum quantization step size scale parameter. The decoder/encoder may adhere to the minimum quantization step size scale parameter merely within video regions <NUM> for which the data stream <NUM> signals a lossless coding mode <NUM><NUM>.

Another embodiment is related to a video decoder configured to perform video decoding from a data stream <NUM> at an internal bit-depth and video output at an input bit-depth or internal bit-depth, and read from the data stream <NUM> a syntax element which indicates a minimum for a quantization step size scale parameter (QP minimum), e.g., owing to a difference of non-zero between internal and input bit-depth, on which difference the decoder might be informed as well, e.g., in addition to the QP minimum, either by way of transmitting the difference or by transmitting both values, i.e. the input bit-depth and the internal bit-depth. Another QP than <NUM> may result in, or almost in, lossless coding. Parallel, a video encoder may be configured to perform video encoding into the data stream <NUM> at an internal bit-depth and receive video input at an input bit-depth or internal bit-depth, and encode into the data stream <NUM> a syntax element which indicates a minimum for a quantization step size scale parameter. The decoder/encoder may be configured to in adhere to the minimum quantization step size scale parameter for video portions <NUM> coded in a prediction residual transform skip mode, and optionally change a signaled quantization step size scale parameter signaled in the data stream <NUM> for the video portions <NUM>, to equal the minimum quantization step size scale parameter in case of the signaled quantization step size scale parameter falling below the minimum quantization step size scale parameter. The decoder/encoder may adhere to the minimum quantization step size scale parameter merely within video regions <NUM> for which the data stream <NUM> signals a lossless coding mode <NUM><NUM>.

Another embodiment is related to a video decoder/encoder configured to derive/encode from/into a data stream <NUM> an indication of an internal bit-depth and an input bit-depth or a difference between same, perform video decoding/encoding from/into the data stream <NUM> at the internal bit-depth and the decoder is configured to video output at the input bit-depth and the encoder is configured to receive video input at the input bit-depth. Additionally, the decoder/encoder is configured to check whether the internal bit-depth falls below the input bit-depth and change the internal bit-depth to correspond to the input bit-depth. Optionally, the decoder/encoder is configured to derive/encode from/into the data stream <NUM> an indication of a lossless coded video portion, and perform the checking and the changing within the lossless coded video portion and use the internal bit-depth, e.g., as derived from the data stream <NUM>, for a lossy coded video portion. The internal bit-depth may be signaled in the data stream be the encoder.

Since lossless coding, e.g. with a QP of <NUM>, typically produces significant higher bitrates compared to lossy coding, the entropy coding engine can switch to a high-throughput mode to prevent processing bottlenecks. This could be done e.g. by using different codes in binarization or processing more bins after binarization in bypass coding mode instead of regular coding mode in CABAC that uses context modelling and binary arithmetic coding.

An embodiment is related to a decoder (encoder), configured to determine for a predetermined portion <NUM> of a picture <NUM>, whether same is (to be) coded into a data stream <NUM> using lossless coding <NUM><NUM> or lossy coding <NUM><NUM>, and decode (encode) a prediction residual from (into) the data stream <NUM> for the predetermined portion <NUM> using binarization of prediction residual data into bin strings and context-adaptive binary entropy decoding (encoding) of the bin strings in a first manner (called residual_ts_coding( ) in Table <NUM>), if the predetermined portion <NUM> of the picture <NUM> is (to be) coded into the data stream <NUM> using lossless coding <NUM><NUM>, and in a second manner (called residual_coding( ) in Table <NUM>), if the predetermined portion <NUM> of the picture <NUM> is (to be) coded into the data stream <NUM> using lossy coding <NUM><NUM>, wherein the first and second manners differ so that a computational complexity is reduced in the first manner compared to the second manner.

The determination whether the predetermined portion <NUM> of a picture <NUM> is coded into a data stream <NUM> using lossless coding <NUM><NUM> or lossy coding <NUM><NUM> can be based on the data sream <NUM>, for example, like described with regard to the decoder/encoder in <FIG> or by reading a portionwise transform quantization bypass coding flag or differently. According to an embodiment, the decoder is configured to perform the determining by reading from the data stream <NUM> a lossless coding syntax element, e.g. <NUM>, which indicates whether the predetermined portion <NUM> of the picture <NUM>, or a predetermined region <NUM> containing the predetermined portion <NUM>, is coded into the data stream <NUM> using lossless coding <NUM>, or lossy coding <NUM><NUM> and performing the determination depending on the lossless coding syntax element. The encoder may encode this lossless coding syntax element.

The computational complexity may be reduced in the first manner compared to the second manner by at least one of.

According to an embodiment, an amount of bins of the bin strings belonging to a unary code or truncated unary code of the bin strings is lower in the first manner than in the second manner.

The coefficients of the ICT inverse transform matrix do not allow for lossless coding since there is no corresponding forward transform matrix which, in the absence of residual signal quantization, results in perfectly lossless reconstruction. Hence, it is proposed to, when lossless_coding equals <NUM>, a different ICT inverse transform matrix (specified as a list of coefficients or mathematical operations such as shifts or multiplications) is to be employed in the codec than when lossless_coding equals <NUM> (normal operation). Specifically, when lossless_coding equals zero, the conventional ICT upmix operation, e. , <MAT> <MAT> may be employed, where c1 and c2 are two transmitted residual block signals and cb and cr are the associated output residual signals resulting from the inverse ICT. When lossless_coding equals one, however, a lifting transform [<NUM>, <NUM>] or a modulo transform [<NUM>] operation may be applied to c1 and c2 instead of the abovementioned operations, which allows for perfect reconstruction of the cb and cr prediction residuals in the absence of quantization and in-loop filtering. A different but equivalent way to describe this perfect reconstruction property is to state that the transform is, mathematically, perfectly invertible even in practical applications running on, e. , computers where, usually, transform operations require rounding-to-integer steps forbidding mathematically perfect reconstruction. For example, the forward lossless ICT <MAT> <MAT> along with the corresponding inverse lossless ICT <MAT> <MAT> where INT() denotes a floor (round towards minus infinity), ceiling (round towards plus infinity), or rounding (round to nearest integer) operator and sign equals <NUM> or -<NUM>, achieves perfect reconstruction of both cb and cr (i. , cb'=cb, cr'=cr). Hence, the above inverse lossless ICT operation resulting in cb' and cr' is preferably applied in the decoder when lossless coding is desired. Note that perfect reconstruction can also be achieved by switching the above forward and inverse lossless operations such that the forward lossless ICT is given by <MAT> <MAT> and the corresponding inverse lossless ICT is given by <MAT> <MAT>.

Also note that the + and - signs in the above equations may differ in particular implementations while leading to equivalent results (i. , cb'=cb, cr'=cr). Finally, it is worth noting that slightly different formulations, e. , a formulation equivalent to the integer mid-side (M/S) processing in HD-AAC, described in [<NUM>], may be employed as lossless inverse transform in the decoding process.

A decoder (encoder), according to an embodiment, is configured to determine for a predetermined portion <NUM> of a picture <NUM>, whether same is (to be) coded into a data stream <NUM> using lossless coding <NUM><NUM> or lossy coding <NUM><NUM>, and perform on a prediction residual <NUM>"', <NUM>‴′ or a prediction residual corrected reconstruction <NUM> (e.g., in a prediction-loop of the encoder) of the predetermined portion <NUM> a perfectly invertible transform, if the predetermined portion <NUM> of the picture <NUM> is coded into the data stream <NUM> using lossless coding <NUM><NUM>, and a non-perfectly invertible transform, if the predetermined portion <NUM> of the picture <NUM> is coded into the data stream <NUM> using lossy coding <NUM><NUM>.

The determination whether the predetermined portion <NUM> of a picture <NUM> is coded into a data stream <NUM> using lossless coding <NUM><NUM> or lossy coding <NUM><NUM> can be based on the data sream <NUM>, for example, like described with regard to the decoder/encoder in <FIG> or by reading a portionwise transform quantization bypass coding flag or differently. According to an embodiment, the decoder is configured to perform the determining by reading from the data stream <NUM> a lossless coding syntax element, e.g. <NUM>, which indicates whether the predetermined portion <NUM> of the picture <NUM>, or a predetermined region <NUM> containing the predetermined portion <NUM>, is coded into the data stream <NUM> using lossless coding <NUM><NUM> or lossy coding <NUM><NUM> and performing the determination depending on the lossless coding syntax element. The encoder may encode this lossless coding syntax element.

The perfectly invertible transform and the non-perfectly invertible transform may be inter-color-component transforms or are spectrally decomposing intra-color-component transforms.

For lossless coding with high-bitrates, filters that are applied to the prediction signal to attenuate compression artifacts, e.g. smoothing filters to reduce quantization artifacts, could be not beneficial. So in case of transform skip with quantization skipping, these filters can be disabled for lossless coding.

A decoder (encoder), according to an embodiment, is configured to determine, for a predetermined portion <NUM> of a picture <NUM>, whether same is (to be) coded into the data stream <NUM> using lossless coding <NUM><NUM> or lossy coding <NUM><NUM>, and derive a prediction signal <NUM> for the predetermined portion <NUM> in a first manner, if the predetermined portion <NUM> of the picture <NUM> is (to be) coded into the data stream <NUM> using lossless coding <NUM><NUM>, and in a second manner, if the predetermined portion <NUM> of the picture <NUM> is (to be) coded into the data stream <NUM> using lossy coding <NUM><NUM>, wherein the first and second manners differ so that the prediction signal <NUM> is less filtered, e.g. by an interpolation filter, in the first manner than in the second manner or unfiltered in the first manner while being filtered in the second manner.

According to an embodiment, the prediction signal <NUM> is less filtered in the first manner than in the second manner or unfiltered in the first manner while being filtered in the second manner in terms of low-pass filtering, e.g. the prediction signal <NUM> has, in a higher frequency half out of an overall spatial frequency spectrum of the prediction signal <NUM>, higher energy when derived based on the first manner than in the second manner.

When lossless_coding equals <NUM>, all in-loop filters (e.g., deblocking, shape adaptive offset (SAO), reshaper) and the quantization are disabled, and their related syntax element(s), incl. their individual sequence or frame-wise activation flags and any QPs or delta-QPs, shall not be present in a coded bit-stream.

A decoder (encoder), according to an embodiment, is configured to determine, for a predetermined portion <NUM> of a picture <NUM>, whether same is (to be) coded into the data stream <NUM> using lossless coding <NUM><NUM> or lossy coding <NUM><NUM>, and infer that one or more predetermined coding options relating to one or more tools of the decoder (encoder) for processing a prediction residual corrected predictive reconstruction <NUM> with respect to the predetermined portion <NUM> or for prediction residual re-quantization <NUM>, <NUM> (quantization <NUM>) are to be set so that the one or more tools are disabled with respect to the predetermined portion <NUM>, if the predetermined portion <NUM> of the picture <NUM> is coded into the data stream <NUM> using lossless coding <NUM><NUM>, and by deriving the one or more predetermined coding options from a plurality <NUM> of coding parameters, if the predetermined portion <NUM> of the picture <NUM> is coded into the data stream <NUM> using lossy coding <NUM><NUM>.

The determination whether the predetermined portion <NUM> of a picture <NUM> is coded into a data stream <NUM> using lossless coding <NUM>, or lossy coding <NUM><NUM> can be based on the data sream <NUM>, for example, like described with regard to the decoder/encoder in <FIG> or by reading a portionwise transform quantization bypass coding flag or differently. According to an embodiment, the decoder is configured to perform the determining by reading from the data stream <NUM> a lossless coding syntax element, e.g. <NUM>, which indicates whether the predetermined portion <NUM> of the picture <NUM>, or a predetermined region <NUM> containing the predetermined portion <NUM>, is coded into the data stream <NUM> using lossless coding <NUM><NUM> or lossy coding <NUM><NUM> and performing the determination depending on the lossless coding syntax element. The encoder may encode this lossless coding syntax element.

In the following different embodiments of methods are described.

<FIG> shows a method <NUM> for decoding (encoding) a picture into a data stream, comprising determining <NUM> for a predetermined portion of the picture, whether same is (to be) coded into the data stream using lossless coding or lossy coding, and decoding (encoding) a prediction residual from (into) the data stream for the predetermined portion using binarization of prediction residual data into bin strings and context-adaptive binary entropy encoding of the bin strings in a first manner <NUM>, if the predetermined portion of the picture is (to be) coded into the data stream using lossless coding, and in a second manner <NUM>, if the predetermined portion of the picture is (to be) coded into the data stream using lossy coding, wherein the first <NUM> and second <NUM> manners differ so that a computational complexity is reduced in the first manner <NUM> compared to the second manner <NUM>.

<FIG> shows a method <NUM> for decoding (encoding) a picture from (into) a data stream, comprising determining <NUM> for a predetermined portion of the picture, whether same is (to be) coded into the data stream using lossless coding or lossy coding, and performing on a prediction residual or a prediction residual corrected reconstruction of the predetermined portion a perfectly invertible transform <NUM>, if the predetermined portion of the picture is (to be) coded into the data stream using lossless coding, and a non-perfectly invertible transform <NUM>, if the predetermined portion of the picture is (to be) coded into the data stream using lossy coding.

<FIG> shows a method <NUM> for decoding (encoding) a picture from (into) a data stream, comprising determining <NUM> for a predetermined portion of the picture, whether same is (to be) coded into the data stream using lossless coding or lossy coding, and deriving a prediction signal for the predetermined portion in a first manner <NUM>, if the predetermined portion of the picture is (to be) coded into the data stream using lossless coding, and in a second manner <NUM>, if the predetermined portion of the picture is (to be) coded into the data stream using lossy coding, wherein the first and second manners differ so that the prediction signal is less filtered, e.g. using an interpolation filter, in the first manner <NUM> than in the second manner <NUM> or unfiltered in the first manner <NUM> while being filtered in the second manner <NUM>.

<FIG> shows a method <NUM> for decoding (encoding) a picture from (into) a data stream, comprising determining <NUM> for a predetermined portion of the picture, whether same is (to be) coded into the data stream using lossless coding or lossy coding, and infering that one or more predetermined coding options relating to one or more tools of the decoder/encoder for processing a prediction residual corrected predictive reconstruction with respect to the predetermined portion or for prediction residual quantization are to be set so that the one or more tools are disabled <NUM> with respect to the predetermined portion, if the predetermined portion of the picture is (to be) coded into the data stream using lossless coding, and by deriving <NUM> the one or more predetermined coding options from the plurality of coding parameters, if the predetermined portion of the picture is (to be) coded into the data stream using lossy coding.

<FIG> shows a method <NUM> comprising performing <NUM> video decoding from a data stream at an internal bit-depth and video outputing <NUM> at an input bit-depth or internal bit-depth and reading <NUM> from the data stream a syntax element which indicates a difference between the internal bit-depth and the input bit-depth. <FIG> shows a parallel method <NUM> comprising performing <NUM> video encoding into a data stream at an internal bit-depth and receiving <NUM> video input at an input bit-depth or internal bit depth and encoding <NUM> into the data stream a syntax element which indicates a difference between the internal bit-depth and the input bit-depth.

<FIG> shows a method <NUM> comprising performing <NUM> video decoding from a data stream at an internal bit-depth and video outputing <NUM> at an input bit-depth or internal bit-depth and reading <NUM> from the data stream a syntax element which indicates a minimum for a quantization step size scale parameter. <FIG> shows a parallel method <NUM> comprising performing <NUM> video encoding into a data stream at an internal bit-depth and receiving <NUM> video input at an input bit-depth or internal bit-depth and encoding <NUM> into the data stream a syntax element which indicates a minimum for a quantization step size scale parameter.

<FIG> shows a method <NUM> comprising deriving <NUM> from a data stream an indication of an internal bit-depth and an input bit-depth or a difference between same, performing <NUM> video decoding from the data stream at the internal bit-depth and video outputing <NUM> at the input bit-depth, checking <NUM> whether the internal bit-depth falls below the input bit-depth and changing <NUM> the internal bit-depth to correspond to the input bit-depth. <FIG> shows a parallel method <NUM> comprising encoding <NUM> into a data stream video an indication of an internal bit-depth and an input bit-depth or a difference between same, performing <NUM> video encoding into the data stream at the internal bit-depth and receiving <NUM> video input at the input bit-depth, checking <NUM> whether the internal bit-depth falls below the input bit-depth and changing <NUM> the internal bit-depth to correspond to the input bit-depth.

Claim 1:
Decoder for decoding a picture from a data stream, configured to
check (<NUM>) whether a plurality (<NUM>) of coding parameters, which are contained in the data stream (<NUM>), relate to a predetermined portion (<NUM>) of the picture (<NUM>) and control whether a prediction residual transform mode and a quantization accuracy with respect to the predetermined portion, are indicative of a coding parameter setting corresponding to a lossless prediction residual coding; and
responsive to the plurality of coding parameters being indicative of the coding parameter setting corresponding to the lossless prediction residual coding, setting one or more predetermined coding options relating to one or more tools of the decoder for processing a prediction residual corrected predictive reconstruction with respect to the predetermined portion so that the one or more tools are disabled with respect to the predetermined portion, the prediction residual corrected predictive reconstruction being a reconstructed signal within a prediction loop of the decoder or output from the prediction loop of the decoder,
characterized in that the decoder is further configured to
read from the data stream a lossless coding syntax element (<NUM>) which indicates whether a predetermined region (<NUM>) of the picture, which covers or contains the predetermined portion, is coded into the data stream using lossless coding or lossy coding, and
set the one or more predetermined coding options
so that the one or more tools are disabled with respect to the predetermined portion if the lossless coding syntax element indicates that the predetermined region of the picture is coded into the data stream using lossless coding, and if the plurality of coding parameters are indicative of the coding parameter setting corresponding to the lossless prediction residual coding and
to a predetermined tool state if the plurality of coding parameters not equal the coding parameter setting corresponding to the lossless prediction residual coding or the lossless coding syntax element indicates that the predetermined region of the picture is coded into the data stream using lossy coding.