I have a Windows Phone 8 app that uses speech recognition. No matter what I try I always get exactly one Alternate guess and it's a duplicate of the main result text, despite asking for 10 alternates:
// Get alternates, max 10.
IEnumerable<SpeechRecognitionResult> iterSRR = srResult.GetAlternates(10);
List<SpeechRecognitionResult> listAlternates = iterSRR == null ? null : iterSRR.ToList();
I am using the default dictation context (i.e. - I am not using/loading any Context Free Grammars) and I have been trying long phrases where I don't talk clearly, usually a sure-fire recipe for getting Alternates from a speech reco engine. But still, no real Alternate guesses.
I found this SO post on Alternates:
Microsoft Speech Recognition: Alternate results with confidence score?
In that post the author sets the Confidence thresholds for rejecting guesses to 0 so that nothing is rejected. However, the WP8 SpeechRecognizer class doesn't have any fields like that in its Settings property.
Why am I getting only one Alternate that is really not an Alternate at all and how can I get a set of real alternates?