call method
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);
}