基于IJKPlayer,实现了多功能的视频播放器。
- 支持基本的拖动,声音、亮度调节。
- 支持边播边缓存,使用了AndroidVideoCache。
- 支持视频本身自带rotation的旋转。
- 增加了重力旋转与手动旋转的同步支持。
- 支持列表播放。
- 直接添加控件为封面。
- 全屏和播放等的动画效果。
- 列表的全屏效果优化,多种配置模式。
- 列表的小窗口播放,可拖动。
- 网络视频加载速度。
- 锁定/解锁全屏点击功能。
- 支持快播和慢播。
- 调整显示比例:默认、16:9、4:3。
- 暂停时前后台切换不黑屏
- 调整不同清晰度的支持。
- 支持IJKPlayer和EXOPlayer切换。
- 进度条小窗口预览(测试)。
- Https支持。
- 支持播放时旋转画面角度(0,90,180,270)。
- 连续播放一个列表的视频。
- 支持全屏与非全屏两套布局切换
- 弹幕支持
compile 'com.shuyu:GSYVideoPlayer:1.6.3'
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
dependencies {
compile 'com.github.CarGuo:GSYVideoPlayer:v1.6.3'
}
- 修改了播放器全屏时的选择90度问题
- 修改了播放器可能存在的拉伸问题
- 增加旋转播放画面的demo和库支持
- 移除无用代码
- 修复了动态播放按键的显示小白点问题
- 增加了 NormalGSYVideoPlayer(使用正常图片做播放按键、系统loading的播放器)
- 增加了动态加载so的方法
- 增加了setIsTouchWigetFull方法,全屏的时候也可以禁止滑动产生的快进,声音,亮度调节逻辑
/**
* 设置自定义so包加载类
* 需要在instance之前设置
*/
public static void setIjkLibLoader(IjkLibLoader libLoader)
/**
* 是否可以全屏滑动界面改变进度,声音等
* 默认 true
*/
public void setIsTouchWigetFull(boolean isTouchWigetFull)
更多版本请查阅:版本更新说明
-keep class tv.danmaku.ijk.** { *; }
-dontwarn tv.danmaku.ijk.**
-keep class com.shuyu.gsyvideoplayer.** { *; }
-dontwarn com.shuyu.gsyvideoplayer.**
请参看IJKPlayer和AndroidVideoCache相关协议。