[Ffmpeg-devel] H264 decoder internals

Måns Rullgård mru
Sun Jun 19 01:03:48 CEST 2005


Michael Niedermayer <michaelni at gmx.at> writes:

> Hi
>
> On Saturday 18 June 2005 16:26, M?ns Rullg?rd wrote:
>> I'm messing around with the H.264 decoder, and I'm having some trouble
>> figuring out how the standard maps to the code.
>>
>> Around section 8.5.10 in the H.264 spec, there are a number of
>> equations similar to 8-339:
>>
>>   d_ij = (c_ij * LevelScale(qP % 6, i, j) + 2^(3-qP/6)) >> (4 - qP / 6)
>>
>> I looks like the value of LevelScale() is precomputed for all
>> combinations in the dequant_coeff array.  What I'm having some trouble
>> with, is understanding where the final value of that equation is
>> calculated.  I suppose it's disguised in some clever optimization.
>> Could someone please explain what's going on?
>
> dequantization is done during bitstream decoding or during the dc
> inverse transform

I figured as much.  I just can't quite make out for certain what
happens where.  The multiplication I can see, but the add and the
shift have me confused.  Also, how were the values in the
dequant_coeff array calculated?

-- 
M?ns Rullg?rd
mru at inprovide.com





More information about the ffmpeg-devel mailing list