[color=]开发初衷:
最近使用阅读APP朗读小说,对于TTS的选择,试了很多,最终感觉微软系列的晓晓、云健等几个还不错,然后就开始考虑怎么在阅读中使用。阅读的朗读支持两种:直接使用TTS服务、通过API访问。我想使用的微软晓晓是通过API访问的,那怎么接入阅读呢?实际上已经有成品方案了,有一个很好的APP:MultiTTS,通过导入语音包,即可以将各种tts转为本地TTS服务,也可以支持转发服务供阅读通过API访问,可以说是非常好用了。 但是个人有一些软件洁癖,multiTTS大小一百多MB,而且不是开源项目,只是通过网络、论坛传播成品包,在测试手机上使用还行,实在不想直接安装在主用的手机上。又在网络上找了找,实在没找到更好的接入方案。考虑到有现成的微软的api实现一个tts或转发api也不复杂,就萌生了自己做一个的想法,暂时不需要复杂的功能,满足自己使用就行,需要哪些功能自己可以方便的添加进去,还能熟悉一个Android应用的开发。于是就有了这个APP。然后就是做都做了,不如就分享出来,也供有类似需求的网友多一个选择。
使用方法:
1,下载随APP一起的配置文件,修改其中的subscriptionKey和region为自己的key和region。(微软有免费额度,基本够用了,第一年应该还是免费,自己注册一下就能得到key和region,用官网提供的稳定放心)
[color=]进入Azure语音界面,点击右上角"+"导入语音配置。
2,导入后,选择一个,作为要使用的语音,同时在软件设置中打开本地服务器。最好系统对应用的电池优化,防止应用被后台回收关闭。
3,在阅读中朗读引擎中添加引擎,名称随便填,url填写:http://127.0.0.1:20202/tts,{"method":"P0ST"
[color=],"body":"text={{speakText)}&speed=
[color=]{(speakSpeed})"} , 如果在设置中修改了端口后,url中的端口号也要修改。默认端口号:20202,为什么是20202?没有为什么,填写默认值的时候随便写的。 (只支持通过url的方式使用,因为如果通过TTS服务使用的话,因为TTS没有缓存,在段落之间很容易出现大的延迟,而通过API的方式,阅读会提前缓存整章的朗读内容,避免了网络延迟问题)
[color=]4,然后在阅读都使用该引擎就可以了。
百度网盘:
https://pan.baidu.com/s/1XSjVhRSj4z5BDFx_RQz22A
[color=]提取码: kxg8
还是补充一下:如果已经在用multiTTS了,完全没必要试用这个,因为这个是按我个人需求开发的,相比multi TTS功能少又不易用,完全没有可比性。