--- trunk/xvidcore/src/bitstream/bitstream.c 2002/07/12 00:49:59 294 +++ trunk/xvidcore/src/bitstream/bitstream.c 2002/07/19 13:34:32 316 @@ -330,10 +330,10 @@ DPRINTF(DPRINTF_HEADER,"vop_time_increment_resolution %i", time_increment_resolution); - time_increment_resolution--; +// time_increment_resolution--; if (time_increment_resolution > 0) { - dec->time_inc_bits = log2bin(time_increment_resolution); + dec->time_inc_bits = log2bin(time_increment_resolution-1); } else { // dec->time_inc_bits = 0; // for "old" xvid compatibility, set time_inc_bits = 1 @@ -547,16 +547,21 @@ if (coding_type != B_VOP) { dec->last_time_base = dec->time_base; dec->time_base += time_incr; - dec->time = - dec->time_base * time_increment_resolution + + dec->time = time_increment; + +/* dec->time_base * time_increment_resolution + time_increment; - dec->time_pp = (uint32_t) (dec->time - dec->last_non_b_time); +*/ dec->time_pp = (uint32_t) + (time_increment_resolution + dec->time - dec->last_non_b_time)%time_increment_resolution; dec->last_non_b_time = dec->time; } else { - dec->time = + dec->time = time_increment; +/* (dec->last_time_base + - time_incr) * time_increment_resolution + time_increment; - dec->time_bp = (uint32_t) (dec->last_non_b_time - dec->time); + time_incr) * time_increment_resolution + time_increment; +*/ + dec->time_bp = (uint32_t) + (time_increment_resolution + dec->last_non_b_time - dec->time)%time_increment_resolution; } READ_MARKER(); @@ -870,4 +875,4 @@ BitstreamPutBits(bs, data[i], 8); } -} \ No newline at end of file +}