本記事では、Ubuntuでlast.fmを自分のお気に入りのオーディオプレイヤで楽しむ方法をまとめる。
last.fmとは?
last.fmは、ストリームで配信される音楽を聞くことができる。お気に入りの曲を登録しておけば、自分の好みに合った曲が配信されるようになる。また、同じような感性を持った人とつながることもできる。
音楽を聞く方法は、Webブラウザからサイトにアクセスするか、専用のプレイヤを使って聞くである。プレイヤはapt-getでインストールできる。
$ sudo apt-get lastfm
お気に入りのオーディオプレーヤでlast.fmを聞くには
lastfmproxyを使えばお気に入りのオーディオプレーヤでlastfmを聞くことができる。lastfmproxyは名前の通り、lastfmラジオストリームのためのプロキシサーバである。インストールするには、LastFMProxyでバージョン1.3bを取ってくる。Ubuntu 8.04だとaptでインストールできるが、バージョンが低い(確か1.1)ので使えなかった。lastfmのAPIが変わったのに、1.1は古いままなのでは?とにかく、とってきたtarボールlastfmproxy-1.3b.tar.gzを展開する。
$ tar zxvf lastfmproxy-1.3b.tar.gz
次に、lastfmproxyディレクトリに移動して設定ファイルconfig.pyを編集する(詳細は、同じディレクトリにあるREADME.txtを参照のこと)。あらかじっめlast.fmで申請したアカウントとパスワードを入力する。また、プロキシ経由でインターネットに接続している場合はこのファイルでそのプロキシサーバとポート番号を設定する(ちなみに、環境変数で指定していても、ここでは設定する必要あり)。閲覧、編集するにはroot権限必要です。
# Port to listen to
listenport = 1881
bind_address = "127.0.0.1"
# Stick your last.fm username and password between the quotes below.
username = "あなたのアカウント"
password = "あなたのパスワード"
# Which theme (skin) to use
theme = "default"
# Change "useproxy" to True and set the host and port if
# you need an external proxy.
useproxy = True # <---プロキシサーバを使っている場合は、このようにFalseをTrueにする。
proxyhost = "使っているプロキシサーバ"
proxyport = ポート番号
# Set these if your proxy requires authentication.
# Note: Only "Basic" authentication is supported.
proxyuser = ""
proxypass = ""
後は、main.pyを走らせるとlastfmproxyが立ち上がる。
$./main.py &
Starting LastFMProxy 1.3b...
Connecting to last.fm server...
To tune in, point your browser to:
http://localhost:1881/
ブラウザでhttp://localhost:1881/にアクセスして、Start Radioをクリックするとlastfm.m3uというファイルをダウンロードできる(あるいは、再生するアプリを選択して、再生しても良い)。このファイルは単に次のように書かれているだけ。後は、オーディオプレイヤーを立ち上げて、このURLを指定すれば良い(例えば、Rhythmboxでは演奏→新しいインターネットラジオ局で指定できる)。
http://localhost:1881/lastfm.mp3
ブラウザでlocalhost:1881にアクセスしたとき
ちなみに、rythmboxでは成功したけれど、audaciousではうまく再生できなかった。
ラジオを録音するには
streamripperを使います。これはaptでインストールします。単純に録音したいなら、lastfmproxyを走らせている状態で、次のコマンドを実行します。
$ streamripper http://localhost:1881/lastfm.mp3
もちろん、細かい設定も可能です。詳細はstreamripperのman pageに書かれています。
参考サイト