功能简介

语音合成分为 在线合成和离线合成。仅有中英文混合这一种语言。

语言

目前只有中英文混合这一种语言,优先中文发音。
示例:
” I bought 3 books” 发音 “three”;
“ 3 books are bought” 发音 “三”;
“我们买了 3 books” 发音“三”

标注发音

该功能适用于多音字或特殊名词的发音设置。
如: 重(chong2)报集团, “重”发音 chong第二声

在线和离线判别

以6s超时的MIX_MODE_DEFAULT和MIX_MODE_HIGH_SPEED_NETWORK为例

用户可以选择纯在线模式或者离在线混合模式。 没有纯离线模式。

纯在线模式 : WIFI 4G 3G 2G 都会尝试连接百度服务器。如果百度服务器失败,那么合成失败。

离在线混合模式
WIFI下强制尝试在线优先。其它网络情况可以设置是否为在线优先(如果连接失败,那么切换成离线合成)或者直接离线合成。

  • MIX_MODE_DEFAULT
    WIFI下在线优先(连接百度服务器失败或者超时6s,那么切换成离线合成), 其它网络状况下离线合成。
  • MIX_MODE_HIGH_SPEED_SYNTHESIZE_WIFI
    WIFI下在线优先(连接百度服务器失败或者超时1.2s,那么切换成离线合成), 其它网络状况下离线合成。
  • MIX_MODE_HIGH_SPEED_NETWORK
    WIFI 4G 3G 2G下在线优先( 如果在线连接百度服务器失败或者超时6s,那么切换成离线合成), 其它网络状况离线合成。
  • MIX_MODE_HIGH_SPEED_SYNTHESIZE
    WIFI 4G 3G 2G下在线优先( 如果在线连接百度服务器失败或者超时1.2s,那么切换成离线合成), 其它网络状况离线合成。

建议使用场景
在小说阅读、导航播报等场景中,若存在网络信号不稳定(频繁断网)的情况,您可以使用百度提供的离在线融合模式。
我们推荐您使用 MIX_MODE_HIGH_SPEED_NETWORK模式;若您需要在移动网络下不想消耗流量,或是对响应速度有较强需求,请自行根据业务需求选择其他模式。

发音

在线时支持5种发音
普通女声 普通男声 特别男声 情感男声<度逍遥> 情感儿童声<度丫丫>
除特别男声外,其它4种发声具体效果可以在http://ai.baidu.com/tech/speech/tts上测试

离线时只支持4种发音
离线时无特别男声, 其它发音都有离线版本。

注意:

  1. 在线合成的声音和离线合成的声音会有略微不同。在线合成的效果好。
  2. 在极端网络的情况下,可能在线合成与离线合成频繁切换。

合成效果
通过对PARAM_SPEAKER(发音人)、PARAM_PITCH(音调)、PARAM_VOLUME(音量)和PARAM_SPEED(语速)参数的调整,可以获得不同的发声效果,更好满足您业务场景中的播报需求。
且音调越高,声音听起来会显得越年轻。

合成和播放

synthesize 方法直接合成。不播放。 开发者可以通过onSynthesizeDataArrived 获取音频数据,自行处理。
speak 方法先合成为音频,之后立即播放。等同调用 synthesize方法,再调用系统播放器。

在SDK内部中有队列,可以不断调用synthesize或者speak方法,将合成的文本添加到队列中。

其它事项

  1. 每次合成的文本不超过1024 GBK字节,即512个汉字或者字母数字。
  2. 合成的耗时同文本长度成正比。对合成速度敏感的话,请自行按照标点切分成短句。
  3. 多音字可以通过标注自行定义发音。格式如:重(chong2)报集团。