Are you serious about #photography on #Linux ?

Then you probably used #code derived from #dcraw . It's an amazing store of information about developing raw pictures.

But there's one problem.

It's write-only code. My mind goes blank when I read it.

Thankfully, someone started a readable library for raw files, called #libopenraw :

https://gitlab.freedesktop.org/libopenraw/libopenraw

I ported Panasonic #decompression and made it possible to understand :D

(#Fedora plz package it)

#opensource #programming #freesoftware

libopenraw / libopenraw · GitLab

Digital camera RAW files parsing library

GitLab

If you like #ReverseEngineering , go ahead and take a look at #dcraw . It's one of the finest examples of write-only C code bases I've had the displeasure to learn from.

https://dechifro.org/dcraw/dcraw.c

case 274: /* Orientation */
tiff_ifd[ifd].flip = "50132467"[get2() & 7]-'0';

I dig that #libopenraw is now fixing that. And not even because it's in #Rust. I can actually follow the code!

https://gitlab.freedesktop.org/libopenraw/libopenraw/-/blob/master/src/panasonic.rs?ref_type=heads#L849

#programming #opensource #photography #C