RecognizedPhrase.Grammar Property
Returns the Grammar used by a recognition engine to return the current RecognizedPhrase.
Namespace: Microsoft.Speech.Recognition
Assembly: Microsoft.Speech (in microsoft.speech.dll)
Syntax
'Declaration
Property Value
Returns and instance of Grammar corresponding the the Grammar used to obtain the current RecognizedPhrase.
Example
RecognizedPhrase object returned by a recognition engine is displayed to a user interface.
The section the Grammar used by the recognition engine to return the current RecognizedPhrase is highlighted.
internal static void DisplayBasicPhraseInfo(Label label, RecognizedPhrase result, SpeechRecognizer rec) {
if (result != null && label != null) {// Blank
if (rec != null) { //Clear
label.Text += String.Format(
" Recognizer currently at: {0} mSec\n" +
" Audio Device currently at: {1} mSec\n",
rec.RecognizerAudioPosition.TotalMilliseconds,
rec.AudioPosition.TotalMilliseconds);
}
if (result != null) { //Clear
RecognitionResult recResult = result as RecognitionResult;
if (recResult != null) {
RecognizedAudio resultAudio = recResult.Audio;
if (resultAudio == null) {
label.Text += String.Format(
" Emulated input\n");
} else {
label.Text += String.Format(
" Candidate Phrase at: {0} mSec\n" +
" Phrase Length: {1} mSec\n" +
" Input State Time: {2}\n" +
" Input Format: {3}\n",
resultAudio.AudioPosition.TotalMilliseconds,
resultAudio.Duration.TotalMilliseconds,
resultAudio.StartTime.ToShortTimeString(),
resultAudio.Format.EncodingFormat.ToString());
}
}
label.Text += String.Format(" Confidence Level: {0}\n", result.Confidence);
if (result.Grammar != null) {
label.Text += String.Format(
" Recognizing Grammar: {0}\n" +
" Recognizing Rule: {1}\n",
((result.Grammar.Name != null) ? (result.Grammar.Name) : "None"),
((result.Grammar.RuleName != null) ? (result.Grammar.RuleName) : "None"));
}
if (result.ReplacementWordUnits.Count != 0) {
label.Text += String.Format(" Replacement text:\n");
foreach (ReplacementText rep in result.ReplacementWordUnits) {
string repText = rep.Text;
// Add trailing spaces
if ((rep.DisplayAttributes & DisplayAttributes.OneTrailingSpace) != 0) {
repText += " ";
}
if ((rep.DisplayAttributes & DisplayAttributes.TwoTrailingSpaces) != 0) {
repText += " ";
}
if ((rep.DisplayAttributes & DisplayAttributes.ConsumeLeadingSpaces) != 0) {
repText.TrimStart();
}
label.Text += String.Format(" At index {0} for {1} words. Text: \"{2}\"\n",
rep.FirstWordIndex, rep.CountOfWords, repText);
}
label.Text += String.Format("\n\n");
}
}
}
}
Thread Safety
All public static (Shared in Visual Basic) members of this type are thread-safe. Instance members are not guaranteed to be thread-safe.
Platforms
Development Platforms
Windows XP Professional with Service Pack 2 (SP2), Windows Server 2003, Windows Vista Ultimate Edition, Windows Vista Business Edition, Windows Vista Enterprise Edition
Target Platforms
See Also
Reference
RecognizedPhrase Class
RecognizedPhrase Members
Microsoft.Speech.Recognition Namespace