Exemple #1
0
unsigned int cBitstream::readGolombUE()
{
  int lzb = -1;

  for(int b = 0; !b; lzb++)
    b = readBits1();

  return (1 << lzb) - 1 + readBits(lzb);
}
unsigned int cBitstream::readGolombUE(int maxbits)
{
  int lzb = -1;
  int bits = 0;

  for(int b = 0; !b; lzb++, bits++)
  {
    if (bits > maxbits)
      return 0;
    b = readBits1();
  }

  return (1 << lzb) - 1 + readBits(lzb);
}