您的位置:首页 > 其它

EasyPlayer支持x86和arm64 ABI

2017-08-15 23:29 323 查看
不久之前,EasyPlayer仅支持armeabi-v7a版本的abi——怎么说呢——通常可以满足需求了。因为安卓对于ABI的支持是做了兼容的,非arm架构的,可以通过某种方法兼容ARM架构的动态库。

但是这样的确会损害一些性能。。本着精益求精的态度,我们打算再支持一些主流的CPU架构,典型的就是arm64和x86了。

主要涉及到下面一些库的修改:

- libEasyRTSPClient

- libAudioCodecer

- libVideoCodecer

由于后两者同时用到了ffmpeg,因此再引入了ffmpeg动态库

- libproffmpeg

底层那套东西就是做了一些交叉编译的体力劳动,因为一些大的开源工程不能简单用NDK里典型的编译方式来编译——需要自己编译交叉编译链(standalone toolchain,具体方法可参考:

https://developer.android.com/ndk/guides/standalone_toolchain.html) 并进行交叉编译。

上层的改动主要是,将一些int型转成long型。其原因可在这篇博客中得知:

http://blog.csdn.net/jyt0551/article/details/53575515

因此编译ok后,额外增加了几个动态库文件,这样会导致程序体积倍增,但在没有GooglePlay的我朝,遇到这种事情也没什么好办法。。

除此之外,程序倒是没有遇到什么异常。

另外支持了x86后,在模拟器上debug,比真机还快,这是一件很开心的事情,再也不用对爱机频繁插拔数据线了!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: