5.0.0 - April 10, 2008
4.2.0 - February 8, 2007
4.1.4 - August 18, 2006
4.1.2 - July 25, 2006
4.1.0 - June 30, 2006
Voice Synthesis:
Text Processing:
- Lexicon updates and front end improvements.
4.0.3 - March 10, 2006
Voice Synthesis:
Text Processing:
- Lexicon updates and front end improvements.
4.0.1 - January 31, 2006
Voice Synthesis:
- Changes to fundamental selection algorithm for improved overall smoothness and consistency.
- Additional tuning and correction of speech units.
Text Processing:
- Improved handling of acronyms, abbreviations, currency, white space in symbols, and other recurring textual forms.
- Additions to lexicon(s), and improved letter-to-sound prediction for out-of-vocabulary words.
- Lexicon now supports white space and special characters, in addition to the previous entry format.
3.5.0 - November 30, 2005
3.4.2 - September 19, 2005
3.4.1 - September 2, 2005
3.4.0 - August 18, 2005
Voice Database:
- No Changes (Still Version 3.2.0)
Front End Processing:
- Improvements to text processing
| 5.1.0 - June 11, 2008
Bug Fixes (Swift Engine):
- Fixed a bug where some audio files would cause a synthesis error.
- Fixed a bug where Stereo audio did not play correctly on Windows.
All included audio files are now played in Mono.
5.0.0 - March 19, 2008
Bug Fixes (Swift Engine):
- Fixed a leak in socket handles when a synthesis request was denied a
synthesis token because it (they) were all allocated.
- Support modifying the socket used for licensing.
- Fixed reading RIFF Audio files that were not word (4 byte) aligned.
4.2.0 - March 14 2007
Bug Fixes (Speech Manager):
- Fixed an issue about [[slnc]] tags that were ignored inside phoneme mode [[inpt PHON]]. Now handle [[slnc]] tags, but all other tags inside phoneme mode are still ignored.
Bug Fixes (Swift Engine):
- The swift.xml configuration file can now contain Latin-1 characters (iso-8859-1).
- The voice's lexicon.txt file is overwritten when you upgrade to the current version.
- Example SFX files are not included in the Macintosh installers.
Bug Fixes (Installation and Registration):
- Licensed voices become unlicensed when you upgrade the voice to the current version.
- Example SFX files are not included in the Macintosh installers.
4.1.4 - August 18, 2006
Bug Fixes (Speech Manager):
- Now reports the correct version to the GetSpeechInfo() Speech Manager API call.
Bug Fixes (Swift Engine):
- Fixed an issue under Unix platforms (Linux, Solaris, OS X) regarding slowness in rendering speech. The most common symptom was a several-second delay between sentences when speaking mutli-sentence blocks of text.
4.1.2 - July 25, 2006
Bug Fixes (Swift Engine):
- Fixed a memory usage problem under Unix platforms (Linux, Solaris, OS X) where virtual memory was growing very rapidly when speaking large amounts of text.
4.1.0 - June 30, 2006
Bug Fixes (Speech Manager):
- FIXED: Voices continue to nag after entering a valid license key. You no longer have to log out and log back in after entering your license key information for the voice to stop nagging in all contexts.
- FIXED: If you have a concurrency license installed and have unlicensed voices, each time an unlicensed voice is loaded, you lose one of your concurrency tokens.
- FIXED: Nothing is spoken for phoneme input that contains embedded slnc tokens. For instance, the following produces no audio:
[[inpt PHON]]bIH[[slnc 250]]gIHn[[inpt TEXT]]
- FIXED: If text contains multiple [[inpt PHON]] tokens, the words created
with the phoneme input are repeated for each token. For example, the
following:
[[inpt PHON]]bIH[[inpt TEXT]][[inpt PHON]]gIHn[[inpt TEXT]][[inpt PHON]]
IHN[[inpt TEXT]]
Will be spoken as:
"Bee Begin Beginning"
Enhancements (Preferences Pane):
- The name "Cepstral Voices" in the System Preferences pane now wraps, to take up less space and improve the appearance.
Bug Fixes (Swift Command Line):
- FIXED: If an audio file is locked (for instance, if it is open and paused in a media player), and you attemp to overwrite the file, the operation fails as expected. However, when you close the media player, the file is deleted.
Enhancements (Swift Command Line):
- 'swift --register' has been replaced with 'swift --reg-voice'. This brings consistency to the two registration options. "--reg-ports" is very specific while "--register" was vague, so it has been replaced with a more specific "--reg-voice."
- An error message is now printed when an audio file specified to be played with "-f" option cannot be played.
- 'swift -V' now displays concurrency license information, including the total number of concurrent ports registered and the number of ports currently in use on the system.
Bug Fixes (Swift Engine):
- FIXED: The last entry in lexicon.txt is ignored if there is no newline at the end of the file.
- FIXED: A Concurrency token is lost if an application using Swift TTS with a concurrency license does not exit cleanly.
- FIXED: Swift can only play audio files requested via the SSML <audio> tag if they are PCM16 formatted.
- FIXED: The <prosody> SSML element causes swift to crash when used with a
contour of the following form:
"<prosody contour='(0%,+20Hz) (10%,+30%) (40%,+10Hz)'>text</prosody>"
- FIXED: Output is not resampled correctly if the voice loaded with an SSML <voice> element is of a different sampling-rate than the default voice.
- FIXED: Swift crashes if a <cepstral:sfx> SSML tag is used but no "file" attribute is specified.
- If an unlicensed voice is in use in a given application, it no longer needs to be reloaded for the nagging to stop if the voice is licensed while the voice is in use.
- All available diagnostic flags now work without causing the TTS engine to crash. Also, for those that didn't crash before, now they print out sensible values instead of garbage.
- swift_port_play_wave() can now play wave files asynchronously.
- If the audio file specified in an <audio></audio> tag pair cannot be played, the contents of the tag pair is now synthesized. This conforms to the SSML specification, section 3.3.1.
- Swift's handling of the "rate" attribute of the "prosody" element now conforms to SSML Specifications when a number is used to specify a relative change. From the spec: "..it acts as a multiplier of the default rate. For example, a value of 1 means no change in speaking rate, a value of 2 means a speaking rate twice the default rate, and a value of 0.5 means a speaking rate of half the default rate."
Enhancements (Swift Engine):
- A new API call, swift_license_get_concurrency_info, has been added to retrieve information about the number of concurrency tokens available and in use on the system. For more information, see the API docs in the SDK.
4.0.3.1 - March 13, 2006
Bug Fixes (Speech Manager):
- FIXED: The installer is not properly updating components when installing overtop of a previous installation.
4.0.3 - March 10, 2006
Bug Fixes (Speech Manager):
- FIXED: If you install an N-Port concurrency license, the Cepstral voices disappear from the Cepstral Voices Preferences Pane. If you try to use the voices through the Speech Manager interface, they fail to speak.
Enhancements (Speech Manager):
- If you enter invalid voice license information through the Cepstral Voices Preferences Pane, you can now choose "Try Again" and go back to edit the information you submitted, whereas before it would discard your information, thus forcing you to enter it all again.
- The form for entering license keys is now more forgiving. Leading and trailing whitespace is cropped from all input fields, and the license key is now case-insensitive. Note, though, that the Name and Company fields are still case-sensitive.
Bug Fixes (Swift Command Line):
- FIXED: The swift manpage is out of date.
- FIXED: 'swift -V' prints incorrect language version.
- FIXED: 'swift -V' prints bogus lexicon name and version.
- "config/default-voice" engine parameter now works. You can set this parameter through use of the -p option to command-line swift. The default voice is determined in this order: (1) config/default-voice parameter, (2) SWIFT_DEFAULT_VOICE engine config feature, (3) SWIFT_DEFAULT_VOICE environment variable (except Windows CE), (4) SwiftDefaultVoice registry setting (Windows and Windows CE only).
Enhancements (Swift Command Line):
- 'swift --register' and 'swift --reg-ports' are now more forgiving. Leading and trailing whitespace is cropped from all input fields, and the license key is now case-insensitive. Note, though, that the Name and Company fields are still case-sensitive.
Bug Fixes (Swift Engine):
- FIXED: If two words that have custom pronunciations defined in a voice's lexicon.txt file are used consecutively in text to speech, the custom pronunciation for the second word is ignored.
- "config/default-voice" engine parameter now works. You can set this parameter in a swift_params structure that is passed to a call to swift_engine_open() to set the default voice for that engine. The default voice is determined in this order: (1) config/default-voice parameter, (2) SWIFT_DEFAULT_VOICE engine config feature, (3) SWIFT_DEFAULT_VOICE environment variable (except Windows CE), (4) SwiftDefaultVoice registry setting (Windows and Windows CE only).
Enhancements (Swift Engine):
- SFX can now be set via SSML! You can specify an SFX file to load by using either the <cepstral:sfx> vendor tag to load an SFX file for a block of text, or by using the new sfx_file attribute to the <voice> tag to load an SFX file for use by that voice. Examples:
$ swift "Hello. <cepstral:sfx file='/path/to/my_sfx.sfx'>Howdy, sir. How are you?</cepstral:sfx> I am fine."
$ swift "Sit! <voice name='Dog' sfx_file='/path/to/my_sfx.sfx'>Woof, Woof!</voice> Good boy."
- "audio/output-format" parameter can now be set to "none" to tell swift to bypass the writing of audio to the audio device, thus speeding up the process of running text through the front-end text processor only when you don't want the resulting audio.
4.0.1 - January 31, 2006
Enhancements (Speech Manager):
- New method for incorporating synthesis information at run-time, with better overall sound quality across all voices.
- Expanded handling for high-bit ascii and other special characters, including accent marks.
- Mac OS X default rate adjusted to match default Apple rate for improved performance under VoiceOver.
New Features (Swift Command Line):
- 'swift -t' shows each sentence at the time it is played. This is very handy for listening to text and seeing what it is saying as it says it.
- New additional parameters to 'swift --register' and 'swift --reg-ports' to allow you to enter your voice or concurrency license information with a single command using arguments. Run 'swift --help' for more information and examples.
- 'swift --say-pgm-version' speaks version information.
- 'swift --say-voice-version' speaks name, language, and version of currently loaded voice. This can be used in conjunction with -n switch to set voice.
- 'swift --say-all-voices' lists and speaks names, languages, and versions of all voices found on the system
- Multiple text arguments are concatenated and spoken as one utterance. This causes the following two commands to be treated identically:
swift -n David "Hello, how are you?"
swift -n David Hello, how are you?
Whereas before, the latter command would make four seperate calls to synthesize each word seperately.
Enhancements (Swift Command Line):
- 'swift --help' now shows a much more readable help message, and inclues several usage examples.
- When synthesizing text from standard input by using 'swift -f -', you can now signal a chunk of text to be synthesized by passing two consecutive newline characters.
- Improved output messages for errors, warnings, and other engine output
Bug Fixes (Swift Command Line):
- FIXED: Input text starting with a hyphen is treated as a parameter switch. For instance, something like "$swift '--The Raven--...'" will print out the Usage string, as if you've entered an invalid switch. NOTE: To signify the end of options, use "--" by itself. For instance:
./swift -n William --events -- "--The Raven" -o hello.wav
Will speak, "The Raven, Oh Hello dot wav" in Williams voice and will *not* create a wave file (the -o argument being treated as input text).
Enhancements (Swift Engine):
- New method for incorporating synthesis information at run-time, with better overall sound quality across all voices.
- Performance and robustness improvements, particularly in high density installations
- XML-based configuration mechanism (swift.xml, replacing swift.conf) which allows specifications of defaults and options for the voice, languages, and engine.
- Expanded the lexicon format to allow for phrases and whitespace in user-defined entries.
- Expanded handling for high-bit ascii and other special characters, including accent marks.
- Expanded lexicons, improved grapheme-to-phoneme support for unknown words, and improved text processing overall.
- Voice settings file is now "settings.txt" (was voxdefs.h).
- Voice lexicon name changed to "lexicon.txt" (was userlex.txt).
- Native 64 bit Linux builds (versions) available.
- Added Solaris x86 support.
Bug Fixes (Swift Engine):
- FIXED: The SSML <sub> tag is being ignored.
- FIXED: The SSML <mark> tag causes a crash in Canadian French, Americas Spanish, and Italian voices.
3.5.0 - November 30, 2005
New Features (Speech Manager):
- Pitch modification tags are now supported.
- The [[sync]] tag now works properly and will report the occurance during synthesis at the correct time.
Bug Fixes (Speech Manager):
- FIXED: Word positions could be reported incorrectly or as negative numbers. Word positions are now correctly reported.
- FIXED: In some cases, the presence of a [[ctxt WSKP]] tag would result in an infinite hang.
New Features (Swift Binary):
- 'swift --voices' now shows information about the software in addition to the table of information about the installed voices.
Bug Fixes (Swift Engine):
- FIXED: If the src file of an SSML audio tag cannot be opened, the application using the Swift TTS Engine will crash.
3.4.2 - September 19, 2005
Bug Fixes (Swift):
- FIXED: When used in heavy-concurrency environments, the system may hang.
- FIXED: Entries in the userlex.txt file are not being honored.
Enhancements: (Swift)
- Better complies with the SSML Break tag - now uses the "strength" attribute and expects values of "x-weak", "weak", "medium", "strong", and "x-strong", as the spec says it should.
3.4.1 - September 2, 2005
Bug Fixes (Speech Manager):
- FIXED: The silence speech markup tag (e.g.: [[ slnc 350 ]]) is ignored if it's the first/only thing to speak.
Bug Fixes: (Swift)
- FIXED: SSML break tag is ignored if it's the first/only thing to speak.
3.4.0 - August 18, 2005
Bug Fixes (Speech Manager):
- FIXED: On case-sensitive filesystems, uninstalling doesn't remove all components.
New Features: (Swift)
- New speech/pitch/shift parameter for relative adjustment of pitch.
Bug Fixes: (Swift)
- The async_example sample code now handles keypresses properly on Windows.
- The call to swift_port_play_wave now returns a valid swift_result_t value. The call used to return the number of bytes written to the audio device not a swift_result_t value. This would lead to failures being reported on successful playing of audio (and vice versa).
3.3.2 - July 28, 2005
Bug Fixes (Swift Engine):
- SSML mark tag now supported.
3.3.1 - July 12, 2005
Bug Fixes (Speech Manager):
- The installer no longer removes license keys or other special files when upgrading a voice.
Bug Fixes (Swift):
- Setting the audio/output-format parameter to "raw" works again.
- Fixed a crash that could occur when requesting events and not using a background job for synthesis.
- FIXED: The audio device is opened unnecessarily when capturing audio using swift_port_get_wave().
Bug Fixes (Swift Binary):
- FIXED: Setting swift.exe into phone mode and asking for event information causes a crash.
- FIXED: 'swift -V' shows no lexicon information
3.3.0 - June 15, 2005
Bug Fixes (SpeechManager):
- Improved stability under VoiceOver.
- Case-sensitive filesystems are now supported.
- When synthesizing a large amount of text at once, non-ASCII characters, such as curly quotes, are now handled properly.
- Switching between Cepstral voices within an application works again.
Enhancements (SpeechManager):
- An uninstall option is now available in the Cepstral Voices preference pane.
Bug Fixes (Swift):
- FIXED: Applications using Swift TTS crash when they pass text containing the <phoneme> SSML tag and request text events.
- FIXED: Event text information is incorrect when the text contains quotations marks.
- FIXED: Sometimes when you stop playback then start again, you may hear bits of what it was previously speaking mixed in with what it is currently speaking. This also occurs if change voices; You may hear the prior voice speak a bit after the new voice begins speaking.
- FIXED: audio/pan and audio/channels parameters are only honored if set when opening the port. If you set them on an open port, they are ignored.
- FIXED: Nagging goes to the audio device even if audio/output-file parameter is set.
- FIXED: Synthesizing both phones and text in the same engine instance fails (<phoneme> tags in SSML are not affected).
New Features (Swift):
- All events are fired at playback time. In prior releases, all events were fired at synthesis time. This required application developers to capture the events and run their own timer to handle them in sync with audio playback. Now they are in sync with audio playback as they arrive in the callback, unless the events/immediate param is set.
- Event times are now reported relative to the start of synthesis, not the start the last sentence.
- Unknown or malformed synthesis parameters, passed with the -p switch or the swift_params API, are now rejected by the engine.
Bug Fixes (swift binary):
- FIXED: swift -m wave fails with an invalid NULL param error.
- FIXED: Command-line swift will fail to play sound (wav, aiff) files from disk if no voices are loaded.
New Features (swift binary):
- If -m switch or text/content-type param isn't set, command-line swift is now able to do the right thing with the file based on its extension. For instance:
'swift -f myWave1.wav myTextFile.txt myWave2.wav'
Will play the two wave files and synthesize the text in the text file.
3.2.2 - April 29, 2005
Enhancements:
- Compatible with Apple's VoiceOver screenreader.
- Word and phonemes callbacks are supported, enabling word highlighting and character animation applications.
- The Cepstral Voices preference pane now displays the synthesizer version separate from individual voice versions.
- Spanish voices now describe themselves in Spanish.
Bug Fixes:
- Fixed freeze that could occur in Mac OS 10.4 with the Talking Alerts feature.
- Fixed freeze that occured when using the "Announce when an application requires your attention" option.
- A very slight delay when stopping speech has been eliminated.
3.2.1 - March 25, 2005
Bug Fixes:
- Audio problems on dual processor systems have been eleminated.
- Synthesis no longer fails on systems where the hostname does not resolve to an IP address.
- CPU usage greatly reduced.
- German and French voices now describe themselves in their native language.
3.2.0 - March 15, 2005
|