| CPC H04N 19/157 (2014.11) [H04N 19/122 (2014.11); H04N 19/136 (2014.11); H04N 19/176 (2014.11)] |

| AS A RESULT OF REEXAMINATION, IT HAS BEEN DETERMINED THAT: |
| Claims 8, 15 and 23 are cancelled. |
| Claims 1, 3-7, 9, 11-14, 16, 18-22, 24 and 25 are determined to be patentable as amended. |
| Claims 2, 10 and 17, dependent on an amended claim, are determined to be patentable. |
| New claims 26-43 are added and determined to be patentable. |
|
1. A method of decoding a bitstream of encoded video in a video decoder to reconstruct residuals, the method comprising:
determining that transform skipping is enabled for a [ first ] block of residuals, meaning that no transform was applied during encoding and no inverse transform will be applied during decoding [ , wherein the first block of residuals was generated using intra-prediction] ;
reconstructing, based on a [ first ] scan order, a [ first ] block of quantized residuals by entropy decoding a first part of the bitstream;
based on the determination that transform skipping is enabled [ for the first block of residuals] , reconstructing the [ first ] block of residuals by one of rotating the [ first ] block of quantized residuals and dequantizing the resulting rotated [ first ] block or dequantizing the [ first ] block of quantized residuals and rotating the resulting dequantized [ first ] block [ ;
determining that transform skipping is enabled for a second block of residuals, wherein the second block of residuals was generated using inter-prediction;
deriving a confidence map comprising a confidence level for each position in the second block of residuals, based on previously decoded blocks;
reconstructing, based on a second scan order, a second block of quantized residuals by entropy decoding a second part of the bitstream; and
based on the determination that transform skipping is enabled for the second block of residuals, reconstructing the second block of residuals by one of reordering the second block of quantized residuals and dequantizing the resulting reordered second block or dequantizing the second block of quantized residuals and reordering the resulting dequantized second block, wherein the reordering is based on the confidence map] .
|
|
3. The method claimed in claim 1, wherein the [ first ] scan order is one of a horizontal, vertical, zigzag, or diagonal scan order.
|
|
4. The method claimed in claim 1, wherein [ a size of ] the [ first ] block of residuals [ generated using intra-prediction ] is
|
|
5. The method claimed in claim 1, wherein determining [ that transform skipping is enabled for a first block of residuals ] includes determining that the [ first ] block of residuals
|
|
6. The method claimed in claim 1, wherein determining [ that transform skipping is enabled for the first block of residuals ] includes decoding a transform skipping flag from a header in the bitstream.
|
|
7. The method claimed in claim 1, wherein determining [ that transform skipping is enabled for the first block of residuals ] comprises parsing a flag indicative of a lossless mode.
|
|
9. A method of encoding video in a video encoder to output a bitstream of encoded data, the encoding including encoding residuals, the method comprising:
determining that transform skipping is enabled for a [ first ] block of residuals, meaning that no transform is to be applied during encoding and no inverse transform will be applied during decoding [ , wherein the first block of residuals was generated using intra-prediction] ;
based on the determination that transform skipping is enabled [ for the first block of residuals] , producing a [ first ] block of quantized residuals by one of either rotating the [ first ] block of residuals and quantizing the resulting rotated [ first ] block or quantizing the [ first ] block of residuals and rotating the resulting quantized [ first ] block;
scanning, in a [ first ] scan order, the [ first ] block of quantized residuals to produce a first sequence of quantized residuals;
entropy encoding the first sequence of quantized residuals to generate a first part of the bitstream of encoded data [ ;
determining that transform skipping is enabled for a second block of residuals, wherein the second block of residuals was generated using inter-prediction;
deriving a confidence map comprising a confidence level for each position in the second block of residuals, based on previously encoded blocks;
based on the determination that transform skipping is enabled for the second block of residuals, producing a second block of quantized residuals by one of reordering the second block of residuals and quantizing the resulting reordered second block or quantizing the second block of residuals and reordering the resulting quantized second block, wherein the reordering is based on the confidence map;
scanning, in a second scan order, the second block of quantized residuals to produce a second sequence of quantized residuals; and
entropy encoding the second sequence of quantized residuals to generate a second part of the bitstream of encoded data] .
|
|
11. The method claimed in claim 9, wherein the [ first ] scan order is one of a horizontal, vertical, zigzag, or diagonal scan order.
|
|
12. The method claimed in claim 9, wherein [ a size of ] the [ first ] block of residuals [ generated using intra-prediction ] is
|
|
13. The method claimed in claim 9, wherein determining [ that transform skipping is enabled for the first block of residuals ] includes determining that the [ first ] block of residuals
|
|
14. The method claimed in claim 9, wherein determining [ that transform skipping is enabled for the first block of residuals ] includes determining that a lossless mode is used in encoding [ of the first sequence] .
|
|
16. A decoder for decoding a bitstream of encoded video to reconstruct [ at least] a [ first ] block of residuals [ and a second block of residuals] , the decoder comprising:
a processor;
a memory; and
a decoding application stored in memory and containing instructions that, when executed, cause the processor to:
determine that transform skipping is enabled for the [ first ] block of residuals, meaning that no transform was applied during encoding and no inverse transform will be applied during decoding [ , wherein the first block of residuals was generated using intra-prediction] ;
reconstruct based on a [ first ] scan order, a [ first ] block of quantized residuals by entropy decoding a first part of the bitstream;
based on the determination that transform skipping is enabled [ for the first block of residuals] , reconstruct the [ first ] block of residuals by one of rotating the [ first ] block of quantized residuals and dequantizing the resulting rotated [ first ] block or dequantizing the [ first ] block of quantized residuals and rotating the resulting dequantized [ first ] block [ ;
determine that transform skipping is enabled for a second block of residuals, wherein the second block of residuals was generated using inter-prediction;
derive a confidence map comprising a confidence level for each position in the second block of residuals, based on previously decoded blocks;
reconstruct, based on a second scan order, a second block of quantized residuals by entropy decoding a second part of the bitstream; and
based on the determination that transform skipping is enabled for the second block of residuals, reconstruct the second block of residuals by one of reordering the second block of quantized residuals and dequantizing the resulting reordered second block or dequantizing the second block of quantized residuals and reordering the resulting dequantized second block, wherein the reordering is based on the confidence map] .
|
|
18. The decoder claimed in claim 16, wherein the [ first ] scan order is one of a horizontal, vertical, zigzag, or diagonal scan order.
|
|
19. The decoder claimed in claim 16, wherein [ a size of ] the [ first ] block of residuals [ generated using intra-prediction ] is
|
|
20. The decoder claimed in claim 16, wherein the instructions, when executed, cause the processor to determine that transform skipping is enabled [ for the first block of residuals ] based on a determination that the
|
|
21. The decoder claimed in claim 16, wherein the instructions, when executed, cause the processor to determine that transform skipping is enabled [ for the first block of residuals ] based on decoding a transform skipping flag from a header in the bitstream.
|
|
22. The decoder claimed in claim 16, wherein the instructions, when executed, cause the processor to determine that transform skipping is enabled [ for the first block of residuals ] based on parsing a flag indicative of a lossless mode.
|
|
24. An encoder for encoding video to output a bitstream of encoded data, the video including a block of residuals, the decoder comprising:
a processor;
a memory; and
an encoding application stored in memory and containing instructions that, when executed, cause the processor to:
determine that transform skipping is enabled for the [ first ] block of residuals, meaning that no transform is to be applied during encoding and no inverse transform will be applied during decoding [ , wherein the first block of residuals was generated using intra-prediction] ;
based on the determination that transform skipping is enabled [ for the first block of residuals] , produce a [ first ] block of quantized
scan, in a [ first ] scan order, the [ first ] block of quantized residuals to produce a [ first ] sequence of quantized residuals;
entropy encode the [ first ] sequence of quantized residuals to generate a [ first ] part of the bitstream of encoded data [ ;
determine that transform skipping is enabled for a second block of residuals, wherein the second block of residuals was generated using inter-prediction;
derive a confidence map comprising a confidence level for each position in the second block of residuals, based on previously encoded blocks;
based on the determination that transform skipping is enabled for the second block of residuals, produce a second block of quantized residuals by one of reordering the second block of residuals and quantizing the resulting reordered second block or quantizing the second block of residuals and reordering the resulting quantized second block, wherein the reordering is based on the confidence map;
scan, in a second scan order, the second block of quantized residuals to produce a second sequence of quantized residuals; and
entropy encode the second sequence of quantized residuals to generate a second part of the bitstream of encoded data] .
|
|
25. A non-transitory processor-readable medium storing processor-executable instructions which, when executed, configures one or more processors to decode a bitstream of encoded video in a video decoder to reconstruct residuals, by performing the method of:
determining that transform skipping is enabled for a [ first ] block of residuals, meaning that no transform was applied during encoding and no inverse transform will be applied during decoding [ , wherein the first block of residuals was generated using intra-prediction] ;
reconstructing, based on a [ first ] scan order, a [ first ] block of quantized residuals by entropy decoding a first part of the bitstream;
based on the determination that transform skipping is enabled [ for the first block of residuals] , reconstructing the [ first ] block of residuals by one of rotating the [ first ] block of quantized residuals and dequantizing the resulting rotated [ first ] block or dequantizing the [ first ] block of quantized residuals and rotating the resulting dequantized [ first ] block [ ;
determining that transform skipping is enabled for a second block of residuals, wherein the second block of residuals was generated using inter-prediction;
deriving a confidence map comprising a confidence level for each position in the second block of residuals, based on previously decoded blocks;
reconstructing, based on a second scan order, a second block of quantized residuals by entropy decoding a second part of the bitstream; and
based on the determination that transform skipping is enabled for the second block of residuals, reconstructing the second block of residuals by one of reordering the second block of quantized residuals and dequantizing the resulting reordered second block or dequantizing the second block of quantized residuals and reordering the resulting dequantized second block, wherein the reordering is based on the confidence map] .
|
|
[ 26. The method claimed in claim 1, wherein the confidence level is derived based on energy of residuals of previously decoded blocks neighboring the second block of residuals.]
|
|
[ 27. The method claimed in claim 1, wherein the confidence level is derived based on statistics from previously reconstructed slices.]
|
|
[ 28. The method claimed in claim 1, wherein the second scan order is one of a horizontal, vertical, zigzag, or diagonal scan order.]
|
|
[ 29. The method claimed in claim 1, wherein the reordering based on the confidence map places a first position of the second block of residuals closer to the beginning of the second scan order, compared to a second position of the second block of residuals, the first position having a first confidence level that is higher than a second confidence level of the second position.]
|
|
[ 30. The method claimed in claim 1, wherein the reordering based on the confidence map attempts to place positions of the second block of residuals with higher respective confidence levels closer to the beginning of the second scan order, compared to other positions of the second block of residuals with lower respective confidence levels.]
|
|
[ 31. The method claimed in claim 1, wherein the reordering based on the confidence map generates a custom ordering of positions for the second scan order, dynamically.]
|
|
[ 32. The method claimed in claim 1, wherein the second block of residuals is non-square.]
|
|
[ 33. The method claimed in claim 9, wherein the confidence level is derived based on energy of residuals of previously encoded blocks neighboring the second block of residuals.]
|
|
[ 34. The method claimed in claim 9, wherein the confidence level is derived based on statistics from previously reconstructed slices.]
|
|
[ 35. The method claimed in claim 9, wherein the second scan order is one of a horizontal, vertical, zigzag, or diagonal scan order.]
|
|
[ 36. The method claimed in claim 9, wherein the reordering based on the confidence map places a first position of the second block of residuals closer to the beginning of the second scan order, compared to a second position of the second block of residuals, the first position having a first confidence level that is higher than a second confidence level of the second position.]
|
|
[ 37. The method claimed in claim 9, wherein the reordering based on the confidence map attempts to place positions of the second block of residuals with higher respective confidence levels closer to the beginning of the second scan order, compared to other positions of the second block of residuals with lower respective confidence levels.]
|
|
[ 38. The method claimed in claim 9, wherein the reordering based on the confidence map generates a custom ordering of positions for the second scan order, dynamically.]
|
|
[ 39. The method claimed in claim 9, wherein the second block of residuals is non-square.]
|
|
[ 40. The decoder claimed in claim 16, wherein the confidence level is derived based on energy of residuals of previously decoded blocks neighboring the second block of residuals.]
|
|
[ 41. The decoder claimed in claim 16, wherein the confidence level is derived based on statistics from previously reconstructed slices.]
|
|
[ 42. The decoder claimed in claim 16, wherein the reordering based on the confidence map attempts to place positions of the second block of residuals with higher respective confidence levels closer to the beginning of the second scan order, compared to other positions of the second block of residuals with lower respective confidence levels.]
|
|
[ 43. The decoder claimed in claim 16, wherein the reordering based on the confidence map generates a custom ordering of positions for the second scan order, dynamically.]
|