Step 1. Add the JitPack repository to your build file
Add it in your root settings.gradle at the end of repositories:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
mavenCentral()
maven { url 'https://jitpack.io' }
}
}
Add it in your settings.gradle.kts at the end of repositories:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
mavenCentral()
maven { url = uri("https://jitpack.io") }
}
}
Add to pom.xml
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
Add it in your build.sbt at the end of resolvers:
resolvers += "jitpack" at "https://jitpack.io"
Add it in your project.clj at the end of repositories:
:repositories [["jitpack" "https://jitpack.io"]]
Step 2. Add the dependency
dependencies {
implementation 'com.github.c1024:GSYVideoPlayer:v2.0.9.1'
}
dependencies {
implementation("com.github.c1024:GSYVideoPlayer:v2.0.9.1")
}
<dependency>
<groupId>com.github.c1024</groupId>
<artifactId>GSYVideoPlayer</artifactId>
<version>v2.0.9.1</version>
</dependency>
libraryDependencies += "com.github.c1024" % "GSYVideoPlayer" % "v2.0.9.1"
:dependencies [[com.github.c1024/GSYVideoPlayer "v2.0.9.1"]]

状态 | 功能 -------- | --- 支持|边播边缓存,使用了AndroidVideoCache。 支持|其他协议和编码concat、rtsp、hls、rtmp、crypto、mpeg等。 支持|DEMO演示获取视频第一帧等实现。 支持|简单滤镜(马赛克、黑白、色彩过滤、高斯、模糊、模糊等等20多种)。 支持|GL效果动画,(xyz轴旋转,放大)。 支持|视频帧截图功能 支持|视频播放效果(水印、画面多重播放等) 支持|列表播放;列表连续播放;重力旋转与手动旋转;视频本身rotation旋转属性。 支持|全屏切换动画效果;小窗口播放,可拖动。 支持|快播和慢播;网络视频加载速度。 支持|调整显示比例:默认、16:9、4:3、填充。 支持|播放时旋转画面角度(0,90,180,270);镜像旋转。 支持|暂停前后台切换不黑屏;调整不同清晰度的支持。 支持|Https;IJKPlayer和EXOPlayer切换。 支持|锁定/解锁全屏点击功能;进度条小窗口预览(测试)。 支持|全屏与非全屏两套布局切换;弹幕功能。 支持|没有任何操作控件的纯播放支持。 待支持|自带广告功能(目前需要自己实现)。
你可以选择下面三种的其中一种,在module下的build.gradle添加。
//完整版引入
compile 'com.shuyu:GSYVideoPlayer:2.0.8'
compile 'com.shuyu:gsyVideoPlayer-java:2.0.9'
//根据你的需求
compile 'com.shuyu:gsyVideoPlayer-armv5:2.0.9'
compile 'com.shuyu:gsyVideoPlayer-armv7a:2.0.9'
compile 'com.shuyu:gsyVideoPlayer-arm64:2.0.9'
compile 'com.shuyu:gsyVideoPlayer-x64:2.0.9'
compile 'com.shuyu:gsyVideoPlayer-x86:2.0.9'
A、B普通版本支持263/264/265等,对于mpeg编码会有声音无画面情况。 C 引入的so支持mpeg编码和其他补充协议,但是so包相对变大。
compile 'com.shuyu:gsyVideoPlayer-java:2.0.9'
compile 'com.shuyu:gsyVideoPlayer-ex_so:2.0.9'
1、全局设置
GSYVideoType.setRenderType(GSYVideoType.GLSURFACE);
2、设置滤镜
player.setEffectFilter(new BarrelBlurEffect());
提问题前可先查阅上方文档和说明,请在Demo中复现问题。
问题说明:
1、说明那个Demo中哪个页面。
2、问题显现和重现步骤。
3、补充问题的视频流url,截图。
4、补充问题的机型,android版本。
-keep class tv.danmaku.ijk.** { *; }
-dontwarn tv.danmaku.ijk.**
-keep class com.shuyu.gsyvideoplayer.** { *; }
-dontwarn com.shuyu.gsyvideoplayer.**
关于自定义和出现问题的请先看问题集锦、demo、issue。
多了解一些音视频的基础常识,对容器,音视频编码,ffmpeg先做一些了解,以及mediacodec等的不同。
尽量少出现为什么别的能播的问题哟。
播放器的可自定义还是挺高的,定制请参考demo,多看源码。现在的功能有些多,demo也在不断的更新。
一些新功能和项目结构也在不断的调整。
欢迎提出问题,谢谢。
建议使用ndk过滤,详细参考 参考第四条 : 4、NDK的so支持

请参看IJKPlayer和AndroidVideoCache相关协议。
项目最开始是从jiecao过来的,只是后来方向不同,所以慢慢的也异化了。