Volumioでコンピレーションアルバムを増殖させないメタデータ

Volumioは楽曲を再生するツールとして愛用しているのだけど、気に入らないのが有料のMyVolumio・・・じゃなかったVolumioの楽曲「ライブラリ」、要するにVolumioの楽曲管理。これが本当に使いにくく動作が遅い。音楽を聴く人が何年も1,2枚のCD分程度の楽曲を流し続けるとても思ってる人が作ったんじゃないかというくらい管理することを考えてない造りになっている。新しい曲・アルバムを足したとか整理したとかするとデータベースの更新が数時間。更新しないと足した曲は表示されないから聴けない。そんなレベル。しかも、アルバムの管理が絶望的に下手クソなので本当にダメ。
特に複数のアーティストの楽曲が収められてるオムニバスとかコンピレーションと言われるアルバム。これが、Volumioでは収められてるアーティスト毎にアルバムが分裂する。例えば総集編みたいなアルバムで30人のアーティストの曲が1曲ずつ入ってると、同じ名前のアルバムが30個できちゃう。アルバムリストメチャクチャだよもう。数年前にVolumioを使い始めたときは普通に1つのアルバムとして認識されてた記憶なんだけどどうしてこうなった?

で、個人的にはVolumioのライブラリは気に入らなすぎるしRaspberry PiのMicroSDをゴリゴリ書き換えると寿命面でヤバいのでメディアサーバをVolumioの楽曲ソースにしてメディアサーバで楽曲管理をしてたのだが、ちょっとVolumioのライブラリの進化具合を確認したら・・・あんま変わってなかった・・・・・・ダメジャン

それで終わりだとユーザーとしての進化もないのでこのコンピアルバム問題を調べて解決することにした。Volumioの「設定」→「Sources」の設定項目を見ててヒントがあったことに気付いたからなんだけど。

以下、この記事ではVolumioのUIが旧UI(Classic UI)です。新UIは嫌いなので。

Volumioのコンピアルバム問題を解決するメタデータ 1
Volumioの「設定」→「Sources」にある「Music Library Setting」の「Compilation Metadata Fields」を見てメタデータの問題らしいことに気付いた。さらにその下の「Sort Artists By」のドロップダウンメニューに表示されてる「albumartist」。そういうことね。

GitHubのVolumioのソースで「albumartist」を探してみた。
どうやらビンゴっぽい。Volumioのライブラリは「アルバム名」だけじゃなく、albumartist(アルバムアーティスト)を見て、それが無ければartistかな?で、artistが一致しないので違うアルバムと認識していると見た。
なので、albumartistメタタグを楽曲に付けてやって同じ値(Various artistsとかVariousとか)を設定してやって、「アルバム名」と「アルバムアーティスト」が一致すれば同一のアルバムと認識されて分裂しなくなる筈。

Volumioのコンピアルバム問題を解決するメタデータ 2
メタデータ変更前のVolumioのライブラリから「アルバム」リストを表示した。この画像でいえば、○○歌年鑑 '70 BEST30と○○歌年鑑 '71 BEST30でそれぞれ1つのアルバムなので1行ずつ表示されるべきもの。しかし、この総集編のアルバムは楽曲毎にアーティストが異なるためVolumioでは1曲ずつが1つのアルバムとして認識され、アルバムが大増殖している。

Volumioのコンピアルバム問題を解決するメタデータ 3
楽曲ファイルのメタデータを編集するためのアプリケーションはWindowsでもMacでもLinuxでもいろいろ出ているので好きなのを使っていただくとして、今回はLinux用の定番アプリの1つMusic Brainz Picardを使用した。他もまぁ大体似たようなものなのでわかる筈。
コンピアルバムの楽曲だけを1つのフォルダ(その下は階層で構わない)に置いてからPicardの左上の「フォルダを追加」を押す。

Volumioのコンピアルバム問題を解決するメタデータ 4
左上の楽曲リストにズラズラと表示される。ここのリストは階層が無いように表示されるが問題ない。[Ctrl]+[a]で全曲を選択する。個人的には1回に1000曲±100曲程度の楽曲を集めて編集するようにしている。上の画像では930曲になっている。
下段にメタデータが表示されるが、複数選択されているので全てが同じ値以外は「アイテムに異なる」という中途半端な翻訳で表示される。

Volumioのコンピアルバム問題を解決するメタデータ 5
下段エリアを右クリックするとサブメニューが表示される筈だが、表示されない場合は先に下段のどれかの項目や値を左クリックしてから右クリックする。上の画像では下段の左上の「タイトル」を左クリックしてから右クリックした状態。サブメニューが表示されたら「新しいタグを追加」を左クリックする。

Volumioのコンピアルバム問題を解決するメタデータ 6
一番上に「albumartist」を入力する。これは「アルバムアーティスト」の予約名。単語切れ目に空白が入る「album artist」ではない点に注意。
「値を編集」ボタンを押す。左側の値の入力欄が入力可能になるのでVarious artistsとかVariousとか入力する。個人的な感覚だがVariousだけだと変に思ったのでVarious artistsにした。(画像ではVariousになってるけど)
「Save」を押す。普通ならSaveで保存されるのだがPicardではなんとこれは「Picard内で適用」の意味らしく、この時点では楽曲ファイルにはメタデータの変更が保存されないので油断しないこと。

Volumioのコンピアルバム問題を解決するメタデータ 7
下段の左上の水色表示のところに、新しく「アルバムアーティスト」タグが出現していて、「新しい値」の列に入力した値(画像では「Various artists」)が表示されていることを確認してから上部のメニューの「保存」を押す。この後、Picardでは保存処理の終わりがよく判らない。「がとらぼ」の中の人の超非力なPCとハードディスクの環境では1000曲程度のメタデータの書き換えで1分程度かかっている。最近の強力なPCとSSDの環境ならもっと速いと思うけどPCのストレージ書き込みのインジケーターを見て点滅が完全に終わるのを確認するのが良さそう。終わった感じならPicardを終了してメタデータの編集完了。

VolumioのMicroSDカード(SBCの場合)なりNASの楽曲データ置き場なりにメタデータを書き換えた楽曲ファイルを置く。
Volumioの「設定」→「Sources」の「マイミュージック」で「再スキャン」
楽曲数によって数分〜数十時間。1000曲で1時間目安程度?旧UIならスキャン中はずっと(ぐるぐるアイコン)が表示されるので判りやすいけど新UIでは途中で表示が無くなるのでデータベース更新終了が判りにくいのよね。コンソールでVolumioにログインして、 /var/log/mpd.log (最近はこれがメインのログファイル)を監視するのが良さそう。 tail -F /var/log/mpd.log ってやれば更新が判る。

Volumioのコンピアルバム問題を解決するメタデータ 8
Volumioのライブラリ更新後に「ライブラリ」の「アルバム」リストを表示した。
正しくコンピレーションアルバムが認識されて1つずつになっている。上の画像では幾つか2つ同じのが表示されているようだけど、これは元々CD2枚で1アルバムで、CD毎にそのアルバム名が微妙に違うから。(リッピングで使うCDの曲名データベースの側で空白の有り無しや記号の全角半角など微妙に違って登録されているので)

Volumioのコンピアルバム問題を解決するメタデータ 9
アルバムを選択すると、アルバムに収録されている楽曲が表示される。触ったメタタグは「アルバムアーティスト」であって「アーティスト」ではないので上の画像のように歌手名は変更されずに正しく表示される。

このように、Volumioでもコンピレーションアルバムを正しく認識させることができるようになった。しかし、この「アルバム」+「アルバムアーティスト」が一致、「アルバムアーティスト」タグが無いなら「アルバム」+「アーティスト」を見て、それが一致しなければ別アルバム扱いにするという処理は大バカすぎるのでどうにかして欲しい。多くのリッピングアプリはalbumartistタグを付けないから「アルバム増殖」になるなんてわかりきったことだと思うんだけど。当然、次回以降もコンピアルバムをVolumioのライブラリに登録するならメタデータにalbumartistを追加してやる必要がある。これは本当にアホくさいのでVolumioのライブラリは捨てて、何か楽曲の管理が簡単で適切なメディアサーバ使った方が良いと思う。

関連記事: