Пауза в ттс андроид

Я разрабатываю приложение, которое считывает текст в документе, и я хочу добавить функцию приостановки и возобновления, но я не могу найти какой-либо метод pause () в TTS. Есть ли способ, которым я могу сделать паузу?

Ответы на вопрос(2)

класс TextToSpeech имеет возможность добавитьsetOnUtteranceCompletedListener (или для уровня API 15+setOnUtteranceProgressListener), который позволит вам присоединить слушателя к тому моменту, когда произнесение произнесения TTS, а затем вы можете начать свое второе высказывание или свою паузу, или все, что вам нужно ..

Решение Вопроса

Есть способ сделать паузу. Просто позвониTextToSpeech.playSilence() см код ниже отВот.

Это говорит некоторый фактический текст наряду с некоторой тишиной.

private void playScript()
{
    Log.d(TAG, "started script");
// setup

// id to send back when saying the last phrase
// so the app can re-enable the "speak" button
HashMap<String, String> lastSpokenWord = new HashMap<String, String>();
lastSpokenWord.put(TextToSpeech.Engine.KEY_PARAM_UTTERANCE_ID,
        LAST_SPOKEN);

// add earcon
final String EARCON_NAME = "[tone]";
tts.addEarcon(EARCON_NAME, "root.gast.playground", R.raw.tone);

// add prerecorded speech
final String CLOSING = "[Thank you]";
tts.addSpeech(CLOSING, "root.gast.playground",
        R.raw.enjoytestapplication);

// pass in null to most of these because we do not want a callback to
// onDone
tts.playEarcon(EARCON_NAME, TextToSpeech.QUEUE_ADD, null);
tts.playSilence(1000, TextToSpeech.QUEUE_ADD, null);
tts.speak("Attention readers: Use the try button to experiment with"
        + " Text to Speech. Use the diagnostics button to see "
        + "detailed Text to Speech engine information.",
        TextToSpeech.QUEUE_ADD, null);
tts.playSilence(500, TextToSpeech.QUEUE_ADD, null);
tts.speak(CLOSING, TextToSpeech.QUEUE_ADD, lastSpokenWord);

}

Ваш ответ на вопрос