因为最近项目需要用到webrtc,所以对它有些了解,并对它的功能做一些调整和添加。现在的webrtc不支持视频的H.264库和音频的AAC、AMR编解码,我们因为项目的需求,在里面进行了添加,还对音视频的播放时延进行了更改和控制。今天主要介绍Webrtc的环境搭建和编译问题,其他的后面会作介绍!
一)系统:ubuntu 12.04 64位
推荐系统不要用太新的,因为后面装某个软件,会不支持,我刚开始用的14的系统,就没有成功,改为了12.04的。
二)考虑到在ubuntu下修改代码方便,我在ubuntu下把安卓的环境搭建好了,具体包括JDK,eclipse,SDK和NDK,ADT,CDT。SDK和NDK直接用的webrtc源码里面自带的,没有再下其他的。安卓环境搭建的文章,网上有很多,可以去参考,我就不介绍了,但别忘了64位的系统,需要装32位的库,不然安卓环境搭建不成功。还有ADT和CDT不要在线装,会很慢,推荐离线安装,在网上先把软件找好,离线安装网上教材也有很多,可以参考。
三)我主要参考的blog.csdn.net/chenyafei617/article/details/38085409这篇博客,他讲的很仔细,webrtc的源码可以在网上同步下载,但速度很慢,我直接用的这篇博主网盘上的代码,跟官网没有什么区别,可以直接使用。
四)有了webrtc的源码后,按照blog.csdn.net/chenyafei617/article/details/38085409这篇博客,只需要再执行他的准备环境和编译代码部分就可以了,同步代码部分跳过。要是你想自己同步代码,那就按照他的全部步骤执行。
编译并不是直接就通过了,还会有很多问题,比如:JDK环境变量没有设置好,权限问题等等,我下面就介绍一些我遇到的,当时编译过程中,记录了几个问题,有些没有记录
[javac] Compiling 2 source files to /home/heling/webrtc/WebRTC20140723_bak/trunk/webrtc/examples/android/opensl_loopback/bin/classes [javac] /home/heling/webrtc/WebRTC20140723_bak/trunk/webrtc/examples/android/opensl_loopback/gen/org/webrtc/app/BuildConfig.java:4: 写入 org.webrtc.app.BuildConfig 时出错: /home/heling/webrtc/WebRTC20140723_bak/trunk/webrtc/examples/android/opensl_loopback/bin/classes/org/webrtc/app/BuildConfig.class (Permission denied) [javac] public final class BuildConfig { [javac] ^ [javac] 1 错误 BUILD FAILED /home/heling/webrtc/WebRTC20140723_bak/trunk/third_party/android_tools/sdk/tools/ant/build.xml:720: The following error occurred while executing this line: /home/heling/webrtc/WebRTC20140723_bak/trunk/third_party/android_tools/sdk/tools/ant/build.xml:734: Compile failed; see the compiler error output for details.
/home/heling/webrtc/WebRTC20140723_bak/trunk/webrtc/examples/android/opensl_loopback/bin/classes/org/webrtc/app/BuildConfig.class的权限不够,也就是只有root用户可以操作,使用命令: sudo chown XXX org -R ,使当前用户可以操作,问题解决!!!
opback/bin/OpenSlDemo-debug.apk "../out/Debug/OpenSlDemo-debug.apk"" bash: ant: 未找到命令 [6/435] CXX obj/webrtc/modules/audio_c...ules_unittests.neteq_stereo_unittest.o ninja: build stopped: subcommand failed.
安装ANT解决问题:sudo get-apt install ant
还有很多问题,并没有记录下来,遇到问题,google就好了,祝成功~~~