это мой код
@Throws(IOException::class)
private fun setupRecognizer(assetsDir: File) {
// The recognizer can be configured to perform multiple searches
// of different kind and switch between them
val listener = object: RecognitionListener {
override fun onResult(hypothesis: Hypothesis?) {
if (hypothesis != null) {
val text = hypothesis.getHypstr()
Log.i("speech result", text)
}
}
override fun onPartialResult(p0: Hypothesis?) {
val message = "" + p0?.hypstr
Log.i("speech p result", message)
}
override fun onTimeout() {
}
override fun onBeginningOfSpeech() {
Log.i("speech", "began")
}
override fun onEndOfSpeech() {
//if (recognizer.searchName != KWS_SEARCH)
// switchSearch(KWS_SEARCH)
}
override fun onError(p0: Exception?) {
}
}
recognizer = SpeechRecognizerSetup.defaultSetup()
.setAcousticModel(File(assetsDir, "en-us-ptm"))
.setDictionary(File(assetsDir, "cmudict-en-us.dict"))
.recognizer
recognizer.addListener(listener)
}
Я добавил слушателя в распознаватель, теперь я хочу начать слушать речь и преобразовывать ее в текст, я не хочу выполнять поиск по ключевой фразекак recognizer.addKeyphraseSearch(KWS_SEARCH, KEYPHRASE)
это, вместо этого я хочу, чтобы сфинкс прослушивал слова и сопоставлял их со словами, присутствующими в cmudict-en-us.dict в этом файле словаря, как я могу это сделать? Я просто хочу, чтобы сфинкс сопоставил фонетику со словами, присутствующими в файле .dict, возможно ли этого добиться?