[FFmpeg-user] Possible Issue in ITU.H263 Decoder Code Flow

Ankuj Gupta ankuj2004 at gmail.com
Fri Apr 15 11:35:47 CEST 2011


I was trying to decode a H263 Profile 0 stream with ffmpeg. According
to the H263 standard if there is an escape code DCT coefficient of
value -128 which is forbidden the decoder should treat this as an
error and go for concealment.

But in FFmpeg version 0.6.1 file ituh263dec.c in function
h263_decode_block following code is present

if (level == -128)
      if (s->codec_id == CODEC_ID_RV10)
      {         /* XXX: should patch encoder too */
           level = get_sbits(&s->gb, 12);
         level = get_bits(&s->gb, 5);
         level |= get_sbits(&s->gb, 6)<<5;


where else part (modified quantization decoding Annex T) should not be
there for Profile 0.

My queries are
1) Is it the correct method ? Am I missing something
2) Or this else part should be present only when Modified Quantization
is enabled ?

Thanks in advance

Ankuj Gupta

More information about the ffmpeg-user mailing list