讯飞、阿里云、腾讯云:Android 语音合成服务对比选择

ops/2024/11/20 2:28:16/

          在 移动端 接入语音合成方面,讯飞和腾讯云等都是优秀的选择,但各有其特点和优势。咱们的需求是需要支持普通话/英语/法语三种语言,以下是对各个平台的详细比较:

一、讯飞语音合成介绍

        与语音听写相反,语音合成是将一段文字转换为语音,可根据需要合成出不同音色、语速和语调的声音,让机器像人一样开口说话。支持37个语种,11种方言,2种民族语言;支持中英混合自然合成。

      注:

        语言为中英文的发音人可以支持中英文的混合朗读。
        英文发音人只能朗读英文,中文无法朗读。
        汉语发音人只能朗读中文,遇到英文会以单个字母的方式进行朗读。 

        太奢侈,领导说不是问题。那就作为备选方案

二、腾讯云语音合成介绍

        语音合成是将文本转化成拟人化语音的一种服务。语音合成提供多场景、多语言的音色选择,支持SSML标记语言,自定义音量、语速等参数,让发音更专业、更符合场景需求。语音合成广泛适用于智能客服、有声阅读、新闻播报、人机交互等业务场景,提升人机交互体验,提高语音类应用构建效率。

产品功能

  1. 声音效果:腾讯云语音合成目前支持男女共53种声音效果,可以满足小说、客服、导航、通知等多种应用场景。

  2. 合成方式:支持长文本语音合成、实时语音合成、基础语音合成三种合成方式。长文本语音合成与基础语音合成为非流式,整个文本合成语音后再下发,长文本语音合成可以一次性合成较长文本,适合阅读播报、新闻媒体等场景。流式语音合成(实时语音合成)为一边合成声音,一边下发声音,适合语音机器人等实时性要求较高的场景。

  3. 语种:语音合成支持纯中文、纯英文、中英文混合、粤语内容的合成

  4. 参数配置:语音合成支持音量、语速、采样率的设置。语速从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() {@Overridepublic 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

 


http://www.ppmy.cn/ops/135129.html

相关文章

【机器学习】回归模型(线性回归+逻辑回归)原理详解

线性回归 Linear Regression 1 概述 线性回归类似高中的线性规划题目。线性回归要做的是就是找到一个数学公式能相对较完美地把所有自变量组合&#xff08;加减乘除&#xff09;起来&#xff0c;得到的结果和目标接近。 线性回归分为一元线性回归和多元线性回归。 2 一元线…

htm + vue + quill 富文本编辑器案例

文章目录 前言一、Quill是什么&#xff1f;二、使用步骤1.快速开始2.主题 前言 Quill 编辑器与element-ui 配合使用&#xff0c;主要用于文章编辑 一、Quill是什么&#xff1f; Quill是一个跨平台的功能强大的富文本编辑器 二、使用步骤 1.快速开始 技术栈&#xff1a;vue…

【eNSP】路由基础与路由来源——静态路由实验

路由是数据包从源地址到目的地址的传输路径&#xff0c;静态路由是指网络管理员手动配置的路由条目&#xff0c;用于指定数据包从源地址到目的地址的固定路径。以下是关于静态路由的详细介绍。 一、路由的基础知识点 路由的定义&#xff1a; 路由是指在计算机网络中&#xff…

CnosDB 实时流式计算:优化时序数据处理与降采样解决方案

在处理时序数据时&#xff0c;数据写入周期通常与数据采集设备的频率相关&#xff0c;有时每秒钟就需要处理大量的数据点。长时间处理如此多的数据会导致存储问题。一个有效的解决方案是使用流式计算&#xff0c;将原始数据进行降采样。 流式计算在时序数据库中指对实时数据流…

JavaWeb之Vue

前言 这一节讲Vue 1. Vue概述 这些都是DOM的操作 原来模型和视图不能实现同步变化&#xff0c;但是Vue就可以了 2. 快速入门 1. 2. <script src"js/vue.js"></script><div id"app"> <!-- 准备一个input输入框,绑定一个模…

基本数据类型:Kotlin、Dart (Flutter)、Java 和 C++ 的比较

文章目录 一、基本数据类型的比较1.1 整数类型1.2 浮点类型1.3 字符类型1.4 布尔类型1.5 小结 二、有符号和无符号整数三、二进制补码表示四、精度丢失问题五、结论 在编程语言中&#xff0c;基本数据类型是构建更复杂数据结构的基础。在本文中&#xff0c;我们将比较 Kotlin、…

FFmpeg 4.3 音视频-多路H265监控录放C++开发十三.3:将AVFrame转换成AVPacket.封装。代码改动

请封装&#xff0c;保留ffmpeg结构体 现成安全处理 获取编码缓冲区数据 xencoder.h #pragma once#include <mutex> #include <vector>struct AVCodecContext; struct AVFrame; struct AVPacket; class XEncoder {public:AVCodecContext * Create(int code_id);/…

常见的网络协议汇总(涵盖了不同的网络层次)

网络层协议 IP协议&#xff1a;IP指网际互连协议&#xff08;Internet Protocol&#xff09;&#xff0c;是TCP/IP体系中的网络层协议。IP协议包括IPv4和IPv6&#xff0c;用于为数据包提供源地址和目标地址&#xff0c;从而实现网络通信。ICMP协议&#xff1a;ICMP&#xff08…