Android TextToSpeech Tutorial
In android, you can convert your text into speech by the help of TextToSpeech class. After completion of the conversion, you can playback or create the sound file.
Constructor of TextToSpeech class
- TextToSpeech(Context context, TextToSpeech.OnInitListener)
Methods of TextToSpeech class
The commonly used methods of TextToSpeech class are as follows:
|int speak (String text, int queueMode, HashMap params)||converts the text into speech. Queue Mode may be QUEUE_ADD or QUEUE_FLUSH. Request parameters can be null, KEY_PARAM_STREAM, KEY_PARAM_VALUME etc.|
|int setSpeechRate(float speed)|| it sets the speed for the speech.|
|int setPitch(float speed)|| it sets the pitch for the speech.|
|int setLanguage (Locale loc)||it sets the locale specific language for the speech.|
|void shutdown()||it releases the resource set by TextToSpeech Engine.|
|int stop()||it interrupts the current utterance (whether played or rendered to file) and discards other utterances in the queue.|
You need to implement TextToSpeech.OnInitListener interface, for performing event handling on TextToSpeech engine.
Method of TextToSpeech.OnInitListener Interface
There is only one method in this interface.
|void onInit (int status)||Called to signal the completion of the TextToSpeech engine initialization. The status can be SUCCESS or ERROR.|
Android TextToSpeech Example
Let's write the code to convert text into voice.
Drag one textview, one edittext and one button for the layout. Now the activity_main.xml file will look like this:
Let's see the code to speak the given text.
You need to run it on the Real Device (e.g. Mobile) to test the application.
Next: TextToSpeech example with speed and pitch option
TextToSpeech example with speed and pitch option