在上一篇中,我们介绍了使用MediaPlayer配合TextToSpeech实现英文的暂停与播放,实际使用中,中文的场景还是远远大于英文场景的,所以今天我们使用另一套方案实现中文TTS播报的暂停与恢复。这部分内容,目前在网络上是找不到的,里面的一些参数我暂时也不会给出来,如果有需要,可以评论私聊沟通一下。github地址
方案主要包括TextToSpeech,科大讯飞语音+即可,主要实现步骤:
- 安装科大讯飞语音+ APP,并进行设置,可以参考Android原生TTS的基本使用以及配合中文语音包实现中文TTS
- 对TextToSpeech进行封装处理
(1)初始化
(2)设置参数
(3)根据语速参数获取charStep值
(4)重写播报,暂停与恢复等接口功能
下面就来看一下封装的TTS管理类,最后给几点说明:
package aoto.com.ttstest;
import android.content.Context;
import android.speech.tts.TextToSpeech;
import android.speech.tts.UtteranceProgressListener;
import android.util.Log