Subscribe For Free Updates!

We'll not spam mate! We promise.

Wednesday, June 10, 2015

Android Text 2 Speech Application

Main CLass:
package android.texttospeech;

import java.util.Locale;


import android.app.Activity;
import android.os.Bundle;
import android.speech.tts.TextToSpeech;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class AndroidTextToSpeechActivity extends Activity implements
TextToSpeech.OnInitListener {
 /** Called when the activity is first created. */

 private TextToSpeech tts;
 private Button btnSpeak;
 private EditText txtText;

 @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main);

  tts = new TextToSpeech(this, this);

  btnSpeak = (Button) findViewById(R.id.btnSpeak);

  txtText = (EditText) findViewById(R.id.txtText);

  // button on click event
  btnSpeak.setOnClickListener(new View.OnClickListener() {

   @Override
   public void onClick(View arg0) {
    speakOut();
    txtText.setText("");
   }

  });
 }

 @Override
 public void onDestroy() {
  // Don't forget to shutdown!
  if (tts != null) {
   tts.stop();
   tts.shutdown();
  }
  super.onDestroy();
 }

 @Override
 public void onInit(int status) {
  // TODO Auto-generated method stub

  if (status == TextToSpeech.SUCCESS) {

   int result = tts.setLanguage(Locale.ENGLISH);

   // tts.setPitch(5); // set pitch level

   // tts.setSpeechRate(2); // set speech speed rate

   if (result == TextToSpeech.LANG_MISSING_DATA
     || result == TextToSpeech.LANG_NOT_SUPPORTED) {
    Log.e("TTS", "Language is not supported");
   } else {
    btnSpeak.setEnabled(true);


    speakOut();
   }

  } else {
   Log.e("TTS", "Initilization Failed");
  }

 }

 private void speakOut() {

  String text = txtText.getText().toString();

  tts.speak(text, TextToSpeech.QUEUE_FLUSH, null);
 }
}
And for XML layout, take a Edit button to enter the Required TExt and press the button to listen the Voice of Text. You can change the Language at :
int result = tts.setLanguage(Locale.ENGLISH);
In the place of ENGLISH you can enter other languages:

XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" 
    android:background="#ffffff">
    
 <TextView android:layout_width="fill_parent"
       android:layout_height="wrap_content"
       android:text="Text To Speech"
       android:padding="15dip"
       android:textColor="#0587d9"
       android:textSize="26dip"
       android:gravity="center"
       android:textStyle="bold"/>
 
    <EditText android:id="@+id/txtText"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:hint="Enter some text to speak"
        android:layout_marginTop="20dip"        
        android:layout_margin="10dip"/>
    
    <Button android:id="@+id/btnSpeak" 
         android:layout_width="fill_parent"
         android:layout_height="wrap_content"
         android:text="Speak Out" 
         android:layout_margin="10dip"/>

</LinearLayout>

Socializer Widget By Blogger Yard
SOCIALIZE IT →
FOLLOW US →
SHARE IT →

0 comments:

Post a Comment