Howdy, y’all. New here, but I’ve been working on OSS graphics stuff for a decent while at this point (gimp, geeqie, darktable).
I recently got a Fuji X-T5, and found that there is support for the lossless-compressed encoding (“lossless compressed” image quality setting), but not for the lossy-compressed encoding (“compressed” image quality setting).
I’m curious if anyone knows of anyone who’s done any work towards reverse-engineering the lossy compression algorithm. I’ve already found this amazing discussion of the lossless algorithm:
And I’ve started working through reading/understanding the implementation of that algorithm in rawspeed (which looks like it mostly originates from the version that was added to libraw back in 2016)
Hi and welcome! I don’t have any answers I’m afraid, although I’m sure others will, but thanks for the link - fascinating stuff. (Even though it largely went over my head )
If you have specific questions, I can do my best to try to explain. At the very least, that should help me make sure I actually understand what’s happening and why in the lossless compression strategy. It’s definitely really clever, especially considering all of the conflicting constraints the designers were working with.
Thanks, appreciate it, but I don’t really have the ‘headspace’ at the moment to give it serious attention… which it deserves… I will however re-read the article when I have more time!
perhaps @LebedevRI or @kmilos would be interested in the ilnk.
LibRaw seems to now support lossy as well, so you can study the source code. (Just not the X-T5 specifically yet in terms of accurate input color profile, but it will uncompress it.)