PocketSphinx - How to understand when getHypstr()

2019-08-23 01:07发布

问题:

Trying edu.cmu.sphinx.pocketsphinx with processRaw to detect silence.

Using the following config:

en-us.lm.bin language model

en-us-ptm acoustic model

cmudict-en-us.dict dictionary

also setting remove_noise to True and samprate to 8000

I want to do a Ngram Search.

When the While loop calling processRaw finishes I call both

hypothesis.getHypstr() and

decoder.getInSpeech()

Why does getHypstr returns empty but getInSpeech returns True while actually there is no speech in the input argument given to processRaw.

Thanks.

回答1:

En-us-ptm is 16khz model, it will not work with sample rate 8000. This causes bad results from hypstr.

If getInSpeech returns true it probably means there was a small noise the system accepted as speech.