#include <ArSpeech.h>
This class defines the abstract interface for speech synthesizers used with Aria. Implementations are provided in the separate ArSpeechSynth_Cepstral and ArSpeechSynth_Festival libraries. This class provides a common-denominator interface. Implementations (especially ArCepstral) may support more features, or behave differently; refer to their documentation for more information.
Definition at line 46 of file ArSpeech.h.
Public Member Functions | |
ArSpeechSynth () | |
virtual int | getAudioSampleRate ()=0 |
ArRetFunctorC< bool, ArSpeechSynth > * | getInitCallback () |
ArFunctorC< ArSpeechSynth > * | getInterruptCallback () |
ArRetFunctor2C< bool, ArSpeechSynth, const char *, const char * > * | getSpeakCallback (void) |
virtual bool | init (void)=0 |
virtual void | interrupt ()=0 |
virtual void | lock () |
void | setAudioCallback (ArRetFunctor2< bool, ArTypes::Byte2 *, int > *cb) |
virtual void | setAudioSampleRate (int rate)=0 |
virtual bool | speak (const char *str, const char *voiceParams=NULL) |
virtual bool | speak (const char *str, const char *voiceParams, ArRetFunctor2< bool, ArTypes::Byte2 *, int > *audioOutputCB, unsigned short sampleRate=0)=0 |
virtual bool | speakf (const char *fmt,...)=0 |
virtual void | unlock () |
Protected Attributes | |
ArRetFunctor2< bool, ArTypes::Byte2 *, int > * | myAudioPlaybackCB |
If set, send audio to this callback instead of playing it directly. | |
ArRetFunctorC< bool, ArSpeechSynth > | myInitCB |
ArFunctorC< ArSpeechSynth > | myInterruptCB |
ArRetFunctor2C< bool, ArSpeechSynth, const char *, const char * > | mySpeakCB |
|
Don't forget to call this from derived classes. Definition at line 31 of file ArSpeech.cpp. |
|
Definition at line 43 of file ArSpeech.cpp. |
|
Definition at line 54 of file ArSpeech.cpp. |
|
Definition at line 48 of file ArSpeech.cpp. |
|
Perform synthesizer initialization, if neccesary. You must call this method. |
|
If any speech is currently ongoing, interrupt it. |
|
Lock, if neccesary Definition at line 112 of file ArSpeech.h. |
|
Instead of playing synthesized audio using the synthesizer's internal audio playback, call the given callback when a chunk of audio has been synthesized. Audio is passed to the callback in the first parameter as signed 16-bit samples (PCM16). The sample rate is 16kHz but may be changed with setAudioSampleRate(). The second parameter is the number of samples. The return value from the callback is ignored. Definition at line 59 of file ArSpeech.cpp. |
|
Change audio sample rate (Hz). Normal rate is 16000 Hz. Suggested values are 8000, 16000, or 44400 |
|
Speaks the given text.
|
|
Speaks the given string, using current voice and output settings, taking varargs and a format string (like printf) |
|
Unlock, if neccesary Definition at line 114 of file ArSpeech.h. |