initSdk static method

Future initSdk({
  1. required String host,
  2. LanguageSupport? languageTTS,
  3. LanguageSupport? languageSTT,
  4. int? sampleRateTTS,
  5. int? sampleRateSTT,
  6. String? voiceName,
})

Implementation

static Future initSdk({
  required String host,
  LanguageSupport? languageTTS,
  LanguageSupport? languageSTT,
  int? sampleRateTTS,
  int? sampleRateSTT,
  String? voiceName,
}) async {
  if (host.isEmpty) {
    await Future.error(FRivaStrings.errorHostInputEmpty);
  } else {
    final mLanguageTTS = languageTTS ?? LanguageSupport.vietnamese;
    final mLanguageSTT = languageSTT ?? LanguageSupport.vietnamese;
    final mSampleRateTTS = sampleRateTTS ?? FRivaConstantValue.sampleRateTTSDefault;
    final mSampleRateSTT = sampleRateSTT ?? FRivaConstantValue.sampleRateSTTDefault;
    _mRecorder = FAudioRecorder(host, mSampleRateSTT, mLanguageSTT.code);
    _mSpeaker = FAudioSpeaker(host, mLanguageTTS.code, mSampleRateTTS, voiceName);
    _mTranslator = FTranslator(host);

    // You only need to call this method if you need the binding to be initialized before calling [runApp].
    WidgetsFlutterBinding.ensureInitialized();
    // avAudioSessionCategoryOptions: AVAudioSessionCategoryOptions.defaultToSpeaker,
    await _setAudioConfig();
  }
}