音楽ログの記録に『ListenBrainz』を使うために

ログを残すサービスはLast.fmだけで本当によいのか?

筋金入りのLast.fmユーザーである私ですが、Last.fm以外にも音楽を聴いたログを取るサービスがいくつかあることは知っています。
日本での知名度は個人的にはLast.fmが圧倒的だと思っていて、機能的にも特に不満はないのでLast.fmだけにこれまでをログを残していました。

完全にLast.fmのサービスに依存しているため、つまりLast.fmが終了すればログは全て削除されることになります。この冗長性が求められている世の中ではいささか不安です。Last.fmが仮になくなったところで死ぬわけではないのですが、ちょっと(いや、かなり)悲しいですね。

ということで、今回は以前紹介したオープンCDDB『MusicBrainz』の姉妹プロジェクトである、『ListenBrainz』に音楽の再生ログを残す方法をご紹介いたします。

https://listenbrainz.org
https://listenbrainz.org/goals

環境の問題点

残念なことに、Windows環境からListenBrainzにScrobble(再生データの送信)をする手段は限られています。
例えば、一般的に利用されているiTunesの再生情報はListenBrainzに送信できません(軽く調べた限り)。

私が普段使っているfoobar2000の場合は、コンポーネントの追加を行うことですぐに可能です。
https://community.metabrainz.org/t/a-proper-foobar2000-submission-component/446404/16
https://hydrogenaud.io/index.php?topic=118824.0 (foo_listenbrainz2-1.1.0.fb2k)
他にもMusicBeeではプラグインが配信されているらしく、ListenBrainzに情報を送信できそうでした。

Webで再生している音楽のScrobbleにはWeb Scrobblerを利用することで記録できます。
https://github.com/web-scrobbler/web-scrobbler
https://chrome.google.com/webstore/detail/web-scrobbler/hhinaapppaileiechjoiifaancjggfjm/ (Chrome ウェブストア)

また、ストリーミングサービスの場合はSpotifyのみ対応(連携)しています。
これはアカウント同士を紐付けるだけなので、一番手軽です。

実際の準備

今回は音楽プレイヤーとしてはfoobar2000を使って紹介します。
先に上述のコンポーネントをダウンロードしインストールしておきましょう。
一旦そこまでで大丈夫です。

MusicBrainzのアカウントを作る

ListenBrainzのウェブサイトから会員登録を行います。
https://listenbrainz.org

…と言いたいところなのですが、ListenBrainzを利用するためにはMusicBrainzのアカウントが必要です。
MusicBrainzのアカウントがListenBrainzのアカウントとなるので、この作業は必須です。
https://musicbrainz.org/register

MusicBrainzに登録できたら改めてSign inからアカウントの紐付けを行いましょう。

トークンを確認する

改めて https://listenbrainz.org からアカウントの情報を確認します。
右上に自分のIDが表示されているはずなので、そこから『My Profile』に飛びます。

アクセスするとかなりシンプルなページが表示されるはずです。

listenbrainzac
アカウント情報のページ。あんまり隠す必要はないのですが、モザイク部分にアカウント名があります。

とりあえず今後のfoobar2000の再生情報を取得したいので、『User Token』の『Copy』でトークンをクリップボードにコピーします。
さて、foobar2000に戻りましょう。

foobar2000のConfigureからListenBrainz 2を探して、先程コピーしたトークンをペーストします。
Toolsのツリー内にあると思います。
予めコンポーネントをインストールしていない場合にはここでインストールしても全く問題ありません。

ユーザートークンを入力してApplyするだけです。

Enableにチェックを外すと記録は送信されません。内部的に再生履歴を保持しているわけではないので、Enableを外しておいて後日まとめて送信、みたいなことはできないはずです。
また、これまでの再生履歴も送信できません。

何はともあれ、これでfoobar2000の再生情報はListenBrainzに登録できるようになりました。
私はLast.fmにもListenBrainzにもデータを送信しています。別のコンポーネントを利用していることもあり、今のところ何も問題は起きていません。

ListenBrainzへLast.fmのデータをインポートする

冒頭の通り、Last.fmの再生情報を冗長化することを狙いたい場合、ListenBrainzにLast.fmのこれまでの情報をインポートすることができます。
ただし、インポートに関してアカウントが同一人物なのかどうかのチェックはありません。つまり、やろうと思えば他人のLast.fmのScrobbleをインポートすることも可能です。やる意味がなさすぎるのでわざわざ認証などを実装していないんだと思います。そもそも公開情報ですからね。

上部メニューの『Import』から行えます。

lastfmlistenbrainz
ユーザーネームをブチこんでImport Now!するだけです。

結構な数のScrobbleがある場合、相応に時間もかかりますので適当に待ちましょう。
タブを閉じたりすると作業が止まりますのでご注意ください。

またインポートできない、という場合にはLast.fmの下記のチェックボックスを外してください。

「最近のリスニング情報を表示しない」のチェックを外します。
逆に考えると、この方法で誰かからScrobbleをパクられたくない場合にはチェックを入れておく必要があるというわけですね。

完了したら上部メニューの『My Listens』から古い記録をさかのぼってみましょう。自分のアカウントと同じ記録が表示できていれば成功しています。

あ、忘れていましたが、もしSpotifyを連携する場合には同じようにメニューから『Connect Spotify』を開けば設定できます。
この記事の冒頭のように、対応しているストリーミングサービスはSpotifyだけです。

以上で今後のリスニング情報の送信設定と、Last.fmのデータの複製が完了しました。あとは普段通り音楽を聴くだけです。

統計情報が意外と充実している

先程までは準備編でしたが、実際にListenBrainzに情報を溜めていくとどんなことを教えてくれるのでしょうか。
これが意外と分かりやすいデータを提供してくれます。
このレポートは『My Listens』から確認できます。Reportsタブにあります。

期間別の再生数

これはLast.fmでも提供されている機能です。

年ごとの表示です。「週」「月」「全期間」でも表示できます。これは私の記録ですが、年々減っていて悲しい。

要素別の集計

この辺もLast.fmで確認できますが、シンプルな表示なのがいいですね。
Last.fmの場合はランキング表示をするためには1クリックする必要があります。

ちょうどSound Horizonのリマスター盤を手に入れたので関連して聴いた週でした。

聴いているアーティストの国別のリスニング傾向も分かる

MusicBrainzの情報を活用しているな、と思うのがこのデータです。
聴いたアーティストの情報がMusicBrainzに登録されていると、それがどこの出身のアーティストなのかを判別して集計してくれます。

インドネシアにも1カウント入っていたのですが、まったく心当たりがない。

後はこれまでのカウントの一覧や、いつ音楽を聴いていることが多いか、みたいな情報も見ることができます。

コミュニティとして大きいLast.fmの方が面白い情報が見られる、と言われてしまうとその通りなのですが、最後の国別表示なんかはLast.fmだと分かりにくいので、全く見る価値がないかというとそんなことはないのかなと思っています。

終わりに

この記事では紹介しなかった機能もあります。例えば『Follow』とか。私が使ってないので説明できないというだけなんですけどね。

ListenBrainzはとにかくSrobbleの手段が限られているので、それがどうにかなればもう少し浸透するのではないかと思うのですが…。
そんなに言うなら自分でScrobblerの一つでも作ってみろという話ですね。Githubとかに実は転がってねえかな…。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です