`

Android中文语音合成(TTS)各家引擎对比

 
阅读更多

http://blog.csdn.net/yao_guet/article/details/7231489

 

Android中文语音合成(TTS)各家引擎对比

Yao.GUET 2012-02-03,转载请注明出处:http://blog.csdn.net/Yao_GUET

Android系统从1.6版本开始就支持TTS(Text-To-Speech),也就是我们所说的语音合成,不过遗憾的是系统默认的TTS引擎:Pico TTS,并不支持中文。

由此对于广大的炎黄子孙不得不安装我们自己的TTS引擎跟语言包,由此而拉开本文的篇章。

 

随着IPhone4S Siri的推出,让语音识别与语音合成TTS火了一把,同时也给国内的两家公司:科大讯飞和捷声华通,带来了很大的关注。这两家都是做中文语音识别与语音 合成的。在这里只是讨论一下中文语音合成,至于中文语音识别,应该这两家也是提供了网络识别的类库的,就不在本篇讨论的范围了。

中文语音合成(TTS),可以分为两大类吧,一类是跟系统接口吻合的,一类是不与系统接口吻合的。

如果是跟系统接口吻合的都是把TTS引擎跟语言包数据分开。像系统默认的Pico TTS, SVOX, 科大讯飞等就是这样。它的好处应该是可以通过系统提供的接口去使用TTS功能,也便于做多国语言的拓展。但是这样的话,估计也会存在一些不便,例如,设置 语音朗读的角色跟设置语速的快慢就得通过系统的接口去设置。

另外一类就是不跟系统吻合的,这种大部分都是会把引擎和语言包打包成一个apk包,然后安装完之后,通过指定的接口去调用其所提供的中文语音合成功能。

除了这两类方法之外,还有一些是直接把TTS功能做成共享库so文件,然后通过NDK去调用TTS的功能。这一种就比较好,因为不需要额外的再安装 TTS引擎跟语言包,并且可以直接在应用里面设置朗读人是男声还是女声,语速等。像旧版本的科大讯飞就是以这种形式出现的,比较有代表的应用是“听书”或 者“vBook”,大家可以找到这两个应该学习一下,因为NDK的接口不是很复杂,但是有可能会时不时蹦出“科大讯飞XXXX”的广告来,啊哈~~

这两类TTS引擎,各有所长吧,大家可以根据自己的需要去使用相应的TTS,不过各家TTS质量可是有很大的差别的哦~~~

下面来讨论一下菜单上有名的中文语音合成TTS,以及各自的差异。

 

先说第一类,跟系统接口吻合的。

一,讯飞语音TTS1.0

这个原来讯飞是没有这个与系统接口吻合的TTS的,原来是以动态库的形式的,最近才以这种apk的形式华丽登场,合成的效果清晰流畅,不生硬,英文也读得挺好的,听起来很舒服,,,

谁有需要可以去酷安网下载试用一下,记得下载语言包哦~. http://www.coolapk.com/apk-4526-com.iflytek.tts/

 

二,SVOX

开始没有讯飞的时候,用了一下SVOX,这个也做得很强大,N多的语言支持,中文不仅支持普通话,还支持广东话!不过有一些感觉吐字不是很清晰,听感不是很好,不过还好,因为大部分是可以听得懂的,下载地址:http://www.coolapk.com/apk-4192-com.svox.classic.langpack.cmn_chn_fem/

 

三,三星TTS

三星TTS,支持韩文,中文跟英文,每一字吐字还比较清晰,但是连起来的时候,不是很顺畅,大家可以自己感受一下。

安装apk,然后把SMT文件夹整个拷贝到SD卡的根目录

下载地址是:http://115.com/file/e7z2iliv

 

 

第二类是以独立的apk形式存在的主要在下面的两种

一,捷通华声

捷通华声也是中文语音做得比较好的,跟科大讯飞有得一拼。它的调用方法是使用java的反射机制来使用已经安装的TTS类。需要学习一下“捷通华声听书 ”才能大概知道怎么使用该TTS,不过也还好,因为通常学习过来不会太长,,,

里面可爱宝宝的声音比较好玩,但是好像用宝宝声音读英语会出问题

捷通华声TTS语音包下载地址:http://www.yingyong.so/app/3/1917.htm

捷通华声听书下载地址:http://www.yingyong.so/app/3/1916.htm (要使用捷通华声TTS,这个是必要的学习工具哦~~)

 

二,手说TTS

手说也是独立安装的一个TTS引擎,目前好像只支持中文语言。它接口公开,语音质量还行,呵呵,它的使用方法在例程里面有很详细的介绍,大家有兴趣可以看一下,

手说的主页:http://shoushuo.com/index.html

 

 

对于第一种作为切合系统接口的TTS中文引擎,安装之后,需要安装语言包,然后还得简单的设置一下才可以使用,方法如下:

设置-》语音输入与输出-》文字转语音设置,把对应的TTS引擎后面的勾,勾上,再在“默认引擎”里面设置你所需要的TTS,然后就可以聆听示例了。

而对于第二种,一般都会带有一个activity可以聆听示例的。

 

如果已经设置好系统默认的TTS引擎跟语言,调用系统TTS接口极其简单,就下面几句话:

初始化TTS引擎

TextToSpeech mTTS = new TextToSpeech(this, initListener);

文字到语音

mTTS.speak("中文TTS", TextToSpeech.QUEUE_FLUSH, null);

回收

mTTS.shutdown();

当然要写好还得考虑没有安装TTS引擎或语言包的情况,上面只是一个小小的示例。。。

 

最后,个人感觉科大讯飞的中文TTS,跟捷通华声的音色都比较自然,应该是目前所有的中文TTS里面最好的了,大家可以看着使用吧,,,

分享到:
评论

相关推荐

    android TTS语音引擎包

    这个“android TTS语音引擎包”集合了多种知名的TTS引擎,包括度秘3.0、谷歌语音合成、科大讯飞3.0和5.0版本,这些引擎为用户提供离线的语音服务,无需网络连接即可工作。 1. **度秘TTS**:度秘是百度公司开发的一...

    android利用科大讯飞语音库实现语音合成TTS

    在Android平台上,开发语音合成(Text-to-Speech, TTS)功能可以极大地提升用户体验,特别是在教育、导航、娱乐等应用场景中。科大讯飞作为中国领先的语音技术提供商,提供了适用于Android的语音合成SDK,使得开发者...

    Android端TTS语音引擎

    通过TTS可实现离线文字转语音,四款语音引擎总有一种适合你的,赶快下载吧!已经在项目中真正也用到了,很好用,毕竟系统TTS不一定支持中文,而这四款均支持中文

    基于百度TtsSDK开发的Tts引擎,可以直接调用Android系统tts接口来进行语音合成

    基于百度TtsSDK开发的Tts引擎,可以直接调用Android系统tts接口来进行语音合成。 主要包括三块: - com.ishare.bdtts包:利用百度Tts SDK来进行tts合成。 - com.ishare.speech包:利用Android系统tts接口来进行tts...

    科大讯飞语音引擎TTS.apk,有32位,和64位版本 支持最新的Android

    科大讯飞作为中国领先的智能语音技术提供商,其在Android平台上的TTS(Text-to-Speech)引擎是一款高效且功能强大的语音合成工具。TTS,即文本转语音,是一种能够将书面文字转换成可听语音的技术,对于无障碍交互、...

    tts.apk 安卓 tts语音引擎

    tts引擎,可安装在安卓6.0系统上,下载中文语音包后,可使用QGC语音播报功能

    百度tts语音合成demo Android APP.zip

    **百度TTS语音合成在Android App中的应用** 在移动应用开发中,语音合成技术能够为用户提供更为便捷和人性化的交互体验。"百度TTS(Text-to-Speech)语音合成demo Android APP"是一个基于百度云语音服务的示例项目...

    android实现语音朗读 支持中文朗读 TTS 讯飞语音库

    首选引擎选择“讯飞语音合成”,这里还能设置男生或女生发音">android下实现对文本的语音朗读,TTS技术,支持中文朗读。Android SDK 4.04下测试通过。 附件包含测试源代码及语音库文件 这是语音合成测试工程,如果...

    android studio tts 离线中文语音播放

    总结,本文详细介绍了在Android Studio中使用离线TTS引擎进行中文语音播放的过程,包括集成第三方引擎、初始化TTS实例、设置音量和变声效果,以及播放和停止语音的操作。通过这样的实现,开发者能够为用户创建更加...

    科大讯飞语音引擎TTS

    科大讯飞语音引擎TTS Android科大讯飞语音引擎TTS Android科大讯飞语音引擎TTS Android科大讯飞语音引擎TTS Android科大讯飞语音引擎TTS Android科大讯飞语音引擎TTS Android

    swift-百度语音合成TTS离线二次封装

    要在项目中使用封装后的百度TTS,开发者需要初始化引擎,设置合成参数,然后调用合成接口将文本转换为语音。同时,项目可能提供了错误处理和状态回调,以便于开发者监控和调试。 6. **注意事项**: 在实际应用中...

    Android 科大讯飞语音引擎

    综上所述,Android 科大讯飞语音引擎以其先进的语音识别和合成技术,为开发者和用户提供了高效、便捷的语音交互解决方案。无论是在日常生活还是工作中,都能看到其广泛且深远的影响。对于想要提升应用互动体验的...

    android_tts_离线语音demo包文字转语音

    android_tts_离线语音demo包文字转语音。 不依赖于手机的tts,及时手机没有安装tts,也可以运行。 成功的将文字转成语音,可以切换声音,调整语速。 尚存一个小问题,英文单词不认识了,读成了一个个字母。欢迎高人...

    百度tts语音合成demo Android APP

    【百度TTS语音合成Demo Android APP】是一款基于百度云语音服务的Android应用程序,开发者通过集成百度的Text-to-Speech(TTS)技术,实现在移动设备上将文本转化为自然流畅的语音输出。这款APP的独特之处在于,它并...

    android中文语音tts

    三星的中文语音引擎是Android TTS的一种实现,它提供了高质量的中文发音服务。这种引擎通常包含多种发音风格,可以根据用户需求调整语速、音调和音量,以达到更人性化的交互体验。在Android应用开发中,可以利用...

    TTS语音合成 生成文件 C# 基于微软TTS5.1 中文女声

    在本项目中,我们关注的是微软的TTS5.1语音引擎,特别是用于生成中文女声的版本。 微软的TTS引擎是一个强大的工具,它提供了多种语言和发音选项,包括中文。TTS5.1是这个系列的一个特定版本,可能包含了优化的音质...

    Android-tts.rar_android_android TTS_tts_tts Android_语音 tts

    Android TTS(Text-to-Speech)系统是Android操作系统中的一个重要组成部分,它允许应用程序将文本转换为可听见的语音输出,从而实现文字的语音合成。在Android应用开发中,TTS功能广泛应用于各种场景,如阅读电子书...

    JAVA语音合成TTS

    Java语音合成技术,通常被称为Text-to-Speech (TTS),是一种将文本数据转换为可听见的语音输出的技术。在Java平台上,开发人员可以利用各种库和API来实现TTS功能,其中科大讯飞的TTS引擎是一个广泛使用的解决方案。...

    百度语音合成TTS实例源代码

    百度TTS语音合成源代码,就是个C#例子,很简单,输入要输出文字,给你生成一个mp3格式的文件,你想咋播放都行。但也有毛病,就是百度号称免费,其实还是需要你注册一个账号,这个例子的中,都是我的账号,不是动态...

    谷歌TTS离线语音包.zip

    在本例中,由于是“谷歌TTS中文语音数据包”,我们可以推断这个包提供了中文的发音支持,可能包括普通话以及其他方言。 为了在Android设备上使用这个离线语音包,用户或开发者需要先解压zip文件,然后按照特定的...

Global site tag (gtag.js) - Google Analytics