- for version history, read this.
For the latest
version and support, please check the Cloudgarden
Support for large range of speech
All fully-compliant SAPI4 and SAPI5
recognizers and synthesizers should work with this implementation. This
opens up a large number of speech engines to the Java developer. In virtually
all situations, the engine type is transparent to the implementation, but
when needed the engine type (ie SAPI4 or 5) can be discovered and the situation
handled accordingly. More details here.
Full implementation of Sun's JSAPI
The implementation of Sun's specification
provided here is as complete as possible, allowing recognition grammars
to be specified in Sun's Java Speech Grammar Format, and speech synthesis
to be controlled in-line using Sun's Java Speech Markup Language tags.
few differences and the several additions (outside of the core JSAPI specification)
are described in detail here , and outlined
Graphical User Interface additions
Classes in the com.cloudgarden.speech
and com.cloudgarden.speech.userinterface packages allow customizable
Dialogs to be displayed which list all available engines, profiles and
voices and allow the user to test and select them. Lip-sync events are
also captured from synthesizers and can be displayed using a "Mouth" which
extends the java.awt.Component class so can be superimposed on other Components.
More details here.
Audio data redirection additions
An interface with Sun's Java
Media Framework, and with the javax.sound.sampled package, is
provided which allows the speech engines to send and receive audio data
in compressed formats (such as MP3) to and from files and over networks.
Feedback on recognition confidence
Recognition results are given with
values representing the confidence with which they have been recognized
by the speech engine, allowing a certain degree of feedback to provided
in language-training applications. More details here.
Recognized utterances can be saved
to WAVE files
The AudioClip returned from the
FinalResult.getAudio method can be cast into a com.cloudgarden.speech.CGResultAudioClip,
whose saveToFile(String fileName) method can be called to save the audio
data to a WAVE file.
to SAPI4 engines - the CGEngineProperties.allowGuessingOfSpeaker
can be used to allow the Recognizer to change the current SpeakerProfile
based on who it thinks is speaking. More details here.
for speech synthesis
are now detected from Synthesizers and CGSpeakableEvents broadcast to CGSpeakableListeners,
which can then display the current shape of a mouth using the com.cloudgarden.speech.userinterface.Mouth
Component. More details here.
Can be used in Applets and Plugins
(in suitable browsers)
Since the implementation works with
the Java 1.1 specification, it can run inside the native JVMs of suitable
browsers after proper installation and without the need to install Sun's
JRE. More details here.