![](https://secure.gravatar.com/avatar/afdaaab755ef79ac9e1374882d60ae9f.jpg?s=120&d=mm&r=g)
You spent some time writing a replacement IO reader in pure Python, if I recall correctly; did you have any practically usable results?
I looked into this for a while, and came to the conclusion that it would be very annoying yet technically simple to write a bunch of basic image format parsers in pure python (using the PIL image plugins as a guide). Any compression beyond what exists in the python stdlib (which is to say, zlib, basically), though, becomes rather more of a pain -- either you'd have to disallow jpeg IO, or write/wrap a jpeg decoder -- neither of which sound particularly fun. That is, I think that one could write simple PNG and TIFF decoders (which do not support all the corners of the spec, but neither do those in the PIL) in pure python / numpy in a day or so. This would be useful for many people, but lacking jpeg would be a big issue. Perhaps we could grab just the C core of some jpeg decoder/encoder somewhere and use that? Otherwise, I think the best option is to find a simple, dependency- free C image IO library to wrap. CVD looks OK here. Zach