一、目前安卓平台的文字转语音有两种方案
1、百度、讯飞等sdk
优点:声音丰富,不需其他插件
缺点:收费,导入调用麻烦,增加apk体积
2、TextToSpeech
优点:免费,调用方便,几行代码即可,无需导sdk
缺点:声音单一,需要安装引擎
二、TextToSpeech的简单使用
lateinit var textToSpeech: TextToSpeechfun initTTS(){textToSpeech = TextToSpeech(mContext) {when (it) {TextToSpeech.SUCCESS -> {}//成功TextToSpeech.ERROR -> {}//失败}}//引擎列表val engineList = textToSpeech.engines//当前默认引擎val engine = textToSpeech.defaultEngine//语言textToSpeech.language = Locale.CHINESE//语调 越大越高textToSpeech.setPitch(0.9f)//语速 越大越快textToSpeech.setSpeechRate(1f)}fun speak(text:String){val result = textToSpeech.speak(text, TextToSpeech.QUEUE_FLUSH, null, null)}
语音引擎可以在系统设置-语言与输入法-语音技术/TTS,或无障碍中查看,没有的话安装一个就可以,不同的引擎的语速、语调、音色都不一样。
引擎下载参考:
GitHub - IT-Talon/TtsTest: 文字转语音输出,以及一些常用引擎安装包
Android文字转语音引擎(TTS)简单比较及下载_yingchengyou的博客-CSDN博客_tts语音引擎
如果觉得《Android使用TextToSpeech(TTS)实现文字转语音合成播放》对你有帮助,请点赞、收藏,并留下你的观点哦!