home .. forth .. colorforth mail list archive ..

[colorforth] jpeg decoder


Hello,

I've published my jpeg decoder. You can download and view the source at
http://www.oakland.edu/~maslicke/colorforth/jpeg . I'm interested in any
comments or questions you may have.

To you use the decoder, boot to colorForth and write to the variable nc
the number of cylinders your image requires (offset at block 130), write
your image to block 130 (using bput or a similar uility), write the jpeg
source to block 96, finally boot colorForth and load block 110. Now your
image should be centered on the display.

The decoder was a bit more work than I initially expected. The decoder
weighs in at a hefty 7 blocks, and it only handles the most common case,
baseline dct coded images (grayscale or color). I attribute the size to
the fact that jpeg is not really algorithm, but an agglomeration of
assorted algorithms. Each algorithm requires a moderate ammount of
code. The code is fairly modular and permits experimentation with
different algorithms. My implementation and choice of algorithms is by no
means optimal, there are trade offs that can be made in speed and
quality. My implementation ops for speed, however it not as fast as I
would like. Also, I use nearest neighbor sampling for upsampling, and I
don't do dithering. Dithering and a different sampling algorithm could
improve image quality for a moderate computational cost. 

Hope you find it useful.

Mark

------------------------

To Unsubscribe from this list, send mail to Mdaemon@xxxxxxxxxxxxxxxxxx with:
unsubscribe ColorForth
as the first and only line within the message body
Problems   -   List-Admin@xxxxxxxxxxxxxxxxxx
Main ColorForth site   -   http://www.colorforth.com