Many (if not all) ffmpeg guides insist on using either libplacebo (vulkan API on GPU) or zscale (not available in some ffmpeg builds). Here I found collection of .cube files for doing REC2020 TO rec709. https://www.reddit.com/r/premiere/comments/12t9mh8/convert_hdr_to_sdr/ https://drive.google.com/file/d/1HQGKE5Fzg_W5vsP8wJcmzRIAtCRKevsV/view I extracted one .cube file and run this ffmpeg command (at 1.4 fps on Termux) ffmpeg -i storage/downloads/iPhone11_4K-recorder_59.940HDR10.mov -vf lut3d=file=REC2020PQto709v1.cube:interp=tetrahedral,scale=1280:-2 ~/1.mp4 and it sort of worked, while I think mpv/libplacebo did better job on my desktop. But even just in mpv I had tons of dropped frames, and decoding in cingg without any tonemapping was at may be 9 fps max, out of 60. Ow :( For some reason just throwing F_tonemap to timeline resulted in extremely dark image no matter the settings. I pushed it up by brightness/contrast native plugin but I do not think you supposed to do that? sw tonemapper was added to ffmpeg in 2017 https://github.com/FFmpeg/FFmpeg/blob/master/libavfilter/vf_tonemap.c