使用 KaldiRecognizer.java 类时如何增加默认的最小输入时间限制?

问题描述

我已经在应用中实现了基于 android demo 的 VOSK。目前,在收听输入时,麦克风会保持打开状态 5 秒钟,然后评估输入。我需要麦克风保持打开状态更长时间,即 10 秒。以下暂定对其没有影响。

private void startSttService(SingleEmitter<String> emitter,Bundle extras) {
        float sampleRate = 16000.0f;
        KaldiRecognizer rec;
        if (Objects.nonNull(extras) && extras.containsKey(EXTRA_GRAMMAR)) {
            rec = new KaldiRecognizer(VoskModel.getModel(),sampleRate,extras.getString(EXTRA_GRAMMAR));
        } else {
            rec = new KaldiRecognizer(VoskModel.getModel(),sampleRate);
        }

        int speechServiceTimeout;
        if (Objects.nonNull(extras) && extras.containsKey(RecognizerIntent.EXTRA_SPEECH_INPUT_MINIMUM_LENGTH_MILLIS)) {
            speechServiceTimeout = (int) extras.getLong(RecognizerIntent.EXTRA_SPEECH_INPUT_MINIMUM_LENGTH_MILLIS);
        } else {
            speechServiceTimeout = 10000;
        }

帮助:(

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...