[bugfix] can not read the last sentence
This commit is contained in:
@@ -64,7 +64,6 @@ public class MainActivity extends FlutterActivity implements INativeNuiCallback
|
||||
@Override
|
||||
public void configureFlutterEngine(FlutterEngine flutterEngine) {
|
||||
super.configureFlutterEngine(flutterEngine);
|
||||
System.out.println("??????????????????????????????????");
|
||||
new MethodChannel(flutterEngine.getDartExecutor().getBinaryMessenger(), TTS_CHANNEL)
|
||||
.setMethodCallHandler((call, result) -> {
|
||||
Map<String, Object> args = (Map<String, Object>) call.arguments;
|
||||
@@ -84,9 +83,11 @@ public class MainActivity extends FlutterActivity implements INativeNuiCallback
|
||||
}
|
||||
sendTts(textArg.toString());
|
||||
break;
|
||||
case "complete":
|
||||
completeTts();
|
||||
break;
|
||||
case "stop":
|
||||
stopTts();
|
||||
result.success("已停止");
|
||||
break;
|
||||
default:
|
||||
result.notImplemented();
|
||||
@@ -129,6 +130,7 @@ public class MainActivity extends FlutterActivity implements INativeNuiCallback
|
||||
protected void onStop() {
|
||||
Log.i(TAG, "onStop");
|
||||
super.onStop();
|
||||
|
||||
asrInstance.release();
|
||||
}
|
||||
|
||||
@@ -189,6 +191,10 @@ public class MainActivity extends FlutterActivity implements INativeNuiCallback
|
||||
streamInputTtsInstance.sendStreamInputTts(text);
|
||||
}
|
||||
|
||||
private void completeTts() {
|
||||
streamInputTtsInstance.stopStreamInputTts();
|
||||
}
|
||||
|
||||
private void stopTts() {
|
||||
streamInputTtsInstance.cancelStreamInputTts();
|
||||
ttsAudioTrack.stop();
|
||||
@@ -196,16 +202,6 @@ public class MainActivity extends FlutterActivity implements INativeNuiCallback
|
||||
|
||||
private void startAsr() {
|
||||
asrText = "";
|
||||
if (asrAudioRecorder == null) {
|
||||
asrAudioRecorder = new AudioRecord(MediaRecorder.AudioSource.DEFAULT,
|
||||
ASR_SAMPLE_RATE,
|
||||
AudioFormat.CHANNEL_IN_MONO,
|
||||
AudioFormat.ENCODING_PCM_16BIT,
|
||||
ASR_WAVE_FRAM_SIZE * 4);
|
||||
Log.d(TAG, "AudioRecorder new ...");
|
||||
} else {
|
||||
Log.w(TAG, "AudioRecord has been new ...");
|
||||
}
|
||||
asrHandler.post(() -> {
|
||||
String setParamsString = genAsrParams();
|
||||
Log.i(TAG, "nui set params " + setParamsString);
|
||||
@@ -281,9 +277,12 @@ public class MainActivity extends FlutterActivity implements INativeNuiCallback
|
||||
Log.i(TAG, "onNuiAudioStateChanged");
|
||||
if (state == Constants.AudioState.STATE_OPEN) {
|
||||
Log.i(TAG, "audio recorder start");
|
||||
if (asrAudioRecorder != null) {
|
||||
asrAudioRecorder.startRecording();
|
||||
}
|
||||
asrAudioRecorder = new AudioRecord(MediaRecorder.AudioSource.DEFAULT,
|
||||
ASR_SAMPLE_RATE,
|
||||
AudioFormat.CHANNEL_IN_MONO,
|
||||
AudioFormat.ENCODING_PCM_16BIT,
|
||||
ASR_WAVE_FRAM_SIZE * 4);
|
||||
asrAudioRecorder.startRecording();
|
||||
Log.i(TAG, "audio recorder start done");
|
||||
} else if (state == Constants.AudioState.STATE_CLOSE) {
|
||||
Log.i(TAG, "audio recorder close");
|
||||
|
||||
Reference in New Issue
Block a user