【置顶】语音合成Android版本问题及答案汇总贴

0半君0 2016年1月18日提问

35个答案
  • 1 评论
    水寒319 2016年1月18日回答

    问题:

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


    答案:

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

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


  • 0 评论
    水寒319 2016年1月18日回答

    问题:

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


    答案:

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


  • 0 评论
    水寒319 2016年1月18日回答

    问题:

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


    答案:

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

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


  • 0 评论
    水寒319 2016年1月18日回答

    问题:

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


    答案:

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


  • 0 评论
    水寒319 2016年1月18日回答

    问题:

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


    答案:

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


  • 0 评论
    水寒319 2016年1月18日回答

    问题:

    语音合成从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");
       }

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

      

  • 1 评论
    水寒319 2016年1月18日回答

    问题:

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


    答案:

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


  • 0 评论
    水寒319 2016年1月18日回答

    问题:

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


    答案:

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


  • 0 评论
    水寒319 2016年1月18日回答

    问题:

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


    答案:

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


  • 1 评论
    水寒319 2016年1月18日回答

    问题:

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


    答案:

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


  • 0 评论
    水寒319 2016年1月21日回答

    问题:

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


    答案:

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

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


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


  • 0 评论
    水寒319 2016年1月21日回答

    问题:

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

    示例:

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

    答案:

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

  • 0 评论
    水寒319 2016年1月21日回答

    问题:

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

    示例:

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

    答案:

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



  • 0 评论
    水寒319 2016年1月21日回答

    问题:

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

    示例:

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

    答案:

    使用batchspeak接口


    Android SDK中:

    批量合成并播放

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

    • 方法

         
      1. public int batchSpeak(List<SpeechSynthesizeBag> speechSynthesizeBags)

    IOS SDK中:

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

    • 方法

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


  • 0 评论
    水寒319 2016年1月21日回答

    问题:

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

    示例:

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

    答案:

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

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


  • 0 评论
    水寒319 2016年1月21日回答

    问题:

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

    示例:

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

    答案:

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

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

    参数:SpeechSynthesizer.PARAM_VOLUME

    默认值:5

    设置范围:0-9



  • 0 评论
    0半君0 2016年1月28日回答

    问题:

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


    答案:

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

  • 1 评论
    真的百了个度 2016年5月9日回答
    public void onSynthesizeDataArrived(String utteranceId, byte[] data, int progress) {
    toPrint("onSynthesizeDataArrived  "+"utteranceId=="+utteranceId+" progress=="+progress);


    }

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

    mSpeechSynthesizer.synthesize(text);

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

  • 1 评论
    7710145 2016年5月31日回答

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

  • 0 评论
    _凹凸首长 2016年7月18日回答

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

  • 1 评论
    沉默601 2016年7月19日回答

    手机没有网络时,不可以语音播放?

  • 0 评论
    响亮的名字九八 2016年8月29日回答

    能不能把生命周期图给一下 啊

  • 0 评论
    飞线JAVA 2016年10月19日回答

    如何播放缓存起来的合成数据,在

    onSynthesizeDataArrived(String s, byte[] bytes, int i)

    中获取到的bytes,缓存起来之后,如果以后需要播放缓存起来的合成数据bytes,如何播放,在文档里没看到相关的API额?

  • 0 评论
    synzht 2016年11月23日回答

    6.0的机子报错process stopped due to unexpected signal 13

  • 0 评论
    470886354 2016年11月24日回答

    离在线语音合成 Android SDK,为什么第一次使用APP时不能离线语音,必须要连一次网过后才能离线语音?

  • 0 评论
    你椰椰 2016年12月1日回答
    -106 离线授权执行时异常

    在[应用管理]中开通了正式离线授权,应该不用再设置临时授权文件,

    但是跑时报-106,

    加了临时license文件还是报-106.

  • 0 评论
    渔舟小调 2017年1月11日回答

    470886354:

    离在线语音合成 Android SDK,为什么第一次使用APP时不能离线语音,必须要连一次网过后才能离线语音?

    回复470886354:朋友有解决方案吗?

  • 0 评论
    能濑斯狠 2017年1月12日回答

    渔舟小调:

    回复470886354:朋友有解决方案吗?

    回复渔舟小调为什么我下载的SDK里Assets下缺少temp_license文件,而DEMO里是有这个的,你下载的有没有这个文件

  • 0 评论
    avztvflkk 2017年2月1日回答

    语音合成安卓的sdk下载不了,有谁下载了提供个网盘什么的?2.3.0版本的

  • 0 评论
    胡仟250 2017年2月9日回答

    470886354:

    离在线语音合成 Android SDK,为什么第一次使用APP时不能离线语音,必须要连一次网过后才能离线语音?

    回复470886354:因为你的应用第一次没有lisence文件,当第一次联网的时候,lisence文件会被生成或者下载到你的sdcard中,这样的话就不需要联网播报语音了。但是这个lisence有时间限制或者相应的应用的相应限制,如版本号等。。。

  • 0 评论
    sunnywwwwc 2017年3月30日回答

    请问如何设置可以让离线和在线的声音是相同的?离线和在线的声音差很多,如果突然联网断网,两种声音会很奇怪,求解答!!!!!

  • 0 评论
    夜色澄明 2017年4月24日回答

    你椰椰:

    -106 离线授权执行时异常

    在[应用管理]中开通了正式离线授权,应该不用再设置临时授权文件,

    但是跑时报-106,

    加了临时license文件还是报-106.

    回复你椰椰:

    .so文件和.jar文件版本不一样。

    临时授权文件只是验证APP的授权是否开通,实际上是不用的。

  • 0 评论
    碘嚼涩讥 2017年5月4日回答

    报onError error=(-111)(-111)offline engine synthesize result not 0[(11)]--utteranceId=0怎么办

  • 0 评论
    suncohey16 2017年6月26日回答
    0回答

    我使用的服务是:百度语音合成

    调用的接口是:

    参数设置情况:

    开发平台和机型:Android开发-华为P8

    SDK版本号:2.3.0

    代码或日志截图(上传截图能帮助您更快解决问题):

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410] JNI DETECTED ERROR IN APPLICATION: JNI FindClass called with pending exception java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.pm.ApplicationInfo android.content.Context.getApplicationInfo()' on a null object reference

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at android.content.pm.ApplicationInfo android.content.ContextWrapper.getApplicationInfo() (ContextWrapper.java:150)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at int com.baidu.tts.jni.EmbeddedSynthesizerEngine.bdTTSVerifyLicense(android.content.Context, java.lang.String, java.lang.String, java.lang.String, byte[]) (EmbeddedSynthesizerEngine.java:-2)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at boolean com.baidu.tts.auth.b$a.g() (OfflineAuth.java:259)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at com.baidu.tts.auth.b$a com.baidu.tts.auth.b.c() (OfflineAuth.java:83)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at java.lang.Object com.baidu.tts.auth.b.call() (OfflineAuth.java:25)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at void java.util.concurrent.FutureTask.run() (FutureTask.java:237)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at com.baidu.tts.k.a com.baidu.tts.k.c.a(com.baidu.tts.k.b) (Memorizer.java:51)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at com.baidu.tts.auth.b$a com.baidu.tts.auth.a$a.a() (AuthClient.java:184)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at java.lang.Object com.baidu.tts.auth.a$a.call() (AuthClient.java:148)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at void java.util.concurrent.FutureTask.run() (FutureTask.java:237)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at void java.lang.Thread.run() (Thread.java:833)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410] 

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]     in call to FindClass

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]     from int com.baidu.tts.jni.EmbeddedSynthesizerEngine.bdTTSVerifyLicense(android.content.Context, java.lang.String, java.lang.String, java.lang.String, byte[])

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410] "Thread-9616" prio=5 tid=41 Runnable

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   | group="main" sCount=0 dsCount=0 obj=0x131f40a0 self=0x7f2c4b9600

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   | sysTid=2259 nice=0 cgrp=top_visible sched=0/0 handle=0x7f2a7f4440

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   | state=R schedstat=( 9770280 60840 54 ) utm=0 stm=0 core=6 HZ=100

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   | stack=0x7f2a6f2000-0x7f2a6f4000 stackSize=1037KB

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   | held mutexes= "mutator lock"(shared held)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   native: #00 pc 000000000049063c  /system/lib64/libart.so (_ZN3art15DumpNativeStackERNSt3__113basic_ostreamIcNS0_11char_traitsIcEEEEiPKcPNS_9ArtMethodEPv+236)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   native: #01 pc 000000000045f630  /system/lib64/libart.so (_ZNK3art6Thread4DumpERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEE+220)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   native: #02 pc 0000000000310eec  /system/lib64/libart.so (_ZN3art9JavaVMExt8JniAbortEPKcS2_+1000)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   native: #03 pc 00000000003117a4  /system/lib64/libart.so (_ZN3art9JavaVMExt9JniAbortVEPKcS2_St9__va_list+116)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   native: #04 pc 0000000000144ddc  /system/lib64/libart.so (_ZN3art11ScopedCheck6AbortFEPKcz+144)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   native: #05 pc 000000000014bc8c  /system/lib64/libart.so (_ZN3art11ScopedCheck5CheckERNS_18ScopedObjectAccessEbPKcPNS_12JniValueTypeE.constprop.116+6088)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   native: #06 pc 000000000014eed4  /system/lib64/libart.so (_ZN3art8CheckJNI9FindClassEP7_JNIEnvPKc+468)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   native: #07 pc 00000000000b4618  /data/app/com.ybzc.rider-1/lib/arm64/libbd_etts.so (???)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   native: #08 pc 00000000000b7a94  /data/app/com.ybzc.rider-1/lib/arm64/libbd_etts.so (VerifyLicense+144)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   native: #09 pc 0000000000001c54  /data/app/com.ybzc.rider-1/lib/arm64/libbdtts.so (Java_com_baidu_tts_jni_EmbeddedSynthesizerEngine_bdTTSVerifyLicense+228)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   native: #10 pc 0000000000a115a0  /data/app/com.ybzc.rider-1/oat/arm64/base.odex (int com.baidu.tts.jni.EmbeddedSynthesizerEngine.bdTTSVerifyLicense(android.content.Context, java.lang.String, java.lang.String, java.lang.String, byte[])+276)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   native: #11 pc 00000000009abe8c  /data/app/com.ybzc.rider-1/oat/arm64/base.odex (boolean com.baidu.tts.auth.b$a.g()+544)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   native: #12 pc 00000000009acbc0  /data/app/com.ybzc.rider-1/oat/arm64/base.odex (com.baidu.tts.auth.b$a com.baidu.tts.auth.b.c()+228)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   native: #13 pc 00000000009ad2c4  /data/app/com.ybzc.rider-1/oat/arm64/base.odex (java.lang.Object com.baidu.tts.auth.b.call()+56)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   native: #14 pc 0000000000546c80  /data/dalvik-cache/arm64/system@framework@boot.oat (???)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at com.baidu.tts.jni.EmbeddedSynthesizerEngine.bdTTSVerifyLicense(Native method)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   - locked <0x035f1598> (a java.lang.Class<com.baidu.tts.jni.EmbeddedSynthesizerEngine>)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at com.baidu.tts.auth.b$a.g(OfflineAuth.java:259)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at com.baidu.tts.auth.b.c(OfflineAuth.java:83)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at com.baidu.tts.auth.b.call(OfflineAuth.java:25)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at java.util.concurrent.FutureTask.run(FutureTask.java:237)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at com.baidu.tts.k.c.a(Memorizer.java:51)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at com.baidu.tts.auth.a$a.a(AuthClient.java:184)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at com.baidu.tts.auth.a$a.call(AuthClient.java:148)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at java.util.concurrent.FutureTask.run(FutureTask.java:237)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410]   at java.lang.Thread.run(Thread.java:833)

    06-24 14:36:12.113 1187-2259/com.ybzc.rider A/art: art/runtime/java_vm_ext.cc:410] 

    06-24 14:36:12.119 1187-2259/com.ybzc.rider A/art: art/runtime/runtime.cc:368] Runtime aborting...


  • 0 评论
    499019364 2017年8月3日回答

    报onError error=(-111)(-111)offline engine synthesize result not 0[(11)]   求怎么解决啊,包名什么都是一致的

撰写答案