JPEGmini; Can It Be Used to Reduce Your Aperture Library?
This one came into my inbox quite some time ago, then I was waiting for an update to the software, and am just now finally getting around to posting it here.
If you decide to proceed with what I’m about to discuss, do proceed with caution (i.e., backup first!). This is an interesting app with interesting possibilities, but I’m not confident enough to apply this to my main Aperture library (nor is it likely to benefit me personally… but I’m getting ahead of myself).
What JPEGmini does
JPEGmini will shrink any JPEG file by up to 80% (5× reduction), “while the resulting photos are visually identical to the original photos” (according to their website). That’s a pretty impressive claim.
Why it’s interesting to Aperture users
When you set JPEGmini loose, it will scan all contents of any folder you point it at. The Aperture Library is a package. A package is just a fancy name for a folder that you have to right click on and choose “show package contents” to view the insides of. See where this is going? JPEGmini can look inside your Aperture package and re-compress every single JPEG it finds, making them up to 80% smaller. And apparently, you can’t tell the difference.
To start, I exported a sample of seven very different photos from Aperture at full resolution (it can handle files up to 28 MP, so I couldn’t test with the 37 MP Leica S2 files I’ve been playing with… I’m sure you’ll contain your tears). I tested a variety of photos; low light high ISO, monochromatic, full sun, mixed color, big solid color, etc. Here’s the collection:
All you have to do is drag and drop an image or folder of images (or Aperture library) into the app and it processes away.
The results aren’t quite 5× but they are still good. Here’s the breakdown; Original size, size after JPEGmini, the % savings, and that number calculated as “× savings”.
The total difference is 33.1 MB original vs 15.2 MB after JPEGmini. Not bad. Not 5× by a long shot, but not bad. (NOTE: JPEGmini will overwrite your files, so to produce the above test results, I duplicated my test files first).
Should you run it on your Aperture library?
If you’re tight on space, it could be worth a try, but as mentioned earlier… back up first. The creator of the app has assured me that it’s totally safe in that it doesn’t do anything to the Aperture database, so there shouldn’t be a problem, but when it comes to your photos, don’t trust anything unwittingly.
Depending on how you use your library, this may or may not be beneficial.
- The main benefit will be if you have lots of large preview files. So if you have every image render a preview (default setting), and if you have it set to 100% size or 50% size (default setting), and you have tens of thousands of photos, the difference will be significant. If however like me you have preview generation turned off and only create them as-needed, and are diligent about wiping out preview files every so often, then there’s little to save.
- Every image has a thumbnail preview, but those are so small that they they aren’t likely to noticeably change in size. However aggregated over tens of thousands of photos, it just might.
- As soon as you make an adjustment to an image, that JPEG preview will be replaced, and it’ll be back to full size.
- It appears that JPEGmini leaves behind some kind of flag so the app knows that a JPEG has been processed; when I tried to re-process the same folder of test files, I saw a message that the photos had “already been optimized by JPEGmini”.
Can you really not tell the difference?
This is the interesting bit… is the compression really so clean that you can’t tell the difference? I’m happy to say that in my limited testing, the answer is a resounding YES. It really is that good.
For each image, after running JPEGmini, I opened the side by side, and couldn’t see any difference. But that’s not much of a test.
So then I opened the original and the compressed in Photoshop, and layered them, then set the top layer to Difference mode. This calculates the difference between the two images; if there is zero difference, the resulting pixel is pure black. The bigger the difference, the brighter the pixel.
All I could see were a few very faint pixels, and only if I looked really hard. Here’s a JPEG output of the difference result. Click on it to open in a new window to view at 100%.
One trick to really highlight the difference is to flatten the differenced layers and then run auto-levels. This takes the brightest pixels and makes them white and the darkest and makes them black. If you run auto-levels over and over again, you can really force the differences to show, but just one run will really highlight the changes. Now remember, this is NOT a fair look at the difference. That we already saw; this is just to really crank it up and shine a light on the the results. This is the result.
Mere mortals, without the aid of machine, can not tell the difference. So yeah… JPEGmini does a really, really good job of re-compressing a JPEG, saving space, and not letting you in on the difference. The 5× savings may be marketing hype, and I’m sure if you found just the right image you could get that much of a drop, but as you can see in my tests the best I saw was 64.4% / 2.81×, and the average was right around 50% / 2× savings. Still though, nothing to sneeze at.
Even if you don’t use this for your Aperture library, it’s a handy app if you email photos often, or do web publishing. I ran it on all the JPEGs on this post (some are PNG, which it doesn’t work on), and saving half the size means your download time is half as much. I’ll be keeping this around for some of the large, high resolution photos I post on my photo blog, for sure.
Getting the app
JPEGmini is $19.99 on the app store [link] and they also have a free “Lite” version that does the same thing but you can only run it on 20 images a day. That’s a great way to test it though! If you want to read more about the app first, visit JPEGmini.com.