352l: correct calculating number of bits for storing macroblock offset in RV3/4

Originally committed as revision 16293 to svn://svn.ffmpeg.org/ffmpeg/trunk
pull/126/head
Kostya Shishkov 16 years ago
parent 2d76bf391a
commit ffedb5c19a
  1. 2
      libavcodec/rv34.c
  2. 2
      libavcodec/rv34data.h

@ -367,7 +367,7 @@ int ff_rv34_get_start_offset(GetBitContext *gb, int mb_size)
{ {
int i; int i;
for(i = 0; i < 5; i++) for(i = 0; i < 5; i++)
if(rv34_mb_max_sizes[i] > mb_size) if(rv34_mb_max_sizes[i] >= mb_size - 1)
break; break;
return rv34_mb_bits_sizes[i]; return rv34_mb_bits_sizes[i];
} }

@ -138,7 +138,7 @@ static const uint8_t rv34_dquant_tab[2][32]={
* maximum number of macroblocks for each of the possible slice offset sizes * maximum number of macroblocks for each of the possible slice offset sizes
* @todo This is the same as ff_mba_max, maybe use it instead. * @todo This is the same as ff_mba_max, maybe use it instead.
*/ */
static const uint16_t rv34_mb_max_sizes[6] = { 0x2F, 0x68, 0x18B, 0x62F, 0x18BF, 0x23FF }; static const uint16_t rv34_mb_max_sizes[6] = { 0x2F, 0x62, 0x18B, 0x62F, 0x18BF, 0x23FF };
/** /**
* bits needed to code the slice offset for the given size * bits needed to code the slice offset for the given size
* @todo This is the same as ff_mba_length, maybe use it instead. * @todo This is the same as ff_mba_length, maybe use it instead.

Loading…
Cancel
Save