Skip to main content

Album Art from Google Image Search

I am sort of a perfectionist and when it comes to keeping things cleaned up, I can bet no one can beat me!! My Android phone, Motorola Quench XT3(never heard of it! Yeah, it's an Asia specific product from Motorola) has a nice feature of showing album art for songs, as is there in VLC, the epic product from VideoLAN, WMP, the shitty product from Microsoft Corp (which MS has made less shitty in Windows 7 and more) and the lesser known (among mainstream PC and MAC users Rhythmbox, the default music player featured in Ubuntu, the blue eyed kid of Canonical Inc.).

But for me the turning point was when I can view album arts in my phone while listening to music and it became an absolute necessity that every song I play on my Android must have an apt album art, not the stupid, moronic default album art which Android features,

The default album art of Android

Anyways, I search on the internet for a suitable program which would do this thing for me on my computer that is. The results were not satisfactory, there was virtually no program which would suit my needs. Well, what were my needs,
  1. It should use Google Image Search or The less famous Amazon Product Search.
  2. Should be a small script either standalone or as a plugin to a more popular player.
  3. It should save the album art inside the song folder, so that there is no dependency of the downloaded album art with the 'a' player. 
Days in and out, the search results were negative. Then one day I stumbled upon a plugin for Rhythmbox, one written by a a guy named Rupesh. He used the familiar python language to make a wonderful plugin for rhythmbox. You can get a copy of his original work here. But mind you, it does not work with Rhythmbox 3.x. Rupesh's plugin satisfied 2 or my needs mentioned above. It used Google Image Search for finding the album arts and it was an add on to a popular player. But the sad part was, it didn't saved the images in the song folder, rather in a custom folder, where only rhythmbox would be able to pick up the downloaded images as album arts.

The original screenshot as produced by Rupesh's code


So, I decided to do the dirty work. I started to code alter Rupesh's code to suit my own needs. I could find the place where to put the needed code changes and after 6 hours of coding including understanding the nitty gritty of rhythmbox plugin development, for which I was new. So here I was with a working copy of what I needed with any album art plugin searcher.

But there was one problem. Rupesh's code doesn't work with Rhythmbox 3.x! Now, there's another guy Luqman Ade, an Egyptian who has taken on the onerous task of porting older plugins to the new Rhyhthmbox APIs. You can get his ported plugins at Github or more specifically the album art search plugin. I forked his repository at github to create a local repository and altered the code there. My first commit does specifically that. I changed the location and directed the album art to get saved inside the song folder.

Later today morning, I did my second commit to leave the choice to the user, where he wants to save the album arts. I incorporated both the, the original from Rupesh and my own changes into the master repository. It prompts the user to choose the location and saves the album arts accordingly. I asked Luqman to pull the changes I did and today on 22nd of April he has accepted the changes to be incorporated into master repository.

Once again, just to remind one can download the plugins at github from Luqman's Rhythmbox Plugin Repository.

Comments

Popular posts from this blog

Multimaster replication with Symmetric DS

Symmetric DS is an awesome tool for trigger based replication whcih works for all major database vendors, including but not limited to PostgreSQL, MySQL, MSSQL, Oracle and many others. Symmetric-DS is a java application and can execute on any platform on whcih JRE is available including Windows and Linux. Trigger based replication, in constrast to disk based (eg. DRBD ) or transaction log file shipping based or statement based , works by registering triggers on DMLs and sending the data thus generated to remote machines. Another very popular trigger based DB replication tool is Slony . Symmetric-DS in addition to being database agnostic also supports multi-master replication (MMR). MMR usecase involves multiple database nodes, connected in a pool with DML updates coming from any of them. This is different from the normal master-slave replication, where slaves are not expected to generate any data events, and the sole authority of database is the master. MMR requirement causes d...

RabbitMQ and SSL

RabbitMQ is an AMQP provider i.e. it can reliably queue, service and maintain messages according to a range of policies and parameters. By default, it listens to plain old TCP connections and sends and receives messages over plaintext. This feature just works "out of the box". For users who wish to use SSL over TCP aka TLS, it requires a bit more work on their part. First, let's create a bunch of certificates and sign them with our own CA. For this, we'll use easyrsa3 . Easyrsa is a CLI tool to create, sign and manage your own certification authorities. It's maintained by OpenVPN team. Download easyrsa using your native package manager i.e. yum or apt-get $cp -Rp /usr/share/easy-rsa ~/easy-rsa-3   $cd ~/easy-rsa-3 $./easyrsa init-pki $./easyrsa build-ca $./easyrsa build-server-full broker [nopass] $./easyrsa build-client-full client1 [nopass] This creates three entities (collection of private keys, public keys and certificates) for a CA, a s...

Motorola XT502 Custom ROMs

I purchased an Android Phone in the early days of it coming to Indian market and I able to afford it ( just got a job), during mid 2010. The recent and popular version was Éclairs. I just went up to the shop and bought a nice and shiny Motorola Quench XT3 (XT502). When in other places XT502 was having Andriod Donut, I got as a special offer Éclairs. I was happy as hell. The Droid A couple of year passes, and newer versions of Android came from Éclairs to Froyo to Gingerbread then to the bigger version upgrades like Honeycomb, Ice Cream Sandwich and then Jelly Bean. By the end of 2012, I was literally surviving on my Motorola with Éclairs. I had to upgrade, anyhow. Now more that Motorola denied any upgrades for Quench XT3 . A trivia, Android version names are taken from sugary desserts with lexicographic sequencing. So, I did up-gradation from Éclairs to Gingerbread using a custom ROM from Cyanogenmod . An excellent community of enthusiast who develop their own custom ROMs oft...