/GSYVideoPlayer

视频播放器(IJKplayer),HTTPS支持,支持弹幕,支持基本的拖动,声音、亮度调节,支持边播边缓存,支持视频本身自带rotation的旋转(90,270之类),重力旋转与手动旋转的同步支持,支持列表播放 ,直接添加控件为封面,列表全屏动画,视频加载速度,列表小窗口支持拖动,5.0的过场效果,调整比例,多分辨率切换,支持切换播放器,进度条小窗口预览,其他一些小动画效果。简书:

Primary LanguageJava

基于IJKPlayer,实现了多功能的视频播放器。

  • 支持基本的拖动,声音、亮度调节。
  • 支持边播边缓存,使用了AndroidVideoCache
  • 支持视频本身自带rotation的旋转。
  • 增加了重力旋转与手动旋转的同步支持。
  • 支持列表播放。
  • 直接添加控件为封面。
  • 全屏和播放等的动画效果。
  • 列表的全屏效果优化,多种配置模式。
  • 列表的小窗口播放,可拖动。
  • 网络视频加载速度。
  • 锁定/解锁全屏点击功能。
  • 支持快播和慢播。
  • 调整显示比例:默认、16:9、4:3。
  • 暂停时前后台切换不黑屏
  • 调整不同清晰度的支持。
  • 支持IJKPlayer和EXOPlayer切换。
  • 进度条小窗口预览(测试)。
  • Https支持。
  • 支持播放时旋转画面角度(0,90,180,270)。
  • 连续播放一个列表的视频。
  • 支持全屏与非全屏两套布局切换
  • 弹幕支持

Download Build Status

使用依赖(支持jcenter和jitpack)

1、JCenter 引入方法

直接在module下的build.gradle添加

compile 'com.shuyu:GSYVideoPlayer:1.6.3'


2、JitPack引入方法

在project下的build.gradle添加

allprojects {
	repositories {
		...
		maven { url 'https://jitpack.io' }
	}
}

在module下的build.gradle添加

dependencies {
        compile 'com.github.CarGuo:GSYVideoPlayer:v1.6.3'
}

  • 下方文档以及问题集锦,你想要知道的大部分都在里面。

  • !!有问题请先下面问题集锦中查阅(如依赖不成功,播放不成功等等)!!

  • QQ群,有兴趣的可以进来,无底线欢迎:174815284 。


文档Wiki

其他

运行效果

  • 1、打开一个播放

  • 2、列表/详情模式

  • 3、弹幕

  • 4、进度条小窗口预览

近期版本

1.6.3(2017-04-15)

  • 修改了播放器全屏时的选择90度问题
  • 修改了播放器可能存在的拉伸问题
  • 增加旋转播放画面的demo和库支持

1.6.2(2017-04-05)

  • 移除无用代码
  • 修复了动态播放按键的显示小白点问题
  • 增加了 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.**

License

请参看IJKPlayer和AndroidVideoCache相关协议。