android 自带的mediaplayer出于一些专利等等滴原因,只能支持mp4格式视频的播放,对于一款能够满足用户需求的视频播放器应用肯定是远远不够的,那么我们需要采取一些手段了,废话不多说了。

首先想到的肯定是使用jni去调一些c库,然后我就找到了ffmpeg,很遗憾,个人虽然自认为C还可以(哈哈,有点吹牛啦),但是这个c库涉及底层的东西实在太多了,刚开始将它在linux下编译,挺快就能播放视频了,但是,随着这个,蛋疼的事情也来了,要将它移植到手机arm平台,那老费劲了,指定平台是liunx,和arm再去用那些armgcc啥的编译,纠结了好几个晚上。(说明下这里为何不使用现成的ndk-build,因为这个编译相对来说比较复杂,所以那个Android.mk文件真不知该从何下手去写),偶然发现有一个使用ffmpeg的开源库vitamio(可以百度  农民伯伯 去他的博客园可以详细的了解这个)

接下来我就是使用的这个开源库,我虽然对ffmpeg还是很感兴趣,但做应用嘛,能站在人家的肩膀上是最好的了嘛,可能我们见解不一样,不要喷我哦。

第一篇就详细的说下如何把官方给的demo调试通过吧:

首先是下载包:可以在这个博客上下载 http://www.cnblogs.com/over140/archive/2013/01/15/2860653.html

下载完成后,首先,导入android工程VitamioBundle(可能会有一些小错误,把那些 overwrite去调就好了),然后右键项目--》属性--》选到android  把最下面的is liblary打钩,apply  应用就好了。

这个就是我们用的解码库了,至于里面提供了哪些接口,等做的时候去看那些api吧

接下来就是调试那个 demo了,android导入工程,这里会报错,因为还没有使用那个库,使用库有两种办法:

1:直接将上面这个工程的两个jar包导入,然后builder-path,变成奶瓶就好了:两个jar包分别是vitamioBunlder 和 vitamio两个

2:右键该demo,属性---android--在下面的lib那边点击add,选择上面那个工程,ok了

有一些小错的话自己改一下,运行。

注意这个demo是使用的一个网络包,所以确保可以上网。

然后注意题目,俺说的是可以播放任何视频格式的,到demo中将path修改成需要使用的那个视频文件的路径就成了,赶紧试一试吧,如果有问题可以留言,非常乐意为您解决

android 万能视频播放器相关推荐

  1. android万能播放器,Android万能视频播放器05-音视频同步

    1.概念 由于视频播放器中音频和视频是分别播放和渲染的,就会出现声音和画面不同步的现象.为了使同一时刻声音和画面的一致性,我们就需要音视频同步来实现,这就是音视频同步. 2.播放时间 2.1.音频播放 ...

  2. android 暂停函数,Android万能视频播放器06-添加视频暂停、播放和Seek功能

    1.Seek函数: avformat_seek_file(pFormatCtx, -1, INT64_MIN, relsecds, INT64_MAX, 0); relsecds单位: int64_t ...

  3. android能播放4k视频格式,安卓APP,无广告支持多种格式的万能视频播放器

    原标题:安卓APP,无广告支持多种格式的万能视频播放器 万能视频播放器 万能视频播放器是一款专业的视频播放工具.它支持所有视频格式,支持 4K/超高清视频文件,并且能够高清播放.它是安卓手机和平板上欣 ...

  4. 使用Vitamio打造自己的Android万能播放器(2)—— 手势控制亮度、音量、缩放

    前言 本章继续完善播放相关播放器的核心功能,为后续扩展打好基础. 声明 欢迎转载,但请保留文章原始出处:)  博客园:http://www.cnblogs.com 农民伯伯: http://over1 ...

  5. Vitamio打造自己的Android万能播放器

    前言 虽然Android已经内置了VideoView组件和MediaPlayer类来支持开发视频播放器,但支持格式.性能等各方面都十分有限,这里与大家一起利用免费的Vitamio来打造属于自己的And ...

  6. 使用Vitamio打造自己的Android万能播放器(1)——准备

    前言 虽然Android已经内置了VideoView组件和MediaPlayer类来支持开发视频播放器,但支持格式.性能等各方面都十分有限,这里与大家一起利用免费的Vitamio来打造属于自己的And ...

  7. 使用Vitamio打造自己的Android万能播放器(5)——在线播放(播放优酷视频)

    前言 为了保证每周一篇的进度,又由于Vitamio新版本没有发布, 决定推迟本地播放的一些功能(截图.视频时间.尺寸等),跳过直接写在线播放部分的章节.从Vitamio的介绍可以看得出,其支持http ...

  8. android vitamio 实现快速播放,使用Vitamio打造自己的Android万能播放器(5)

    前言 为了保证每周一篇的进度,又由于Vitamio新版本没有发布, 决定推迟本地播放的一些功能(截图.视频时间.尺寸等),跳过直接写在线播放部分的章节.从Vitamio的介绍可以看得出,其支持http ...

  9. 使用Vitamio打造自己的Android万能播放器

    前言 虽然Android已经内置了VideoView组件和MediaPlayer类来支持开发视频播放器,但支持格式.性能等各方面都十分有限,这里与大家一起利用免费的Vitamio来打造属于自己的And ...

最新文章

  1. 设计模式入门,适配器模式,c++代码实现
  2. C# 高性能 TCP 服务的多种实现方式
  3. Docker学习笔记之保存和共享镜像
  4. s11.1 lsof:查看进程打开的文件
  5. Python与JavaWeb的第一次碰撞
  6. ncm 网络_江森楼宇自控网络控制模块NCM优势详解
  7. 滴滴开源基于 React 的移动端开发组件库-Pile.js
  8. 设计模式之实验二: 创建型设计模式实验
  9. 形式化验证和功能验证VC Formal-synopsys芯片验证基础篇(六)
  10. 什么是HTML? 看这一篇就够了(附带主流IDE推荐)
  11. 电脑上怎么看主板型号
  12. c语言 菜单选择,设计一通过 c语言 个简单实用的菜单,通过菜单选择不同的菜单项并实现相应的功能。...
  13. 卡券优惠接口对接开发源码
  14. 机器学习和深度学习的主要术语(中英)
  15. 大数据开发教程——构建Hadoop开发环境
  16. 乱杀HTML知识点(小白版本)
  17. 挑战用100美元赚100万美元
  18. npl自然语言理解测试
  19. Android:异步加载图片
  20. Python学习:正则表达式匹配手机号,邮箱

热门文章

  1. gbk汉字拼音码形成手记
  2. 索尼PSN网络恢复上线 但部分用户仍无法游戏
  3. vue集成px2rem
  4. 【linux】Ubuntu 系统下查看显卡相关信息
  5. 【OpenCV】车牌自动识别算法的设计与实现
  6. 51信用卡 Android 自动埋点实践
  7. 使用 netlify 部署你的前端应用
  8. Netlify静态资源托管之部署自动化
  9. Java窗体JTextArea添加背景图片
  10. golang的优势与缺点