我有 android 的 Speech To Text API 可以对手机说话并将其转换为文本。默认情况下,如果一个人停止对着麦克风讲话,API 会假定用户已完成讲话并从输入语音中返回文本。
对于我的应用程序,用户可能在她的连续句子之间有很长时间的停顿。我如何配置 Android 的语音到文本 API 以仅在我要求时才考虑语音的结尾,而不是在说话者在句子之间稍作停顿时才这样做?谢谢!
这是我当前的实现,只要用户在句子之间稍作停顿,它就会将语音转换为文本:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
switch (requestCode) {
case RESULT_SPEECH: {
if (resultCode == RESULT_OK && null != data) {
ArrayList<String> text = data
.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS);
txtText.setText(text.get(0));
}
break;
}
}
}