美文网首页
ubuntu18.04 编译vlc-android

ubuntu18.04 编译vlc-android

作者: 阿拉贡居民 | 来源:发表于2021-08-13 10:00 被阅读0次

最近工作需要,需要封装一款自己播放器,经过功能(4K/8K, HDR,硬解),平台可移植性等考虑,最终选择libvlc作为我们播放器开发框架,各播放器框架比较:https://www.jianshu.com/p/e66b96436bfe
经过几天折腾才把vlc-android编译过,记录下编译过程。

一、VLC官网地址

libvlc,sample,以及编译说明网址,我们大部分工作都是基于这三个官方网站展开。
1,https://www.videolan.org/vlc/libvlc.html
2,https://code.videolan.org/videolan/libvlc-android-samples
3,https://wiki.videolan.org/AndroidCompile/

二、先把sample跑起来。

libvlc-android-samples是基于gitlab管理,直接去网站下载sample, 并使用android studio编译即可。
这里需要注意,native_sample需要依赖自己编译的aar包,可以先把注释掉(setting.gradle),只编译java_sample。

//include ':native_sample', ':java_sample', ':libvlc'
include ':java_sample'

sample跑起来,也就播放一个视频,可以自己修改测试下其他播放功能。

三、编译libvlc库

第一天在我的android编译环境ubuntu14.04上面折腾了很久,发现各种编译错误,经过google各种错误,得出的结论是我的编译环境太老了,vlc更新太快,它编译依赖的很多工具都是需要最近版本,如果我在ubuntu14.04上面折腾,肯定会破坏我的android编译环境,最终考虑下,还是在虚拟机里面安装ubuntu18.04来编译。

搭建ubuntu18.04虚拟机

这个不多说了,直接下载虚拟机安装,http://releases.ubuntu.com/18.04/, 选择64bit 桌面版。

安装依赖工具

sudo  apt-get update
sudo apt-get install automake ant autopoint cmake build-essential libtool-bin \
     patch pkg-config protobuf-compiler ragel subversion unzip git \
    openjdk-8-jre openjdk-8-jdk flex python wget

这里需要说明下ubuntu18.04默认的java版本是java11,我们手动安装完openjdk-8之后,还需要手动调为jdk8(sudo update-alternatives --config java), 否则编译的过程中,会报javac版本不对,留意下报错就可以。

下载android sdk

参考博客: https://blog.csdn.net/qq_38182842/article/details/110170630
上面博客已经说明很清楚,怎么使用sdkmager命令行工具下载android sdk,我就不重复造轮子。
这里强调下下载android sdk遇到的最大问题是网络不可达, 防火墙问题,这里有几个解决思路,仅供参考:

方案1: (优选方案)

配置/etc/hosts文件,下面是我这边配置的,不要参考我下面的ip地址映射,你要根据自己ping域名或者的ip地址,或者 网站查询ip地址,我遇到过有时候怎么ping dl.google.com都ping不通,网站查询的地址也ping不通,晚上公司人少的时候,ping通很快,下载sdk也很快(* ̄︶ ̄)。

 xxx@ubuntu18:~/samba/android-studio$ cat /etc/hosts
  127.0.0.1 localhost
  127.0.1.1 ubuntu18.04 ubuntu18

  # add for vlc-android download
  203.208.50.65 dl.google.com
  140.82.114.4 github.com
  213.36.253.2 download.videolan.org
  213.36.253.9 code.videolan.org

方案2) 下载android studio工具
 因为现在没有android sdk独立下载的地方,只能通过sdkmanager或者android studio工具,我们平时window下面使用android studio都是可以直接下载的,ubuntu18.04也可以下载android studio工具直接下载sdk。这里也会遇到dl.google.com连接失败问题,解决方法参考方案1.
方案3) 使用国内代理(找了好几个,自己测试过,都不好使,如果有好使代理,可以留言推荐)

因为没有成功过,这个方案暂时保留。
https://www.cnblogs.com/my-blogs-for-everone/p/6268886.html

方案4) 翻墙吧,服务环境不好翻墙,自己搭建ubunt18.04也是为最后可以翻墙预留。

ubuntu18.04下面搭建翻墙软件吧,网上也很多方案,这个是我最后的招, 因为晚上突然ping dl.google.com没有问题,所以这招没有使用上。

下载android ndk

ndk没啥好说的,直接去官网下载。
https://developer.android.com/ndk/downloads/index.html

配置android sdk, ndk环境

这个没啥好说的,配置.bashrc文件即可,参考编译vlc-android

开始编译

我这里是arm64平台,也就是Arm Cotex A8,

buildsystem/compile.sh -a arm64

ubuntu18.04上面把资源下载依赖问题,基本上编译没有问题,如果网络不好,资源下载失败,可以多编译几次,应该就可以编译完成。
编译过程多看下compile.sh脚本,对理解编译过程和解决编译过程中的问题很有帮助。

参考博客

网上上也有很多人总结vlc-androd编译遇到的问题,
1, https://www.codeleading.com/article/12094354372/
2,https://blog.csdn.net/hulaonline/article/details/107418934
3,https://www.jianshu.com/p/319e7a8faa6a

相关文章

网友评论

      本文标题:ubuntu18.04 编译vlc-android

      本文链接:https://www.haomeiwen.com/subject/vhkdbltx.html