Problem Report Bulletins
Last reviewed: 1/20/2004
Article ID: P010401
PRB: TTS to file operations doesn't persist property settings
The information in this article applies to:
- SpeechKit 4
Symptoms
When synthesizing speech to a file, the TTS engine (voice) property settings are lost after writing the file. For example:
ChantTTS1.StartPlayback(" "); // Force instantiation of TTS objects ChantTTS1.SetNumberProperty(CNPSpeedNorm,1); // Speak a little faster than normal ChantTTS1.StartPlayback("Save this TTS audio to a file", 0, CPOText, CAFDefault, 0, CPRFile, CAFDefault, CPSAsynchronous); // The following will speak at baseline rate not the desired rate+1 ChantTTS1.StartPlayback("Save this also", 0, CPOText, CAFDefault, 0, CPRFile, CAFDefault, CPSAsynchronous);
Cause
The SAPI 5 TTS voice object was automatically released after the file operation. This also imposed the voice object instantiation overhead each time a file was written.
Status
Fixed in SpeechKit 4 build 4.0.96.0. The SAPI 5 TTS voice object is retained to retain the property settings and eliminate instantiation overhead.
Component Formats Impacted
All component formats.