// the find
Doikki/DKVideoPlayer
Android Video Player. 安卓视频播放器,封装MediaPlayer、ExoPlayer、IjkPlayer。模仿抖音并实现预加载,列表播放,悬浮播放,广告播放,弹幕,视频水印,视频滤镜
An Android video player library in Java that wraps the platform MediaPlayer, ExoPlayer, and IjkPlayer behind one view and controller API. It suits apps that need TikTok-style vertical feeds, list playback, floating windows, or danmaku and watermark overlays and don't want to build that plumbing themselves.
The playback engine is swappable: each backend is a separate module behind AbstractPlayer and PlayerFactory, so you can change engines per screen without touching UI code. The controller layer is separate from playback, so custom overlays go through ControlWrapper and don't reach into player state. The sample app is the real documentation for the hard cases, including a TikTok-style feed with preloading via PreloadManager and a proxy video cache, a picture-in-picture activity, and a GL bitmap overlay for watermarks.
The last push was June 2024, more than two years before today, and nothing in the history suggests ongoing maintenance. ExoPlayer development has moved to Media3, and this module doesn't appear to follow it. The IjkPlayer module commits prebuilt libijkffmpeg, libijkplayer, and libijksdl binaries for four ABIs, including armeabi, which the NDK dropped years ago, so APK size, FFmpeg build provenance, and security patching all depend on whoever last rebuilt those files. The codebase is Java only, the README is almost entirely links into a wiki whose anchors are Chinese-titled, and the stated API 16 minimum dates the code to the early Android era.