Shaders: Anime4K presets in-session and in Settings
Vendored Anime4K v4.0.1 GLSL (MIT), extracted to app support once per version. Presets A/B/C/A+A/B+B/C+A in HQ and Fast per Anime4K's mpv templates, plus custom files. Shader button in the video controls (works in fullscreen), Ctrl+1..6 / Ctrl+0, live apply with read-back, failures fall back to Off with a toast. Render mode detected from mpv's GL log; warns when on the software path. Docs include the Jellyfin client section. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
4814bfb561
commit
fb2927c094
28 files changed
+6516
-53
No files matched your search
+9
-16
@@ -6,20 +6,7 @@ off by deleting it in the same commit as the code. Wire changes also edit
|
||||
|
||||
## Backlog
|
||||
|
||||
1. **Shaders.** Per-viewer local setting using mpv `glsl-shaders` (set after
|
||||
the player is created), shipping Anime4K presets (bloc97, MIT). Shaders only
|
||||
apply on media_kit's hardware path (verified with a test shader); warn
|
||||
when the software fallback is active. The hardware path is fragile:
|
||||
media_kit borrows whatever EGL context GDK left current on the main
|
||||
thread (upstream media-kit#1404), so a `VideoController` created before
|
||||
the first frame, an X11 session, or a Flutter/GDK change can silently
|
||||
fall back to software. Log which path media_kit picked; a vendored
|
||||
media_kit_video fix (build the EGL display from GDK's native display) is
|
||||
the durable answer if it regresses. The video freeze after GPU idle is not
|
||||
explained by this; next suspect is media_kit's context switching on the
|
||||
raster thread with NVIDIA.
|
||||
|
||||
2. **Windows build + CI.** There is no Windows runner. Try
|
||||
1. **Windows build + CI.** There is no Windows runner. Try
|
||||
`ubuntu2610/flutter_build` (LLVM-MinGW + Wine `gen_snapshot`) on the Linux
|
||||
runner, fallback a GitHub Actions mirror. The manifest needs per-platform
|
||||
URLs and `release_publish.sh` must handle a second platform. The updater's
|
||||
@@ -27,9 +14,15 @@ off by deleting it in the same commit as the code. Wire changes also edit
|
||||
`watch-together-server` needs a Windows `dart compile exe` too. Desktop
|
||||
tests are not in CI either.
|
||||
|
||||
3. **Jellyfin** (epic, below).
|
||||
2. **Jellyfin** (epic, below).
|
||||
|
||||
4. **Smaller items**
|
||||
3. **Smaller items**
|
||||
- Video output robustness: if media_kit's hardware path regresses to
|
||||
software (see ARCHITECTURE, Media: render mode), vendor a
|
||||
media_kit_video fix that builds the EGL display from GDK's native
|
||||
display. The video freeze after GPU idle is not explained by this;
|
||||
next suspect is media_kit's context switching on the raster thread
|
||||
with NVIDIA.
|
||||
- Link conveniences: a link swap in session updates the remembered media;
|
||||
show the open link with an open-in-browser button; the session's swap
|
||||
panel reuses Home's `MediaPicker`.
|
||||
|
||||
Reference in new issue
Block a user