这两周都在忙着游戏上线还有接入游戏语音,两周分别接了腾讯语音和百度语音!!!

关于腾讯语音的一些问题

由于发现腾讯语音的在录完音频后的数据是编过码的所以出现了一些问题:

*不能解码(腾讯方不提供解码算法,能理解),所以导致不能以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的接入问题的更多相关文章

  1. Android 讯飞语音听写SDK快速接入(附空指针解决和修改对话框文字方法)

    1.账号准备工作 首先要有一个讯飞的账号啦,为后面申请APPID.APPKey等东西做准备.顺带一提:讯飞对不同认证类型用户开 放的SDK的使用次数是有不同的,详情如下图. 账号申请完成后,需要去你自 ...

  2. BaiduSpeechDemo【百度语音SDK集成】(基于v3.0.7.3)

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 本Demo将百度语音SDK(其中一部分功能)和自定义的UI对话框封装到一个module中,便于后续的SDK版本更新以及调用. 本De ...

  3. U8SDK——游戏接入SDK(只接入抽象框架)

    上一篇文章我们说了整个U8 SDK抽象成的设计,那这篇文章,我们就来验证一下,他是否如我们期待的那样,简单灵活. 正如之前所说,对于每个游戏,只需要接入抽象层,而每个渠道SDK的接入,就是该抽象层的一 ...

  4. BaiduSpeechDemo【百度语音SDK集成】(基于v3.0.8.1)

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 上一篇集成的是V3.0.7.3版本的SDK<BaiduSpeechDemo[百度语音SDK集成](基于v3.0.7.3)> ...

  5. 继《关于讯飞语音SDK开发学习》之打包过程中遇到小问题

    关于讯飞语音SDK开发学习 使用vs自带打包,具体怎么操作就不说了,网上关于这方面的资料挺多的.例如:winform 打包部署,VS2010程序打包操作(超详细的),关键是桌面上创建快捷方式中的&qu ...

  6. 关于讯飞语音SDK开发学习

    前奏,浑浑噩噩已经工作一年多,这一年多收获还是挺多的.逛园子应该有两年多了,工作后基本上是天天都会来园子逛逛,园子 里还是有很多牛人写了一些不错的博客,帮我解决很多问题.但是一直没写过博客,归根到底一 ...

  7. 接入百度语音SDK的步骤

    1.导入依赖库 SystemConfiguration.framework AudioToolbox.framework UIkit.framework AVFoundation.framework ...

  8. 讯飞语音SDK Android平台使用

    1. 支持功能介绍: 2. Android API主要业务接口和流程介绍 -------------------------------------------------------- 工程代码: ...

  9. QQ登录-第三方SDK的接入总结(搜索 qq互联)

    由于项目的需要,使用了[QQ登录]SDK 的相关功能!   1.集成[QQ登录]SDK   [QQ登录]SDK下载地址: http://wiki.open.qq.com/wiki/website/SD ...

随机推荐

  1. Http状态码之:301、302重定向

    概念 301 Moved Permanently 被请求的资源已永久移动到新位置,并且将来任何对此资源的引用都应该使用本响应返回的若干个URI之一.如果可能,拥有链接编辑功能的客户端应当自动把请求的地 ...

  2. JS核心系列:理解 new 的运行机制

    和其他高级语言一样 javascript 中也有 new 运算符,我们知道 new 运算符是用来实例化一个类,从而在内存中分配一个实例对象. 但在 javascript 中,万物皆对象,为什么还要通过 ...

  3. 查看w3wp进程占用的内存及.NET内存泄露,死锁分析

    一 基础知识 在分析之前,先上一张图: 从上面可以看到,这个w3wp进程占用了376M内存,启动了54个线程. 在使用windbg查看之前,看到的进程含有 *32 字样,意思是在64位机器上已32位方 ...

  4. [C#] C# 知识回顾 - 表达式树 Expression Trees

    C# 知识回顾 - 表达式树 Expression Trees 目录 简介 Lambda 表达式创建表达式树 API 创建表达式树 解析表达式树 表达式树的永久性 编译表达式树 执行表达式树 修改表达 ...

  5. 玩转spring boot——结合jQuery和AngularJs

    在上篇的基础上 准备工作: 修改pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=&q ...

  6. 七牛云:ckeditor JS SDK 结合 C#实现多图片上传。

    成功了,搞了2天.分享一下经验. 首先是把官方的那个例子下载下来,然后照如下的方式修改. 其中tempValue是一个全局变量. function savetoqiniu() { var upload ...

  7. [笔记]HAproxy reload config file with uninterrupt session

    HAProxy is a high performance load balancer. It is very light-weight, and free, making it a great op ...

  8. 分享两种实现Winform程序的多语言支持的解决方案

    因公司业务需要,需要将原有的ERP系统加上支持繁体语言,但不能改变原有的编码方式,即:普通程序员感受不到编码有什么不同.经过我与几个同事的多番沟通,确定了以下两种方案: 方案一:在窗体基类中每次加载并 ...

  9. asp.net core 实战之 redis 负载均衡和"高可用"实现

    1.概述 分布式系统缓存已经变得不可或缺,本文主要阐述如何实现redis主从复制集群的负载均衡,以及 redis的"高可用"实现, 呵呵双引号的"高可用"并不是 ...

  10. 万向节锁(Gimbal Lock)的理解

    [TOC] 结论 我直接抛出结论: Gimbal Lock 产生的原因不是欧拉角也不是旋转顺序,而是我們的思维方式和程序的执行逻辑没有对应,也就是说是我们的观念导致这个情况的发生. 他人解释 首先我们 ...