Build a video streaming app with HLS or RTMP support without writing media decoding code from scratch.
Add danmaku (scrolling comments) and visual filters to video playback in an existing Android app.
Implement picture-in-picture and floating window video playback alongside pre-roll ads.
Create a media player that automatically rotates video based on device orientation and responds to volume/brightness gestures.
Requires Android Studio and SDK setup, integrating into an existing Android project involves gradle dependency configuration and potential native library compilation for IJKPlayer.
GSYVideoPlayer is a multi-purpose video player library for Android apps. Instead of forcing developers to pick one playback engine, it wraps several of them, IJKPlayer, Media3 (the successor to ExoPlayer2), the platform's MediaPlayer, and AliPlayer, behind one unified player you can drop into your screens, and you can switch between these engines or even plug in a custom one. The library is built around a long list of practical features for real video apps. It can play while caching so users do not re-download, supports many streaming protocols including HTTPS, RTSP, HLS, RTMP, DASH, and encrypted streams, and can apply more than twenty simple visual filters such as mosaic, black and white, blur, and Gaussian, plus watermarks and multi-screen playback. It can grab the first frame, take screenshots that include the player UI, and export short clips as GIFs. Playback features include continuous list playback, automatic playback while scrolling, seamless switching from a list to a detail page, gravity-based or manual rotation, fast and slow speed, mirrored display, and small-window playback even over the desktop. It also handles pre-roll, mid-roll, and skippable ads, external SRT and WebVTT subtitles, danmaku-style bullet chat, adaptive quality switching for HLS and DASH, FFmpeg-based decoding with G.711 audio, and 16K page-size compatibility. You would use this when building an Android app that needs a flexible video player without writing engine glue yourself. It is distributed through MavenCentral, GitHub Packages, and JitPack, and the primary language is Java.
← carguo on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.