编译vitamio的ffmpeg

       公司最近在做关于android手机组播视频软解的项目,提到软解就会想到ffmpeg,但是ffmpeg是解码算法而不是播放器(容器),ffmpeg自带容器是基于linux的SDL,手机是用不了。上网搜了一圈,其实VLC是挺适合,但是他依赖的东西太多,至今还没有编译成功过。无意中发现有个叫vitamio的播放器,挺简单的和支持硬件,因此继续分析下去。

官方网站 https://www.vitamio.org 还以为是国外的,进去看原来是中文的,可惜是好像已经有2-3年没有更新信息了。不过还好,代码还有更新

编译环境: Ubuntu 12.04.4 LTS,64位

下载关于vitamio的ffmpeg源代码 https://github.com/yixia/FFmpeg-Vitamio,不过ffmpeg不是最新的是几年前的版本
git clone https://github.com/yixia/FFmpeg-Vitamio
./build_android.sh

1.提示You must define ANDROID_NDK before starting
编译ffmpeg需要android的SDK,NDK,注意的是vitamio是基于ndk8b编译的,但是ndk8b好像是没有64位的系统(找了几天都没有发现),试了ndk11的64位会编译错误,后来找了个64位ndk9d,可以编译通过。
ndk9d地址 http://dl.google.com/android/ndk/android-ndk-r9d-linux-x86_64.tar.bz2
sdk地址 http://dl.google.com/android/android-sdk_r23-linux.tgz

下载ndk,sdk
wget http://dl.google.com/android/ndk/android-ndk-r9d-linux-x86_64.tar.bz2
wget http://dl.google.com/android/android-sdk_r23-linux.tgz

新建文件path.sh,添加配置

vim path.sh
export NDK=/data/vitamio/android-ndk-r9d
export ANDROID_SDK=/data/vitamio/android-sdk-linux
export ANDROID_NDK=/data/vitamio/android-ndk-r9d
export ANDROID_ABI=armeabi-v7a
export NO_NEON=1

启动配置,运行脚本

source path.sh
./build_android.sh

2.提示Please clone from git@github.com:yixia/OpenSSL-Vitamio.git, and run ndk-build 

下载OpenSSL-Vitamio
git clone https://github.com/yixia/OpenSSL-Vitamio
编译OpenSSL-Vitamio
进入OpenSSL-Vitamio,然后运行ndk路径/ndk-build

path.sh添加
export SSL=/data/vitamio/OpenSSL-Vitamio
source path.sh
./build_android.sh

编译10几分钟,生成libffmpeg.so(build\android文件夹有4个不同架构)
提交android代码里面的libffmpeg.so即可

抽时间移植一下最新版本的ffmpeg
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值