定位unity在rk3288平台上音频解码无效的bug---定位终成功
来源:互联网 发布:淘宝网多肉植物 编辑:程序博客网 时间:2024/06/07 03:36
定位unity在rk3288平台上音频解码无效的bug
作为一个完全不懂unity的人,从0开始定位,略麻烦。。。
背景:公司开发了一款基于UNITY的游戏,作为一个亮点宣传。
问题:游戏在RK3288平台上无法正常使用。音频文件无法解码。播放出来都是滋滋滋滋杂音。。。
游戏:委托第三方开发
平板:由方案公司提供,方案公司又需要RK支持才能解决。
现状:这里其实是4方,我司是甲方,乙方各执一词,不牵头定位就找不到原因,游戏必然被砍。要求方案公司查,然后方案公司再去找RK,呵呵,基本没戏。方向在游戏商上。
定位开始:
1. RK3288对游戏引擎的支持不行
---思路------------------判断是否是通病,找市面上现有的相同引擎开发的可正常使用的游戏测试.
---解决------------------根据百度,找到一款:涂鸦保龄球,可以正常出声。经过解包确认,的确是用的unity引擎(游戏方居然跟我说不肯定是不是用的unity,还是得靠自己啊)---排查完毕
2. RK3288对游戏引擎的不同版本支持不行
---思路------------------在1的基础上,判断是否对不同版本的支持不一样?
---解决------------------要求游戏方编译一个最简单的demo程序,仅播放音频,方便降级升级unity引擎版本
3. 不同Unity的音频文件提取进行测试
---解决------------------经分析,音频文件在unity中会被转换一次,重新生成新文件,并由产生索引文件定位,从游戏产生的apk中可以体现,resource全部为无扩展名的文件,由unity_default_resources和unity_builtin_extra进行定位。-------此路不通
4. unity3d调用的so库是否可查
---解决------------------unity3d是一个收费引擎,闭源的,无法从底层着手处理,只能测试。-------此路不通
5. unity3d是否分音频引擎和视频引擎,是否之间有影响?
---解决------------------游戏的渲染,是否会对音频io产生影响,在闭源的情况下,这些实现细节不得而知,只能测试。--------此路不通
小结:不知道游戏在产生时调用的so,不知道引擎渲染是否有影响,不知道其他游戏的音频文件。
第一版:AudioTestProject.apk --- unity5.x,打包环境android5.1, 我方机器(android 5.1.1)
-------------result: failed-----声音播放失败
第二版:AudioTestProject.apk --- unity4.x,打包环境android4.0.3,我方机器(android 5.1.1)
-------------result: passed-----声音一切正常
第三版:AudioTestProject.apk --- unity4.x,打包环境android4.4, 我方机器(android 5.1.1)
-------------result: passed-----声音一切正常
第四版:AudioTestProject.apk --- unity5.x,打包环境android4.0.3,我方机器(android 5.1.1)
-------------result: failed-----按键点击无效
第五版:AudioTestProject.apk --- unity5.0.1,打包环境android4.0.3,我方机器(android 5.1.1)
-------------result: failed-----按键点击无效---但是音乐播放成功
第六版:AudioTestProject.apk --- unity5.0.1,打包环境android4.0.3,我方机器(android 5.1.1)----经过游戏方修改
-------------result: passed-----按键正常,音乐正常
总结:
unity5.0之后,不向下兼容----故,在android4.x上都是没问题的,唯独升上android5.x就出现问题。
也说明了unity5.x 对 android5.x的兼容性存在问题。有待提高。
为今之计,解决策略:只能是unity降低版本。具体做法:改版到低版本,找到一个最接近的unity版本,剩下的再测试游戏,修改ERROR
定位问题不难,难的是沟通,跟方案公司的沟通,真累啊...
作为一个完全不懂unity的人,从0开始定位,略麻烦。。。
背景:公司开发了一款基于UNITY的游戏,作为一个亮点宣传。
问题:游戏在RK3288平台上无法正常使用。音频文件无法解码。播放出来都是滋滋滋滋杂音。。。
游戏:委托第三方开发
平板:由方案公司提供,方案公司又需要RK支持才能解决。
现状:这里其实是4方,我司是甲方,乙方各执一词,不牵头定位就找不到原因,游戏必然被砍。要求方案公司查,然后方案公司再去找RK,呵呵,基本没戏。方向在游戏商上。
定位开始:
1. RK3288对游戏引擎的支持不行
---思路------------------判断是否是通病,找市面上现有的相同引擎开发的可正常使用的游戏测试.
---解决------------------根据百度,找到一款:涂鸦保龄球,可以正常出声。经过解包确认,的确是用的unity引擎(游戏方居然跟我说不肯定是不是用的unity,还是得靠自己啊)---排查完毕
2. RK3288对游戏引擎的不同版本支持不行
---思路------------------在1的基础上,判断是否对不同版本的支持不一样?
---解决------------------要求游戏方编译一个最简单的demo程序,仅播放音频,方便降级升级unity引擎版本
3. 不同Unity的音频文件提取进行测试
---解决------------------经分析,音频文件在unity中会被转换一次,重新生成新文件,并由产生索引文件定位,从游戏产生的apk中可以体现,resource全部为无扩展名的文件,由unity_default_resources和unity_builtin_extra进行定位。-------此路不通
4. unity3d调用的so库是否可查
---解决------------------unity3d是一个收费引擎,闭源的,无法从底层着手处理,只能测试。-------此路不通
5. unity3d是否分音频引擎和视频引擎,是否之间有影响?
---解决------------------游戏的渲染,是否会对音频io产生影响,在闭源的情况下,这些实现细节不得而知,只能测试。--------此路不通
小结:不知道游戏在产生时调用的so,不知道引擎渲染是否有影响,不知道其他游戏的音频文件。
那边只能,通过版本先定位了
艰辛定位路
1. 按照之前的思路, 再次试了10款游戏, 均正常.
2. 这10款游戏随机查看其中的unity版本, 发现均在3.x 4.x的样子
3. 游戏方给出demo进行试验
-------------result: failed-----声音播放失败
第二版:AudioTestProject.apk --- unity4.x,打包环境android4.0.3,我方机器(android 5.1.1)
-------------result: passed-----声音一切正常
第三版:AudioTestProject.apk --- unity4.x,打包环境android4.4, 我方机器(android 5.1.1)
-------------result: passed-----声音一切正常
第四版:AudioTestProject.apk --- unity5.x,打包环境android4.0.3,我方机器(android 5.1.1)
-------------result: failed-----按键点击无效
第五版:AudioTestProject.apk --- unity5.0.1,打包环境android4.0.3,我方机器(android 5.1.1)
-------------result: failed-----按键点击无效---但是音乐播放成功
第六版:AudioTestProject.apk --- unity5.0.1,打包环境android4.0.3,我方机器(android 5.1.1)----经过游戏方修改
-------------result: passed-----按键正常,音乐正常
总结:
unity5.0之后,不向下兼容----故,在android4.x上都是没问题的,唯独升上android5.x就出现问题。
也说明了unity5.x 对 android5.x的兼容性存在问题。有待提高。
为今之计,解决策略:只能是unity降低版本。具体做法:改版到低版本,找到一个最接近的unity版本,剩下的再测试游戏,修改ERROR
定位问题不难,难的是沟通,跟方案公司的沟通,真累啊...
0 0
- 定位unity在rk3288平台上音频解码无效的bug---定位终成功
- Android上的bug定位(troubleshooting)
- Android上的bug定位(troubleshooting)
- Android上的bug定位(troubleshooting)
- Android上的bug定位(troubleshooting)
- Android上的bug定位(troubleshooting)
- Android上的bug定位(troubleshooting)
- Android上的bug定位(troubleshooting)
- 百度定位上的小bug
- Bug的定位
- Unity中快速给Object在屏幕上定位
- 音频定位
- 在定位中追寻成功
- 在定位中追寻成功
- Android上的bug定位(troubleshooting) 分享
- Android上的bug定位(troubleshooting) 分享
- 定位bug
- Unity ios平台GPS地址位置定位
- SwipeRefreshLayout嵌套复杂布与listview冲突解决
- linux释放内存脚本
- 手机facebook怎么用?苹果手机facebook使用方法
- MemCache超详细解读
- 淘宝Kissy框架使用记录
- 定位unity在rk3288平台上音频解码无效的bug---定位终成功
- iOS编程Cookbook第19章最后一个例子不能正常工作的解决办法
- java基础01
- 常见协议RFC对应表
- 新手引导的实现原理
- java实例化代码------------------监听事件
- android自定义标题栏时候you cannot combine custom titles with other title
- 使用Delphi调用条形码控件BarTender打印标签
- UICollectionView不能拖拽或者刷新抖动