ubuntu平台下编译vlc-android视频播放器实践
音视频实践学习
- android全平台编译ffmpeg以及x264与fdk-aac实践
- ubuntu下使用nginx和nginx-rtmp-module配置直播推流服务器
- android全平台编译ffmpeg合并为单个库实践
- android-studio使用cmake编译ffmpeg实践
- android全平台编译ffmpeg视频解码器实践
- android全平台编译ffmpeg支持命令行实践
- android全平台编译ffmpeg视频推流实践
- android平台下音频编码之编译LAME库转码PCM为MP3
- 图解YU12、I420、YV12、NV12、NV21、YUV420P、YUV420SP、YUV422P、YUV444P的区别
- 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/
ubuntu平台下编译vlc-android视频播放器实践相关推荐
- 在Ubuntu下编译VLC并实现播放视频
在Ubuntu下编译VLC并实现播放视频 一.下载VLC源码 二.安装VLC依赖的库 三.VLC编译与安装 1.编译与安装 2.库文件 3.头文件 四.调用VLC实现播放视频 1.添加头文件.库路径 ...
- 安卓9.0刷linux,Ubuntu系统下编译Android 9.0系统
8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? 前言 在Ubuntu系统下编译Android系统.哎呀不知道是不是换了新电脑的缘故,这次编译居然从安装JDK和配置环境下 ...
- Android 平台下的原生 Markdown 解析器
Markdown 项目地址:zzhoujay/Markdown 简介:Android 平台下的原生 Markdown 解析器 Android 平台的原生 Markdown 解析器,已整合进 RichT ...
- 基于NDK、C++、FFmpeg的android视频播放器开发实战-夏曹俊-专题视频课程
基于NDK.C++.FFmpeg的android视频播放器开发实战-1796人已学习 课程介绍 课程包含了对流媒体(拉流)的播放,演示了播放rtmp的香港卫视,支持rtsp摄像头和ht ...
- 视频教程-基于NDK、C++、FFmpeg的android视频播放器开发实战-Android
基于NDK.C++.FFmpeg的android视频播放器开发实战 夏曹俊:南京捷帝科技有限公司创始人,南京大学计算机硕士毕业,有15年c++跨平台项目研发的经验,领导开发过大量的c++虚拟仿真,计算 ...
- 基于ffmpeg+opengl+opensl es的android视频播放器
最近做了一个android视频播放器,在jni中采用c/c++现了播放器的播放,暂停,快进等基本的播放器功能. 使用开源库FFMpeg来解码,得到音视频数据,FFMPEG是一个功能强大的音视频解码,编 ...
- 在Windows下编译VLC并实现播放视频
在Windows下编译VLC并实现播放视频 一.编译Win版的VLC真麻烦 二.获取VLC的SDK 1.下载VLC播放器 2.库文件 3.头文件 三.调用VLC实现播放视频 1.拷贝头文件和库文件 2 ...
- VLC Android播放器介绍
VLC目录结构 在ubuntu下编译vlc完成后,就可以将vlc-android部分导入android studio或者eclipse当中,完成java端的代码定制修改和编译,也可以自己将需要的部分添 ...
- VLC Media Player for Mac(VLC多媒体视频播放器)
VLC Media Player多媒体播放器是VideoLAN计划的多媒体播放器,mac版VLC多媒体视频播放器VLC Media Player如何使用.一款高度便携的多媒体播放器,适用于各种音频和视 ...
最新文章
- 德国KubeCon直击:如何轻松且安心地将k8s用于生产?
- 算法 - 插入排序(C#)
- vue创建脚手架 cil
- mysql cte 表不存在_使用CTE解决复杂查询的问题_MySQL
- 给定一个整数N,那么N的阶乘N!末尾有多少个零呢?
- 如何从ERP下载Sales BOM到CRM
- 『数据库』数据库系统效率Max--数据库并发控制
- Linux下编译安装Apache httpd 2.4
- Spring—使用类加载从配置文件中读取配置
- 带你初窥谷歌TV的硬软之秘
- 阅读软件怎么添加书源_相册视频制作软件怎么用?怎么添加滤镜?
- Earthquake
- 二路归并排序简介及其并行化
- FastCGI 使用介绍
- 抖音吸粉_抖音吸粉六大技巧
- 学习markdown
- macOS:实现 声音内录 不用其它App
- 表单中多个文本框实时计算金钱总和值
- YOLO中MAP的具体计算
- Zabbix监控系统系列之五:SNMP监控Windows客户端