Annoture Feature Complete!

I love it when a plan comes together!

Annoture is now successfully transferring annotations from iView to Aperture and back. I completed the last piece, Aperture to iView, just a few minutes ago, and it’s great to see things running smoothly.

There’s just a few more pieces to finish before I can wrap up this application and release it into the wild. I can finally see the end of the tunnel from here!

One issue which will be difficult to resolve happens when copying annotations from Aperture back to iView. Since Aperture lets you have multiple versions of the same image, which one do you pick? The application currently selects one of the master versions to transfer on a semi-random basis. There’s no guarantee that it’s the one with the most up-to-date annotations. In the SQLite database, there is a ZEXPORTMETADATACHANGEDATE field, but the format of the date is strange. Sample values include: 155143329.224529, 155139934.77349, 155139919.663023, and 155139928.835527. Anyone know how to decipher this? I could add an additional query to select the version that was updated the last.

8 Comments

Add yours →

  1. That looks like an NSDate — the first date (155143329.224529) calculates to 2005-12-01 10:22:09 -0500. Check out NSDate’s +dateWithTimeIntervalSinceReferenceDate: . Don’t know what the Applescript Studio mechanisms for getting at that are.

  2. Maybe it’s the number of seconds since Jan 1, 2001.

  3. I think Eric Cheng is right.

  4. I think near 400.000.000 seconds since Jan 1, 2001 to today.

  5. It’s a variant of a unix timestamp. If you take the date and pass it to: date -r you get the date -31 years, exactly. I’m trying to figure this out too. So far the best I can figure is that it’s a unix timestamp – ((365 * 24 * 60 * 60) + (8 * 60 * 60)) the extra 8 days is for the 8 leap days in those 31 years.

    I’m looking for a better explanation, so if you have one, please post.

  6. OK, I now think it is an NSdate, but I’m not sure how to translate it to a unix timestamp to other usable date using bach script, PHP or applescript. Any ideas?

  7. Finally found the way to convert the timestamp into something AppleScript can handle:

    set theDate to call method "dateWithTimeIntervalSinceReferenceDate:" of class "NSDate" with parameter (theTimestamp as real)

    where theTimestamp is the value for the timestamp field in SQLite3.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.