集成百度语音合成的一些问题
2016-12-07 12:58
148 查看
最近项目要用到语音合成(TTS)的功能,目前国内只有两家:科大讯飞:科大讯飞开发者平台
和 百度:百度语音 。科大讯飞支持完全离线,但是需要付费(成本高),又因为百度虽然目前没有开放纯离线模式下的语音合成SDK,但是开放了离在线融合语音合成SDK,会自动判断当前网络环境,自动匹配使用离线还是在线合成引擎。简言之,就是根据网络的不同状态,实现离线条件下的语音合成。有了这个,何必去用科大的付费呢。这里顺便吐槽一下科大讯飞的官方demo,只能说:没有最渣,只有更渣,首先我们从人家还在坚持用Eclipse写的demo就可见一斑,那李志(逼格)也是没谁了。废话到此为止。如果想使用Android
Studio版本的demo,可以看这里:科大讯飞android版本demo
关于使用百度语音所遇到的问题:运行官方demo在有网条件下可以正常使用,但是在离线条件下报错:
error (-102) offline engine download license failure [(-5)
appcode=8516840-licensePath=/data/data/com.baidu.tts.sample/files/baidu-tts_license]-utteranceld= 0
即:-102 离线授权下载License失败。具体可以参看官方的 错误码说明
。
看到这个问题,我们一般都会去 问答社区 寻找答案。在这里我对(errcode:-102)这个问题的解决总结如下:
首先分析可能产生该问题的原因:
1.appid 和apikey填写错误
2.包名绑定包名填写错误
3.设置的授权文件下载路径没有权限,或者应用没有被授权读写权限
4.第一次使用时需要联网操作,或者连接的网络不够稳定。
从接入指南我们可以知道,apikey 和 secretkey 是用于 在线语音合成的,如果在线语音正常,则说明这里没有什么问题。appid是用于离线语音合成的,
那就检查一下appid,确认无误后,然后看一下配置文件AndroidManifest.xml 所需要的权限是否添加,接着就去看一下开发者平台,你所创建的应用的管理包名是否填写,
且与配置文件的是否一致。最后在第一次使用时,一定要确认联网。完成上述步骤,即可避免或者解决-102问题。
最后来理一下正确的接入流程:
1.创建应用;
2.然后new project 或者 直接 import project 官方的demo,然后看着
接入指南 将所需要的权限先添加进去;
3.查看你创建的应用的appid等信息,并修改对应的参数信息;
点击“查看key”:
4.将你的项目的包名提交给开发者平台;
5.确认网络良好,然后.....
6.然后就没有然后啦....
欢迎指教,如果有什么问题,大家可以评论和我交流...
和 百度:百度语音 。科大讯飞支持完全离线,但是需要付费(成本高),又因为百度虽然目前没有开放纯离线模式下的语音合成SDK,但是开放了离在线融合语音合成SDK,会自动判断当前网络环境,自动匹配使用离线还是在线合成引擎。简言之,就是根据网络的不同状态,实现离线条件下的语音合成。有了这个,何必去用科大的付费呢。这里顺便吐槽一下科大讯飞的官方demo,只能说:没有最渣,只有更渣,首先我们从人家还在坚持用Eclipse写的demo就可见一斑,那李志(逼格)也是没谁了。废话到此为止。如果想使用Android
Studio版本的demo,可以看这里:科大讯飞android版本demo
关于使用百度语音所遇到的问题:运行官方demo在有网条件下可以正常使用,但是在离线条件下报错:
error (-102) offline engine download license failure [(-5)
appcode=8516840-licensePath=/data/data/com.baidu.tts.sample/files/baidu-tts_license]-utteranceld= 0
即:-102 离线授权下载License失败。具体可以参看官方的 错误码说明
。
看到这个问题,我们一般都会去 问答社区 寻找答案。在这里我对(errcode:-102)这个问题的解决总结如下:
首先分析可能产生该问题的原因:
1.appid 和apikey填写错误
2.包名绑定包名填写错误
3.设置的授权文件下载路径没有权限,或者应用没有被授权读写权限
4.第一次使用时需要联网操作,或者连接的网络不够稳定。
从接入指南我们可以知道,apikey 和 secretkey 是用于 在线语音合成的,如果在线语音正常,则说明这里没有什么问题。appid是用于离线语音合成的,
那就检查一下appid,确认无误后,然后看一下配置文件AndroidManifest.xml 所需要的权限是否添加,接着就去看一下开发者平台,你所创建的应用的管理包名是否填写,
且与配置文件的是否一致。最后在第一次使用时,一定要确认联网。完成上述步骤,即可避免或者解决-102问题。
最后来理一下正确的接入流程:
1.创建应用;
2.然后new project 或者 直接 import project 官方的demo,然后看着
接入指南 将所需要的权限先添加进去;
3.查看你创建的应用的appid等信息,并修改对应的参数信息;
点击“查看key”:
4.将你的项目的包名提交给开发者平台;
5.确认网络良好,然后.....
6.然后就没有然后啦....
欢迎指教,如果有什么问题,大家可以评论和我交流...
相关文章推荐
- LINQ to SQL集成到应用程序中需考虑的一些问题
- 关于Installshield里一些常见问题的解答(二)--此篇非原创,只是集成了一些网友的解答
- Spring集成Quartz定时任务的一些问题
- Android Studio使用百度语音合成是TTS时报错: ****.so文件找不到的有关问题
- 集成友盟需要注意的一些问题
- LINQ to SQL集成到应用程序中需考虑的一些问题
- Android studio集成svn遇到的一些问题与使用
- 【iOS推送】集成umeng时的遇到的一些问题
- 8. bagels小程序---字母、单词合成与分解的一些问题
- 集成百度导航SDK遇到的一些问题。
- VS2010中集成 QT 遇到的一些问题
- android移动广告平台集成的一些问题
- android移动广告平台集成的一些问题
- phonegap中集成百度SDK定位的一些问题
- android集成apk到系统中常遇到的一些问题
- LINQ 集成到应用程序中需考虑的一些问题
- 关于Installshield里一些常见问题的解答(二)--此篇非原创,只是集成了一些网友的解答
- Struts2+Hibernate4+Spring3集成中的一些问题汇总
- Spring集成Quartz定时任务的一些问题
- Android Studio下Android应用开发集成百度语音合成使用方法样例