Before posting here, I re-downloaded all the frameworks, but that did not solve it.
I’m having the problem with the RealTime Listener in my app, and also when I switch to offline listener I experience weird behaviour. I can duplicate the same weird behaviour on offline listener while using the sample app as well.
The only thing I added to the viewcontroller is the following:
[OEPocketsphinxController sharedInstance].secondsOfSilenceToDetect = 7.0f;
[OEPocketsphinxController sharedInstance].vadThreshold = 3.0f; //It’s noisy here :)
Ok, So I counted the seconds after I stop speaking and the app logs “Pocketsphinx detected a second of silence, concluding an utterance”. In some cases, no hypotheses were returned as well. Here are the timings I got:
7.0f -> 21 seconds (no hypothesis)
10.0f -> ~1 second
1.0f -> ~1 second
3.0f -> 3 seconds, 5 seconds, 7 seconds, 12 seconds changes a lot.
2.0f -> 2 seconds, 4 seconds, 7 seconds, 11 seconds changes a lot.
4.0f -> 9 seconds, 14 seconds, 22 seconds (no hypo. when +20)
0.5f -> less than 1 second
0.1f -> so quick that only the first word is recognized
0.9f -> 1-2 seconds
1.1f -> 1-2 seconds
1.6f -> changes between 2 seconds to 5 seconds
100.0f-> ~1 second
9.0f -> 10 seconds to 20+ seconds with no output when 20+.
It appears to me that the secondsOfSilence property works for values lesser than 1 second, and somehow increases much more than needed when it’s greater than 1. Behaviour is not consistent.
Would you like me to add RapidEarsDemo to the sample app and try editing soundsToDetect property? Should RapidEarsDetectedFinishedSpeech event get affected with this property? I don’t think its about the plugin because at this point I’m not tingling with it. The plugin just starts the generateLanguageModel function in objective-c side, which then pocketsphinx starts listening if no error is produced while language model creation. The timings I obtain are from Xcode console directly, so there’s no plugin interference yet.