Thursday, August 27, 2020

New Arduino JPEG Library Focuses On Speed

Working with graphics on micro-controllers has always meant that specialize in making the foremost of limited resources. Particularly within the 8-bit era, all manner of tricks were wont to get low-performance chips to realize feats beyond their lowly station. However, these days, we’re blessed with 32-bit workhorses with clock speeds in the tens, or even hundreds, of MHz and many kilobytes of RAM to match.

As discusses during a blog post on the subject , JPEG libraries exist already for the Arduino platform. However, many of those are aimed toward 8-bit platforms with tiny amounts of RAM. While it’s possible to decode JPEGs piece by piece with some intelligent code under these conditions, it’s possible to travel much faster when you’ve got a touch more headroom. Does an excellent job of explaining the variability of optimizations, developed within the 20 years since writing his first JPEG decoder back in 1994. From eliminating unnecessary marker checks to ignoring unneeded data for scaled-down output, it all adds up to urge the work done faster. The library targets the Cortex-M0+, or any chip with a minimum of 20K of RAM, as its bare minimum to work .

Faster chips with higher clock rates naturally do better, and provides benchmark decoding times for various common hardware using the library.
We’ve featured GIF decoder for the Arduino platform before, again a useful library that’s optimised permanently performance. If you’ve got your own neat tricks for image processing on microcontrollers, you know how to call!

No comments: