关于几个主流语音SDK的接入问题
这两周都在忙着游戏上线还有接入游戏语音,两周分别接了腾讯语音和百度语音!!!
关于腾讯语音的一些问题
由于发现腾讯语音的在录完音频后的数据是编过码的所以出现了一些问题:
*不能解码(腾讯方不提供解码算法,能理解),所以导致不能以MP3原有的格式数据传到服务器
*版本兼容问题 因为游戏已经上线所以旧的语音数据可以说不能再播放了
其实不能解码的问题已经解决,可以将pcm数据传给服务器 在客户端接受后通过腾讯的播放接口来播放编过码的数据(而且验证了一下离线也能播放的)
但兼容问题就不行所以放弃了腾讯语音的接入(上上周的工作白费),转投接入百度语音!!!
关于百度语音的一些问题
由于可以真机调试所以提高了工作效率!!!
关于接入百度语音的一些思考:

由于之前接的平台是讯飞所以为保证假设接完百度后如果出错,还有讯飞这条腿可以抱住,所以在lua层加了开关(在通信层加了选择判断)
这样就可以实现切换了!!!
Android遇到的问题:
主要还是遇到某些接口必须在对应线程调用,比如在监听识别时需要将接口在android主UI线程做调用在回调时(游戏使用cocos2dx开发)需要在GL线程做回调
避免崩溃!!!
//调用监听在主ui线程
Cocos2dxActivity _mainActivity = (Cocos2dxActivity)Cocos2dxActivity.getContext();
_mainActivity.runOnUiThread(new Runnable() {
@Override
public void run() {
// 每次启动录音时设置录音参数
m_yyRet = "";
m_isListening = true;
Intent it = setRecordParm();
speechRecognizer.startListening(it);
}
});
//回调在GL线程
Cocos2dxActivity _mainActivity = (Cocos2dxActivity)Cocos2dxActivity.getContext();
_mainActivity.runOnGLThread(new Runnable() {
@Override
public void run() {
BDSpeechEngineAndroid.nativeOnSpeechEndOfSpeech(ret, s_SpeechSavePath);
}
});
IOS遇到的问题:
* 对oc的代码的不熟悉导致NSData在解析完后是一个NSArray类型 我用NSString 直接去赋值导致一直报错
* 就是IOS不能指定对应的pcm文件保存路径所以要保存音频格式需要在回调是做一个数据的append等完成是将数据保存至指定路径
* 就是开始识别后到识别结束游戏声音没有了我还以为自己出了bug,后来看百度官方的解答(由于对底层的音频逻辑不熟,这个问题暂时还没解决):

每周都写一篇总结一下这周的工作,还是挺好的!!
关于几个主流语音SDK的接入问题的更多相关文章
- Android 讯飞语音听写SDK快速接入(附空指针解决和修改对话框文字方法)
1.账号准备工作 首先要有一个讯飞的账号啦,为后面申请APPID.APPKey等东西做准备.顺带一提:讯飞对不同认证类型用户开 放的SDK的使用次数是有不同的,详情如下图. 账号申请完成后,需要去你自 ...
- BaiduSpeechDemo【百度语音SDK集成】(基于v3.0.7.3)
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 本Demo将百度语音SDK(其中一部分功能)和自定义的UI对话框封装到一个module中,便于后续的SDK版本更新以及调用. 本De ...
- U8SDK——游戏接入SDK(只接入抽象框架)
上一篇文章我们说了整个U8 SDK抽象成的设计,那这篇文章,我们就来验证一下,他是否如我们期待的那样,简单灵活. 正如之前所说,对于每个游戏,只需要接入抽象层,而每个渠道SDK的接入,就是该抽象层的一 ...
- BaiduSpeechDemo【百度语音SDK集成】(基于v3.0.8.1)
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 上一篇集成的是V3.0.7.3版本的SDK<BaiduSpeechDemo[百度语音SDK集成](基于v3.0.7.3)> ...
- 继《关于讯飞语音SDK开发学习》之打包过程中遇到小问题
关于讯飞语音SDK开发学习 使用vs自带打包,具体怎么操作就不说了,网上关于这方面的资料挺多的.例如:winform 打包部署,VS2010程序打包操作(超详细的),关键是桌面上创建快捷方式中的&qu ...
- 关于讯飞语音SDK开发学习
前奏,浑浑噩噩已经工作一年多,这一年多收获还是挺多的.逛园子应该有两年多了,工作后基本上是天天都会来园子逛逛,园子 里还是有很多牛人写了一些不错的博客,帮我解决很多问题.但是一直没写过博客,归根到底一 ...
- 接入百度语音SDK的步骤
1.导入依赖库 SystemConfiguration.framework AudioToolbox.framework UIkit.framework AVFoundation.framework ...
- 讯飞语音SDK Android平台使用
1. 支持功能介绍: 2. Android API主要业务接口和流程介绍 -------------------------------------------------------- 工程代码: ...
- QQ登录-第三方SDK的接入总结(搜索 qq互联)
由于项目的需要,使用了[QQ登录]SDK 的相关功能! 1.集成[QQ登录]SDK [QQ登录]SDK下载地址: http://wiki.open.qq.com/wiki/website/SD ...
随机推荐
- 使用 Nodejs 搭建简单的Web服务器
使用Nodejs搭建Web服务器是学习Node.js比较全面的入门教程,因为要完成一个简单的Web服务器,你需要学习Nodejs中几个比较重要的模块,比如:http协议模块.文件系统.url解析模块. ...
- RestTemplate发送请求并携带header信息
1.使用restTemplate的postForObject方法 注:目前没有发现发送携带header信息的getForObject方法. HttpHeaders headers = new Http ...
- Java程序员:工作还是游戏,是该好好衡量一下了
前阵子我终于下定决心,删掉了硬盘里所有的游戏. 身为一个程序猿,每天都要和各种新技术打交道,闲暇时间,总还得看一下各大论坛,逛逛博客园啥的,给自己充充电.游戏的话,其实我自小就比较喜欢,可以算是一种兴 ...
- Windows API 设置窗口下控件Enable属性
参考页面: http://www.yuanjiaocheng.net/webapi/create-crud-api-1-put.html http://www.yuanjiaocheng.net/we ...
- VS2015常用快捷键总结
生成解决方案 F6,生成项目Shift+F6 调试执行F5,终止调试执行Shift+F5 执行调试Ctrl+F5 查找下一个F3,查找上一个Shift+F3 附加到进程Ctrl+Alt+P,逐过程F1 ...
- WPF CheckBox 样式
<Style x:Key="FocusVisual"> <Setter Property="Control.Template"> < ...
- Configure a VLAN on top of a team with NetworkManager (nmcli) in RHEL7
SOLUTION VERIFIED September 13 2016 KB1248793 Environment Red Hat Enterprise Linux 7 NetworkManager ...
- 高仿it之家新闻客户端源码
仿it之家新闻客户端界面,数据为本地假数据.仅实现了新闻模块的功能. 源码下载:http://code.662p.com/list/11_1.html 详细说明:http://android.662p ...
- APP漏洞扫描用地址空间随机化
APP漏洞扫描用地址空间随机化 前言 我们在前文<APP漏洞扫描器之本地拒绝服务检测详解>了解到阿里聚安全漏洞扫描器有一项静态分析加动态模糊测试的方法来检测的功能,并详细的介绍了它在针对本 ...
- 《深入理解Java虚拟机》虚拟机性能监控与故障处理工具
上节学习回顾 从课本章节划分,<垃圾收集器>和<内存分配策略>这两篇随笔同属一章节,主要是从理论+实验的手段来讲解JVM的内存处理机制.好让我们对JVM运行机制有一个良好的概念 ...