项目开发需要用到文字转语音的功能,利用 Android 系统自带的Text-to-Speech可以实现英文转语音,但是对于中文就无能为力了。对于中文转语音需要特定引擎的支持,谷歌自带的Pico TTS是不支持的,我的小米手机是度秘语音引擎支持中文,显然我们没法去控制用户用什么手机,所以抛弃原生的TTS,考虑接入讯飞语音SDK。
注册开发者账号
进入讯飞开放平台注册账号。
创建应用
登录账号,进入控制台,选择创建新应用。

下载SDK
点击SDK下载。选择下载服务、平台、应用,然后点击下载。
我这里只选择了在线语音合成,免费的。
然后得到SDK:
集成SDK
首先将对应手机CPU平台的 so 文件导入到工程中,jar 包导入到 libs 中。
在 Application 中初始化讯飞语音:
1 | SpeechUtility.createUtility(this, SpeechConstant.APPID +"=xxxxxxxx"); |
在调用的地方初始化语音对象:
1 | private SpeechSynthesizer mTts; |
然后调用API:
1 | int code = mTts.startSpeaking("Hello 中国"); |
过程比较简单,稍微记录一下,更多详情可以参阅官方文档。