Androidは、テキストを音声に変換(TTS)し、異なる言語でテキストを再生する便利な機能を提供します。 このガイドでは、この機能の作成方法について説明します。 このレッスンでは、言語の種類、音量、速度レベルを変更する方法も説明します。
ソースコード以下に、最終結果のビデオを示しました。
1つの入力フィールドと、入力フィールドからテキストを受け取り、指定されたテキストを再生するイベントをトリガーするボタンを備えたシンプルなインターフェイスを開発しました。

1. [ファイル]⇒[新しいAndroidプロジェクト]を選択して新しいプロジェクトを作成し、必要なデータを入力します。
2. TextToSpeech.OnInitListenerからのメインアクティビティクラスの実装
public class AndroidTextToSpeechActivity extends Activity implements TextToSpeech.OnInitListener {
3.次に、メインクラスに次のコードを追加します。
package com.androidhive.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 { 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);
4.そして、プロジェクトを実行します。
言語を変更する
SetLanguage()関数を使用して言語を変更できます。 現在、多くの言語がサポートされています。
tts.setLanguage(Locale.CHINESE);
音量変更
setPitch()関数を使用して、音量レベルを変更できます。 デフォルト値は1.0です。
tts.setPitch(0.6);
速度変更
再生頻度は、
setSpeechRate()関数を使用して設定できます。 デフォルト値は1.0です。
tts.setSpeechRate(2);