3.3 KiB
3.3 KiB
v0.2.4 (2026-05-15)
Features
- Displays — DDC/CI picture controls: Monitor cards now expose contrast (slider, same editorial copper treatment as brightness) plus a new "PICTURE TUNING" section with input source, color preset, and picture mode pickers built on the IconSelect widget — HDMI/DisplayPort/DVI/VGA/USB-C glyphs for inputs, thermometer for color temperatures, per-mode icons (movie reel, gamepad, ball, etc.) for picture modes. Backend probes DDC/CI capabilities per monitor at enumeration time and exposes
*_supportedflags so the UI hides rows the hardware doesn't advertise. New endpoints:POST /api/display/{contrast,input_source,color_preset,picture_mode}/{id}. Picture mode uses raw VCP0xDCwith MCCS-spec labels and vendor-friendly fallbacks. 14 new i18n keys per locale (en/ru). (57fdeb7)
Bug Fixes
- Displays — verify DDC/CI writes before reporting success: DDC/CI writes are fire-and-forget at the protocol level — a successful send does not mean the monitor honored the value. A new
_verify_after_sethelper polls readback after every write and reports{success: false}when the monitor silently dropped it (common on LG ultrawides for VCP codes whose registers exist but whose feature isn't really implemented in firmware). Wired intoset_contrast,set_input_source,set_color_preset,set_picture_mode; input source uses a longer settle window since switching can briefly disrupt the DDC/CI link. Picture mode (VCP0xDC) additionally requires the capability string to declare supported codes undercmds[0xDC]— without that declaration we treat the feature as unsupported even when reads succeed (the LG case where reads return a stuck value and every write is silently ignored). (d1f621f)
Development / Internal
Chores
restart-server.ps1— installer vs dev launches: Previously only killed processes namedmedia-server, silently missing the installer-bundled process (which runs as plainpython.exeviamedia-server.bat). The script now kills whatever currently owns the listen port regardless of process name, adds-Mode auto|dev|installerwith auto-detection based on whether the installer launcher exists in%LOCALAPPDATA%\Media Server, verifies the port is listening after start, and merges registry PATH so newly-installed dev tools are visible. (6120625)
All Commits
| Hash | Message | Author |
|---|---|---|
| 57fdeb7 | feat(displays): expose DDC/CI contrast, input source, color preset, picture mode | alexei.dolgolyov |
| 6120625 | chore(scripts): harden restart-server.ps1 against installer vs dev launches | alexei.dolgolyov |
| d1f621f | fix(displays): verify DDC/CI writes and trust capability string for picture mode | alexei.dolgolyov |