AndroidアプリでText to Speech - TTSを利用しています..以下のコードを貼り付けました..TTSは正常に動作していますが、話す音声/テキストはあまり明確ではありません..それは本当に速く話すので、 Locale.US を設定してみて、setPitch や setSpeechRate を使用しましたが、あまり納得できません。携帯電話(Samsung S2)に問題があると感じたので、Google PlayストアからGoogle翻訳TTSアプリをインストールしてみました.そのアプリでは、音声は本当にクリアでした.
私のアプリは子供が使用するので、音声が本当にクリアであることを確認したいです。私はこの問題を解決するために過去数日間頭を悩ませています..どこが間違っているか、またはどのように改善するかについての指針を教えていただければ幸いです??
@Override
public void onInit(int status) {
if (status == TextToSpeech.SUCCESS) {
int result = tts.setLanguage(Locale.getDefault());
//tts.setSpeechRate((float) 0.8);
//tts.setPitch(1.0f);
if (result == TextToSpeech.LANG_MISSING_DATA
|| result == TextToSpeech.LANG_NOT_SUPPORTED) {
Log.e("TTS", "This Language is not supported");
} else {
speakOut(0);
}
} else {
Intent installIntent = new Intent();
installIntent.setAction(
TextToSpeech.Engine.ACTION_INSTALL_TTS_DATA);
startActivity(installIntent);
}
}
private void speakOut(int position) {
tts.speak("Some text goes here", TextToSpeech.QUEUE_FLUSH, null);
}
注: setPitch と setSpeechRate の両方で値を 0.5f、0.8f などに設定しようとしましたが、それでも GoogleTranslate アプリのようにすべての音声が明確ではありません。