Picasa Web Albums Data API + Vista Media Center = MyPicasaPictures

I’ve found over and over, if I don’t upload pictures to the web when I first download them from my camera, then there’s little or no chance I’ll do it later.  Out of sight, out of mind.

But I wonder…

If I had an add-in command in the My Pictures sub-app of the Vista Media Center, would I be more inclined to upload pictures to the web then (and give my mom at least a glimpse into my life more than once a year)?

Google developer help: plenty

Since I’m already personally using Picasa’s companion Web Albums for what few pictures I’m sharing, I’m inclined to tie the online component of such an add-on to Google.

Having already investigated the Google APIs, I figured there was likely an API tuned for the Picasa Web Albums, and so there is.  Further, it appears that it provides the ability to post photos, create albums, update & delete photos, manipulate tags, and review existing albums/photos/comments/tags.  Sounds like it provides more than I was even looking for.

From what I gather with a quick skim, the basis for the “PWA” Data API is the Google Data API.  And while I don’t know whether it’s absolutely necessary, Google provides a .NET Client Library (currently v1.1.2) to speed web services client development.

Similar apps

Big Screen Photos v2 — the Yahoo Flickr client for Vista Media Center.  It doesn’t enable you to upload the pictures hosted in Media Center, but rather to view the pictures that are already available on the Flickr site.

Yougle Vista — provides access to online Video, Music and Picture sites including Flickr.  Still no upload capability.

PhotoConnect — extends My Pictures with some interesting functionality including the ability to email pictures to others.  However, it looks like this vanished in a puff of smoke and synthetic ash.

FlickrMCE — another viewing app, only for Windows XP MCE 2005.

PictureBook 1.0 — screensaver add-in, not really all that similar after all.

Windows Vista Media Center add-ons: sorting through all this new technology

Most add-ons for Windows Media Center 2005 (i.e. Windows XP) or earlier were written as “hosted HTML” apps that ran outside the Media Center shell.  Now, while hosted HTML apps may still work in Vista, the drive is towards either the MCPL/MCML or XBAP/XAML:

  • MCPL: Media Center Presentation Layer (the programming model)
  • MCML: Media Center Markup Language (the managed code language derivative)
  • XBAP: WinFX XAML Browser Application (the programming model)
  • XAML: eXtensible Application Markup Language (the language in which XBAP is more-or-less implemented)

However, it appears that the XBAP/XAML model has already been dumped by the eHome team.  Lovely, not even a year out of the gate and they already drop support for the “future-forward looking” programming model — I wonder what hurdles they had to clear to be able to explicitly drop support for the whole WPF (aka .NET 3.0) (aka WinFX) (aka WS-*) company-wide drive.?  Oh well, at least that’s one less choice to confuse me…but I have to bitch just this once: when can we abandon app-specific languages?  Any language or programming model that starts with the name of the vendor-specific technology makes me feel more than a little soiled.

Other resources that should prove useful

Some specific coding issues that I’ve noted for future reference

Interesting Tidbits

  • 🙂 Add-ins run out-of-proc in a hosted process called ehExtHost.exe, and communicate with the main Media Center process using .NET Remoting over “Named Pipes” (aka IPC within .NET).
  • 🙂 Media Center unloads the add-in when the Launch( ) method exit.
  • 🙂 The entry in More Programs is created by the running of RegisterMceApp.exe not by the running of the add-in itself.
  • 🙂 In an MCML application, you can only embed a couple of visual elements, NOT including ActiveX controls (i.e. no native Flash rendering).
  • 🙂 You can’t embed a WPF app / window inside of MCML.
  • 🙂 Charlie Owen has invited anyone to provide good/bad developer feedback on Media Center and the SDK, and left his contact info here.
  • 🙂 You can’t override ANYTHING on the Windows Media Center screens — if you want any new functions, they have to be added on completely new screens, which would mean re-building the whole ‘Videos’ library.

Conclusion

I’m not 100% convinced I’m going forward with this yet — I’m inclined to spec out the features, dig into the SDK/MCMLookalike/Codeplex-hosted sources to get a feel for just how much (a) volume and (b) complexity of code I’m facing, and then decide whether to keep pushing forward.  I’d sure appreciate feedback from anyone who has ever delved into any of these areas for encouragement or “there be dragons” warnings…

  • MCML programming
  • web services integration in managed code — Google or otherwise

Cheers all!

Advertisements

5 thoughts on “Picasa Web Albums Data API + Vista Media Center = MyPicasaPictures

  1. Unfortunately, you can’t add anything to an existing Media Center interface. So there’s no “Send This Folder to Picasa/Flickr” possible.The best you can do is either <>a)<> A ‘More With This’ addin, which would allow you to choose a picture and upload it (I’m not sure if you could do it for a FOLDER though), <>or<> <>b)<>A MCML program that would allow you to choose the various folders full of photographs, or individual shots, to send. Whichever way you do it, I’d consider making the app open-ended if possible, so you could add features like “Upload to Flickr”, “Upload to Facebook” etc.

    Like

  2. Sounds entirely reasonable – thanks for the feedback IiB!(A) Getting “upload this picture” functionality would certainly be a good start for me (so long as I’m not clicking madly to get each photo uploaded). I’m willing to root around in SDK and forums to see whether the Folder at once can be selected (I believe the Google PWA API supports bulk upload).Q: what’s a “More With This” addin? I just dug around the VMC UI and didn’t find anything that sounded like that so far. [If this is a generalization, no sweat.](B) A UI that replicates the My Pictures experience (at least, enough to be able to do these uploads) is less preferable, but it’s better than nothing.And of course I’ll encapsulate the web services functionality so this could be used for the other picture-oriented sites. Heck, I’m even inclined to leave the content type open-ended (videos, etc) if that’s not going to make my life *completely* miserable.

    Like

  3. Hi,I just wanted to comment (as author of Big Screen Photos v2) – that the choice to not make an ‘upload’ function available was “by design” for a number of reasons. (and not at all a technical limitation – as the underlying code is quite simple to do).– The Process of uploading photos to flickr is really more involved (for the end user) than just sending the file to their server. To be effective/useful – it needs to also get a photo title, description, tags, grouping and if possible Geo Coding information as well. The Media Center Environment and Remote control is simply not suited/designed for this sort of thing (intensive text entry) – and would be a very cumbersome experience for the end user. (for example – precise placement for geocoding would be very difficult without a mouse).– If you’re uploading a lot of photos – doing them one at a time is really painful (even flickrs online web form is a pain). There’s however – some really good Windows Utils for batch uploading to flickr – just as long as you can then quickly get in a edit everything.– If by chance you have some sort of device that can embed/collect information (like GPS readings and titles) into your photos – The auto-synchronization tools available (which read a folder and auto-upload to flickr) are a much better solution (than any user driven interface). I saw a really nice sync tool that works/lives on WHS which is worth a look.Plugging something into ‘More with this’ might be a good option (if you have your image already described/tagged etc via metadata) – but those other points above exist.cheersNiallps – always good to see some more MC bloggers…

    Like

  4. Mike: I tought you might find interesting the story of how I built < HREF="http://www.BrazilPcitures.net" REL="nofollow">Brazil Pictures<> on top of the Picasa API. Go to the site and check the ‘about’ section. If you think it is cool, please consider posting about it. Thank you!

    Like

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