原文地址:https://blog.csdn.net/jun5753/article/details/81222448
-
github上目前start 10K多,Google的官方播放器,demo展示了如何去开发一款音频媒体应用,该应用可跨多种外接设备使用,并为Android手机,平板电脑,Android Auto,Android Wear,Android TV和Google Cast设备提供一致的用户体验。
源码解读:Android 解读开源项目UniversalMusicPlayer
2.JieCaoVideoPlayer
github上star目前为止有:7.3k多,是一款视频开源框架,而且有中文文档说明。
主要特点
可以完全自定义UI和任何功能
一行代码切换播放引擎,支持的视频格式和协议取决于播放引擎,android.media.MediaPlayer ijkplayer
完美检测列表滑动
可实现全屏播放,小窗播放
能在ListView、ViewPager和ListView、ViewPager和Fragment等多重嵌套模式下全屏工作
可以在加载、暂停、播放等各种状态中正常进入全屏和退出全屏
多种视频适配屏幕的方式,可铺满全屏,可以全屏剪裁
重力感应自动进入全屏
全屏后手势修改进度和音量
Home键退出界面暂停播放,返回界面继续播放
WebView嵌套本地视频控件
demo中添加视频缓存的例子
源码解读:Android JiaoZiVideoPlayer源码分析
3.GSYVideoPlayer
github上star目前为止有:6.7k多,是一款基于IJKPlayer(兼容系统MediaPlayer与EXOPlayer2),实现了多功能的视频播放器。主 要功能如下:
类型 | 功能 |
---|---|
缓存 | 边播边缓存,使用了AndroidVideoCache;ExoPlayer使用SimpleCache。 |
协议 | h263\4\5、Https、concat、rtsp、hls、rtmp、crypto、mpeg等等。(ijk模式格式支持) |
滤镜 | 简单滤镜(马赛克、黑白、色彩过滤、高斯、模糊、模糊等等20多种)、动画、(水印、画面多重播放等)。 |
帧图 | 视频第一帧、视频帧截图功能,视频生成gif功能。 |
播放 | 列表播放、列表连续播放、重力旋转与手动旋转、视频本身rotation旋转属性、快播和慢播、网络视频加载速度。 |
画面 | 调整显示比例:默认、16:9、4:3、填充;播放时旋转画面角度(0,90,180,270);镜像旋转。 |
内核 | IJKPlayer、EXOPlayer、MediaPlayer切换、自定义内核 |
布局 | 全屏与非全屏两套布局切换、没有任何操作控件的纯播放支持、弹幕功能、继承自定义任何布局。 |
播放 | 单例播放、多个同时播放、视频列表滑动自动播放、列表切换详情页面无缝播放。 |
窗口 | 小窗口、多窗体下(包括桌面)的小窗口播放。 |
广告 | 片头广告、跳过广告支持、中间插入广告功能。 |
更多 | 暂停前后台切换不黑屏;调整不同清晰度的支持;无缝切换支持;锁定/解锁全屏点击功能;进度条小窗口预览(测试)。 |
自定义 | 可自定义渲染层、自定义管理层、自定义播放层(控制层)、自定义缓存层。 |
效果如图:
源码解读:GsyVideoPlayer视频分析使用