load method

Future<Uint8List> load({
  1. BuildContext? context,
  2. AudioFormat format = AudioFormat.wav,
  3. AudioSampleRate sampleRate = AudioSampleRate.hz48000,
})

Loads the sample in the given format and with the given sampleRate. The sample will always be mono (one channel)!

If context is not null the DefaultAssetBundle.of context will be used, if it is null the rootBundle is used instead.

Implementation

Future<Uint8List> load(
    {BuildContext? context,
    AudioFormat format = AudioFormat.wav,
    AudioSampleRate sampleRate = AudioSampleRate.hz48000}) async {
  AssetBundle bundle =
      context != null ? DefaultAssetBundle.of(context) : rootBundle;
  ByteData data = await bundle.load(_key(format, sampleRate));
  int offset = format == AudioFormat.s16le ? _wavHeaderSize : 0;
  return data.buffer
      .asUint8List(data.offsetInBytes + offset, data.lengthInBytes - offset);
}