For part of my photography workflow I want to use my Raspberry Pi 3 to create a compressed copy from a RAW file. In my case CR2 files from a Canon EOS 6D, measuring around 25MB per file.
Goal is to get very small (under 1MB) files with 'reasonable' quality files that still can be edited (white balance correction etc) so the full dynamic range needs to be retained.
So far I'v been using dcraw to convert CR2 to 16bit-per-channel (rgb48le, 5496x3670) PPM files, then converted using jpeg2000(grok) to J2K. It's amazing how good the jpeg2000 compression is at low bitrates! Only problem I have on the battery powered RPI is that the whole conversion takes ages:
30 seconds: full raw file dcraw > ppm
344 seconds: ppm > jpeg2000
so all together it takes more than 6 minutes, that's too long in my case.
When I use dcraw's half size option (rgb48le, 2748x1835) I can live with the loss of resolution and times get better:
11 seconds: 'half size' option dcraw > ppm
35 seconds: ppm > jpeg2000
While already better, I'm looking/hoping for JPEG-LS kind of speed (less than 2 seconds) but FFMPEG tells me that JPEG-LS does not support rgb48le encoding
So any suggestions are very welcome!
Thank you in advance,