When should I use a lexicon versus pronunciation tags?
Last reviewed: 11/19/2007
FAQ Article ID: F110706
The information in this article applies to:
- LexiconKit 2
Summary
A lexicon provides recognizers and synthesizers phonetic representations of words to recognize or synthesize. This improves recognition accuracy and pronunciation clarity.
Within Chant Developer Workbench 2007, you can use LexiconKit 2 to create, edit, and archive lexicon word pronunciations for import and export across systems. Some grammar and SSML syntax support pronunciation tags where you may specify the pronunciation directly in the grammar rule for enhancing recognition or text tag for the voice to use when synthesizing speech.
More Information
The following table identifies pronunciation support for recognizers and synthesizers by vendor and speech API and explains the differences if any in using a lexicon versus pronunciation tag.
Speech Engine |
Speech API |
Word Pronunciation Support |
---|---|---|
Cepstral Synthesizer |
Swift |
Cepstral voices support lexicon word pronunciations and W3C SSML pronunciation tags. They are functionally equivalent. If you want the pronunciation to always be used, place it in a lexicon. If you only want it used selectively, then imbed the pronunciation SSML in your text markup. |
IBM ViaVoice Recognizer |
SMAPI |
IBM SRCL grammar syntax does not support pronunciation tags. |
Microsoft Recognizer |
SAPI 4 |
Microsoft SAPI 4 grammar syntax does not support pronunciation tags. It may be possible to edit Lexicon word pronunciations for the locally installed recognizer. |
Microsoft Recognizer |
SAPI 5 |
Microsoft SAPI 5 grammar syntax supports pronunciations via the PRON tag. The Microsoft SAPI 5 recognizers also support lexicons. For grammar recognition they are functionally equivalent. However, the only way to utilize word pronunciations for dictation recognition is to update a user's lexicon or import an application lexicon with the word pronunciations. |
Microsoft Synthesizer |
SAPI 4 |
Microsoft SAPI 4 control tags (SSML) include the Prn tag where you may specify the word pronunciations. It may be possible to edit Lexicon word pronunciations for the locally installed SAPI 4 voice's lexicon. These are functionally equivalent. If you want the pronunciation to always be used, update the local lexicon. If you only want it used selectively, then imbed the pronunciation SSML in your text markup. |
Microsoft Synthesizer |
SAPI 5 |
Microsoft SAPI 5 XML markup syntax (SSML) includes the PRON tag where you may specify the word pronunciations. SAPI 5 voices may support user and application lexicons with word pronunciations. These are functionally equivalent. If you want the pronunciation to always be used, update a user's lexicon or import an application lexicon with the word pronunciations. If you only want it used selectively, then imbed the pronunciation SSML in your text markup. |
Nuance VoCon Recognizer |
VoCon |
Nuance L&H BNF grammar syntax supports the pronunciations via the pronounce statement. VoCon also supports transcriptions comprised of word pronunciations. These are functionally equivalent since transcriptions can be used when loading the grammar context. |