--- trunk/xvidcore/src/bitstream/bitstream.c 2002/06/22 07:23:10 233 +++ trunk/xvidcore/src/bitstream/bitstream.c 2002/06/26 09:41:52 241 @@ -450,12 +450,16 @@ READ_MARKER(); - //DPRINTF("time_inc_bits %i", dec->time_inc_bits); - //DPRINTF("vop_time_incr %i", BitstreamShowBits(bs, dec->time_inc_bits)); if (dec->time_inc_bits) { - //BitstreamSkip(bs, dec->time_inc_bits); // vop_time_increment time_increment = (BitstreamGetBits(bs, dec->time_inc_bits)); // vop_time_increment } + + /* + DPRINTF("%c %i:%i", + coding_type == I_VOP ? 'I' : coding_type == P_VOP ? 'P' : 'B', + time_incr, time_increment); + */ + if (coding_type != B_VOP) { dec->last_time_base = dec->time_base; dec->time_base += time_incr; @@ -476,6 +480,7 @@ if (!BitstreamGetBit(bs)) // vop_coded { + //DPRINTF("**NOT CODED**"); return N_VOP; } @@ -647,11 +652,12 @@ WRITE_MARKER(); - // fixed_vop_rate - BitstreamPutBit(bs, 0); - - // fixed_time_increment: value=nth_of_sec, nbits = log2(resolution) - // BitstreamPutBits(bs, 0, 15); +#ifdef BFRAMES + BitstreamPutBit(bs, 1); // fixed_vop_rate = 1 + BitstreamPutBits(bs, pParam->fincr, log2bin(pParam->fbase)); // fixed_vop_time_increment +#else + BitstreamPutBit(bs, 0); // fixed_vop_rate = 0 +#endif WRITE_MARKER(); BitstreamPutBits(bs, pParam->width, 13); // width