首先介绍下这个开源项目,这个开源项目是BiliBli 开源的,首先感谢他们的团队。

这是开源的地址: https://github.com/Bilibili/ijkplayer

首先我为什么要选这个,因为公司需要做视频类的功能,所以我就找了 Vitamio和ijkplayer 他们的口碑最好,后来查到说 Vitamio如果商用的话需要授权,这个为了省钱还是拥抱了开源.哈哈

言归正传,首先

1、download开源项目

下载下来文件不大,但看看里面的文件发现好多。

2.解压下来导入工程,导入什么工程呢看下面的红框

等待一段时间构建完成后就可以看到这样了,这是可以运行了,但你运行你会发现打开视频会崩溃

3、解决报错

视频打开就报错,是因为没有解码的库导致的,你可以这样做

(1).这里我提供工程缺失的so库

下载地址:https://pan.baidu.com/s/1eSsxXSI

解压后放入工程,再次运行就可以了如图

这样的话其实可以把后缀为 -x86 ,-86_64,armv7a,armv5,arm64 的module移除了(不知道怎么移除module的请看android studio 中移除module和恢复module)。

(2).第二种方法 (没试估计也是可以的)

参考 : http://blog.csdn.net/u010987039/article/details/52301077

2.1在Gradle中引入 #号是注释

# required
allprojects {
repositories {
jcenter()
}
} dependencies {
# required, enough for most devices.
compile 'tv.danmaku.ijk.media:ijkplayer-java:0.6.1'
compile 'tv.danmaku.ijk.media:ijkplayer-armv7a:0.6.1' # Other ABIs: optional
compile 'tv.danmaku.ijk.media:ijkplayer-armv5:0.6.1'
compile 'tv.danmaku.ijk.media:ijkplayer-arm64:0.6.1'
compile 'tv.danmaku.ijk.media:ijkplayer-x86:0.6.1'
compile 'tv.danmaku.ijk.media:ijkplayer-x86_64:0.6.1' # ExoPlayer as IMediaPlayer: optional, experimental
compile 'tv.danmaku.ijk.media:ijkplayer-exo:0.6.1'
}

4.运行就可以了。

简单解释下

VideoActivity是播放界面
tv.danmaku.ijk.media.example.widget.media.IjkVideoView 播放控件
AndroidMediaController 是控制器
// 初始化ijkplayer
IjkMediaPlayer.loadLibrariesOnce(null);
IjkMediaPlayer.native_profileBegin("libijkplayer.so");

我找到了已经实现播放界面的开源项目,都写好了注释的 IjkVideoView

如果嫌自定义麻烦可以看看这个开源项目也是基于这个的:https://github.com/tcking/GiraffePlayer

也可以参考这个demo:http://download.csdn.net/detail/huaxun66/9698723

最新文章

  1. InnoDB关键特性学习笔记
  2. 帆软报表FineReport2016年1月份产品更新一览
  3. iOS聊天下拉刷新聊天记录的实现
  4. 【jQuery】scroll 滚动到顶部
  5. 重温WCF之数据契约和序列化(四)
  6. 如何使用 vimdiff 来 git diff /svn diff
  7. MVC项目内无法添加System.Web.Optimization
  8. poj1080 dp
  9. SQL Server2000企业管理器在Win7中新建表错误的解决方法
  10. Ubuntu系统中安装RPM格式包的方法
  11. 用ATL和MFC来创建ActiveX控件
  12. How to set up Dynamics CRM 2011 development environment
  13. Android进阶(二十五)setTextColor()的参数设置方式
  14. [转]FFMpeg框架代码阅读
  15. Lucene 03 - 什么是分词器 + 使用IK中文分词器
  16. pyhton 爬虫爬去吾爱精品软件的信息并写入excel
  17. 到达一个数 Reach a Number
  18. elasticsearch UNASSIGNED 处理
  19. CentOS下Crontab安装使用详细说明(转)
  20. Loom

热门文章

  1. Enum枚举类使用集合
  2. hdu1013(C++)
  3. quartz---任务调度小试(多任务)
  4. python pip安装lxml失败(转)
  5. Flume推送数据到SparkStreaming案例实战和内幕源码解密
  6. sql取随机结果集
  7. 用Jmeter对数据库执行压力测试
  8. Angular 学习笔记——表单验证
  9. Windows为什么双击打开‘我的电脑’, 没有了‘前进’‘ 后退’‘向上’等按钮?
  10. 系统重装 JUJUMAO VHD安装WIN7解析