专栏首页AI语音【玩转腾讯云】【腾讯云语音合成】智能语音交互之语音合成篇
原创

【玩转腾讯云】【腾讯云语音合成】智能语音交互之语音合成篇

开篇前言

语音合成(Text To Speech,TTS)满足将文本转化成拟人化语音的需求,打通人机交互闭环。 提供多种音色选择,支持自定义音量、语速,让发音更自然、更专业、更符合场景需求。语音合成广泛应用于语音导航、有声读物、机器人、语音助手、自动新闻播报等场景,提升人机交互体验,提高语音类应用构建效率。

适用场景

1.减少人工录音的时间消耗以及成本,实现语音服务快速上线

原本客户使用人工录音,需要邀请录音人,还需要安排专业的录音棚,录音完成后还需要大量人工剪辑,每一个步骤都需要一定的时间。新的需求出现后都需要几天,甚至是几周的时间,使用腾讯云TTS之后,声音合成的工作可以缩短到小时级别。

2.快速应对动态文本

新闻APP播报及浏览器内容播报等场景,文本变化多样,不可能通过人工朗读的方式来实现语音播放,但应用了腾讯云TTS之后,就使得动态文本的朗读变成了可能。

3.打通人机交互的闭环,实现以假乱真的人机沟通效果

已经在使用合成效果不佳的客户,他们的用户通常因为TTS发声人声音僵硬,朗读不流畅等原因不愿意与机器人继续交流。使用腾讯云TTS之后,他们的用户通常较难分辨发声人是真人还是机器人,使得人机交互的体验更好,用户更愿意与机器人交流 。

前置步骤

对于腾讯云API接口,基本上都依赖腾讯云账号体系,本接口也是其中之一,所以这里的前置步骤都很类似,包括:登录注册、实名认证、开通服务、新建密钥,完成前置步骤之后就可以准备接入。

实现接入

腾讯云语音合成接口分为两个接口,流式音频合成接口非流式音频合成接口,两者都是实时性返回接口,区别在于流式的接口在服务端完成一小段音频之后就开始返回,遵循http chunk协议,直至所有音频全部完成结束。而非流式接口则在请求的文本全部合成完成后服务端一次性返回音频。

这里可以根据自身的场景选择需要的接口,对于实时性要求很高的场景,例如智能机器人对话,则可以采用流式合成,对于有声读物,语音播报场景可以选择非流式音频合成接口,客户可以在非流式的接口基础上实现预请求,即第一句合成播报的同时请求合成第二句话并缓存结果,这样可以让播报无缝连接。

在选择好需要的接口之后,可以参考下方对应的接口接入指导。

非流式音频合成

1. 接口文档

2. 参考接口文档进行请求逻辑开发,基本的逻辑是http get或者post请求。这里的难点在于接口的鉴权,云API接口目前可以采用V1鉴权V3鉴权,V1鉴权和V3鉴权的共同点在于都可以识别验证腾讯云账号,区别在于V3鉴权适用的场景更为广泛,例如对于请求body过大(大于1MB)的请求则需用V3鉴权。对于语音合成接口,可以采用简单的V1鉴权,当然V3鉴权也可以,客户可以自行选择。

V1鉴权计算Signature参考实例:

若采用POST请求,则 GET替换成POST cvm.tencentcloudapi.com/ 替换成 tts.tencentcloudapi.com/ Action=DescribeInstances 替换成 Action=TextToVoice 其他参数参考Action的替换方式,排序拼凑最终的串,采用SHA1加密生成Signature,此处注意,如果Signature是放在json body中则不需要urlencode,否则需要urlencode。

接口鉴权可以参考官网提供SDK里面的详细逻辑,或者参考官网鉴权计算步骤进行每一步骤的详细验证

签名计算

3. 请求接口并解析返回

Codec选择wav默认返回。将返回的Audio解base64即为 wav 音频。

Codec选择mp3同等条件下mp3音频较wav音频小很多,这里是有损压缩,采用的是标准的lame库。

4. 接入SDK,参考接口文档里面的接入SDK。

接入SDK

5. Demo,参考接口文档里面的API 3.0 Explorer,将对应参数填写完成,即可生成Demo或者体验在线调用。

生成Demo

流式音频合成

1. 接口文档

2. 接口鉴权参考非流式接口鉴权说明。这里区别于非流式接口在于,流式计算出来的Signature是存放在Header Authorization字段中,且只支持V1鉴权。流式接口只支持POST请求。

3. 请求接口并解析返回,参考接口文档opus和pcm说明。

4. 接入SDK,提供了 ios,android,c++,java,python,php等接入SDK。

多样化体验

音色

目前腾讯云TTS支持多种音色选择,其中音色VoiceType小于100000的为基础音色,大于等于100000的为精品音色,这里客户可以根据自身的使用场景选择合适的音色,例如客服场景,阅读场景可以选择对应的命名音色,这里可以优先在官网体验再自行选择。

官网体验

音量

音量目前支持11个档次的选择[0-10],默认为0,正常音量,10位最大音量。这里可以选择合适的音量,音量过大音频会有破音现象。

语速

语速目前支持[0.5-1.5]倍的调节,原速为0,向下为减速,向上为加速,例如 -2 对应 0.5倍, +2 对应 1.5倍。如果-2,-1,1,2 speed的效果不好,可以选择更为细致的调节。例如设置1的时候还是过快,那就可以尝试speed设置0.1,0.2,···。

其他参数选择请参考接口文档说明

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 腾讯云流式TTS语音合成客户端实现

    接入文档链接:https://cloud.tencent.com/document/api/441/19499

    用户1530353
  • 012.golang 接口interface

    qubianzhong
  • 设计模式 ☞ 七大设计原则之接口隔离原则

      接口隔离原则(Interface Segregation Principle,ISP)要求程序员尽量将臃肿庞大的接口拆分成更小的和更具体的接口,让接口中只包...

    Demo_Null
  • Java每日一练(2017/7/21)

    聊天系统 ●我希望大家积极参与答题!有什么不懂可以加小编微信进行讨论 ★珍惜每一天,拼搏每一天,专心每一天,成功每一 如果你是初学者,或者是自学者!你可以加小编...

    Java学习
  • 这 4 款电台小程序,让你假期过足「耳瘾」!

    如果不想那么无聊,不如试试知晓程序推荐的这 4 款电台小程序,让一个人的时光「有得聊」。

    知晓君
  • 边缘计算万亿级市场的“玩家”们,2018年上半年都干了啥?

    边缘计算(Edge computing),是一种分散式运算的架构,它将应用程序、数据资料与服务的运算,由网络中心节点,移往网络逻辑上的边缘节点来处理。边缘计算能...

    SDNLAB
  • 从头编写 asp.net core 2.0 web api 基础框架 (5) EF CRUD

    Github源码地址:https://github.com/solenovex/Building-asp.net-core-2-web-api-starter-...

    solenovex
  • 接口自动化对比工具实践

    接口自动化一直以来都是质量保障的重要一环,在接口自动化日常工作中,我们致力于场景的覆盖与结果校验。随着业务的高速发展,高效保质的迭代自动化用例成了我们的一个研究...

    有赞coder
  • composer使用私有仓库

    "repositories": [ { "type": "vcs", "url": "htt...

    苦咖啡
  • 2018上半年边缘计算领域巨头都干了啥?

    边缘计算市场吸引了许多知名企业,包括AWS、思科、华为、IBM、英特尔、微软等,各类边缘计算的“玩家”们在2018年上半年做了什么?

    边缘计算

扫码关注云+社区

领取腾讯云代金券