openSUSE 11.4 and Banshee: Amazon MP3

Great news! openSUSE 11.4 was just released, and it’s loaded with goodies! I am of course most excited about the inclusion of Banshee 1.9.3 with full Amazon MP3 store support included out of the box.

Banshee Amazon MP3 support in openSUSE 11.4
Within seconds after the 11.4 installation, I had made my first Amazon MP3 purchase.

In openSUSE, 100% (not 25%) of referral revenue generated by Banshee’s Amazon MP3 support goes directly to the GNOME Foundation. 100%. What are you waiting for? Install openSUSE 11.4 and start buying music – an easy way to help Free Software!

You can even help GNOME by shopping with Amazon through your usual browser. No excuses!

openSUSE 11.4 is out!

An Open Proposal to Canonical

Firstly, this post is a personal one. I am not speaking on behalf of the Banshee community, any corporation, foundation, or my maintainer peers.

Since Banshee will be shipped in the upcoming release of Ubuntu, Canonical has decided it will take 75% of the Amazon MP3 referral revenue that, in the upstream/default codebase and configuration of Banshee, has historically been donated to the GNOME Foundation, a nonprofit organization.

25% will continue to flow to the GNOME Foundation. Of course this change will only affect those running Banshee as distributed by Canonical/Ubuntu. Other builds and distributions are unaffected.

Given that this decision appears to be final, I propose to Canonical my vision of the execution of this revenue sharing from a technical and accounting perspective:

  • Let Banshee handle the revenue sharing on the banshee.fm server. Currently, when launching the Amazon MP3 store in Banshee, the user is redirected through a proxy on banshee.fm. This proxy does a few important things:
    • Use IP address geo-location to redirect users to the most appropriate Amazon MP3 store (e.g. amazon.fr, amazon.com, etc).
    • Inject the appropriate Amazon MP3 referral code depending on the store chosen (and in this new case, also depending on whether the user is coming from a Canonical build).
    • Act as a level of indirection in case changes are made on Amazon’s side – if something happens, we can update our server and users remain unaffected as software updates do not need to be pushed.
    • Finally send the user to Amazon MP3.
  • With revenue sharing happening through the existing proxy, we can ensure that funds to the GNOME Foundation are delivered through the existing referral codes, and in a timely manner. We will be able to continue to provide public disclosure of referral revenue for GNOME.

    I am very concerned about accountability, and want to ensure that 25% is indeed making it to GNOME in a timely manner, consistent with what we already have in place.

Additionally, as part of Canonical’s decision to donate 25% of Banshee’s Amazon MP3 referral revenue to GNOME, they have also stated that 25% of referral revenue from their own UbuntuOne Music Store and from referral revenue from their builds of Rhythmbox will also be donated to the GNOME Foundation. I applaud them in this choice, especially around U1MS, as this is their own service and investment.

However, as partly implied by the Ubuntu News article on the matter, one thing that does concern me is that while this issue was discussed between Canonical and the Banshee maintainers many times, I am not aware of Canonical involving anyone in the actual Ubuntu community. I will be interested to see how we end up handling this matter technically, and what, if anything, Canonical does regarding packaging, patching, and involving the existing Ubuntu packagers and contributors.

Finally, I am excited about the new potential Banshee has in the near future to generate truly significant referral revenue for the GNOME Foundation as we near Banshee 2.0 and its availability on Windows and Mac OS X, where we will fully control its distribution as an upstream.

Amazon MP3 Store in Banshee

The Banshee logo I’ve landed a new extension in Banshee — an integrated Amazon MP3 Store source. This source allows you to browse, search, preview, purchase, and download music from the Amazon MP3 web site.

Building on last week’s announcement of the Amazon MP3 downloader extension, the Amazon MP3 Store extension allows for tighter integration and a better user experience — music can be explored and purchased all from within Banshee.

Amazon MP3 Store in Banshee
Watch the Banshee Amazon MP3 Store Screencast!

I employ no gimmicks. The extension is very simple, just embedding a WebKit GTK web browser, and integrates with a few hooks:

  • Intercepts audio/x-mpegurl content, to stream previews. This provides natively integrated music previews that play in Banshee, not in the web page via Flash.

  • Intercepts audio/x-amzxml content, the playlist (or “download queue”) that Amazon provides after a purchase, and load through the Amazon MP3 downloader extension to immediately begin downloading the newly purchased music. This eliminates the need for Amazon’s external downloader. Everything happens from within Banshee.

  • Set a cookie ahead of time so that the Amazon MP3 web site is aware that a downloader is installed (Banshee), making the purchasing experience faster and less confusing.

  • Search the Amazon MP3 store from the usual Banshee search box.

  • Provide basic web-browser navigation controls: back, forward, refresh, home.

Amazon MP3 SourceAs simple and obvious as this approach may be, the reality is that this integrated experience was previously unseen on the Linux Desktop. This approach levels the music purchasing playing field — no extra software to install, no browsers, file managers, or mime systems to configure, and no more manually importing externally downloaded music. Just click, buy, and enjoy.

The code is all committed and available for immediate use in Banshee’s git master branch. It will be available in the next release for packaging: 1.7.3.

Remember, Amazon MP3 music is all DRM-free, and there is tons of free content on Amazon as well for you to try the extension out if you’re not up for purchasing more music just now.

Amazon MP3 downloader support in Banshee

The Banshee logo I’m very excited to announce I have just landed support for downloading and importing your Amazon MP3 purchases into Banshee.

It is a simple extension that understands the download queue file that Amazon delivers after a purchase is made. Linux Desktop integration is provided so that your web and file browsers associate Banshee with the download queue file.

Banshee Amazon MP3 support

Further improvements are on the way, but I’ve downloaded many albums in Banshee at this point (and subsequently burned a decent amount of money!) Of course, there are a number of free downloads that Amazon offers, which were good for testing. Unfortunately, I didn’t think to look for these until I had finished the feature.

In addition to the integrated Banshee extension, there is a command line client called bamz. It requires Banshee to be installed for support libraries, but does not integrate with your Banshee library in case you are into that sort of thing. By default, bamz downloads the tracks into your current working directory with the following structure: $PWD/<Artist Name>/<Album Title>/NN. Track Title.mp3.

bamz command line client

I will be merging the Amazon MP3 support into the 1.6 stable series, and it is currently available in Banshee’s git master branch. Enjoy!