The code is here:
// somewhere in the .m
- (void)somewhere
{
_controller = [[PocketsphinxController alloc] init];
_controller.nBestNumber = 1;
_controller.verbosePocketSphinx = kIsVerbose;
[_controller setRapidEarsToVerbose:kIsVerbose];
[_controller setRapidEarsAccuracy:10];
[_controller setFinalizeHypothesis:TRUE];
[_controller setFasterPartials:TRUE];
[_controller setFasterFinals:FALSE];
[_controller startRealtimeListeningWithLanguageModelAtPath:_pathToDynamicallyGeneratedGrammar
dictionaryAtPath:_pathToDynamicallyGeneratedDictionary
acousticModelAtPath:[self acousticModelPath]];
// ... set up observer in the following
}
//
- (void) rapidEarsDidReceiveLiveSpeechHypothesis:(NSString *)hypothesis recognitionScore:(NSString *)recognitionScore {
NSLog(@"rapidEarsDidReceiveLiveSpeechHypothesis: %@ (%@)",hypothesis, recognitionScore);
_statusLabel.text = [NSString stringWithFormat:@"%@", hypothesis];
}
- (void) rapidEarsDidReceiveFinishedSpeechHypothesis:(NSString *)hypothesis recognitionScore:(NSString *)recognitionScore {
NSLog(@"rapidEarsDidReceiveFinishedSpeechHypothesis: %@ (%p)", hypothesis, recognitionScore);
_scoreLabel.text = [NSString stringWithFormat:@"%@", recognitionScore];
}
I understand the number is not that reliable. But the problem is that the number is not negative number, which is different from OpenEars.