Video decoder with reduced dynamic range transform with inverse transform clipping
A method for decoding video includes receiving quantized coefficients representative of a block of video representative of a plurality of pixels. The quantized coefficients are dequantized based upon a function of a remainder. The dequantized coefficients are inverse transformed to determine a decoded residue.
1. A method for decoding video, the method comprising:
receiving quantized coefficients representative of a block of pixels in a video image;
descaling the quantized coefficients to generate descaled coefficients;
clipping the descaled coefficients to a predetermined bit depth to generate clipped coefficients;
inverse transforming in a first direction the clipped coefficients to generate first direction inverse transformed coefficients;
clipping the first direction inverse transformed coefficients to the predetermined bit depth to generate clipped inverse transformed coefficients; and
inverse transforming the clipped inverse transformed coefficients in a second direction to determine a decoded residue.
2. The method of claim 1 , further comprising:
storing the clipped coefficients in a memory before inverse transforming in the first direction the clipped coefficients.
3. The method of claim 1 , further comprising:
storing the clipped inverse transform coefficients in a memory before inverse transforming the clipped inverse transformed coefficients in the second direction.
4. The method of claim 1 , wherein the predetermined bit depth is a value other than 16 bits.
5. An apparatus for decoding video, the apparatus comprising one or more processors and one or more storage devices storing instructions that when executed by the one or more processors cause the one or more processors to perform operations comprising:
receiving quantized coefficients representative of a block of pixels in a video image;
descaling the quantized coefficients to generate descaled coefficients;
clipping the descaled coefficients to a predetermined bit depth to generate clipped coefficients;
inverse transforming in a first direction the clipped coefficients to generate first direction inverse transformed coefficients;
clipping the first direction inverse transformed coefficients to the predetermined bit depth to generate clipped inverse transformed coefficients; and
inverse transforming the clipped inverse transformed coefficients in a second direction to determine a decoded residue.
6. The apparatus of claim 5 , the operations further comprising:
storing the clipped coefficients in a memory before inverse transforming in the first direction the clipped coefficients.
7. The apparatus of claim 5 , the operations further comprising:
storing the clipped inverse transform coefficients in a memory before inverse transforming the clipped inverse transformed coefficients in the second direction.
8. The apparatus of claim 5 , wherein the predetermined bit depth is a value other than 16 bits.