mpv-scripts icon indicating copy to clipboard operation
mpv-scripts copied to clipboard

Cropping a Dolby Vision video breaks tone mapping

Open GH0STDATA opened this issue 2 years ago • 4 comments

Setup (please complete the following information):

  • OS: Windows 11 22H2
  • Player: mpv
  • Player Version: 0.35.0-210-ge439ddc0
  • Video Quality: 1080p HEVC Dolby Vision Profile 5

Describe the bug This is a very specific use case and is definitely not common, but I figured I'd mention it here anyway. While the dynamic crop script does work perfectly in cropping black bars, if the video needs tone mapping of any kind, such as with vo=gpu-next and target-colorspace-hint=yes, this script makes it no longer possible. I'm assuming this is due to the fact that its using LAV filters to determine the black bars, and the images the filters are grabbing are not tone mapped.

I've tried using vf-append or vf-pre to add the correct tone mapping filters back to the video after cropping, but that did not work either.

GH0STDATA avatar Jun 21 '23 04:06 GH0STDATA

Hello, do you use hardware decoding ? it can be the cause for color issue (cropdetect auto insert a pixel format conversion, and we lose 10bit color), try hwdec=no. Also make sure to have the most up to date mpv version.

Then i'm going to need the logs of mpv if it's still an issue, i can only replicate it with the HEVC DolbyVision video i have and hwdec=auto-copy like explain above.

Ashyni avatar Jun 21 '23 09:06 Ashyni

It looks like that was the culprit, thank you! I'm surprised that shaders and tone mapping still work with HW decoding being disabled. It didn't drop any frames either. That was my main concern which is why I didn't even try disabling it in the first place.

GH0STDATA avatar Jun 21 '23 20:06 GH0STDATA