学习了VideoView和SurfaceView之后感觉虽然videoView使用挺方便的但是它毕竟只能播放mp4和3gp格式的视频,不够适用,就想再多了解一下其他的可以播放视频的控件,从而了解到了一个第三方播放视频的类库就是Vitamio。

一Vitamio介绍

  这里对Vitamio做一个简短的介绍,相信大家应该听说过FFMPEG,FFMPEG也是一个第三方的库,它的底层是用C语言进行编写的,是免费的开源的音视频编解码器,而Vitamio对FFMPEG的视频播放框架进行了封装,而且对外提供的API全部是javaAPI,感觉以后有时间也可以了解一下FFMPEG,感觉它的前景也不错。
  Vitamio 是一款 Android 平台上的全能多媒体开发框架。Vitamio 凭借其简洁易用的 API 接口赢得了全球众多开发者的青睐。到目前,全球已经有超过 1000 种应用在使用 Vitamio,覆盖用户超过 5000 万。

    Vitamio 能够流畅播放720P甚至1080P高清MKV,FLV,MP4,MOV,TS,RMVB等常见格式的视频,还可以在 Android 上支持 MMS, RTSP, RTMP, HLS(m3u8) 等常见的多种视频流媒体协议,包括点播与直播。    支持 ARMv6 和 ARMv7 两种 ARM CPU,同时对 VFP, VFPv3, NEON 等指令集都做相应优化。    支持 Android 2.1+ 系统,支持超过 95% 的 Android 市场。同时 Android 2.1 之前的系统也基本支持,不过没做详细测试  

二、Vitamio使用

  首先我们需要导入库文件,因为Vitamio是一个第三方的库,所以需要我们导入类库,官方给出的并不是一个jar包而是一个project,下面是下载网址:
https://github.com/yixia/VitamioDemo
2、我们需要将我们的project与类库进行关联,点击project—properties—android—勾选islibrary选中vitamio_lib就可以了。
3、布局文件中使用vitamio

 .vov.vitamio.widget.VideoView        android:id="@+id/vv"        android:layout_width="match_parent"        android:layout_height="match_parent"        />

4、MainActivity调用

public class MainActivity extends Activity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        //实现vitamio需要硬件支持,大部分都支持的。检测是否支持vitamio        if (!LibsChecker.checkVitamioLibs(this)) {return;}        VideoView vv = (VideoView) findViewById(R.id.vv);        //其他格式的视频文件        vv.setVideoPath(Environment.getExternalStorageDirectory()+"/aa.rmvb");        vv.start();        vv.setMediaController(new MediaController(this));    }

更多相关文章

  1. 【分享】性能比肩美拍秒拍的Android视频录制编辑特效解决方案【1
  2. android实时视频网络传输方案总结(一共有五套)
  3. Android2.2 display系统介绍
  4. Android(安卓)Support Library的前世今生
  5. Android平台上最好的几款免费的代码编辑器
  6. Android网络电台的一种实现方案
  7. android apk如何入门
  8. S5PV210 Android(安卓)Overlay系统(视频输出系统)分析
  9. AutoCAD即将为Android智能手机和平板电脑推出免费客户端

随机推荐

  1. C 语言中 fun 函数怎么用?
  2. c语言计算阶乘累加和
  3. c++ switch用法
  4. C语言中 return 的作用
  5. c语言实现输出5个数就自动换行
  6. getchar在c语言中是什么意思
  7. c语言自定义函数
  8. Microsoft Visual C++ 怎么使用?
  9. c语言怎么比较两个数的大小
  10. C 语言和 C++ 有什么区别