The Toolkit is a distributed system of many components which work in sync with each other.  These components are categorized into modules, tools, libraries and 3rd party software.




3rd Party Software Requirements

This section lists all the 3rd party software needed to run the Toolkit. This software is bundled with the Toolkit.



3rd Party Alternatives

Some of the Toolkit components are mere proof-of-concepts rather than state-of-the-art solutions.  This section lists alternatives to some of these components.

Speech Recognition

Conversational speech recognizers often need to be trained for use with specific domains.  Untrained recognizers may perform poorly.  Some recognizer options are:

If you are interested in the USC Signal Analysis and Interpretation Laboratory providing you with custom speech models for Sonic, please contact us.

Text To Speech

The Toolkit uses MS SAPI as a TTS interface and any SAPI compatible voice can be used with the Toolkit.  To use a new voice download, install it, and change the character's voice ID.  See the FAQ for details.

Some free SAPI voices are found here:

ATT Natural Voice is also compatible with SAPI, but requires you to buy voices. link

Unfortunately, SAPI is not very well maintained by Microsoft; Windows XP by default contains a very outdated voice, Sam, and the installation of new voices on XP 64, Vista, and Windows 7 is either not working or requires registry hacks.

The following commercial Text To Speech engines offer higher quality voices, but will require purchasing or otherwise licensing a voice directly from the developer:

Software interfacing from the toolkit to these engines is available in the SmartBody SourceForge repository.

The toolkit is also integrated with the Festival text to speech engine. Currently the toolkit comes packaged with free diphone voices.

Festival offers other voices with better quality but might require licensing.


SmartBody has been integrated with the following renderers:

Since SmartBody is open source, as a developer you can integrate it with other renderers.