Отставание проблема с распознаванием речи Android

Кто-нибудь сталкивался с этой проблемой в последнее время? Между "когда я перестаю говорить" и "когда распознавание речи Android перестает слушать", существует большой разрыв. "Период молчания" раньше был намного короче, а теперь действительно долгим. Раньше это было около 1-2 секунд, сейчас это около 10 секунд. Мы ничего не изменили в нашем коде.

Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
intent.putExtra(RecognizerIntent.EXTRA_PROMPT, "Speak now...");
startActivityForResult(intent, REQUEST_CODE);

2 ответа

Это проблема интернета. Я экспериментировал с моим Samsung Galaxy Tab A7. В автономном режиме задержки отсутствуют, но при подключении к Интернету наблюдается задержка из-за плохого подключения к Интернету.

Я решил свою проблему, добавив RecognizerIntent.EXTRA_PREFER_OFFLINE со значением true в намерение, которое я передаю.

Да, у меня точно такая же проблема с Android 4.4.2 (HTC One M8). Установка таких параметров, как intent.putExtra(RecognizerIntent.EXTRA_SPEECH_INPUT_COMPLETE_SILENCE_LENGTH_MILLIS, new Long(1000)) для сокращения времени прослушивания, похоже, не имеет никакого эффекта. Раньше я снимал диалоговое окно распознавания через 6 секунд для старых телефонов, которые не закрывали его автоматически, что некрасиво, но работало нормально, но теперь это не приводит к распознаванию, если я не увеличил время ожидания с 6 до более 10 секунд. Это неизменное 10-секундное значение по умолчанию также кажется недокументированным, так что все становится методом проб и ошибок, чтобы выяснить, что работает на устройствах и версиях Android.

Другие вопросы по тегам