uosc_danmaku is an MPV danmaku extension built on the uosc UI framework and the dandanplay API, letting you search and load danmaku from Bilibili and other sites with one click.
- v2.2.0-alpha
- Published at
- Apr 7, 2026
- 574
- Stars
- 6,290
- Download
- Synced at
- 15d ago
The author no longer ships through GitHub Releases, but the repository is still active (last push 23d ago). Get the latest version from:
Latest release
v2.2.0-alphaApr 7, 2026, 03:25 PMPre-releaseREADME
Project Overview
uosc_danmaku is a danmaku extension that runs inside the MPV player, built on the uosc UI framework and the dandanplay API to load dandanplay danmaku in MPV. It adds search, toggle, and style controls to the uosc control bar, so during playback you can search for an episode and load its danmaku with a click, without downloading and merging danmaku files or converting formats yourself. The plugin accesses the dandanplay open danmaku network through a project-maintained API proxy, so ordinary users need no account or AppId. When uosc is not installed, it can render menus through mpv's internal mp.input.
Load danmaku from Bilibili and other sites in MPV with one click, no manual file hunting.
Key Features
- One-click search and load: the danmaku search button in the control bar opens a search menu to pick and load the danmaku you need
- Danmaku toggle: a control-bar switch turns danmaku display on or off at any time
- Style menu: modify danmaku style live during playback; unavailable without uosc
- Settings menu: a multi-level combined menu that gathers all the plugin's graphical features
- Source delay: control the delay of each danmaku source independently; unavailable without uosc
- Memory-based auto-loading: once you load danmaku for an episode, the file and its folder are associated, and later playback loads them automatically
- Hash-match auto-add: before any manual load or memory, associates danmaku automatically by file hash matching
- Network video auto-load: loads danmaku automatically when playing via Play-With-MPV, ff2mpv, and similar tools
- Add from sources: add new danmaku to the current set from supported network sources or local files
- Post-processing: merge duplicate danmaku within a time window, convert between simplified and traditional Chinese, and save current danmaku locally
- Adjustable style and messages: customize default danmaku style and reposition plugin messages
Target Audience
- Viewers who want danmaku in MPV
- Users of bundles like MPV_lazy
- Users who want danmaku loaded and remembered automatically
Quick Start
- Install the uosc UI framework for MPV, or use a bundle that already includes it
- Download or clone this plugin into the
scriptsfolder of your mpv config directory - Make sure the plugin's folder is named
uosc_danmaku; otherwise adjust the uosc control config accordingly - Grant executable permission to files in the
binfolder - Edit the uosc control configuration in
script-optsso the danmaku search button and toggle appear on the control bar - You can also bind shortcuts to invoke danmaku search and toggle
Core Advantages
- No source maintenance: the plugin uses a project-maintained API proxy by default, so you need no AppId of your own
- Highly automated: memory-based loading and hash matching make common episodes load automatically
- Feature-complete: search, toggle, style, delay, merging, script conversion, and saving all included
- Good compatibility: renders menus through mpv's internal
mp.inputwhen uosc is unavailable
System Requirements
| Item | Requirement |
|---|---|
| Player | MPV, with the uosc UI framework recommended |
| System | Linux and Windows; using mp.input requires mpv 0.39.0 or newer |
| Hash matching | Needs mpv built with LuaJIT or Lua 5.2; Lua 5.1 is unsupported |
Notes
- Without uosc, the style menu and source delay features are unavailable
- Hash-match auto-loading has low accuracy; manually load the correct episode when it associates the wrong one
- Memory-based auto-loading is off by default; read the config docs to enable it
- Network video auto-load currently supports Bilibili and Bahamut
- The API proxy includes caching and rate limits, so do not use it for bulk scraping