bytes method

Uint8List bytes()

Write a WAVE file header.

@return header bytes. @throws IOException

Implementation

Uint8List bytes() {
  List<int> out = [];
  /* RIFF header */
  writeString(out, 'RIFF');
  writeInt32(out, 36 + mNumBytes);
  writeString(out, 'WAVE');
  /* fmt chunk */
  writeString(out, 'fmt ');
  writeInt32(out, 16);
  writeInt16(out, mFormat);
  writeInt16(out, mNumChannels);
  writeInt32(out, mSampleRate);
  writeInt32(out, (mNumChannels * mSampleRate * mBitsPerSample / 8).floor());
  writeInt16(out, (mNumChannels * mBitsPerSample / 8).floor());
  writeInt16(out, mBitsPerSample);
  /* data chunk */
  writeString(out, 'data');
  writeInt32(out, mNumBytes);

  return Uint8List.fromList(out);
}