Advertisement

Deep dive: Aperture and Photo Stream, how do they work?

I'm a bit of a shutterbug, so Photo Stream is something I was really interested in when it was announced as part of iOS 5's feature set way back in June. Frictionless, automated sending of photos from my phone to my computer? Sign me up!

Of course, as is too often the case with Apple, the nitty gritty of how this would work wasn't explained in any detail -- particularly for Aperture, which often takes a back seat to iPhoto when Apple is showing off its apps.

Hopefully, this article will answer all your questions about how these two products interact. If not, please leave a comment pointing out what I've overlooked.

Before we start, some basic housekeeping. Photo Stream isn't going to appear in your Aperture at all if you don't first upgrade to v3.2. You'll also need OS X 10.7.2 or later, and iOS 5 on your iPhone, iPad, or iPod touch. You'll also need to go to the iCloud pane in your System Preferences and make sure that "Photo Stream" is ticked (thanks to commenter 'kootenayredneck' for the reminder). If you've done all that, you're all set.

Accessing Photo Stream within Aperture

This is Photo Stream's marquee feature: snap a photo with your iOS device and have it show up on your Mac.

It's easy to do, though it comes with one small wrinkle. In Aperture, go into Preferences | Photo Stream and tick the appropriate boxes. The caveat is that you can only have Photo Stream active for iPhoto or Aperture, not both at once. Turning it on in one app turns it off in the other.

With that setting in place, a Photo Stream entry should appear in your Aperture Library list.

Clicking on this will show you all the photos in your Photo Stream, which you can look through. You can't make any edits, however, until you import them into your library:

Clicking "import photo" brings the photo into your library and allows you to do all the usual range of Aperture adjustments to it.

Note that the Photo Stream implementation on your iOS devices will only be active when they are connected to a Wi-Fi network. If you only have cellular 3G access, no photos will be transferred in either direction. However, don't forget that tethering creates a Wifi network. In a pinch, you could use an iPhone to create a tethered network and connect a second iOS device to it. That would give the second device full Photo Stream access.

Note also that "Automatic Import" means Aperture is constantly copying Photo Stream pictures to your Aperture library. It creates a series of Projects, one per month. As long as you start Aperture at least once per month and once per 1000 photos, this guarantees you can never lose a photo placed in Photo Stream.

Non-destructive editing

Here's a neat trick that isn't immediately obvious. If you take a photo on the iPhone and use the new built-in photo editing features of iOS 5, when you bring the photo over to Aperture the edits are preserved as edits, in the usual Aperture master-and-version-file manner. So you can choose to change them as you please, perhaps replacing iOS's rather crude "enhance" wizard with Aperture's fine-grained adjustments.

I would very much like to see this functionality available to third-party devs. It'd be great if the likes of Instagram and Camera+ were able to save clean copies of their filtered output without cluttering up your camera roll with duplicate versions. Of course, as those filters aren't directly comparable to Aperture's, that would only be possible via a single image file that is basically just two JPGs stuck together -- whereas I imagine the native Photos app is doing something more sophisticated.

Putting photos into Photo Stream from within Aperture

By default, when the third checkbox in my first screen grab above is ticked, all new photos imported into Aperture are automatically added to the Photo Stream by default. More on this "feature" in a second. If you untick that box, you can still manually choose to add specific versions by dragging and dropping them within Aperture to the Photo Stream entry in the navigation tree.

However, before you go adding files en masse, remember that by default everything in the Photo Stream is going to be downloaded to all your iOS devices; that there's no way to delete images from Photo Stream except for a full purge; and that Photo Stream only deletes images when it's holding more than 1000 pictures or after 30 days.

This can add to create quite a headache. It means that if you pull 400 1.5 MB JPG shots into Aperture, it's going to immediately upload 6 GB 600 MB of data to iCloud. If you're not on fast, unmetered Internet, that could be at best inconvenient (as it'll choke your Internet connection up for a prolonged period) and at worst expensive (if you go over your ISP's bandwidth cap). It's then going to download all of those photos, albeit at an "optimised resolution" to each of your iOS devices, exacerbating the problem. Testing on my iPhone 4 and iPad showed that Photo Stream optimised images are around 500 KB each. Continuing our example, then, if you have an iPhone and an iPad that's a further 4 GB 200 MB download for 10 GB 800MB of bandwidth used overall. (Thanks to commenter 'IhatePundits' for catching the mistakes in my mathematics.)

This can also lead to problems with your iOS devices running out of disk space, which then has knock on effects that can start deleting app data you wanted. Overall, it's probably a good idea to leave "automatically upload imports to Photo Stream" to the iPhoto-using casual shooters. I'd go so far as to question Apple's decision to enable this feature by default in Aperture.

RAW files and Photo Stream

The problems with Photo Stream and bandwidth start to look much worse when you examine how it handles RAW files.

According to the Aperture documentation, how RAW interacts with Photo Stream isn't immediately obvious -- but it is very important that you understand it. If you send a RAW file from Aperture to Photo Stream -- either automatically via the "import all" checkbox, or manually -- and if that RAW file has no edits applied, then it's the full-sized original RAW that ends up in Photo Stream. On the other hand, if it has had edits applied then Photo Stream ends up holding a JPG copy instead.

This surprising handling also applies to RAW files imported to the iPad via the Camera Connection Kit. This is a common workflow for me when I am travelling, as I typically do not bring a laptop. Several times a day, I import all the images from my cameras into my iPad, partly for proofing but also partly for backup purposes. It's not unusual for me to shoot 15-20 GB of photos on a week long vacation (I'm very much a statistical photographer).

With Photo Stream enabled, this means I'll be choking up the hotel's Internet connection for hours on end as well as making my iPad run slowly as it manages the upload process in a background task I cannot control or suspend. In my experience, hotel Wi-Fi isn't either the fastest or most reliable, so this could become quite hard to manage. Even at home, if you're on metered Internet, you could easily (and accidentally) chew through multiple gigabytes of your bandwidth allocation.

Note, however, that as Apple states here, RAW files (like full resolution JPGs) are never delivered to iOS devices. If you put a RAW file onto the iPad or if you tell Aperture to add one to Photo Stream, it's an around-500-KB optimised JPG that ends up synced onto the other iOS devices.

Most irritating of all is it is that unlike in Aperture, the Photo Stream option for iOS doesn't have a "download all photos but do not automatically upload new ones" option. It's on/off only. So I have to micro-manage the setting depending on whether I'm using my iPad to import photos from my camera en masse (in which case I want it disabled) or work with iPhone snapshots (when it has to be enabled).

There's also a subtle interaction with the "automatic import" setting in Aperture. Files brought in like this are managed copies, i.e. with the master file living inside the Aperture library. If (like me) you maintain your Aperture library file on a small laptop drive and use external reference masters held on a network share or a larger external drive, then allowing Aperture to import a lot of RAWs through Photo Stream may cause you to suddenly run out of room on your laptop's drive.

Now, it's only fair of me to note that if you are in the luxurious position of not caring about upstream Internet bandwidth, then there is an significant upside to this -- cloud-based backup of your photos. Even if you managed to lose your camera, your memory cards, and your iPad, up to 1000 RAW files are still safely in Photo Stream ready to be pulled into Aperture when you get home. There's definitely perks to this system, I just wish Apple had given the end users a little more control because we don't all live in Infinite Bandwidth Land.

Remember also that Photo Stream storage does not come out of your main iCloud disk space allocation (the 5 GB you get free or any extra you pay for). That's admirably generous of Apple -- a full stream of RAW files could easily be 10-20 GB depending on your camera.

Photo Stream and Apple IDs

One final note. I've seen a few professional photographers around the web getting excited about using Photo Stream as a sort of low-rent proofing service -- for example, to consolidate work from multiple cameras tethered to laptops onto a single workstation back at the office where another member of staff is compiling picks in real time, or for a supervisor to keep an eye on pictures taken on a shoot in real time.

Remember that for this to work well, you're going to need a lot of bandwidth at the shooting site -- particularly upstream bandwidth, which is often not that fast on low-end and medium range Internet connections.

It also requires all the different devices and Aperture installs to be connected to the same Apple ID. Depending on the setup you are contemplating, that might not matter at all, or it could be a significant limitation.