How about if we made not only a central system to promote all free music, but also to make all the free music available to users/listeners in a more natural and easy way and at the same time lessen the load and costs of the netlabels?
Because I'm quite busy lately, I'll just quote my own e-mail that I sent to the Libre.fm mailing list with my battle plan in it:
I've just recently learnt about Libre.fm and it made me think about the
Because this will be a longer e-mail, I'll try to put some structure in it. At
first I'll talk in short about what I imagine Libre.fm could provide that
Last.fm doesn't (and couldn't), then show you the big picture and at the
end a detailed example of a real-life use case.
// Libre.fm and Downloads //
One thing that Libre.fm has that Last.fm didn't (and couldn't by this day) is
access to all of the music it promotes and streams. It would be a shame
to let this wonderful opportunity pass us by!
What I propose is to have next to every album that is promoted on
* a direct HTTP/FTP link to the download
* a torrent or magnet link to the album
The direct download link was proposed already, from what I gathered from
IRC, so I'll concentrate on the latter idea.
The idea behind having a BitTorrent link — either as a torrent link with
Libre.fm running a tracker or better yet a tracker-less magnet link — has
many positive side effects.
Firstly it would shift the web traffic from the indie net labels (and Libre.fm)
towards the users, which would lower the hosting costs. A possible
downside would be that the net labels wouldn't have their own track then
on how many people downloaded the album, but a) since it's under a
copyleft license, the users could share it otherwise anyway; and b) they
could always check Libre.fm for that data (via API?).
Secondly the fact that it was handled via P2P would mean that even if a
net label went away, the albums would still be shared. Here the magnet
link would IMHO fare even better then a tracker, in case Libre.fm gets into
trouble (knocks on wood).
// The Big Plan (TM) //
Of course, just having a direct download and a P2P link is a nice touch, but
it's nothing really revolutionary. But using the Libre.fm API to extend this
idea, Libre.fm could bring the music directly to the user's fingertips and
ears with minimal effort from the user him-/her-self.
What I imagine is that by using the Libre.fm API integrated into music
players and P2P clients we could make access to music a lot more natural:
1) Let's say the Jimmy listens to a music stream either in the browser or
favourite music program.
2) Jimmy likes the current song and wants to check out the album, so he
clicks on the "download" button.
3) Automatically his computer (or other device) downloads the album and
puts it into his music collection, without bothering him about it.
4) When Jimmy goes offline he can still enjoy the music, without bothering
too much where, how and using which protocols his got his music.
So, from Jimmy's point of view, he would just click (or drag and drop or
whatever) the download button and that was it!
// Technicalities of the Use Case //
Here's how I imagine the above use case would work in the background
(be warned, I'm not much of a coder!) with already existing technology:
1) Jimmy launches Amarok and tunes into the Libre.fm plugin to check his
2) When he hears something he likes, he clicks the little "download" button
3) Amarok uses the Libre.fm API to check out the torrent/magnet link and
uses the user's default BitTorrent application to open it — let's use
KTorrent, because I'm somewhat familiar with its scripting API.
4) KTorrent has a script implemented, which would check where the
torrent/magnet link came from and/or which tracker, and because it came
from one of the free music net labels, it would automatically apply the
user's settings for it (e.g. download to the music collection folder, any
bandwidth restrictions, add it to the appropriate torrent group etc.).
5) At the same time the same KTorrent script would check if there's any
seeds available. If there aren't any (for a longer period of time) it would
trigger a direct download, which it would get from the Libre.fm API,
uncompress the album (if needed) and move its contents into the music
folder accordingly. Then it would start seeding that same album, so the
next user(s) could already use the benefit of P2P.
6) Amarok would automatically notice the new album in its local collection
and Jimmy would see it there with artwork and all.
For this to work optimally, all the albums in the torrents would have to be
ready for use the moment they finish downloading — e.g. not
compressed, all tracks (including artwork and license) in a folder.
I imagine we could stretch this even further, so that even if the user didn't
start the download from a Libre.fm page or service, the system (e.g.
browser, music player, BitTorrent client or all of them) could check via API
if there is a torrent/magnet link available on Libre.fm for the album. Maybe
it would be plausible (I doubt it though) even to get BitTorrent clients to
upload torrent/magnet links to Libre.fm.
Of course, it shouldn't be limited only to KDE software — that's why I think
it would be a great idea to use Libre.fm and its API as the central
intermediary for it all.
// Conclusion //
I know this is quite an enthusiastic idea, but I'm already working on
something similar for Jamendo using Amarok (the plugin's there) and
KTorrent (I'm writing the script) — and it seems possible to do!
So far the biggest problem I encountered was that KTorrent is not
forwarding some methods that I need to their API, but the devs already
have that planned.
Of course, doing this on such a grand scale as I propose, would be more
difficult, but I think it'd be worth it! As I said, although I'm not much of a
coder, I'll be happy to at least write the Amarok and KTorrent scripts in
order to make it work.
So... what do you think of it?
Matija "hook" Šuklje (a.k.a. "silver_hook")