Android, текст в речь - PullRequest
       16

Android, текст в речь

2 голосов
/ 02 декабря 2010

Я играю с текстом в речь, чтобы сделать мой testapp немного веселее.Он работает в эмуляторе, но не на моем телефоне, так как моя локаль по умолчанию не английская.

Тем не менее, тексты английские, поэтому tts, конечно, должен использовать английский.Насколько я знаю, я могу реализовать автоматическую установку, что-то вроде

    public void onInit(int status) {

    if (status == TextToSpeech.SUCCESS) {
        // Set preferred language to US english.

        int result = mtts.setLanguage(Locale.US);

        if (result == TextToSpeech.LANG_MISSING_DATA ||
            result == TextToSpeech.LANG_NOT_SUPPORTED) {
           // Lanuage data is missing or the language is not supported.
            Log.e(TAG, "Language is not available.");
        } else {

            // The TTS engine has been successfully initialized.
            speak();
        }
    } else {
        // missing data, install it
        Intent installIntent = new Intent();
        installIntent.setAction(
            TextToSpeech.Engine.ACTION_INSTALL_TTS_DATA);
        startActivity(installIntent);
    }
}

Но я хочу?Занимает ли установка локали много места?Это испортило что-то еще?

regards

Ответы [ 3 ]

2 голосов
/ 18 ноября 2011

Вы должны выполнить это:

   // missing data, install it
    Intent installIntent = new Intent();
    installIntent.setAction(
        TextToSpeech.Engine.ACTION_INSTALL_TTS_DATA);
    startActivity(installIntent);

, когда получите LANG_MISSING_DATA

0 голосов
/ 25 июня 2015

Android позволяет конвертировать ваш текст в голос.Вы можете не только конвертировать его, но и говорить на разных языках.Android предоставляет класс TextToSpeech для этой цели.Для более подробной информации, пожалуйста, следуйте этому руководству: -

http://a -droidtech.blogspot.in / 2015/06 / android-text-to-speech-tutorial-android.html

0 голосов
/ 09 сентября 2013

Я бы попробовал установить только в том случае, если "LANG_MISSING_DATA" не для "LANG_NOT_SUPPORTED". Поскольку он запускает другое действие, и пользователь может выбирать, загружать его или нет, я бы не стал слишком беспокоиться о том, что он займет место. Нет, это ничего не должно испортить.

...