I just wanted to post some info about the artwork improvements I've made
in 7.6, and some tips to keep in mind when adding artwork to your
library.

GD has been completely replaced by a new module I wrote called
'Image::Scale' (http://search.cpan.org/dist/Image-Scale). I took the
high-quality GD resizing algorithm and reimplemented it using
fixed-point math.  The quality output is identical, and performance is
about the same or slightly faster on systems with good floating-point
like x86, but hugely improved on systems like ReadyNAS and SheevaPlug
which don't have floating-point units. I also added BMP support, which
GD never supported for some reason.

x86, ARM, and Sparc ReadyNAS also got some assembly code for the
hottest parts of the tight inner resizing loop.  On x86 I switched to
'libjpeg-turbo' (http://libjpeg-turbo.virtualgl.org/) which is a 2-4x
faster version of libjpeg.

Some tips on getting the best artwork performance: The best way to go
is to always use square JPEG images.  Also very important is to be sure
all JPEG images are not progressive.  Progressive JPEGs use a ridiculous
amount of extra memory proportional to the pixel resolution to
decompress and it also wastes time.  On TinySBS progressive JPEGs will
have to be skipped as it can easily cause it to run out of memory.  For
regular JPEGs, you can use any resolution you want, even a giant
multi-megapixel digital camera image will not use any more memory than
a small image because of the way JPEG can pre-scale to a smaller size
before decompression.

You should avoid the use of PNG or GIF images. These use more memory
proportional to the resolution and are also slower to decompress.  If
you have non-square JPEG images, we have to resize them to transparent
PNGs so they fit properly within various square UI elements, and this
will take extra time and cache space.

Try a wipe and rescan and let me know what you think.


-- 
andyg
------------------------------------------------------------------------
andyg's Profile: http://forums.slimdevices.com/member.php?userid=3292
View this thread: http://forums.slimdevices.com/showthread.php?t=82087

_______________________________________________
beta mailing list
[email protected]
http://lists.slimdevices.com/mailman/listinfo/beta

Reply via email to