How do I generate and edit L&H Native Control Sequence markup language?
Last reviewed: 10/1/2009
HOW Article ID: H100902
The information in this article applies to:
- VoiceMarkupKit 3
Summary
Text-to-speech (TTS) markup is text with imbedded indicators that control speech synthesis from the text. Speaking qualities such as the speed, pitch, emphasis, and word pronunciation may be tailored in reproducing speech from text.
VoiceMarkupKit 3 adds L&H Native Control Sequence as a supported markup language and Chant Developer Workbench provides a new editing surface for this markup language.
More Information
Chant VoiceMarkupKit is comprised of software components that handle the complexities of generating text-to-speech markup for various markup syntax. This enables you to tailor speech synthesis to produce sounds in familiar dialects, speaking patterns, and accents of your end users. You can adjust TTS markup as needed for the synthesizer to enhance the playback quality when synthesizing.
By generating TTS markup at runtime, your application can maximize the quality of TTS playback and offer your end users the flexibility of using various synthesizers with your application.
Synthesizers (i.e., speech APIs) support unique markup syntax. VoiceMarkupKit supports the following synthesizers and their markup syntax:
Synthesizer | Speech API | Markup Syntax |
---|---|---|
Cepstral (all languages) | Cepstral Swift | W3C SSML |
Microsoft SAPI 4 (all languages) | SAPI 4 | SAPI 4 Control Tags |
Microsoft SAPI 5 (all languages) | SAPI 5 | SAPI 5 XML Markup, W3C SSML (5.3) |
Nuance RealSpeak Solo (all languages) | Nuance RealSpeak Solo | L&H Native Control Sequence, SAPI 5 XML Markup |
Nuance Vocalizer Auotmotive (all languages) | Nuance Vocalizer Auotmotive | L&H Native Control Sequence, SAPI 5 XML Markup |
Nuance Vocalizer Mobile (all languages) | Nuance Vocalizer Mobile | L&H Native Control Sequence |
Nuance Vocalizer Network (all languages) | Nuance Vocalizer Network | L&H Native Control Sequence, SAPI 5 XML Markup, W3C SSML |
The following example illustrates generating markup:
// Instantiate ChantPM object
NChantVM1 = new NChantVM();
string markup = NChantVM1.GenerateMarkup(ChantVoiceMarkupLanguage.CVMLLHNCS, ChantVoiceMarkupTag.CVMTEmphasis, "", "", "Ouch!");
Refer to programming language specific syntax in the help file Class Library Reference.
Editing markup can be challenging especially L&H Native Control Sequence since it uses escape characters to indicate the begining of a markup tag.
A new editing surface has been added to Chant Developer Workbench to edit L&H Native Control Sequence that accepts the Escape key and input and places the escape character into the document.
The intelliprompt editor has been updated with L&H Native Control Sequence syntax to assist with text editing in addition to the markup generation menu and toolbar functions for inserting L&H Native Control Sequence syntax.