Tutorial Android Membuat Aplikasi Speech To Text



Speech To Text adalah fitur untuk mengkonversi suara ke dalam kata tertulis. Dalam tutorial ini saya akan menunjukkan konversi dari perintah suara ke dalam teks menggunakan google layanan pengenalan suara pada perangkat yang terdaftar untuk menerima RecognizerIntent. RecognizerIntent adalah kotak dialog pemicu untuk mengenali masukan ucapan dan streaming audio ke server Google, kemudian mengubahnya ke teks.


ok, sekarang kita akan memulai membuat aplikasi android 'Speech To Text' menggunakan Android Studio. ikuti langkah langkahnya dibawah:


Membuat Project Android:

1. Pada Android Studio, buatlah project baru.
 Jika Anda tidak memiliki sebuah project, di layar Welcome klik New Project.
 Jika Anda telah membuka project, dari menu File, pilih New Project.

    2. Pada Configure your new project, isi kolom berikut seperti di bawah ini.
     Application name ⇒ SpeechToText
     Company domain ⇒ example.com (Misalnya: com.megadistudio.SpeechToText)
    ⇒ Project Location ⇒ memilih lokasi untuk proyek Anda.

      3. Pada Select the form factors your app will run oncentang untuk Phone and Tablet.

      4. Untuk Minimum SDK, pilih API 10: Android 2.3.3 (Gingerbread). klik Next.

      5. Pada Add an activity to Mobile, pilih Blank Activity dan klik Next.

      6. Klik tombol Finish untuk membuat project.

      7. Pilih View Anda sebagai Project, Buka file layout untuk kegiatan utama (activity_main.xml) terletak di bawah App  res ⇒ layout.

      dan copy kode di bawah ini untuk membuat layout.

      activity_main.xml
      <?xml version="1.0" encoding="utf-8"?>
      <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
          xmlns:tools="http://schemas.android.com/tools"
          android:id="@+id/activity_main"
          android:layout_width="match_parent"
          android:layout_height="match_parent"
          android:paddingBottom="@dimen/activity_vertical_margin"
          android:paddingLeft="@dimen/activity_horizontal_margin"
          android:paddingRight="@dimen/activity_horizontal_margin"
          android:paddingTop="@dimen/activity_vertical_margin"
          android:background="#1D2247"
          tools:context="speechtotext.megadistudio.com.speechtotext.MainActivity">
      
          <TextView
              android:text="@string/TK"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:id="@+id/textview1"
              android:layout_margin="30dp"
              android:textSize="42sp"
              android:layout_centerHorizontal="true"
              android:textColor="#ffffff" />
          <TextView
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:id="@+id/Text"
              android:layout_below="@+id/textview1"
              android:layout_marginTop="20dp"
              android:text="@string/tap_on_mic"
              android:textColor="#ffffff"
              android:textSize="25sp"
              android:layout_centerInParent="true"/>
          <ImageButton
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:src="@drawable/mic"
              android:id="@+id/mic"
              android:layout_below="@+id/Text"
              android:layout_centerInParent="true"
              android:layout_alignParentBottom="true"
              android:background="@null" />
      </RelativeLayout>

      8.  Buka string.xml terletak di app ⇒ res ⇒ value dan copy kode di bawah ini.


      string.xml
      <resources>
      <string name="app_name">Speech To Text</string>
      <string name="TK">Tahu Koding</string>
      <string name="tap_on_mic">Sentuh mic untuk bicara</string>
      </resources>

      9. Sekarang Buka MainActivity.java terletak di app ⇒ src ⇒ Java dan copy kode di bawah ini.


      MainActivity.java
      package texttospeech.megadistudio.com.texttospeech;
      
      import android.speech.tts.TextToSpeech;
      import android.support.v7.app.AppCompatActivity;
      import android.os.Bundle;
      import android.view.View;
      import android.widget.EditText;
      import android.widget.ImageButton;
      import android.widget.SeekBar;
      import java.util.Locale;
      
      public class MainActivity extends AppCompatActivity {
          TextToSpeech tts;
          EditText edittext;
          ImageButton imgbutton;
          SeekBar seekPitch;
          double pitch=1.0;
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_main);
              edittext=(EditText)findViewById(R.id.editText);
              imgbutton=(ImageButton)findViewById(R.id.imgbutton);
              seekPitch = (SeekBar) findViewById(R.id.seekpitch);
              seekPitch.setThumbOffset(5);
              seekPitch.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
                  @Override
                  public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
                      pitch = (float) progress / (seekBar.getMax() / 2);
                  }
                  @Override
                  public void onStartTrackingTouch(SeekBar seekBar) {
                  }
                  @Override
                  public void onStopTrackingTouch(SeekBar seekBar) {
                  }
              });
              tts=new TextToSpeech(getApplicationContext(), new TextToSpeech.OnInitListener() {
                  @Override
                  public void onInit(int status) {
                      if(status != TextToSpeech.ERROR) {
                          tts.setLanguage(Locale.US);
                      }
                  }
              });
              imgbutton.setOnClickListener(new View.OnClickListener() {
                  @Override
                  public void onClick(View v) {
                      String toSpeak = edittext.getText().toString();
                      tts.setPitch((float) pitch);
                      tts.speak(toSpeak, TextToSpeech.QUEUE_FLUSH, null);
                  }
              });
          }
          @Override
          public void onPause(){
              if(tts !=null){
                  tts.stop();
                  tts.shutdown();
              }
              super.onPause();
          }
          @Override
          public void onDestroy() {
              // Don't forget to shutdown tts!
              if (tts != null) {
                  tts.stop();
                  tts.shutdown();
              }
              super.onDestroy();
          }
      }

      Dengan ini kita telah menyelesaikan aplikasi android Speech To Text . Untuk menjalankan aplikasi dari Android Studio , klik Run ikon dari toolbar.


      CATATAN: - Pastikan bahwa Anda terhubung ke internet.

      [full-width]

      Iklan Atas Artikel

      Iklan Tengah Artikel 1

      Iklan Tengah Artikel 2

      Iklan Bawah Artikel