ubuntu平台下编译vlc-android视频播放器实践

音视频实践学习

概述

视频播放器的方案其实有很多种,常规的比如ffmpeg,或者ijkplayer(基于ffmpeg),或者使用系统自带的MediaPlayer都可以实现基本的播放功能,但是如果要支持多种格式的话,技术选型可能要作多考虑,之前的博客写了部分关于ffmpeg的移植相关的内容,最近准备实现一个简单的播放器,因为这个vlc-android是开源的,因此,今天记录一下这个编译过程

环境准备

操作系统:ubuntu 16.05
ndk版本 :android-ndk-r14b
vlc-android版本:3.0.13

下面的脚本build-env.sh二话不说,先运行一遍,保证自己的电脑里编译环境是齐全的:

sudo apt-get update
sudo apt-get install autoconf make m4 gawk mawk a.k.a g++
sudo apt-get install automake autopoint cmake ant build-essential libtool patch 
sudo apt-get install pkg-config protobuf-compiler ragel subversion unzip git wget
sudo apt-get install liba52-0.7.4-dev libxcb-composite0-dev libxcb-xv0-dev libxcb-randr0-dev libasound2-dev 
sudo apt-get install libprotobuf-c-dev libprotobuf-c1 libprotobuf-dev protobuf-c-compiler
sudo dpkg --add-architecture i386
sudo apt-get install zlib1g:i386 libstdc++6:i386 libc6:i386
sudo apt install libtool-bin

检查protoc版本

你可以先看看自己本机的protoc版本

#查看版本
protoc --version

如果版本低于3.0.0版本,需要升级一下protoc版本,笔者使用的是最新的3.6.1版本,官方文档:https://github.com/protocolbuffers/protobuf/blob/master/src/README.md

git clone https://github.com/protocolbuffers/protobuf.git
cd protobuf
git submodule update --init --recursive
./autogen.sh

./configure
make
make check
sudo make install
sudo ldconfig

开始编译

最新的代码地址:https://code.videolan.org/videolan/vlc-android

编译过程比较简单,主要是前期依赖的一些环境配置好就可以了,笔者是基于3.0.13版本进行编译的,你也可以看看它的tag列表,根据自己的需要选择对应的版本

git clone git@code.videolan.org:videolan/vlc-android.git
git checkout 3.0.13

先编写配置脚本config.sh

export ANDROID_SDK=/media/byhook/backup/android-sdk-linux
export ANDROID_NDK=/media/byhook/backup/android/android-ndk-r14b
export PATH=$PATH:$ANDROID_SDK/platform-tools:$ANDROID_SDK/tools

配置编译library库的脚本build-libs.sh

source config.sh
sh compile.sh -l -a armeabi-v7a -r

配置编译apk文件的脚本build-apk.sh

source config.sh
sh compile.sh -a armeabi-v7a

注意:在这个过程中可能会下载需要的依赖和部分源码,备好翻墙梯子,确保能访问google

如果编译library库,最终会输出:

如果编译apk文件,最终会输出:

运行apk文件如图:

整个开源项目功能已经非常完善了,包括各种字幕的加载,部分流协议的支持,还有各种均衡器等等,基本可以说是开箱即用

参考:
https://wiki.videolan.org/Compile_VLC/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值