parseTimestamp_(reader) {
    const pts0 = reader.readUint8();
    const pts1 = reader.readUint16();
    const pts2 = reader.readUint16();
    // Reconstruct 33-bit PTS from the 5-byte, padded structure.
    const ptsHigh3 = (pts0 & 0x0e) >> 1;
    const ptsLow30 = ((pts1 & 0xfffe) << 14) | ((pts2 & 0xfffe) >> 1);
    // Reconstruct the PTS as a float.  Avoid bitwise operations to combine
    // because bitwise ops treat the values as 32-bit ints.
    return ptsHigh3 * (1 << 30) + ptsLow30;
  }
@param {!shaka.util.DataViewReader} reader
@return {number}
@private