Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
TRANSFORM SKIP IN VIDEO CODING AND DECODING
Document Type and Number:
WIPO Patent Application WO/2021/136607
Kind Code:
A1
Abstract:
Transform skip is signalled in a bitstream and a decoder is configured, on the basis that transform skip is enabled, to suppress reference sample filtering and PDPC. If transform skip is disabled, then the decoder is able to invoke RSF and PDPC as required.

Inventors:
BLASI SAVERIO (GB)
KULUPANA GOSALA (GB)
Application Number:
PCT/EP2020/078470
Publication Date:
July 08, 2021
Filing Date:
October 09, 2020
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
BRITISH BROADCASTING CORP (GB)
International Classes:
H04N19/105; H04N19/157; H04N19/593; H04N19/70; H04N19/82
Domestic Patent References:
WO2015010037A12015-01-22
WO2018165397A12018-09-13
Other References:
KANG J ET AL: "Non-RCE3: Implicit derivation for adaptively turning filtering off in intra prediction", 15. JCT-VC MEETING; 23-10-2013 - 1-11-2013; GENEVA; (JOINT COLLABORATIVE TEAM ON VIDEO CODING OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16 ); URL: HTTP://WFTP3.ITU.INT/AV-ARCH/JCTVC-SITE/,, no. JCTVC-O0181-v3, 24 October 2013 (2013-10-24), XP030115217
SAID (QUALCOMM) A ET AL: "Position dependent intra prediction combination", no. m37502, 23 October 2015 (2015-10-23), XP030065870, Retrieved from the Internet [retrieved on 20151023]
CHEN H ET AL: "Non-RCE2: Enhanced angular intra prediction for screen content coding", 14. JCT-VC MEETING; 25-7-2013 - 2-8-2013; VIENNA; (JOINT COLLABORATIVE TEAM ON VIDEO CODING OF ISO/IEC JTC1/SC29/WG11 AND ITU-T SG.16 ); URL: HTTP://WFTP3.ITU.INT/AV-ARCH/JCTVC-SITE/,, no. JCTVC-N0183, 16 July 2013 (2013-07-16), XP030114667
BLASI S ET AL: "Aligning intra-prediction of TS blocks with BDPCM", no. JVET-Q0556, 11 January 2020 (2020-01-11), XP030223879, Retrieved from the Internet [retrieved on 20200111]
Attorney, Agent or Firm:
ROUND, Edward (GB)
Download PDF:
Claims:
CLAIMS:

1. A method of decoding video data, the method comprising: receiving a block of reference sample data and at least one encoded block of residuals data; receiving, for an encoded block of residuals data, an intra-prediction mode indicator indicating which of a plurality of intra-prediction modes is to be used; receiving, for an encoded block of residuals data, a transform skip flag indicating whether the residuals block is to be transform skipped or not; and determining during the intra-prediction step whether to suppress or allow the invocation of a process for reference sample filtering and/or whether to suppress or allow the invocation of a process for position-dependent prediction sample filtering based on the value of the transform skip flag.

2. A method in accordance with claim 1 , the method comprising: in the event that the transform skip flag indicates the residual block is to be transform skipped, then: suppressing the invocation of a process for reference sample filtering; and generating an intra-prediction with respect to the unfiltered reference sample data; in the event that the transform skip flag indicates the residual block is not to be transform skipped, then: determining if reference sample filtering is to be used and, if reference sample filtering is to be used, invoking a process for reference sample filtering on the reference samples before intra-prediction; generating an intra-prediction with respect to the reference sample data, whether filtered or otherwise; and determining if position-dependent prediction sample filtering is to be used and, if position-dependent prediction sample filtering is to be used, invoking a process for position-dependent prediction sample filtering.

3. A method in accordance with claim 2, the method comprising, in the event that the transform skip flag indicates the residual block is to be transform skipped, suppressing the invocation of a process for position dependent prediction sample filtering. 4. A method in accordance with claim 1 , the method comprising: in the event that the transform skip flag indicates the residual block is to be transform skipped, then: generating an intra-prediction with respect to the reference sample data; and suppressing the invocation of a process for position-dependent prediction sample filtering; in the event that the transform skip flag indicates the residual block is not to be transform skipped, then: determining if reference sample filtering is to be used and, if reference sample filtering is to be used, invoking a process for reference sample filtering on the reference samples before intra-prediction; generating an intra-prediction with respect to the reference sample data, whether filtered or otherwise; and determining if position-dependent prediction sample filtering is to be used and, if position-dependent prediction sample filtering is to be used, invoking a process for position-dependent prediction sample filtering.

5. A method in accordance with any preceding claim, wherein: in the event that the transform skip flag indicates the residual block is not to be transform skipped, then: determining if the process for reference sample filtering is to be invoked; and if the reference sample filtering process is to be invoked, invoking the reference sample filtering process on the reference samples before intra-prediction.

6. A method in accordance with any preceding claim, wherein: in the event that the transform skip flag indicates the residual block is not to be transform skipped, then: determining if the process for position-dependent prediction sample filtering is to be invoked and, if the process for position-dependent prediction sample filtering is to be invoked, invoking position-dependent prediction sample filtering on the intra-prediction.

7. A video decoder for decoding video data, the video decoder comprising: a receiver for receiving a block of reference sample data and at least one encoded block of residuals data, and, for an encoded block of residuals data, an intra-prediction mode indicator indicating which of a plurality of intra-prediction modes is to be used, and a transform skip flag indicating whether the residuals block is to be transform skipped or not; and a process controller for determining during intra-prediction whether to suppress or allow the invocation of a process for reference sample filtering and/or whether to suppress or allow the invocation of a process for position-dependent prediction sample filtering based on the value of the transform skip flag.

8. A video decoder in accordance with claim 7, wherein the process controller is operable: in the event that the transform skip flag indicates the residual block is to be transform skipped, to: suppress the invocation of a process for reference sample filtering; and generate an intra-prediction with respect to the unfiltered reference sample data; in the event that the transform skip flag indicates the residual block is not to be transform skipped, to: determine if reference sample filtering is to be used and, if reference sample filtering is to be used, invoke a process for reference sample filtering on the reference samples before intra-prediction; generate an intra-prediction with respect to the reference sample data, whether filtered or otherwise; and determine if position-dependent prediction sample filtering is to be used and, if position-dependent prediction sample filtering is to be used, invoke a process for position-dependent prediction sample filtering.

9. A video decoder in accordance with claim 8, wherein the process controller is operable, in the event that the transform skip flag indicates the residual block is to be transform skipped, to suppress the invocation of a process for position dependent prediction sample filtering.

10. A video decoder in accordance with claim 7, wherein the process controller is operable: in the event that the transform skip flag indicates the residual block is to be transform skipped, to: generate an intra-prediction with respect to the reference sample data; and suppress the invocation of a process for position-dependent prediction sample filtering; in the event that the transform skip flag indicates the residual block is not to be transform skipped, to: determine if reference sample filtering is to be used and, if reference sample filtering is to be used, invoke a process for reference sample filtering on the reference samples before intra-prediction; generate an intra-prediction with respect to the reference sample data, whether filtered or otherwise; and determine if position-dependent prediction sample filtering is to be used and, if position-dependent prediction sample filtering is to be used, invoke a process for position-dependent prediction sample filtering.

11. A video decoder in accordance with any one of claims 7 to 10, wherein: in the event that the transform skip flag indicates the residual block is not to be transform skipped, then the video decoder is operable to: determine if the reference sample filter is to be used; and if the reference sample filter is to be used, to invoke the reference sample filter on the reference samples before intra-prediction.

12. A video decoder in accordance with any one of claims 7 to 11 , wherein: in the event that the transform skip flag indicates the residual block is not to be transform skipped, then the video decoder is operable to: determine if the position-dependent prediction sample filter is to be used and, if the position-dependent prediction sample filter is to be used, to invoke the position- dependent prediction sample filter on the intra-prediction.

Description:
Transform Skip in Video Coding and Decoding

FIELD

The present disclosure relates to video coding and decoding.

BACKGROUND

Digital video can be encoded for transport and/or storage. This can have efficiency advantage, in terms of demand for channel bandwidth, storage requirements, and error detection and/or correction.

Video compression techniques involve taking blocks of video data, and employing a variety of approaches to take advantage of redundancy. For example, intra-prediction is a spatial approach, which involves encoding a video block with reference to another (predictive) video block in the same frame of video data. On the other hand, inter prediction is a temporal approach, involving encoding a video block of a video frame with reference to a corresponding (predictive) block of another frame of the video data.

These approaches result in the production of residual data, with reference to the predictive block. These residuals can be further encoded, such as by transformation from the pixel domain to a transform domain. This results in residual transform coefficients which can be then be quantised for further encoding, such as by entropy encoding, to produce a highly compressed data set.

DESCRIPTION OF DRAWINGS

Figure 1 is a schematic representation of a communications network in accordance with an embodiment;

Figure 2 is a schematic representation of an emitter of the communications network of figure 1 ; Figure 3 is a diagram illustrating an encoder implemented on the emitter of figure 2;

Figure 4 is a flow diagram of a prediction process performed at a prediction module of the encoder of figure 3;

Figure 5 is a schematic representation of a receiver of the communications network of figure 1 ;

Figure 6 is a diagram illustrating a decoder implemented on the receiver of figure 4; and

Figure 7 is a flow diagram of a prediction process performed at a prediction module of the decoder of figure 6.

DESCRIPTION OF EMBODIMENTS

Versatile Video Coding (VVC) (M PEG-1 Part 3) is a video compression standard currently being developed by the Joint Video Experts Team (JVET), a united video expert team of the MPEG working group of ISO/I EC JTC 1 and the VCEG working group of ITU-T.

In the current VVC draft specification, residual signals of intra predicted blocks can be compressed using different techniques. Such techniques can be categorized in three main options:

• Category 1: Apply variants of discrete cosine transformation (DCT) (such as DCT-2, DST-7, DCT-8) on residual blocks, followed by quantisation, and then apply Regular Residual Coding (RRC);

• Category 2: Skip the DCT based transform operations (i.e. , use Transform Skip) on residual blocks, followed by quantisation, and then apply Transform Skip Residual Coding (TSRC);

• Category 3: Skip the DCT based transform operations (i.e., use Transform Skip) on residual blocks, followed by quantisation, apply BDPCM (Block-DPCM) prediction on quantized residuals, and finally apply Transform Skip Residual Coding (TSRC) While the above categories refer to ways to compress the residuals that are obtained by subtracting a prediction from an original block, from the perspective of the VVC draft standard specifications, the usage of each of the three above categories has a direct effect on the way the prediction itself is computed. In other words, at the decoder side, if it is detected that one of the above three categories is to be used to decompress the coefficients into residuals, then, this consequently implies that the prediction step happens in different ways.

In the current VVC draft specification, the appropriate category can be inferred based on whether or not the corresponding residual block is Transform skipped, and the BDPCM type. When a block is BDPCM coded, its transform type is inferred to be Transform skip whereas for non-BDPCM blocks, a separate flag is signalled to indicate whether the block is transform skipped or not.

When generating intra- predicted blocks, a technique called reference sample filtering can be applied to the reference samples prior to performing the intra-prediction operation. The filtering may be applied, or not, as the case may be, depending on whether the block belongs to one of the three categories above.

Specifically:

• Category 1: Reference sample filtering can be applied

• Category 2: Reference sample filtering can be applied

• Category 3: Do not apply Reference sample filtering

Moreover, when computing intra- predicted samples, a technique called Position Dependent Prediction Combination (PDPC) may be applied during the intra-prediction operation. Again, the usage of PDPC depends on whether the block belongs to one of the three categories above.

Specifically:

• Category 1: PDPC can be applied

• Category 2: PDPC can be applied

• Category 3: Do not apply PDPC It can be seen that, in the above background example, reference sample filtering and/or PDPC can be applied for blocks in categories 1 and 2. On the other hand, for blocks in category 3, reference sample filtering and PDPC are not applied. This is despite the fact that blocks in categories 2 and 3 both use the same transform skip and residual coding operations.

Given, as it was observed, that blocks in which BDPCM is used (namely, blocks in category 3) may benefit from disabling the reference sample filtering and the PDPC operation, it could be beneficial to unify categories 2 and 3, and align the usage of the reference sample filtering and PDPC operation of category 2 to that of category 3. Therefore, according to an embodiment, the following approach is taken:

• Category 1: Reference sample filtering can be applied

• Category 2: Do not apply Reference sample filtering

• Category 3: Do not apply Reference sample filtering

Furthermore, in the present embodiment, for intra- predicted signals when applying PDPC operations:

• Category 1: PDPC can be applied

• Category 2: Do not apply PDPC

• Category 3: Do not apply PDPC

By this, category 2 and 3 blocks are effectively handled the same way. This has an advantage in terms of simplifying the implementation of an encoder and a decoder, in that two categories of blocks are effectively treated the same way. This can also bring coding efficiency gains.

For completeness, and for the guidance of the reader with knowledge of the development of the VVC draft specification-7, an amendment of the VVC draft specification laying out detail of a specific implementation of a described embodiment will now be set out below.

Reference sample filtering related modifications

The variable refFilterFlag is derived as follows: If predModelntra is equal to one of the following values: 0, -14, -12, -10, -6, 2, 34, 66, 12, 16, 18, 80, then refFilterFlag is set equal to 1.

- transform_skip_flag[ xTbCmp ][ yTbCmp ][ cldx ] is equal to 1, then refFilterFlag is set equal to 0.

- Otherwise, refFilterFlag is set equal to 0.

PDPC related modifications

When all of the following conditions are true, the position-dependent prediction sample filtering process specified in clause 8.4.5.2.14 is invoked with the intra prediction mode predModelntra, the transform block width nTbW, the transform block height nTbH, the predicted samples predSamplesf x ][ y], with x = O.mTbW - 1, y = 0..nTbH - 1, the reference sample width refW, the reference sample height refH, and the reference samples p[x][y ], with x = -1, y = -1.. refH - 1 and x = 0.. refW - 1, y = -1 as inputs, and the output is the modified predicted sample array predSamples:

- nTbW is greater than or equal to 4 and nTbH is greater than or equal to 4 or cldx is not equal to 0

- refldx is equal to 0 or cldx is not equal to 0

- BdpcmFlagf xTbCmp ][ yTbCmp ][ cldx ] is equal to 0

- transform_skip_flag[ xTbCmp ][ yTbCmp ][ cldx ] is equal to 0

- One of the following conditions is true:

- predModelntra is equal to INTRA_PLANAR

- predModelntra is equal to INTRA_DC

- predModelntra is less than or equal to INTRA_ANGULAR18

- predModelntra is greater than or equal to INTRA_ANGULAR50 and less than INTRA LT CCLM

The above arrangement can be implemented in video communication network, designed to process a video presentation by encoding techniques, enabling it to be transmitted (or stored) for decoding by a playback device.

In general terms, an aspect of the present disclosure enables the signalling of transform skip in a bitstream, in respect of which a decoder is configured, on the basis that transform skip is enabled, to suppress reference sample filtering and/or PDPC. If transform skip is disabled, then the decoder is able to invoke RSF and PDPC as required. As illustrated in figure 1 , an arrangement is illustrated comprising a schematic video communication network 10, in which an emitter 20 and a receiver 30 are in communication via a communications channel 40. In practice, the communications channel 40 may comprise a satellite communications channel, a cable network, a ground-based radio broadcast network, a POTS-implemented communications channel, such as used for provision of internet services to domestic and small business premises, fibre optic communications systems, or a combination of any of the above and any other conceivable communications medium.

Furthermore, the disclosure also extends to communication, by physical transfer, of a storage medium on which is stored a machine readable record of an encoded bitstream, for passage to a suitably configured receiver capable of reading the medium and obtaining the bitstream therefrom. An example of this is the provision of a digital versatile disk (DVD) or equivalent. The following description focuses on signal transmission, such as by electronic or electromagnetic signal carrier, but should not be read as excluding the aforementioned approach involving storage media.

As shown in figure 2, the emitter 20 is a computer apparatus, in structure and function. It may share, with general purpose computer apparatus, certain features, but some features may be implementation specific, given the specialised function for which the emitter 20 is to be put. The reader will understand which features can be of general purpose type, and which may be required to be configured specifically for use in a video emitter.

The emitter 20 thus comprises a graphics processing unit (GPU) 202 configured for specific use in processing graphics and similar operations. The emitter 20 also comprises one or more other processors 204, either generally provisioned, or configured for other purposes such as mathematical operations, audio processing, managing a communications channel, and so on.

An input interface 206 provides a facility for receipt of user input actions. Such user input actions could, for instance, be caused by user interaction with a specific input unit including one or more control buttons and/or switches, a keyboard, a mouse or other pointing device, a speech recognition unit enabled to receive and process speech into control commands, a signal processor configured to receive and control processes from another device such as a tablet or smartphone, or a remote-control receiver. This list will be appreciated to be non-exhaustive and other forms of input, whether user initiated or automated, could be envisaged by the reader.

Likewise, an output interface 214 is operable to provide a facility for output of signals to a user or another device. Such output could include a display signal for driving a local video display unit (VDU) or any other device.

A communications interface 208 implements a communications channel, whether broadcast or end-to-end, with one or more recipients of signals. In the context of the present embodiment, the communications interface is configured to cause emission of a signal bearing a bitstream defining a video signal, encoded by the emitter 20.

The processors 204, and specifically for the benefit of the present disclosure, the GPU 202, are operable to execute computer programs, in operation of the encoder. In doing this, recourse is made to data storage facilities provided by a mass storage device 208 which is implemented to provide large-scale data storage albeit on a relatively slow access basis, and will store, in practice, computer programs and, in the current context, video presentation data, in preparation for execution of an encoding process.

A Read Only Memory (ROM) 210 is preconfigured with executable programs designed to provide the core of the functionality of the emitter 20, and a Random Access Memory 212 is provided for rapid access and storage of data and program instructions in the pursuit of execution of a computer program.

The function of the emitter 20 will now be described, with reference to figure 3. Figure 3 shows a processing pipeline performed by an encoder implemented on the emitter 20 by means of executable instructions, on a data file representing a video presentation comprising a plurality of frames for sequential display as a sequence of pictures.

The data file may also comprise audio playback information, to accompany the video presentation, and further supplementary information such as electronic programme guide information, subtitling, or metadata to enable cataloguing of the presentation. The processing of these aspects of the data file are not relevant to the present disclosure. Referring to Figure 3, the current picture or frame in a sequence of pictures is passed to a partitioning module 230 where it is partitioned into rectangular blocks of a given size for processing by the encoder. This processing may be sequential or parallel. The approach may depend on the processing capabilities of the specific implementation.

Each block is then input to a prediction module 232, which seeks to discard temporal and spatial redundancies present in the sequence and obtain a prediction signal using previously coded content. Information enabling computation of such a prediction is encoded in the bitstream. This information should comprise sufficient information to enable computation, including the possibility of inference at the receiver of other information necessary to complete the prediction.

The prediction signal is subtracted from the original signal to obtain a residual signal. This is then input to a transform module 234, which attempts to further reduce spatial redundancies within a block by using a more suitable representation of the data. As noted above, in this embodiment, it is contemplated that domain transformation may not be implemented on every set of residuals and, instead, depending on the likely efficiency of doing so, transform skip may instead be implemented. Employment of transform skip, may be signalled in the bitstream.

The resulting signal is then typically quantised by quantisation module 236, and finally the resulting data formed of the coefficients and the information necessary to compute the prediction for the current block is input to an entropy coding module 238 makes use of statistical redundancy to represent the signal in a compact form by means of short binary codes. The reader will note that, if transform skip has been employed, transform skip residual coding (TSRC) is employed.

By repeated action of the encoding facility of the emitter 20, a bitstream of block information elements can be constructed for transmission to a receiver or a plurality of receivers, as the case may be. The bitstream may also bear information elements which apply across a plurality of block information elements and are thus held in bitstream syntax independent of block information elements. Examples of such information elements include configuration options, parameters applicable to a sequence of frames, and parameters relating to the video presentation as a whole. The prediction module 232 will now be described in further detail, with reference to figure 4. As will be understood, this is but an example, and other approaches, within the scope of the present disclosure and the appended claims, could be contemplated.

The following process is performed on each block in a frame.

The prediction module 232 is configured to determine, for a given block of luma or chroma samples partitioned from a frame, whether intra-prediction is to be employed and, if so, which of a plurality of predetermined intra-prediction modes is to be used. The prediction module then applies the selected mode of intra-prediction, if applicable, and then determines a prediction, on the basis of which residuals can then be generated as previously noted. The prediction employed is signalled in the bitstream, for receipt and interpretation by a suitably configured decoder. The encoder will signal on the bitstream information to enable a decoder to determine which mode has been used

In general terms, the encoder avails itself of information from prior predictions, in constructing a prediction for a present block. In doing so, the encoder may combine the knowledge from inter-prediction, i.e. from a prior frame, and intra-prediction, i.e. from another block in the same frame. The present embodiment is concerned with the way of computing the intra-prediction dependant on whether or not the corresponding residual block is Transform skipped.

This is done by determining (step S102) which of three approaches are to be taken to the intra-prediction process and the subsequent transform process. In the current VVC draft specification, the appropriate category is inferred based on whether or not the corresponding residual block is Transform skipped, and the BDPCM type. When a block is BDPCM coded, its transform type is inferred to be Transform skip. Otherwise, for other non-BDPCM blocks, a separate flag may be signalled to indicate whether the block is transform skipped or not.

As noted above, category 1 intra-prediction involves application of reference sample filtering (RSF) (step S104) as appropriate. Categories 2 and 3, which implicate transform skip, do not involve these two steps. Then the intra-prediction operation is applied (step S106) followed by application of PDPC (step S108). Here, again the PDPC may only be applied for category 1 prediction blocks whereas for categories 2 and 3, no PDPC operation is applied. In essence, this implies that intra-prediction in Transform skipped residual blocks are done without reference sample filtering and/or without invoking PDPC operations.

The structural architecture of the receiver is illustrated in figure 5. It has the elements of being a computer implemented apparatus. The receiver 30 thus comprises a graphics processing unit 302 configured for specific use in processing graphics and similar operations. The receiver 30 also comprises one or more other processors 304, either generally provisioned, or configured for other purposes such as mathematical operations, audio processing, managing a communications channel, and so on.

As the reader will recognise, the receiver 30 may be implemented in the form of a set top box, a hand held personal electronic device, a personal computer, or any other device suitable for the playback of video presentations.

An input interface 306 provides a facility for receipt of user input actions. Such user input actions could, for instance, be caused by user interaction with a specific input unit including one or more control buttons and/or switches, a keyboard, a mouse or other pointing device, a speech recognition unit enabled to receive and process speech into control commands, a signal processor configured to receive and control processes from another device such as a tablet or smartphone, or a remote-control receiver. This list will be appreciated to be non-exhaustive and other forms of input, whether user initiated or automated, could be envisaged by the reader.

Likewise, an output interface 314 is operable to provide a facility for output of signals to a user or another device. Such output could include a television signal, in suitable format, for driving a local television device.

A communications interface 308 implements a communications channel, whether broadcast or end-to-end, with one or more recipients of signals. In the context of the present embodiment, the communications interface is configured to cause emission of a signal bearing a bitstream defining a video signal, encoded by the receiver 30.

The processors 304, and specifically for the benefit of the present disclosure, the GPU 302, are operable to execute computer programs, in operation of the receiver. In doing this, recourse is made to data storage facilities provided by a mass storage device 308 which is implemented to provide large-scale data storage albeit on a relatively slow access basis, and will store, in practice, computer programs and, in the current context, video presentation data, resulting from execution of an receiving process.

A Read Only Memory (ROM) 310 is preconfigured with executable programs designed to provide the core of the functionality of the receiver 30, and a Random Access Memory 312 is provided for rapid access and storage of data and program instructions in the pursuit of execution of a computer program.

The function of the receiver 30 will now be described, with reference to figure 6. Figure 6 shows a processing pipeline performed by a decoder implemented on the receiver 20 by means of executable instructions, on a bitstream received at the receiver 30 comprising structured information from which a video presentation can be derived, comprising a reconstruction of the frames encoded by the encoder functionality of the emitter 20.

The decoding process illustrated in figure 6 aims to reverse the process performed at the encoder. The reader will appreciate that this does not imply that the decoding process is an exact inverse of the encoding process.

A received bit stream comprises a succession of encoded information elements, each element being related to a block. A block information element is decoded in an entropy decoding module 330 to obtain a block of coefficients and the information necessary to compute the prediction for the current block. The block of coefficients is typically de- quantised in dequantisation module 332 and typically inverse transformed to the spatial domain by transform module 334, unless transform skip is signalled to the decoder.

As noted above, the reader will recognise that entropy decoding, dequantisation and inverse transformation would only need to be employed at the receiver if entropy encoding, quantisation and transformation, respectively, had been employed at the emitter.

A prediction signal is generated as before, from previously decoded samples from current or previous frames and using the information decoded from the bit stream, by prediction module 336. A reconstruction of the original picture block is then derived from the decoded residual signal and the calculated prediction block in the reconstruction block 338. The prediction module 336 is responsive to information, on the bitstream, signalling the use of intra-prediction and, if such information is present, reading from the bitstream information which enables the decoder to determine which intra-prediction mode has been employed and thus which prediction technique should be employed in reconstruction of a block information sample.

As before, intra-prediction is established by virtue of identification of the block as one of three categories.

By repeated action of the decoding functionality on successively received block information elements, picture blocks can be reconstructed into frames which can then be assembled to produce a video presentation for playback.

An exemplary decoder algorithm, complementing the encoder algorithm described earlier, is illustrated in figure 7.

As noted previously, the decoder functionality of the receiver 30 extracts from the bitstream a succession of block information elements, as encoded by the encoder facility of the emitter 20, defining block information and accompanying configuration information.

In general terms, the decoder avails itself of information from prior predictions, in constructing a prediction for a present block. In doing so, the decoder may combine the knowledge from inter-prediction, i.e. from a prior frame, and intra-prediction, i.e. from another block in the same frame. The present embodiment is concerned with the way of computing the intra-prediction dependant on whether or not the corresponding residual block is Transform skipped.

This is done by determining (step S202) which of three approaches are to be taken to the intra-prediction process and the implied transform process. In the current VVC draft specification, the appropriate category is inferred based on whether or not the corresponding residual block is Transform skipped, and the BDPCM type. When a block is BDPCM coded, its transform type is inferred to be Transform skip. Otherwise, for other non-BDPCM blocks, a separate flag is signalled to indicate whether the block is transform skipped or not. As noted above, category 1 intra-prediction involves application of reference sample filtering (RSF) (step S204) as appropriate. Categories 2 and 3, which implicate transform skip, do not involve this step. Then the intra-prediction operation is applied (step S206) followed by application of PDPC for category 1 (step S208). Categories 2 and 3 do not involve this step. The categorisation of the block determines both the way in which intra-prediction is performed, and the employment (or not, as the case may be) of residual coding method. It will be understood that the invention is not limited to the embodiments above-described and various modifications and improvements can be made without departing from the concepts described herein. Except where mutually exclusive, any of the features may be employed separately or in combination with any other features and the disclosure extends to and includes all combinations and sub-combinations of one or more features described herein.




 
Previous Patent: SHELF POWER SUPPLY DEVICE

Next Patent: LIGHTBAND