2.3Android调研
来源:互联网 发布:电商cps导购网站源码 编辑:程序博客网 时间:2024/05/16 05:12
首先,力推一个网站:http://www.52im.net/thread-228-1-1.html,简直是即时通信的福音。
有很多理论和架构方面的资料,像我蒙头写代码写了这段时间,看看这个,感觉还是能学习很多的,退几步讲,给面试的时候提供了装B的材料。
大致翻阅了里面关于音视频的文章。无非还是那几样,先采样,然后编码,流式发送,接收缓存,正常速率读取,然后解码后,播放语音或者视频。
这里的编解码,涉及到软解码和硬解码,软解码的话,一般就要用C代码了,这里就牵扯到了JNI
NDK的下载地址:http://www.cnblogs.com/huoshenmanbu/p/4898851.html(奇怪的是,这个网址的不能用,就是会报错),反而http://www.pc6.com/softview/SoftView_471356.html(反而这个可以用)。
再配合http://blog.csdn.net/cheng1204456236/article/details/51753701(这个链接是windows的,比较火的有一个是mac的)。(这是第一种)
终于实现了C++代码的混用,但是。这个方法还是有点冗余,比如Android.mk,假如代码复杂又不太好用了。
另外用gradle-experimental的方法,始终不行,gradle-experimental始终没有装上去。
终于搞定了,总结一下,大方针:http://www.jianshu.com/p/7844aafe897d
假如碰到问题,基本上http://blog.csdn.net/muyang_ren/article/details/50160241这个链接能解答。还有部分问题,少量特异性的问题,就得靠自己百度和自己摸索下了。(这是第二种方法)
我的环境是,java1.7 + AS2.1.2
画了整整一天的时间折腾环境,还真是麻烦。接下去聊聊音频的开发。
首先明确,这个项目是p2p的语音聊天。因此过程其实不复杂,当两个ip对接后,一方,采集,编码,发送,另一方,接收,解码,播放就行。编码,有一个C语言下的xmpp协议,还有一个不错demohttp://blog.csdn.net/zgyulongfei/article/details/7753330可以研究下。
接着是视频聊天开发调研。这个编解码是必不可少了。不编码的话,例如,200*200大小的视频,图片发送,一张就是200*200*3*8?差不多,比UDP最大包还大,所以没法发。
Android有个API,MediaCodec,这个api限制在API 16后,也就是android 4.1.2(有个pad只有4.0.4.。。我http://www.cnblogs.com/skyseraph/archive/2012/04/04/2431771.html硬编码链接)http://blog.csdn.net/mabeijianxi/article/details/68942397。
暂时决定用ffmpeg来做,有个很好的链接http://www.ihubin.com/blog/android-ffmpeg-demo-2/。
目前已经实现了,把他的so拿过来,然后编写一个测试代码,基本上按照他的步骤走。最后布局调整下,gradle.properties后面加一句android.useDeprecatedNdk=true(普通JNI也需要),build.gradle(app)那个加上sourceSets.main{
jniLibs.srcDir 'src/main/libs'
jni.srcDirs=[]
}(这部分,普通JNI也需要),这样就能编译通过了
ndk需要和ffmpeg联合编译貌似,所以。。
刚刚给他点赞。。然后就博主就放弃了。。看看雷神的吧
然后调代码有的在5.0可以用的,但是再4.0就不行,会直接退出,具体看http://blog.csdn.net/jiawei6212130/article/details/52302432
http://blog.csdn.net/ztguang/article/details/51012231,一个在Windows上安装Cygwin和GCC的
还有个JavaVc的方案
暂时实现了一个Mediacodec的方案。会有一篇文章专门讲这个心酸历程
- 2.3Android调研
- Android平台安全性调研
- android自动化测试报告调研
- Calabash-android调研
- android支付平台调研
- Android Otto调研
- Android 浏览器开发调研
- 2.1Android调研
- 2.2Android调研
- Android现有播放器(调研)
- android流媒体播放方案调研
- android支付平台集成调研
- android支付平台集成调研
- Android短信广播监听调研
- android支付平台集成调研
- android支付平台集成调研 .
- Android自动化测试工具调研
- android支付平台集成调研 .
- C# 将文本写入txt文件中
- 如何选择与设置域名?
- 『谷粒儿』-有它,育儿就是这么简单
- extjs6.2 Ext.tab.Panel刷新页面,不回到初始页面
- 1.14.ARM汇编指令集2数据传输和算术指令详解
- 2.3Android调研
- 【GISer小O】JAVA后台的小白之路(序)——既然是个序,就得扯淡
- mybatis JDBC requires that the JdbcType must be specified for all nullable parameters
- 微信开发和微擎之坑
- 代写品牌故事-品牌故事如何写才感人
- UART、SPI、IIC
- 深入分析java class loader
- 位运算训练01—请编写一个c函数,该函数给出一个字节中被置为1的位的个数
- 华为OJ——字符串匹配