private void tbtn_ASR_Unchecked(object sender, RoutedEventArgs e) { UpdateRelateStartUI(true); switch (manager.ASRNet) { case ENet.Cloud: switch (manager.ASRMode) { case EASRMode.Wakeup: DUILiteHelper.DUILiteCloudASRStop(); DUILiteHelper.DUILiteCloudASRRelease(); DUILiteHelper.DUILiteWakeupStop(); DUILiteHelper.DUILiteWakeupRelease(); break; case EASRMode.UnWakeup: DUILiteHelper.DUILiteCloudASRStop(); DUILiteHelper.DUILiteCloudASRRelease(); break; } break; case ENet.Native: switch (manager.ASRMode) { case EASRMode.Wakeup: DUILiteHelper.DUILiteNativeASRStop(); DUILiteHelper.DUILiteNativeASRRelease(); DUILiteHelper.DUILiteWakeupStop(); DUILiteHelper.DUILiteWakeupRelease(); break; case EASRMode.UnWakeup: DUILiteHelper.DUILiteNativeASRStop(); DUILiteHelper.DUILiteNativeASRRelease(); break; } break; } }
private void StartASR() { UpdateRelateStartUI(false); btn_Clear_Click(null, null); int result = -2; if (!Directory.Exists(PathHelper.DirAiSpeechDemo)) { Directory.CreateDirectory(PathHelper.DirAiSpeechDemo); } using (FileStream fs = new FileStream(PathHelper.DirAiSpeechDemo + "local.net.bin", FileMode.OpenOrCreate)) { }; switch (manager.ASRNet) { case ENet.Cloud: switch (manager.ASRMode) { case EASRMode.Wakeup: DUILiteHelper.DUILiteCloudASRNew(); DUILiteHelper.DUILiteCloudASRStart(null); DUILiteHelper.DUILiteCloudASRStop(); string wakeupConfig = JsonHelper.ToJson(manager.WakeupConfig); result = DUILiteHelper.DUILiteWakeupNew(wakeupConfig); string wakeupParam = JsonHelper.ToJson(manager.WakeupParam); result = DUILiteHelper.DUILiteWakeupStart(wakeupParam); break; case EASRMode.UnWakeup: DUILiteHelper.DUILiteCloudASRNew(); DUILiteHelper.DUILiteCloudASRStart(null); break; } break; case ENet.Native: string gramcfg = JsonHelper.ToJson(manager.NASRGramConfig); string gramparam = JsonHelper.ToJson(manager.NASRParam); string asrcfg = JsonHelper.ToJson(manager.NASRConfig); //string gramcfg = "{\"resBinPath\":\"./res/nativeASR/gram/ebnfc.aicar.1.2.0.bin\"}"; //string gramparam = "{\"outputPath\": \"./local.net.bin\", \"ebnfFile\": \"./res/nativeASR/gram/gram.xbnf\"}"; //string asrcfg = "{\"resBinPath\":\"./res/nativeASR/gram/ngram.xinhangye.v0.1.bin\", \"netBinPath\": \"./local.net.bin\"}"; switch (manager.ASRMode) { case EASRMode.Wakeup: string wakeupConfig = JsonHelper.ToJson(manager.WakeupConfig); result = DUILiteHelper.DUILiteWakeupNew(wakeupConfig); string wakeupParam = JsonHelper.ToJson(manager.WakeupParam); result = DUILiteHelper.DUILiteWakeupStart(wakeupParam); if (!IsExistGram) { result = DUILiteHelper.DUILiteNativeASRNew(null, null, "{\"resBinPath\":\"./res/nativeASR/gram/ngram.xinhangye.v0.1.bin\"}"); } else { result = DUILiteHelper.DUILiteNativeASRNew(gramcfg, gramparam, asrcfg); } if (App.DUIManager.ASRLanguage == EASRLanguage.English) { //string enConfig = JsonHelper.ToJson(manager.EnNASRConfig); //string enConfig = "{\"env\": \"use_xbnf_rec=1;use_frame_split=1;hold_conf=1;\"}"; result = DUILiteHelper.DUILiteNativeASRStart(englishConfig); } else { result = DUILiteHelper.DUILiteNativeASRStart(JsonHelper.ToJson(manager.EnNASRConfig)); } DUILiteHelper.DUILiteNativeASRStop(); tb_ARS.Clear(); break; case EASRMode.UnWakeup: if (!IsExistGram) { result = DUILiteHelper.DUILiteNativeASRNew(null, null, "{\"resBinPath\":\"./res/nativeASR/gram/ngram.xinhangye.v0.1.bin\"}"); } else { result = DUILiteHelper.DUILiteNativeASRNew(gramcfg, gramparam, asrcfg); } //result = DUILiteHelper.DUILiteNativeASRNew(gramcfg, gramparam, asrcfg); if (App.DUIManager.ASRLanguage == EASRLanguage.English) { //string enConfig = JsonHelper.ToJson(manager.EnNASRConfig); //string enConfig = "{\"env\": \"use_xbnf_rec=1;use_frame_split=1;hold_conf=1;\"}"; result = DUILiteHelper.DUILiteNativeASRStart(englishConfig); } else { var a = JsonHelper.ToJson(manager.EnNASRConfig); result = DUILiteHelper.DUILiteNativeASRStart(JsonHelper.ToJson(manager.EnNASRConfig)); } break; } break; } }