在 移动端 接入语音合成方面,讯飞和腾讯云等都是优秀的选择,但各有其特点和优势。咱们的需求是需要支持普通话/英语/法语三种语言,以下是对各个平台的详细比较:
一、讯飞语音合成介绍
与语音听写相反,语音合成是将一段文字转换为语音,可根据需要合成出不同音色、语速和语调的声音,让机器像人一样开口说话。支持37个语种,11种方言,2种民族语言;支持中英混合自然合成。
注:
语言为中英文的发音人可以支持中英文的混合朗读。
英文发音人只能朗读英文,中文无法朗读。
汉语发音人只能朗读中文,遇到英文会以单个字母的方式进行朗读。
太奢侈,领导说不是问题。那就作为备选方案。
二、腾讯云语音合成介绍
语音合成是将文本转化成拟人化语音的一种服务。语音合成提供多场景、多语言的音色选择,支持SSML标记语言,自定义音量、语速等参数,让发音更专业、更符合场景需求。语音合成广泛适用于智能客服、有声阅读、新闻播报、人机交互等业务场景,提升人机交互体验,提高语音类应用构建效率。
产品功能
-
声音效果:腾讯云语音合成目前支持男女共53种声音效果,可以满足小说、客服、导航、通知等多种应用场景。
-
合成方式:支持长文本语音合成、实时语音合成、基础语音合成三种合成方式。长文本语音合成与基础语音合成为非流式,整个文本合成语音后再下发,长文本语音合成可以一次性合成较长文本,适合阅读播报、新闻媒体等场景。流式语音合成(实时语音合成)为一边合成声音,一边下发声音,适合语音机器人等实时性要求较高的场景。
-
语种:语音合成支持纯中文、纯英文、中英文混合、粤语内容的合成。
-
参数配置:语音合成支持音量、语速、采样率的设置。语速从0.6倍到1.5倍可选,适配各种客户场景。采样率可选8K和16K,同时支持App和电话线路。
哎呀,腾讯爸爸这次不给力呀,不敢置信居然没有法语。为此我特意去了做了售前咨询,还是不支持(此消息为2024年10月17日 周四 15.24,后面如果有迭代别说我描述的有问题哈)。
硬性需求满足不了只能放弃了,如果满足你们的要求你们可以试试哈。
腾讯云:语音合成 常见问题-文档中心-腾讯云
三、百度智能云
基于业内领先的深度学习技术,提供高度拟人、流畅自然的语音合成服务,支持在线、离线多种调用方式,满足泛阅读、订单播报、智能硬件等场景的语音播报需求。
支持中文、英文、中英文混读合成,提供基础音库和精品音库共28种音库供您选择,让您的产品拥有个性化的声音。但就是没有我想要的法语,好忧伤。
四、原生 TextToSpeech API
Android平台提供的TextToSpeech API支持多种语言的语音合成,包括法语,可以用于开发语音合成应用。
TextToSpeech实例只有在完成初始化后才能用于合成文本。要实现TextToSpeech.OnInitListener以在初始化完成时接收通知。使用完TextToSpeech实例后,请调用shutdown()方法来释放TextToSpeech引擎使用的本地资源。针对Android 11的应用程序,如果需要使用文本转语音功能,则应在其清单文件的<queries>元素中声明TextToSpeech.Engine.INTENT_ACTION_TTS_SERVICE。
<queries>
<intent>
<action android:name="android.intent.action.TTS_SERVICE" />
</intent>
</queries>
TextToSpeech textToSpeech = new TextToSpeech(this, new TextToSpeech.OnInitListener() {
@Override
public void onInit(int status) {
Log.d(TAG, "初始化:" + status);
if (status==0){
//设置语言
int result = textToSpeech.setLanguage(Locale.CHINESE);
if (result == TextToSpeech.LANG_MISSING_DATA
|| result == TextToSpeech.LANG_NOT_SUPPORTED) {
Log.d(TAG, "数据丢失或不支持:" + status);
return;
}
// 设置音调,值越大声音越尖(女生),值越小则变成男声,1.0是常规
textToSpeech.setPitch(0.2f);
// 设定语速,默认1.0正常语速
textToSpeech.setSpeechRate(0.5f);
}
textToSpeech.speak("设置音调,值越大声音越尖",TextToSpeech.QUEUE_FLUSH,null);
}
});
设置语言:textToSpeech.setLanguage(Locale.CHINESE);
4.1 测试设备:红米 K4
设置成Locale.CHINESE(中文)和Locale.ENGLISH(英语)都支持,并且能播放。
设置成Locale.GERMANY(德语)和Locale.FRANCE(法语)都不支持,报错-2:Denotes the language is not supported(表示该语言不受支持)。
4.2 测试设备:Galaxy A8s
第一次测试的时候也是报错:-2,后来在三星文字转语音设置中=>下载及对应的语言和语音即可。
添加完法语后,第二次测试成功播放法语文字。
原生 TextToSpeech API 这个方案是可行的,但是法语局限性太强,可能存在部分限制(系统语音引擎必须支持这个语言,用户必须下载到语言支持库,红米不支持下载语言库,三星支持),在编写代码的时候需要考虑很多。
五、阿里云语音合成介绍
前两篇语音识别和语音合成忘了我阿里爸爸了,公司产品多偏向腾讯云和讯飞,一时没想起来,罪过罪过。
阿里云智能语音交互SDK提供RESTful API、移动端、服务端、微信小程序以及WebSocket等多种接入方式,可帮助您更方便、快捷、灵活地将语音识别或语音合成功能集成到您的服务当中。
抱着一丝希望,咱点击语音合成=>检索 法语=>美滋滋。
计费说明
瞬间美了,感觉问题解决了。前期量比较小,如果直接投入2个W,那简直跟割肉一样。看到这个价格瞬间就稳了,关键时候还得看大阿里。
阿里云语音合成接口说明_智能语音交互(ISI)-阿里云帮助中心
五、建议选择
如果仅支持普通话/英语,那讯飞、腾讯云、阿里云都可以。可以根据自己的项目决定。作者这里法语事刚需,前期投入小,因此选择较为合适的阿里云。后期确定选择阿里云,那么大概率会将腾讯云实时语音识别改为阿里云实时语音识别:一方面是便于维护,另一方面则是缩小软件包体大小。
相关推荐
讯飞与腾讯云:Android 实时语音识别服务对比选择-CSDN博客文章浏览阅读1.6k次,点赞70次,收藏68次。讯飞与腾讯云在Android语音识别领域均表现出色,各具特色。讯飞提供全面的语音识别功能,支持多种语言和离线识别,拥有高知名度和市场占有率,适合高度定制化需求。腾讯云则基于深度学习技术,提供高准确性的语音识别,支持多种语种和方言,且作为领先的云服务提供商,拥有丰富的语音识别和语音合成产品,适合快速接入并希望利用其他云服务的开发者。两者均提供详细的开发文档和API接口,但开发者在选择时应根据自身需求、成本因素和用户评价进行综合考虑,以确保选择最具性价比的方案。https://shuaici.blog.csdn.net/article/details/142970169讯飞与腾讯云:Android 语音识别服务对比选择-CSDN博客文章浏览阅读2k次,点赞88次,收藏85次。讯飞与腾讯云在Android语音识别领域均表现出色,各具特色。讯飞提供全面的语音识别功能,支持多种语言和离线识别,拥有高知名度和市场占有率,适合高度定制化需求。腾讯云则基于深度学习技术,提供高准确性的语音识别,支持多种语种和方言,且作为领先的云服务提供商,拥有丰富的语音识别和语音合成产品,适合快速接入并希望利用其他云服务的开发者。两者均提供详细的开发文档和API接口,但开发者在选择时应根据自身需求、成本因素和用户评价进行综合考虑,以确保选择最具性价比的方案。https://shuaici.blog.csdn.net/article/details/142849015