[Ffmpeg-devel] libavcodec h264 decoder

michael benzon chua chibiakaii
Fri Dec 15 12:55:34 CET 2006


I seem to have overestimated my understanding of the decoding process... it
doesn't look very similar to the encoding function used in  the x264
encoder. Some questions:

How are the matrices containing the dct coefficients represented in h264.c?
In encoding, they were contained in 2-dimensional arrays that were
explicitly labeled according to their size. (e.g. dct4x4, dct8x8, dct2x2,
etc.) I cannot find any 2-dimensional arrays in decode_mb_cabac or
decode_mb_cavlc that are labeled in such a manner.

How do I distinguish between the types of macroblocks that are being
decoded? The selection statements seem to be the ones that pick out whether
an mb is a i4x4 luma or an i8x8 chroma, or an inter-mb... how do i tell
which is which?




More information about the ffmpeg-devel mailing list