반응형
DICTATION_MODE에서 android.speech.SpeechRecognizer 사용시 지연
오랫동안 명령을 인식하기 위해 android.speech.SpeechRecognizerin DICTATION_MODE을 사용 하고 있습니다. 이 모드에서 콜백 메서드에 대한 호출 onPartialResults은 일반 모드보다 훨씬 더 지연됩니다. 왜 이런 일이 발생하고 이러한 지연을 피하는 방법을 아는 사람이 있습니까?
이것은 내가 사용하는 구성입니다 SpeechRecognizer.
Intent recognizerIntent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
recognizerIntent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
recognizerIntent.putExtra("calling_package", mainActivity.getApplicationContext().getPackageName());
recognizerIntent.putExtra("android.speech.extra.DICTATION_MODE", true);
recognizerIntent.putExtra(RecognizerIntent.EXTRA_PARTIAL_RESULTS, true);
recognizerIntent.putExtra(RecognizerIntent.EXTRA_MAX_RESULTS, 100);
인터넷 속도 때문일 수 있습니다.
EXTRA_PREFER_OFFLINEtrue 로 설정 하고 지연이 줄어들지 확인하십시오.
https://developer.android.com/reference/android/speech/RecognizerIntent.html#EXTRA_PREFER_OFFLINE
응답 시간은 다음과 같은 여러 요인에 따라 달라집니다.
- 장치 특성
- OS 버전
- 인터넷 속도
그리고 일반적으로이 모드는 문맥을 추측하고 새로운 단어가 나올 때마다 그 변화의 의미를 알아 내려고하기 때문에 더 길어집니다.
반응형
'Program Club' 카테고리의 다른 글
| 높이 전환 방법 : 0; (0) | 2020.12.13 |
|---|---|
| Google Keep API가 있습니까? (0) | 2020.12.13 |
| "꿈을 제어"하기 위해 수업을 사용하는 방법? (0) | 2020.12.13 |
| Akka 유한 상태 머신 인스턴스 (0) | 2020.12.13 |
| Plexus 구성 요소에서 현재 MavenSession 또는 MavenExecutionRequest를 가져 오는 방법 (0) | 2020.12.13 |