首页 语音技术 帖子详情
【置顶】语音合成Android版本问题及答案汇总贴
收藏
快速回复
语音技术 语音合成Android_SDK 65608 40
【置顶】语音合成Android版本问题及答案汇总贴
收藏
快速回复
语音技术 语音合成Android_SDK 65608 40

语音合成Android版本问题及答案汇总贴

0
收藏
回复
全部评论(40)
时间顺序
水寒319
#2 回复于2016-01

问题:

 百度语音合成有的设备不能发声是什么原因?


答案:

可能原因:授权文件不能公用

解决方法:重新进行授权认证


0
回复
水寒319
#3 回复于2016-01

问题:

 语音合成appid和secretkey,apikey都换了,离线授权仍然失败。


答案:

包名,appid,secretkey,apikey应该是一个注册应用的,应该保持一致,包名也要对应修改


0
回复
水寒319
#4 回复于2016-01

问题:

离线注册授权了,但是离线总是提示还有多少天过期。


答案:

原因:这是因为使用了临时授权文件,出现的提示。

解决方法:在官网上,填写应用包名,注册正式授权,并请删除本地的临时授权文件,去除临时授权文件相关的设置。


0
回复
水寒319
#5 回复于2016-01

问题:

离线语音模型文件设置了,但是用不了。


答案:

请将语音模型文件放在可读取的路径,不要放在工程的assets目录,该路径仅android系统可以正确访问,无法使用该路径


0
回复
水寒319
#6 回复于2016-01

问题:

sample工程无法正常运行,一启动就crash了,报ClassNotFoundException。


答案:

出现此问题,可能原因是因为开发者使用的adt是22的版本,而最好应该使用23的adt版本,google在升级adt的时候某些编译打包的选项发生了变动。


0
回复
水寒319
#7 回复于2016-01

问题:

语音合成从1.1.1版本更新到2.0.1版本后,tts不能正常播报了是什么原因?


答案:

有些老版本的遗留代码是不能用的,例如:

    static {
     System.loadLibrary("gnustl_shared");
     // 部分版本不需要BDSpeechDecoder_V1
    try {
    System.loadLibrary("BDSpeechDecoder_V1");
    } catch (UnsatisfiedLinkError e) {
    e.printStackTrace();
   }
   System.loadLibrary("bd_etts");
   System.loadLibrary("bdtts");
   }

这段代码在新版本中会自动加载,开发者自己不需要再添加。

  

0
回复
水寒319
#8 回复于2016-01

问题:

Android语音合成,在5.0一下系统的手机都正常运行,在5.0系统的手机上出现闪退怎么解决?


答案:

可能原因是由于语音合成的os库不支持64位。


0
回复
水寒319
#9 回复于2016-01

问题:

语音合成的发音人有哪些选择?


答案:

暂时支持:女生、普通男声、高音质男声、情感男声,四种声音。


0
回复
水寒319
#10 回复于2016-01

问题:

语音合成一次最多能合成多少个字?


答案:

合成文本长度不能超过GBK1024个字节


0
回复
水寒319
#11 回复于2016-01

问题:

合成的语音是否可以自己保存?


答案:

可以保存。语音合成成功后会返回byte数组,可以自己保存。


0
回复
水寒319
#12 回复于2016-01

问题:

语音合成的网络策略是怎样设置的?


答案:

参数PARAM_MIX_MODE设置为 MIX_MODE_DEFAULT(mix模式下,wifi使用在线合成,非wifi使用离线合成)

设置成IX_MODE_HIGH_SPEED_NETWORK(mix模式下,wifi,4G,3G使用在线合成,其他使用离线合成)


如果需要使用的离线合成的话需要进行离线相关设置。即可在在线和离线时都能合成。


0
回复
水寒319
#13 回复于2016-01

问题:

手机浏览器不支持播放TTS可能原因是什么?

示例:

在windows xp系统中使用Firefox无法播放语音合成音频,为什么?

答案:

请检查在该环境下浏览器是否支持该音频格式。

0
回复
水寒319
#14 回复于2016-01

问题:

在Android语音合成SDK中出现如下错误:findLibrary returned nul

示例:

nativeLibraryDirectories=[/data/app-lib/com.catherine.tts-2, /vendor/lib, /system/lib]]]: findLibrary returned null]

答案:

可能原因是lib库没有导入成功或者导入出错,请查看在不同架构下是否已经都包含相关的库文件。



0
回复
水寒319
#15 回复于2016-01

问题:

Android语音合成如何批量合成?

示例:

如何同时播放多条消息 多次调用speak 方法只播放最后一条消息

答案:

使用batchspeak接口


Android SDK中:

批量合成并播放

  • 说明
    批量合成并播放文本文件,一次可传入一个list,这个list会按顺序合成播放。

  • 方法

    1. public int batchSpeak(List speechSynthesizeBags)

IOS SDK中:

批量开始文本合成但不朗读

  • 方法

    1. (BDSStartSynthesisError)batchSynthesize:(NSArray *)strings;


0
回复
水寒319
#16 回复于2016-01

问题:

在Android语音合成SDK常常出现部分字没有声音。

示例:

语音合成 在模拟器上可以播放 但是在真机上播放不出来,请问是什么原因?

答案:

原因:可能原因是手机音量设置静音或者音量较小,导致听不见,。

解决方案:设置手机音量并且调高音量,并且可以在程序中通过SpeechSynthesizer.PARAM_VOLUME参数设置音量调高音量。


0
回复
水寒319
#17 回复于2016-01

问题:

在Android语音合成SDK,音量怎么设置?

示例:

语音合成Android SDK合成后的语音音量很小,怎么设置音量?

答案:

Android语音合成的音量大小设置,可以通过如下代码设置:

  • speechSynthesizer.setParam(SpeechSynthesizer.PARAM_VOLUME, "5");

参数:SpeechSynthesizer.PARAM_VOLUME

默认值:5

设置范围:0-9



0
回复
A
AIStudio2485971
#18 回复于2016-01

问题:

播放一段文字,中间一些地方需要暂停几秒继续播放,这个如何设置?标点符号暂时的时间都很短


答案:

百度语音合成尚不支持在文本中间停顿功能。请自行用sleep之类的系统函数实现。

0
回复
A
AIStudio2486742
#20 回复于2016-05
public void onSynthesizeDataArrived(String utteranceId, byte[] data, int progress) {
toPrint("onSynthesizeDataArrived  "+"utteranceId=="+utteranceId+" progress=="+progress);


}

怎么播放合成后的byte[ ] data 数据  ,

mSpeechSynthesizer.synthesize(text);

该方法的作用是合成语音,合成后怎么操作合成后的东西

0
回复
A
AIStudio2486743
#21 回复于2016-05

文字翻译成语音了。怎么下载呢???新手  WX 15833055761  先谢您

0
回复
A
AIStudio2486744
#22 回复于2016-07

申请离线合成授权的入口关闭了吗?没找到..

0
回复
在@后输入用户全名并按空格结束,可艾特全站任一用户