Dev Depot: Fast Image Cache

Part of any good app’s user experience is fast, smooth scrolling, but this places a significant burden on performance for graphics rich applications, because the traditional method of loading individual images from disk is too slow — especially while scrolling.

The makers of Fast Image Cache (www.github.com/path/FastImageCache) set out to solve this problem by creating an efficient, persistent, and above all fast way to store and retrieve images in iOS apps. It does this by storing images of similar sizes and styles together, persisting image data to disk and returning images to users significantly faster than by traditional methods. Automatically managing cache expiry based on actual usage, Fast Image Cache utilizes a model-based approach for storing and retrieving images that allows image processing on a permodel basis before storing the image into the cache.

Image tables are similar to sprite sheets, often used in 2D gaming [and combine] images of the same dimensions into a single file, this file is opened once and is left open for reading and writing for as long as an application remains in memory.

“iOS applications, especially those in the social networking space, often have many images to display at once, such as user photos,” a Fast Image Cache spokesperson states. “The intuitive, traditional approach is to request image data from an API, process the original images to create the desired sizes and styles, and [then] store these processed images on the device.”

When an application needs to display these images, they are loaded from disk into memory and displayed in an image view, or otherwise shown on screen. The problem he notes is that the process of going from compressed, on-disk image data to a fully rendered Core Animation layer that the user can actually see is very expensive, overhead-wise.

“As the number of images to be displayed increases, this cost easily adds up to a noticeable degradation in frame rate, and scrollable views further exacerbate the situation because content can change rapidly, requiring fast processing time to maintain a smooth 60FPS [frame rate],” the spokesperson explains. “These costs can easily accumulate and kill perceived application performance. Especially while scrolling, users are presented with an unsatisfying user experience that is not in line with the overall iOS experience.”

Fast Image Cache provides a solution by minimizing (or avoiding entirely) much of the problem, using a variety of techniques, including byte alignment, memory mapping, and using uncompressed image data. At the heart of this system are image tables.

“Image tables are similar to sprite sheets, often used in 2D gaming [and combine] images of the same dimensions into a single file,” the spokesperson added. “This file is opened once and is left open for reading and writing for as long as an application remains in memory.”

Image tables store uncompressed image data in their files to avoid expensive image decompression operations, but this approach has consequences.

“Uncompressed image data requires more disk space, and the difference between compressed and uncompressed file sizes can be significant, especially for image formats [such as] JPEG,” the spokesperson concludes. “For this reason, Fast Image Cache works best with smaller images, although there is no API restriction that enforces this.”

Fast Image Cache is offered under the MIT license, requires iOS 6.0 or greater, and relies on the Core Graphics, Foundation and UIKit frameworks. If you develop iOS apps, and want to speed them up, then visit GitHub and give Fast Image Cache a try.

Related:  

Copyright © 2024 Adnet Media. All Rights Reserved. XBIZ is a trademark of Adnet Media.
Reproduction in whole or in part in any form or medium without express written permission is prohibited.

More Articles

profile

WIA Profile: Patricia Ucros

Born in Bogota, Colombia, Ucros graduated from college with a degree in education. She spent three years teaching third grade, which she enjoyed a lot, before heeding her father’s advice and moving to South Florida.

Women In Adult ·
opinion

Creating Payment Redundancies to Maximize Payout Uptime

During the global CrowdStrike outage that took place toward the end of July, a flawed software update brought air travel and electronic commerce to a grinding halt worldwide. This dramatically underscores the importance of having a backup plan in place for critical infrastructure.

Jonathan Corona ·
opinion

The Need for Minimal Friction in Age Verification Technology

In the adult sector, robust age assurance, comprised of age verification and age estimation methods, is critical to ensuring legal compliance with ever-evolving regulations, safeguarding minors from inappropriate content and protecting the privacy of adults wishing to view adult content.

Gavin Worrall ·
opinion

Account-to-Account Payments: The New Banking Disruptor?

So much of our industry relies upon Visa and Mastercard to support consumer payments — and with that reliance comes increased scrutiny by both brands. From a compliance perspective, the bar keeps getting raised until it feels like we end up spending half our time making sure we are compliant rather than growing our business.

Cathy Beardsley ·
profile

WIA Profile: Samantha Beatrice

Beatrice credits the sex positivity of Montreal for ultimately inspiring her to pursue work in adult entertainment. She had many friends working in the industry, from sex workers to production teams, so it felt like a natural fit and offered an opportunity to apply her marketing and social media savvy to support people she truly believes in and wants to see succeed.

Women In Adult ·
opinion

Understanding the Latest Server Processors

Over the last decade, we mostly stopped talking about CPU performance. Recently, however, there has been a seismic and exciting change in the CPU landscape, due to innovation by a chip company called Advanced Micro Devices (AMD).

Brad Mitchell ·
opinion

User Choice, Privacy and the Importance of Education in AV

As we discussed last month, age verification in the adult sector is critical to ensuring legal compliance with ever-evolving regulations, safeguarding minors from inappropriate content and protecting the privacy of adults wishing to view adult content.

Gavin Worrall ·
opinion

Maintaining Payment Processing Compliance When the Goalpost Keeps Moving

VIRP is the new four-letter word everyone loves to hate. The Visa Integrity Risk Program went into effect last year, and affects several business types — including MCC 5967, which covers adult and anything else with nudity, and MCC 7273, dating services that don’t allow nudity.

Jonathan Corona ·
opinion

Making the Most of Your Sales Opportunities

The compliance road has been full of twists and turns this year. For many, it’s been a companywide effort just to make it across that finish line. Hopefully, most of us can now return our attention to some important things we’ve left on the back burner for months — like driving revenue.

Cathy Beardsley ·
profile

YourPaysitePartner Marks 25-Year Anniversary Amid Indie Content Renaissance

For 25 years, YourPaysitePartner has teamed up with stars and entrepreneurial brands to bring their one-stop-shop adult content dreams to life — and given the indie paysite renaissance of the past few years, the company’s efforts have paid off in spades.

Alejandro Freixes ·
Show More