parseVint_() {
    const position = this.reader_.getPosition();
    const firstByte = this.reader_.readUint8();
    if (firstByte == 0) {
      throw new shaka.util.Error(
          shaka.util.Error.Severity.CRITICAL,
          shaka.util.Error.Category.MEDIA,
          shaka.util.Error.Code.EBML_OVERFLOW);
    }

    // Determine the index of the highest bit set.
    const index = Math.floor(Math.log2(firstByte));
    const numBytes = 8 - index;
    goog.asserts.assert(numBytes <= 8 && numBytes >= 1, 'Incorrect log2 value');
    this.reader_.skip(numBytes - 1);
    return shaka.util.BufferUtils.toUint8(this.dataView_, position, numBytes);
  }
Parses a variable sized integer from the parser's current position, and
advances the parser.
For example:
  1 byte  wide: 1xxx xxxx
  2 bytes wide: 01xx xxxx xxxx xxxx
  3 bytes wide: 001x xxxx xxxx xxxx xxxx xxxx
@return {!Uint8Array} The variable sized integer.
@private