इस प्रोजेक्ट के बारे में

GSYVideoPlayer एक open-source Android video player framework है जो कई playback kernels को support करता है, जिनमें IJKPlayer, Media3 (ExoPlayer2), MediaPlayer और AliPlayer शामिल हैं। ये kernels runtime पर switch किए जा सकते हैं। इसमें list playback, continuous playback, gravity/manual rotation, variable speed playback और list से detail page के बीच seamless switching जैसी capabilities मिलती हैं। Key features: - **Caching**: AndroidVideoCache या ExoPlayer के लिए SimpleCache के through play-while-caching - **Protocol support**: H.263/264/265, HTTPS, RTSP, HLS, RTMP, DASH, MPEG, concat, crypto और अन्य - **Filters**: 20 से ज्यादा video filters (mosaic, black and white, Gaussian blur आदि), animations, watermarks और multi-screen playback - **Frame capture**: Video first frame extraction, frame screenshots, composed UI screenshots और video-to-GIF conversion - **Screen controls**: Adjustable display ratios (default, 16:9, 4:3, fill, custom), rotation angles (0/90/180/270) और mirror rotation - **Layout**: Full-screen और non-full-screen layout switching, pure playback mode without controls, danmaku (bullet chat) support और inheritable custom layouts - **Window modes**: Small window playback और multi-window support including desktop windows - **Ads**: Pre-roll ads, skip-ad support और interstitial ad functionality - **Subtitles**: Unified external subtitle overlay SRT/WebVTT के लिए सभी kernels में, Media3 embedded cue bridging के साथ - **Casting**: Optional DLNA/UPnP module jUPnP पर built, protocol-neutral SPI design के साथ - **Customization**: Pluggable rendering, management, playback control और cache layers Project में Jetpack Compose module भी है, जिसमें wrapper और native modes हैं। इसमें Compose-friendly APIs मिलते हैं, जैसे GSYVideoPlayerView Composable और GSYPlayerSnapshot state stream event flow के साथ। Compose sample में 24 runnable activities हैं जो विभिन्न use cases cover करती हैं। Dependencies Maven Central (recommended), GitHub Packages और JitPack से available हैं। Project 16K page size को support करता है और extended format support के लिए FFmpeg 4.3 और OpenSSL 1.1.1w use करता है। HarmonyOS version भी separately available है।