# yangchong211/YCVideoPlayer

🔥🔥🔥 基础封装视频播放器player，可以在ExoPlayer、MediaPlayer原生MediaPlayer可以自由切换内核；该播放器整体架构：播放器内核(自由切换) + 视频播放器 + 边播边缓存 + 高度定制播放器UI视图层。支持视频简单播放，列表播放，仿抖音滑动播放，自动切换播放，使用案例丰富，拓展性强。

Repository: https://github.com/yangchong211/YCVideoPlayer
Canonical: https://ross.abutalabs.com/products/ycvideoplayer
Language: Java
License: Apache-2.0
License Family: permissive
Last push: 2022-04-02T08:43:14+00:00

## Health v2 (maintenance only)
Score: 23/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 0, release rhythm 8, longevity 100
- inputs: {"age_days": 3170, "days_push": 1614, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2261, forks 462 (observed 2026-08-28T04:06:31.831827+00:00)

## What it is
A highly extensible Android video player library that wraps multiple playback kernels (MediaPlayer, ExoPlayer, IjkPlayer) behind a unified API with free kernel switching. Its architecture separates the player kernel, video player core, cache-while-playing layer, and a fully customizable UI view layer, supporting simple playback, list playback, and TikTok-style swipe playback.

## Use cases
- play videos in an Android app with switchable playback kernels
- implement video playback in a RecyclerView list with floating small-window playback
- build a TikTok-style vertical swipe video feed
- cache video while streaming for offline-friendly playback
- fully customize the player UI without touching player logic
- record and restore video playback positions locally
- add danmaku, ads, or trial-preview views on top of the player

## When to choose
- you need an Android video player with swappable MediaPlayer/ExoPlayer/IjkPlayer kernels
- you want strict decoupling between player logic, business logic, and UI views
- you need list playback, small-window playback, or swipe-based video feeds
- you want cache-while-playing and playback position persistence out of the box

## When to avoid
- you need an iOS, web, or cross-platform player
- you need playback speed with the MediaPlayer kernel (unsupported)
- you need a maintained solution with frequent updates and recent releases
- you need RTC or Tencent player kernels today (planned but not implemented)

## Facets
- artifact type: library
- maturity: maintenance
- function: video-processing, ui-components, caching, plugin-system
- domain: android-tools, media, mobile-development
- platform: jvm
- tags: video-player, exoplayer, mediaplayer, ijkplayer, video-cache, list-playback, tiktok-style-playback, customizable-ui, android-library, video, android, mobile

## Member repositories
- yangchong211/YCVideoPlayer (main) score 23

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:06:31.831827+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T02:42:38.038417+00:00, confidence not recorded.
  - readme: https://github.com/yangchong211/YCVideoPlayer (fetched 2026-08-28T04:06:31.831827+00:00, sha 991983e47c5c)
- Data as of 2026-08-30T08:39:29.467469+00:00.
