Today I announce the availability of a brand new version (2.02) of my Rhythmbox plugin "Synclastfm" (see previous post).
This version packs the much anticipated "batch update" feature i.e. the plugin will walk the user's history on Last.fm in order to update Rhythmbox tracks 'playcount' field.
More information can be found here. Have fun and don't forget to provide feedback!
Tuesday, June 15, 2010
Rhythmbox Synclastfm plugin
Sunday, May 30, 2010
Musicbrainz Proxy service over DBus
I have just finished another building block on my quest to taming my music library: a Linux based application serving as 'proxy' (with caching of course) to Musicbrainz webservice. The service is exposed through DBus.
Why?
Correlating music tracks across disparate applications / services can be daunting. For example, suppose one scrobbles his/her tracks to Last.fm. Furthermore, let's say one wishes to keep his/her favorite Music Player in sync with his/her Last.fm profile. This goal appears, on the surface, to be an easy one but as it turns out, support for finding & cataloging music tracks coherently across various applications / services remains elusive at the moment.
Also worth noting: access to Musicbrainz's webservice is monitored. Webservice API access is limited to 1call/sec: if many applications make uncoordinated access to the service, the user's machine might get blacklisted. As I intend to make the track mbid a central piece of information for correlating my music tracks, I needed to address this issue.
Solution
With this application, it will be easier to integrate the various other building blocks of my music management arsenal. See the other project SyncLastfm that will benefit from this addition.
Project
The project's home page can be found here. The associated Ohloh page can be found there.
Update: the application will be installed under Applications / Other.
Update2: more information is accessible here.
Monday, May 10, 2010
Some Google Gadgets
I am in the process of building up my company website based on Google Apps, I need some Google Gadgets to embed but as I am unsure about the majority of the gadgets listed in the directory, I have created some of my own.
- Skype Account Information
- Ohloh Profile Flair
- Stackoverflow Profile Flair
- Twitter Profile Flair with latest tweets
Monday, February 8, 2010
Last.fm Web Service desktop interface through DBus
Not too long ago, I started my quest to Music Library Faiyland (my daughter would love this quote). On this journey, I have completed a couple of intermediate steps ( Rhythmbox plugin - Syncing with Last.fm and Rhythmbox plugin for Last.fm desktop client ) and now I am happy to announce another milestone: a DBus accessible interface to Last.fm's Web Service API.
API
The current DBus interface is rudimentary but can be easily extended ( I have abstracted Last.fm's API to a manageable degree ). I will certainly be expanding the methods in the near future based on my needs and "customer feedback" ;-) Below is a non-exhaustive list of the API:
- Account related:
- get/set Username
- getAuthUrl : retrieve a URL for authenticating the service against a user
- setApiKey , setSecretKey
- Track related
- track.addTags
- track.getTags
- track.removeTag
I have only implemented these methods because they get me what I need at the moment: the possibility to "rate" my music tracks through a hack using the tags to hold the rating for a track. E.g. a 5 stars track would get "R5" as tag.
Message Based Design Technique
In this project, I have further experimented with a design technique based on "Message Passing". I have made some notes on the subject here.
Project
The home page of this project can be found on my Github repository. A Debian package can be found on my Launchpad PPA.
Friday, January 29, 2010
Notes on a Message Passing design
I am an avid supporter of "message based" systems. I took the time to perform a quick "brain dump" of some of my thoughts on the subject.
Follows a simple Python based implementation.
I will very likely make other contributions to my blog along the same lines.