July 18, 2012
Update 2: Version 2.1.2 has now been released that fixes the startup delay added in 2.1.1.
Please note: If you one of the few that downloaded the update before we pulled it from the store, please see the second linked post above and/or this comment for instructions on how to remove and update Photosmith and still retain your data.
Picks / Rejects
Yup- you finally have the ability to set Pick and Reject flags and sync them back and forth with Lightroom. Adobe added the ability to Lightroom 4.x to modify the flags a few weeks ago, and since then, we’ve modified the app and the plugin so that it works with the sync. There’s not too much visual change – only adding the needed flag buttons (shown here in the inactive and the Pick active states):
And having pick and reject doesn’t do much good unless you can filter and sort on them, so we’ve added that as well:
The flags work like any other metadata – set in either Photosmith or Lightroom, sync, and the setting will be made on the other side. For a lot of people (including us!), this is a big part of our selecting and culling workflow.
For those using Lightroom 3.x, the Copy Name field is still used for at least getting the data over, allowing you to sort within Lightroom.
We’ve had a number of users who have had some issues with sync – either the inability to connect, problems with Bonjour and automatic device detection, and other network related issues. While we haven’t been able to change the laws of physics and make WiFi faster, we have added a number of automatic checks, re-checks, and detection to hopefully address these issues. We’ve also added additional error checking and error handling for the times where there’s a bad image or bad data. If you’re still having problems after this update please let us know so that we can look into it.
Several people have asked for dimming the display during a long sync, so we’ve added that too. It’ll dim to 10% of the display for any sync longer than 5 minutes and automatically restore at the end of the sync.
When we were talking to users a few months ago, the typical use case we heard was that people wanted to sync 50 or 100 photos at a given time, so we didn’t do much testing for very large sets. And, as we should have guessed, it seems that many people have been doing large syncs. Very large syncs – 4,000-8,000 photos at a time. And a large number of keywords – 15,000. The sync would just timeout in those scenarios.
So… we’ve focused on making things work with the small AND the large syncs. We’ve tested up to 14,000 photos and 22,000 keywords. (And if you’re a super-power user that has even more than this, it *should* work.. we just ran out of available test sets!).
And to go with the large keyword lists, we’ve also sped up the keyword interface for those who have many thousand keywords.
Use of Lightroom Previews
Lightroom stores the pre-rendered previews of images for faster loading internally. Unfortunately, it’s not part of the SDK to allow access to these. Fortunately, not everything has to be done through the SDK.
It does require a little more setup, but is otherwise automatic. For Windows, everything is built-into the plugin. For Mac, you’ll need to install ExifTool so we’ve added the installer to the plugin too. See the Publish Manager in Lightroom under Photosmith for assistance on setup.
Previews are checked for each image, and if it’s available, the sync will use them. If not, then it’ll generate the images from Lightroom the old-fashioned way. And as luck would have it, the preview sizes almost directly match the three Full Screen and Full Res sizes that we use in sync.
This significantly speeds up the sync process – what used to take 5-10 seconds per picture (and spike your CPU) now takes a less than a second.
Advanced Conflict Detection
Like most sync protocols, Photosmith uses a “latest wins” logic, where the last modified location is used as the source for the metadata. This works most of the time, but there are some scenarios where it just doesn’t. Worse yet, you can easily make a change to one side (such as apply a metadata preset or develop preset to a large batch) and not realize that you’re about to wipe out all that data you’ve typed in on the iPad. The logic may be technically correct, but it can lead to some unexpected (and frustrating) results.
So… we’ve put a bit of work into what we’re calling “advanced conflict detection”. Essentially, by looking at the date/time that the files were written, synced, modified, etc, the sync can make a pretty good determination that things may not be what you’re expecting. And in those scenarios, it’ll prompt you:
(The “OK” button actually says “Cancel Sync” – please pardon this image still stored in my inbox from a beta build!)
This way, you can make the right decision for the given photo (or all the photos), or you can cancel the sync to look into it in more detail.
Image Processing Updates
You’d think that everyone would write out EXIF metadata the same way. You’d think this until you wrote your own EXIF parser and found out otherwise. GoPro images choose to write out date/times differently than the iPad camera images. Nikons store their rotation data differently for some cameras than others. And so forth. I’d like to believe that camera manufacturers do this just to keep us on our toes, but either way, it causes problems sometimes (including crashes in some instances).
So… all known instances of those have been fixed. Especially a number of rotation and display issues. Please report any weirdness to us directly (with sample images) if you still find something that’s off.
Filename Matching by Sequence
For those who have really pushed the sync protocol, you’ll know that there’s only so many ways to match images between the iPad and Lightroom. If there were some universal ID per image that camera manufacturers used, it’d make life much easier, but I’m afraid we’re stuck for now.
However, what we have added is the ability to match on the image sequence. For example, if you have a photo named IMG_1234.JPG in Photosmith and IMG_1234.CR2 in Lightroom, we can now match on the “1234″ part of the image (any four or more sequential numbers).
Coupled with other matching (notably, by date), this becomes pretty powerful. In particular, this means we officially support a “proxy JPG” workflow, where JPGs are sent from an Eye-Fi card to Photosmith, and the raws are on Lightroom. Syncing using the filename matching means that you don’t need to store the space-consuming raw files on your iPad.
We’ve also added a bunch of other small fixes, including support for subsecond image times, bug fixes for Flickr and Facebook, emoji character support in metadata presets, preliminary shake-to-undo support, and others.
Please make sure you download the updated plugin (also version 2.1) to take advantage of all the new features, and contact us if you have any problems.
Lastly, please consider leaving or updating a rating in the App Store. Higher ratings lead to more sales which lead to more features – good for everyone!
Official change lists
App: Changes: • Added Pick & Reject flag sync with Lightroom v4 or higher (LR 3.x cannot sync flags) • Added Filtering by Flag • Added display dimming during long syncs to save battery power • Added support for emoji characters in metadata presets • Added support for grid sorting based on subsecond capture times • Improved handling of iPad sleep mode during sync • Improved display speed of large keyword sets Top bug fixes: • Fixed rotation problem with certain images displayed stretched • Fixed EXIF date/time parsing for many file types • Fixed bug where sync would stop unexpectedly for large datasets • Better handling of Facebook sessions when flipping between tabs • Fixed formatting of user names for Flickr • Increased Flickr upload timeout to allow for large uploads without timeouts • Fixed occurrence of "null-null" display in Grid group headers • Fixed hangs & crashes when purging offline photos • Fixed color label order in QuickTag bar and sorting to match Lightroom's order Plugin: - Added ability to use LR cached previews during sync, speeding up sync - Added checking and notification of sqlite and exiftool executables needed for preview - Added support for searching for filenames by image sequence number (needed for jpg proxy workflow) - Added advanced sync conflict detection - Added write permissions check for remote updates - Added additional networking retries to help re-establish sync communications - Added keepalive thread to better handle large sync operations - Re-enabled matching by file date/time with the 2.1 version of the app - Text/formatting updates to Plugin Manager screen