private async void Timer_Tick(object sender, object e) { AudioRecorder _audioRecorder_old = this._audioRecorder; //停止后切换对象立即继续接力录音 i_audioRecorder++; this._audioRecorder = pool_audioRecorder[i_audioRecorder % 2]; this._audioRecorder.Record(); _audioRecorder_old.StopRecording(); pool_audioRecorder[(i_audioRecorder + 1) % 2] = new AudioRecorder(); //保存文件 string filename = "speechfile" + i_audioRecorder.ToString() + ".wav"; await _audioRecorder_old.SaveAudioToFile(filename); _audioRecorder_old.Close(); //timer.Stop(); string text = ""; try { text = await SpeechRecognizeAsync(filename); } catch (Exception ex) { string str = ex.Message; } //this.text_note.Text += text; OnReceiveText(this, text); //产生事件 // 识别完成后删除文件 DelWavFile(filename); }