How do I develop applications that do more with Acapela Speech Technology?
Last reviewed: 7/8/2021
HOW Article ID: H072109
The information in this article applies to:
- LexiconKit 7
- SpeechKit 10
- VoiceMarkupKit 7
Summary
Explore ways to do more with Acapela Speech Technology.
More Information
Chant Developer Workbench 2021 includes LexiconKit to manage pronunciations for synthesis clarity, SpeechKit to synthesize text to speech, and VoiceMarkupKit to markup text for tailored speech synthesis. It also provides an interative toolset for editing and testing Acapela pronunciations, speech synthesis, and Speech Synthesis Markup Language (SSML).
Develop applications that do more with Acapela Speech Technology
Edit pronunciation phonemes with LexiconKit to use with markup tags for Acapela voices.
// Instantiate LexiconKit
NLexiconKit _LexiconKit = new NLexiconKit();
// Set license properties
_LexiconKit.SetLicense("LicenseRegistrationNumber", "LicenseSerialNumber");
// Create synthesizer
NAcaTTSSynthesizer _Synthesizer = _LexiconKit.CreateAcaTTSSynthesizer();
// Speak phonemes
_Synthesizer.SpeakPhonemes("h e l @U1");
// Instantiate LexiconKit object
CLexiconKit* _LexiconKit = new CLexiconKit();
// Set license properties
_LexiconKit->SetLicense(L"LicenseRegistrationNumber", L"LicenseSerialNumber");
// Create synthesizer
CAcaTTSSynthesizer* _Synthesizer = _LexiconKit->CreateAcaTTSSynthesizer();
// Speak phonemes
_Synthesizer->SpeakPhonemes(L"h e l @U1");
// Instantiate LexiconKit
CLexiconKit* _LexiconKit = new CLexiconKit();
// Set license properties
_LexiconKit->SetLicense("LicenseRegistrationNumber", "LicenseSerialNumber");
// Create synthesizer
CAcaTTSSynthesizer* _Synthesizer = _LexiconKit->CreateAcaTTSSynthesizer();
// Speak phonemes
_Synthesizer->SpeakPhonemes("h e l @U1");
var
_LexiconKit: TLexiconKit;
_Synthesizer: TAcaTTSSynthesizer;
_Phonemes: string;
begin
// Instantiate LexiconKit
_LexiconKit := TLexiconKit.Create();
// Set license properties
_LexiconKit.SetLicense('LicenseRegistrationNumber', 'LicenseSerialNumber');
// Create synthesizer
_Synthesizer := _LexiconKit.CreateAcaTTSSynthesizer();
// Speak phonemes
_Synthesizer.SpeakPhonemes('h e l @U1');
// Instantiate LexiconKit
JLexiconKit _LexiconKit = new JLexiconKit();
// Set license properties
_LexiconKit.setLicense("LicenseRegistrationNumber", "LicenseSerialNumber");
// Create synthesizer
JAcaTTSSynthesizer _Synthesizer = _LexiconKit.createAcaTTSSynthesizer();
// Speak phonemes
_Synthesizer.speakPhonemes("h e l @U1");
Dim _LexiconKit As NLexiconKit
Dim WithEvents _Synthesizer As NAcaTTSSynthesizer
Dim _Phonemes As String
' Instantiate LexiconKit
_LexiconKit = New NLexiconKit()
' Set license properties
_LexiconKit.SetLicense("LicenseRegistrationNumber", "LicenseSerialNumber")
' Create synthesizer
_Synthesizer = _LexiconKit.CreateAcaTTSSynthesizer()
' Speak phonemes
_Synthesizer.SpeakPhonemes("h e l @U1")
Generate text to speech with SpeechKit for playback or persistence to a file.
// Instantiate SpeechKit
NSpeechKit _SpeechKit = new NSpeechKit();
// Set license properties
_SpeechKit.SetLicense("LicenseRegistrationNumber", "LicenseSerialNumber");
// Create synthesizer
NAcaTTSSynthesizer _Synthesizer = _SpeechKit.CreateAcaTTSSynthesizer();
// Synthesize speech for playback
_Synthesizer.Speak("Hello world.", (int)ACATTSSPEAKFLAGS.ACATTS_ASYNC);
// Synthesize speech to file
_Synthesizer.Speak("Hello world.", (int)ACATTSSPEAKFLAGS.ACATTS_ASYNC, "myaudio.wav", (int)ACATTSWAVFORMATFLAGS.ACATTS_FORMAT_PCM);
// Instantiate SpeechKit
CSpeechKit* _SpeechKit = new CSpeechKit();
// Set license properties
_SpeechKit->SetLicense(L"LicenseRegistrationNumber", L"LicenseSerialNumber");
// Create synthesizer
CAcaTTSSynthesizer* _Synthesizer = _SpeechKit->CreateAcaTTSSynthesizer();
// Synthesize speech for playback
_Synthesizer->Speak(L"Hello world.", ACATTS_ASYNC);
// Synthesize speech to file
_Synthesizer->Speak(L"Hello world.", ACATTS_ASYNC, L"myaudio.wav", ACATTS_FORMAT_PCM);
// Instantiate SpeechKit
CSpeechKit* _SpeechKit = new CSpeechKit();
// Set license properties
_SpeechKit->SetLicense("LicenseRegistrationNumber", "LicenseSerialNumber");
// Create synthesizer
CAcaTTSSynthesizer* _Synthesizer = _SpeechKit->CreateAcaTTSSynthesizer();
// Synthesize speech for playback
_Synthesizer->Speak("Hello world.", ACATTS_ASYNC);
// Synthesize speech to file
_Synthesizer->Speak("Hello world.", ACATTS_ASYNC, "myaudio.wav", ACATTS_FORMAT_PCM);
var
_SpeechKit: TSpeechKit;
_Synthesizer: TAcaTTSSynthesizer;
_Phonemes: string;
begin
// Instantiate SpeechKit
_SpeechKit := TSpeechKit.Create();
// Set license properties
_SpeechKit.SetLicense('LicenseRegistrationNumber', 'LicenseSerialNumber');
// Create synthesizer
_Synthesizer := _SpeechKit.CreateAcaTTSSynthesizer();
// Synthesize speech for playback
_Synthesizer.Speak('Hello world.', ACATTS_ASYNC);
// Synthesize speech to file
_Synthesizer.Speak('Hello world.', ACATTS_ASYNC, 'myaudio.wav', ACATTS_FORMAT_PCM);
// Instantiate SpeechKit
JSpeechKit _SpeechKit = new JSpeechKit();
// Set license properties
_SpeechKit.setLicense("LicenseRegistrationNumber", "LicenseSerialNumber");
// Create synthesizer
JAcaTTSSynthesizer _Synthesizer = _SpeechKit.createAcaTTSSynthesizer();
// Synthesize speech for playback
_Synthesizer.speak("Hello world.", ACATTSSPEAKFLAGS.ACATTS_ASYNC);
// Synthesize speech to file
_Synthesizer.speak("Hello world.", ACATTSSPEAKFLAGS.ACATTS_ASYNC, "myaudio.wav", ACATTSWAVFORMATFLAGS.ACATTS_FORMAT_PCM);
Dim _SpeechKit As NSpeechKit
Dim WithEvents _Synthesizer As NAcaTTSSynthesizer
' Instantiate SpeechKit
_SpeechKit = New NSpeechKit()
' Set license properties
_SpeechKit.SetLicense("LicenseRegistrationNumber", "LicenseSerialNumber")
' Create synthesizer
_Synthesizer = _SpeechKit.CreateAcaTTSSynthesizer()
' Synthesize speech for playback
_Synthesizer.Speak("Hello world.", ACATTSSPEAKFLAGS.ACATTS_ASYNC)
' Synthesize speech to file
_Synthesizer.Speak("Hello world.", ACATTSSPEAKFLAGS.ACATTS_ASYNC, "myaudio.wav", ACATTSWAVFORMATFLAGS.ACATTS_FORMAT_PCM )
Generate AcaTTS Tags with VoiceMarkupKit to tailor speech synthesis.
NVoiceMarkupKit _VoiceMarkupKit = new NVoiceMarkupKit();
_VoiceMarkupKit.SetLicense("LicenseRegistrationNumber", "LicenseSerialNumber");
NAcaTTSVoiceMarkup _AcaTTSVoiceMarkup = _VoiceMarkupKit.CreateAcaTTSVoiceMarkup();
string markup = _AcaTTSVoiceMarkup.GenerateMarkup("Rate", "150", "This text is spoken above the baseline at rate");
CVoiceMarkupKit* _VoiceMarkupKit = new CVoiceMarkupKit();
_VoiceMarkupKit->SetLicense("LicenseRegistrationNumber", "LicenseSerialNumber");
CAcaTTSVoiceMarkup* _AcaTTSVoiceMarkup = _VoiceMarkupKit->CreateAcaTTSVoiceMarkup();
wchar_t* markup = _AcaTTSVoiceMarkup->GenerateMarkup(L"Rate", L"150", L"This text is spoken above the baseline at rate");
CVoiceMarkupKit* _VoiceMarkupKit = new CVoiceMarkupKit();
_VoiceMarkupKit->SetLicense("LicenseRegistrationNumber", "LicenseSerialNumber");
CAcaTTSVoiceMarkup* _AcaTTSVoiceMarkup = _VoiceMarkupKit->CreateAcaTTSVoiceMarkup();
string markup = _AcaTTSVoiceMarkup->GenerateMarkup("Rate", "150", "This text is spoken above the baseline at rate");
var
_VoiceMarkupKit: TVoiceMarkupKit;
_AcaTTSVoiceMarkup: TAcaTTSVoiceMarkup;
markup: string;
begin
_VoiceMarkupKit := TVoiceMarkupKit.Create();
_VoiceMarkupKit.SetLicense('LicenseRegistrationNumber', 'LicenseSerialNumber');
_AcaTTSVoiceMarkup := _VoiceMarkupKit.CreateAcaTTSVoiceMarkup();
markup = _AcaTTSVoiceMarkup.GenerateMarkup('Rate', '150', 'This text is spoken above the baseline at rate');
JVoiceMarkupKit _VoiceMarkupKit = new JVoiceMarkupKit();
_VoiceMarkupKit.setLicense("LicenseRegistrationNumber", "LicenseSerialNumber");
JAcaTTSVoiceMarkup _AcaTTSVoiceMarkup = _VoiceMarkupKit.createAcaTTSVoiceMarkup();
String markup = _AcaTTSVoiceMarkup.generateMarkup("Rate", "150", "This text is spoken above the baseline at rate");
JVoiceMarkupKit _VoiceMarkupKit = new JVoiceMarkupKit();
_VoiceMarkupKit.setLicense("LicenseRegistrationNumber", "LicenseSerialNumber");
JAcaTTSVoiceMarkup _AcaTTSVoiceMarkup = _VoiceMarkupKit.createAcaTTSVoiceMarkup();
String markup = _AcaTTSVoiceMarkup.generateMarkup("Rate", "150", "This text is spoken above the baseline at rate");
Develop and test applications that do more with Acapela Speech Technology
Developers use Chant Developer Workbench with LexiconKit to manage pronunciations, SpeechKit to test and analyze speech synthesis, and with VoiceMarkupKit to create, edit, and test Speech Synthesis Markup Language (SSML).
Use SpeechKit to test and analyze speech synthesis with Acapela voices.
Use VoiceMarkupKit to create and edit Tags with Acapela voices.