mac os上编译vlc视频库的踩坑之旅
新项目开始目涉及媒体播放,在android上多媒体播放最简单就是官方内置的MediaPlayer,其次有ffmpeg,Vitamio,VLC等,最后采用的是:VLC
- MediaPlayer播放支持格式较少,并且不支持流媒体
- FFmpeg功能强大,重量级
- Vitamio需要商业授权
- VLC集成了部分ffmpeg的功能,支持多种格式,并且支持流媒体
开始编译VLC视频库
- 1.参考文档: https://wiki.videolan.org/AndroidCompile/
- 2.问题解决:Google
- 3.编译环境mac os
- 4.需要vpn环境
一.前期准备工作
1.首先需要安装Homebrew它是mac上的包管理神器,后期需要用它软件一些编译用到的软件。安装方法,打开terimal,并输入ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
进行安装。完成后用brew --version
查看是否安装成功。
2.配置一下mac环境的环境变量,cd ~
到用户下,用vim .bash_profile
编辑环境变量参数增加以下:
export ANDROID_SDK=/你的sdk路径/
export ANDROID_NDK=/你的ndk路径/
export PATH=$PATH:$ANDROID_SDK/platform-tools:$ANDROID_SDK/tools
这些参数可以在android studio下工具栏,点击project-structure里找到
二.参照官方编译文档安装软件
Mac上所需的软件包:
我们可以根据它给的这个命令行
sudo apt-get install automake ant autopoint cmake build-essential libtool \ patch pkg-config protobuf-compiler ragel subversion unzip git来安装需要的软件包
需要 |
---|
automake |
ant |
libtool |
cmake |
protobuf |
使用brew install automake ant libtool cmake protobuf
进行安装。以下是我安装完后显示的列表(可以在terimal中使用命令brew list
查看):
我们暂时只关注前面表格里的几个即可(其他也需要用到后面再提)
这里可以注意到官方编译命令行中有几个软件包我们并没有安装如git,autopoint。对于git等默认的软件这里不提及。
注:autopoint我这里使用brew无法安装,具体原因google给出的答案是跟系统有关,希望有人能作出解答。但是我这里安装了依赖gettext,并且在gettext的安装目录bin下发现了autopoint的影子, 所以通过 Homebrew 安装 gettext 之后,修改 ~/.bash_profile:
加入一行 export PATH=${PATH}:/usr/local/opt/gettext/bin。这样在termial下就可以直接使用autopoint命令行,所以我这里是没有直接下载autopoint。
安装完毕后会出现以下图片,说明安装成功: