技术源于生活,服务生活 Terry 随笔

听书语音合成说明


简介

爱阅书香的听书功能,除了默认使用的百度语音合成技术之外,还提供了自定义语音合成功能。可以自行在百度或腾讯的后台申请自己的KEY。此功能是为了保证你听书过程中不会卡顿而开发,希望能对你有用。以下介绍下如何配置自己的语音合成服务器。

注意注意:此功能是6.4.0版本开始才有的!

百度语音合成API申请

使用百度语音合成技术,只需要注册一个百度开发者,然后在其后台创建一个应用,得到它的API KeySecret Key。再复制这两个值到爱阅书香就可以。

  1. 注册百度开发者 https://login.bce.baidu.com/?account=&redirect=http%3A%2F%2Fconsole.bce.baidu.com%2Fai%2F%3Ffromai%3D1#/ai/speech/overview/index
  2. 打开语音技术 https://console.bce.baidu.com/ai/
  3. 创建应用
  4. 复制API KeySecret Key
  5. 拷贝到爱阅书香

大概如下图所示

语音技术管理界面 在语音技术管理界面

创建应用界面 创建应用界面

复制信息 创建应用界面

腾讯语音合成API申请

使用腾讯语音合成技术,需要先在腾讯上申请内测资格,然后在其后台新建API密钥,得到它的SecretIdSecretKey。再复制这两个值到有爱阅书香就可以。

  1. 申请腾讯语音合成资格 https://cloud.tencent.com/product/tts
  2. 成功获取资格后,请到https://console.cloud.tencent.com/cam/capi上新建密钥
  3. 你申请内测后,再重新新建密钥,一般就可以了。若不行,请等待10分钟后再重试。

创建密钥 创建密钥

高级在线语音合成服务

此功能需要一定的专业知识,你需要从某个平台申请语音合成的API接口,或者是从某个地方得到合成接口。 一般情况下,是一个HTTP请求后,得到一段语音数据。

  1. 将HTTP请求接口输入到TTS语音步骤中
  2. 指定如何解析到语音数据:解析字段playData表示最终取得的语音数据

特殊字段名:playData表示最终取得的语音数据 特殊响应名称:ResponseData来表示整个响应结果 前置步骤的意思是:第一次请求请问合成时才需要用到,之后再次请求合成时,是不会再调用的。如先同登陆,认证后才可以调用语音合成接口一样。

可以使用ResponseData来表示整个响应结果,比如请求后得到的数据全部是语音,则可以添加解析字段:playData=ResponseData

情形1: 调用http://aa.xx.com/tts?text=要合成的数据&volume=100 得到了一段语音数据 则在爱阅书香可以这样设置:

  1. 地址输入:http://aa.xx.com/tts?text=%@&volume=100
  2. 解析字段输入:playData=ResponseData
  3. 测试发音效果

情形2: 调用http://aa.xx.com/tts?text=要合成的数据&volume=100 得到了一个数据,数据中包括了一个语音合成的地址 再次访问得到的语音合成地址后,才能得到最终的语音数据 则在爱阅书香可以这样设置:

  1. 地址输入:http://aa.xx.com/tts?text=%@&volume=100
  2. 解析字段输入:audioUrl=@json:xxx, 其中audioUrl表示一个变量,方便后面使用,@json:则与书源教程中一致,表示如何解析出数据
  3. 添加一个TTS语音步骤
  4. 在第二个步骤中的地址输入:@json:audioUrl 表示从上一个结果中取得地址
  5. 在第二步骤的解析字段输入:playData=ResponseData
  6. 测试发音效果

情形3: 需要先认证时,请在第一个步骤中输入认证的HTTP及参数,之前根据情况,与情形1或情形2类似

更多情形请自行多多研究哦,有问题请加群一起谈论。群号在公众号iosRead或是打开爱阅书香-设置-关于爱阅书香

复制信息到爱阅书香

在听书界面上,有个添加,点击后,选择百度或腾讯,再将需要的值复制到对应的输入框就可以了。

修改自定义听书配置

在听书界面语音库中,你自定义生成的听书配置将排在最后面,在生成的听书配置选项上长按,就可以进行修改了。

分享自定义听书配置

长按长按


Content