decode method

(int, int) decode(
  1. Uint8List bytes
)

Implementation

(int, int) decode(final Uint8List bytes) {
  if (bytes.first == 0) {
    return (0, 0);
  }

  final firstByte = bytes[0];
  final secondByte = bytes[1] << 8;
  final encoded = firstByte + secondByte;
  final period = 2 << (encoded % (1 << 4));
  final quantizeFactor = max(period >> 12, 1);
  final phase = (encoded >> 4) * quantizeFactor;
  return (phase, period);
}