CURRENT ISSUE

Contests

bottom corner

Feature Article



Issue #207 October 2007
Embedded Speech
Speech Synthesis for Small Applications

by Nicusor Birsan & Ionut Tarsa

Start | Embedding Speech | Speech Synthesis Techniques | Open-Source Project | System Building Blocks | Sound From Luminary Micro | First Big Porting Problem | Synthesizer | Translator | The LM3S811 Speaks | More Speech Applications | Sources & PDF

Listing 4—Any task from the application “could speak” by calling the SpeakLumi function, but it would have to wait until another task was finished speaking.


int SpeakLumi(char* src){
  	if(NULL != p_cgen) return -1;	//the synthesizer is busy right now
  	p_cgen = (char*) src;    //this task get access to the synthesizer
  	MCUTranslate((char*) p_cgen);	//and start speaking
  	MCUCalcPitches(1);
  	MCUCalcLengths();
  	return 0;
}


bottom corner