[fitz-dev] On jpeg2000 decoder libraries

tor andersson tor at ghostscript.com
Sat Dec 20 07:37:36 PST 2003


I've found three open source / free software jpeg2000 libraries.
They all have serious problems.

The real reference implementation JJ2000 is implemented in Java.
End of story.

Jasper (or, as the authors insist on spelling it: JasPer) is the more
mature and I suppose somewhat official C reference implementation.
However, it is more like an image loading framework with a stream
and driver architecture for loading lots of different formats with
image format autodetection. I don't like that they use their own
funky runtime in this way, i want a j2k codec, not another bloody Imlib.

However, it has a fatal flaw: the input layer is not suspendable like
IJG's libjpeg. This means we have to have *all* the data for the image
before we can start the decoder.

The mailing list for Jasper is pretty dead. Lots of mails with both
good and bad questions, but no answers. Ever. Oh, and a ton of spam.

Then there is the funky decoder from j2000.org. It's really small and
simple, 5000 lines of C in total. Too bad it uses globals everywhere,
and does no error checking so it's completely useless as a library as is.

I've looked at the sources and I'm fairly confident I could clean either
of the libraries up and get something usable with a couple of weeks work.
Not sure if it's worth the effort, and the changes might not be accepted
by the maintainers which would mean we have to keep our own fork :(

What to do? What to do?




More information about the fitz-dev mailing list