Open dannygp87 opened 6 years ago
Does anybody even know what this is? By what mechanism do other players control the display mode? madvr sets a whole lot of global display parameters that mpv is too polite to touch by itself. Obscure global display settings are even less likely to be set by mpv. Maybe achievable with a lua script?
I think he wants mpv to set the colorspace output parameters for the mpv window, so it works automatically with a TV connected via HDMI or so. Internally, that would probably be a D3D11 swapchain parameter. There is an API for that. I actually wanted to work on this once I had adequate hardware in my previous job, but that ended before I had the chance.
I'm sorry but I don't actually know the actual implementation of this in MadVR. The thing is that, in MadVR when playing an HDR video, the screen gets notified and changes to HDR mode.
On the other hand, MPV is capable of outputing a signal in the BT.2020 colorspace with 10 bits color correctly. The problem is, as the TV doesn't somehow get notified and doesn't change to HDR mode, the colours displayed are wrong. Thanks!
Ping @rossy; he knows his ways around the relevant D3D11 / Windows APIs best.
It's a matter of passing the HDR metadata to the display. The display should then switch. I think the big issue is that ffmpeg doesn't appear to be able to pass the metadata. So it would have to be achieved by other methods. And of course, mpv would have to disable Perceptual Quantization, and bitstream directly to the display.
@ValZapod if you didn't yet notice I did request him to post his latest version of the patch, as the last one posted on the mailing list clearly missed parts that were noted as "fixed in the next commit".
In other words, I will be reviewing this as I'm one of the few having an interest in getting this stuff done, but I'm at having my hands full with $dayjob as well as trying to get my ffmpeg.c patch set through to finally connect color space information from input/filtering to the encoder instances :P
I'm very much looking forward to HDR10+ support.
mpv version and platform
mpv v0.27 Windows 10 x64 Fall Creators Update
Reproduction steps
When playing an HDR10 or Dolby Vision video, mpv doesn't notify the television to change the display mode accordingly.
Expected behavior
It should change the screen mode to HDR10 or Dolby Vision, just as it does the Apple TV 4k or a BluRay player. MPC-HC v1.7.13 + madVR v0.92.9 makes the screen change to HDR10 mode correctly, but also doesn't work for Dolby Vision.
Sample files
Dolby Vision: https://drive.google.com/file/d/0BwxFVkl63-lEWmNWcGl4eVRWS2M/view HDR10: https://drive.google.com/file/d/0BwxFVkl63-lEdU9Ma0VYc3YxSVE/edit (No audio)
This videos play correctly and change the display mode of my television accordingly if played from the USB port, but not from mpv.
Files obtained from: http://kodi.wiki/view/Samples Sorry for the Google Drive links, but I don't own these files.
Thanks in advance!