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

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


Hi,

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);
       }
      else
      {
         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