startPlayer method

  1. @override
Future<int> startPlayer(
  1. FlutterSoundPlayerCallback callback, {
  2. Codec? codec,
  3. Uint8List? fromDataBuffer,
  4. String? fromURI,
  5. int? numChannels,
  6. bool interleaved = true,
  7. int? sampleRate,
  8. int bufferSize = 8192,
})
override

Implementation

@override
Future<int> startPlayer(
  FlutterSoundPlayerCallback callback, {
  Codec? codec,
  Uint8List? fromDataBuffer,
  String? fromURI,
  int? numChannels,
  bool interleaved = true,
  int? sampleRate,
  int bufferSize = 8192,
}) async {
  // startPlayerCompleter = new Completer<Map>();
  // await invokeMethod( callback, 'startPlayer', {'codec': codec.index, 'fromDataBuffer': fromDataBuffer, 'fromURI': fromURI, 'numChannels': numChannels, 'sampleRate': sampleRate},) ;
  // return  startPlayerCompleter.future ;
  // String s = "https://file-examples-com.github.io/uploads/2017/11/file_example_MP3_700KB.mp3";
  if (codec == null) codec = Codec.defaultCodec;

  if (fromDataBuffer != null) {
    if (fromURI != null) {
      throw Exception(
        "You may not specify both 'fromURI' and 'fromDataBuffer' parameters",
      );
    }
  }
  callback.log(Level.debug, 'startPlayer FromURI : $fromURI');
  var r = await getWebSession(callback)!.startPlayer(
    codec.index,
    fromDataBuffer?.toJS,
    fromURI,
    numChannels,
    sampleRate,
    bufferSize,
  );
  return r;
}