2026-01-10, 06:33 PM
(This post was last modified: 2026-01-10, 06:55 PM by frikai. Edited 5 times in total.)
Hello,
I've been trying to set up tone mapping from HDR to SDR and cannot get it to work.
My setup:
I'm running Jellyfin in a Proxmox LXC on an Intel Gen 10
The problem:
I've tried to set up both VPP tone mapping and regular OpenCL tone mapping, without success. VPP just isn't activating and OpenCL crashes.
I'm a bit lost with all the different components, I hope the below makes sense.
Hardware acceleration in general seems to be working, I followed the docs and Jellyfin is able to use the igpu.
For VPP tone mapping, I think I've set everything up correctly within the container as far as drivers, permissions etc. go, because running ffmpeg with vaapi tone mapping manually on an HDR movie in the container outputs a video with fixed SDR colors: https://pastebin.com/vYDzkV6t
But when I try to open that same HDR movie through jellyfin on an SDR monitor, the colors are off and I think the command Jellyfin runs just doesn't include tone mapping (see the ffmpeg VPP log).
I think the tone mapping *should* get triggered based on my transcode settings:
Notably I've unchecked the regular tone mapping because if that's enabled (regardless of whether VPP is on) Jellyfin tries to use OpenCL tone mapping which doesn't work (see below). My understanding is that the two settings are independent and so VPP tone mapping should still happen if set up correctly.
OpenCL tone mapping is a whole other issue. I haven't been able to get that to work either and if I try to open an HDR movie with regular tone mapping enabled in the Jellyfin settings, playback fails after a few seconds of loading.
The ffmpeg log in that case doesn't have any errors (see the Ffmpeg OpenCL log) and just fails silently, the Jellyfin log just states "[ERR] FFmpeg exited with code 134". But at least Jellyfin *does* try to tonemap in that case judging by the "tonemap_opencl" in the command, which means that it's correctly detecting the HDR file and SDR monitor, so the VPP tone mapping should get triggered...
But OpenCL doesn't work manually either so there's something wrong with the container setup that I haven't been able to figure out. A similar command as above with OpenCL tone mapping instead of vaapi fails with an abort message (see here: https://pastebin.com/pxiebCC7). Not sure what's going on there but since VPP tone mapping is working manually I was focussing on trying to get that working in Jellyfin as well.
Would appreciate any sort of help, let me know if I can provide some more information.
Ffmpeg VPP log:
FFmpeg.Transcode-2026-01-10_18-27-27_ec873e26617c22cb9f65e76433ba2a2e_5c0e4de5.log.txt (Size: 20.54 KB / Downloads: 2)
Ffmpeg OpenCL log:
FFmpeg.Transcode-2026-01-10_17-38-51_ec873e26617c22cb9f65e76433ba2a2e_af92885b.log.txt (Size: 16.08 KB / Downloads: 2)
I've been trying to set up tone mapping from HDR to SDR and cannot get it to work.
My setup:
I'm running Jellyfin in a Proxmox LXC on an Intel Gen 10
The problem:
I've tried to set up both VPP tone mapping and regular OpenCL tone mapping, without success. VPP just isn't activating and OpenCL crashes.
I'm a bit lost with all the different components, I hope the below makes sense.
Hardware acceleration in general seems to be working, I followed the docs and Jellyfin is able to use the igpu.
For VPP tone mapping, I think I've set everything up correctly within the container as far as drivers, permissions etc. go, because running ffmpeg with vaapi tone mapping manually on an HDR movie in the container outputs a video with fixed SDR colors: https://pastebin.com/vYDzkV6t
But when I try to open that same HDR movie through jellyfin on an SDR monitor, the colors are off and I think the command Jellyfin runs just doesn't include tone mapping (see the ffmpeg VPP log).
I think the tone mapping *should* get triggered based on my transcode settings:
Notably I've unchecked the regular tone mapping because if that's enabled (regardless of whether VPP is on) Jellyfin tries to use OpenCL tone mapping which doesn't work (see below). My understanding is that the two settings are independent and so VPP tone mapping should still happen if set up correctly.
OpenCL tone mapping is a whole other issue. I haven't been able to get that to work either and if I try to open an HDR movie with regular tone mapping enabled in the Jellyfin settings, playback fails after a few seconds of loading.
The ffmpeg log in that case doesn't have any errors (see the Ffmpeg OpenCL log) and just fails silently, the Jellyfin log just states "[ERR] FFmpeg exited with code 134". But at least Jellyfin *does* try to tonemap in that case judging by the "tonemap_opencl" in the command, which means that it's correctly detecting the HDR file and SDR monitor, so the VPP tone mapping should get triggered...
But OpenCL doesn't work manually either so there's something wrong with the container setup that I haven't been able to figure out. A similar command as above with OpenCL tone mapping instead of vaapi fails with an abort message (see here: https://pastebin.com/pxiebCC7). Not sure what's going on there but since VPP tone mapping is working manually I was focussing on trying to get that working in Jellyfin as well.
Would appreciate any sort of help, let me know if I can provide some more information.
Ffmpeg VPP log:
FFmpeg.Transcode-2026-01-10_18-27-27_ec873e26617c22cb9f65e76433ba2a2e_5c0e4de5.log.txt (Size: 20.54 KB / Downloads: 2)
Ffmpeg OpenCL log:
FFmpeg.Transcode-2026-01-10_17-38-51_ec873e26617c22cb9f65e76433ba2a2e_af92885b.log.txt (Size: 16.08 KB / Downloads: 2)
