call method

  1. @override
Object? call(
  1. Interpreter interpreter,
  2. List<Object?> arguments,
  3. Map<Symbol, Object?> namedArguments
)
override

Implementation

@override
Object? call(Interpreter interpreter, List<Object?> arguments,
    Map<Symbol, Object?> namedArguments) {
  AudioEncoder encoder = AudioEncoder.aacLc;
  var encoderParsed = namedArguments[const Symbol('encoder')];
  if (encoderParsed != null) {
    encoder = encoderParsed as AudioEncoder;
  }
  int bitRate = 128000;
  var bitRateParsed = namedArguments[const Symbol('bitRate')];
  if (bitRateParsed != null) {
    bitRate = bitRateParsed as int;
  }
  int sampleRate = 44100;
  var sampleRateParsed = namedArguments[const Symbol('sampleRate')];
  if (sampleRateParsed != null) {
    sampleRate = sampleRateParsed as int;
  }
  int numChannels = 2;
  var numChannelsParsed = namedArguments[const Symbol('numChannels')];
  if (numChannelsParsed != null) {
    numChannels = numChannelsParsed as int;
  }
  bool autoGain = false;
  var autoGainParsed = namedArguments[const Symbol('autoGain')];
  if (autoGainParsed != null) {
    autoGain = autoGainParsed as bool;
  }
  bool echoCancel = false;
  var echoCancelParsed = namedArguments[const Symbol('echoCancel')];
  if (echoCancelParsed != null) {
    echoCancel = echoCancelParsed as bool;
  }
  bool noiseSuppress = false;
  var noiseSuppressParsed = namedArguments[const Symbol('noiseSuppress')];
  if (noiseSuppressParsed != null) {
    noiseSuppress = noiseSuppressParsed as bool;
  }
  return RecordConfig(
      encoder: encoder,
      bitRate: bitRate,
      sampleRate: sampleRate,
      numChannels: numChannels,
      autoGain: autoGain,
      echoCancel: echoCancel,
      noiseSuppress: noiseSuppress);
}