It uses libmpv though.
mpv supports display calibration and HDR conversion as well. You can load a 3DLUT for display calibration if you want, but for mpv, you would more likely load an ICC profile and have it generate the correct LUT automatically. You can even just let it pick up the ICC profile configured in the operating system. As for HDR, there are a number of built-in tone mapping algorithms: https://mpv.io/manual/master/#options-hdr-tone-mapping
I disagree on a couple of points though. Jinc may in fact produce noticeable ringing (while NGU doesn't), and neither produce aliasing so asserting the opposite seems strange. The difference in sharpness is also quite obvious. On top of that mpv's anti-ringing filter is very basic in comparison.
HDR processing also seems quite limited and requires a lot of hand-tuning compared to madVR.
If it works for you, great, but it would be disingenuous to say that both programs are at a feature parity.
Context for others: NGU is a proprietary algorithm created by the author of madVR.
I'll admit I haven't watched any HDR content in mpv yet, but it supports all the standard tone-mapping algorithms (hable, reinhard, etc.) and apparently the default algorithm (mobius) was chosen for its colour accuracy.
I'm not saying madVR doesn't have its strengths. Error-diffusion dithering is strictly more accurate than what mpv does, and for people who like super-resolution upscalers, madVR tends to have a larger selection and faster implementations. Still, it would be disingenuous to say that madVR has a larger feature-set than mpv. They have different feature-sets. mpv's convolution-based upscalers are much more tunable and its colour management is more advanced, since it can use an ICC profile to auto-generate a LUT for any input gamut, rather than relying on an external CMS for this.
The default keybinds are absolutely nonsensical, though.
Now, the general consensus is that they should be changed gradually, rather than all at once. Some obviously bad keybindings have been removed this way (eg. Esc->quit.) If you create an issue for your most hated keybind, it can probably be changed.
Any gradual changes just mean gradual changes to a keybind file. Anyone who doesn't like them can simply use their own keybind file from previous versions, or from their own modification.
Though rather than being baked in, these bindings have to be manually copied over the user's input.conf. mpv's config profiles don't extend to input.conf at the moment.
Fortunately there's a file included that will restore the original behaviors.
Also, enable "Run mpv in its own window" under Preferences -> Advanced. This removes all the issues caused by the default mode of embedding the mpv window (such as subtitles being on the video and not in the black bars).
Thank you for your work on mpv!
Here's a rough version of my script: https://github.com/smnx/mpv-autosub (forked from https://gist.github.com/selsta/ce3fb37e775dbd15c698).