getSamples16Bit method

List<int> getSamples16Bit()

Gets the PCM samples as 16-bit integers.

This assumes the PCM data is in 16-bit format (2 bytes per sample).

Implementation

List<int> getSamples16Bit() {
  final result = <int>[];
  final byteData = ByteData.sublistView(pcmData);

  for (int i = 0; i < byteData.lengthInBytes; i += 2) {
    if (i + 1 < byteData.lengthInBytes) {
      final sample = byteData.getInt16(i, Endian.little);
      result.add(sample);
    }
  }

  return result;
}