プロジェクト

全般

プロフィール

機能 #686

未完了

音楽ライブラリのタグ整備 (2025-03)

nop_thread さんが1日前に追加. 約8時間前に更新.

ステータス:
進行中
優先度:
通常
担当者:
開始日:
2025/03/12
期日:
進捗率:

0%

一時中断:
いいえ
生活コンポーネント:
pinned:
はい
リマインド予定日:
前回確認日:
2025/03/12
管理外残件あり:

説明

Navidrome の更新に伴ってちょうど良い文書が公開されたようなので、それを使ってライブラリを整備していく。
これからも音楽は増える予定なので、整備は早ければ早いほど良い。

現在アクティブに使っている音楽再生機は Navidrome (あるいはそのクライアントアプリ (Subsonic 互換)) と WALKMAN (Android 世代。 NW-Z707 と NW-A306 等) なので、それらで不都合のないようにしていく。

作業内容 (予定): #note-8

参考

nop_thread さんが1日前に更新

multi-valued tags について WALKMAN (NW-A306) で実験した。
結果は以下のとおり。

  • ARTIST は複数あろうとひとつの値だけが選ばれて使われる (最後の値?)
  • ARTISTS は個数に関係なく完全に無視される。
  • (artist 以外 (album artist など) は試していないが、これに準ずると考えるべきだろう。)

実験内容:

FLAC ファイルにタグを設定して NW-A306 での認識を確認。

  • ARTIST=ARTIST1, ARTIST=ARTIST2, ARTIST=ARTIST3
    • アーティストとして ARTIST3 のみが認識された。
  • ARTIST=ARTIST, ARTISTS=ARTISTS1
    • アーティストとして ARTIST のみが認識された。
  • ARTIST=ARTIST, ARTISTS=ARTISTS1, ARTISTS=ARTISTS2, ARTISTS=ARTISTS3
    • アーティストとして ARTIST のみが認識された。
  • ARTISTS=ARTISTS
    • アーティスト不明扱い

nop_thread さんが1日前に更新 · 編集済み

つづいて COMPILATION=1 タグについても NW-A306 で実験……するまでもなく、 COMPILATION は認識されなそう。
別の表現をすれば、 WALKMAN 上では常に COMPILATION=1 が指定されているかのような挙動になっている。
既に実データで支障が出ている。


観測事実:

GHOST__La prière/01_GHOST.flacGHOST__星街すいせい/01_GHOST.flacCOMPILATION タグなしで持っているが、 WALKMAN 上ではこれらが単一のアルバムに入っている扱いになっている。
「曲の詳細情報」メニューから確認すると、いずれのファイルも「アーティスト」「アルバムアーティスト」ともに意図したとおりに設定されている。
そのため WALKMAN ではアルバムの集約において「アルバムアーティスト」の違いが完全に無視されているとしか考えられない。

ちなみに両者とも track number は1だがアルバム内の曲順としては星街すいせいが先で La prière が後になっているため、どうやらファイル名やアーティストの辞書順で並べているわけでもなさそう。
謎。

nop_thread さんが1日前に更新

さすがにアルバム名被りに対処できないとクラシック音楽とかで不都合があってもおかしくないような気がするのだが、あの界隈は曲名が被るだけでアルバム名自体は割と一意なのだろうか?
もう少し調べてみる。

nop_thread さんが1日前に更新 · 編集済み

ちなみに、ファイルパスにアーティスト名を含むのを極力回避しているのは、ゲームや映像のサウンドトラックなど (特に限定特典のものは面倒) での問題、あるいはアーティスト名データの後からの変更による影響を極小化したかったため。

たとえば単体で市販されておらず特典として付属するようなサウンドトラックは album artist として何を使うべきか割と謎だったり調べるのが困難だったりで値の選択が悩ましく、また後で変更したくなる可能性がある。

  • パブリッシャー (?) なのか
    • 後から似たようなものが単体で発売されるとしたらパブリッシャー (?) の抱える音楽レーベルから出そうだが、名前が一致しているとは限らない
  • アニメスタジオなのか
    • 画を作っているところだし音楽は外注かもしれないが (何もわからない、そんなことないかもしれない)
  • 収録・ミックスしたスタジオなのか
    • 単体販売でジャケットにクレジットがあるならさておき、円盤がそのまま入っているような特典の場合調べるのが困難かもしれない
  • Various Artists なのか
    • それでええんか?
    • 作曲者が一人の場合これは意味的に不適切だが……

また、 Hoyoverse のゲームのサウンドトラック (たとえば『ゼンレスゾーンゼロ』の 极限委托, Sān-Z - Qobuz や 『原神』の Amazon Music - HOYO-MiXの原神-輝く星々Vol. 5 (キャラクターテーマOriginal Soundtrack) - Amazon.co.jp などを考えてみると、これもまた悩ましい。

  • ゼンゼロのものを見ると、レーベルとしては miHoYo
  • ゼンゼロのものは音楽スタジオとしては Sān-Z と HOYO-MiX?
    • Sān-Z がチームで HOYO-MiX がスタジオ? よくわからない
    • そもそも Sān-Z が HOYO-MiX や Hoyoverse に含まれるのか外部なのかすらわからない
    • そもそも HOYO-MiX がどう噛んでいるのかもわからない。基本的にすべてのトラックが Sān-Z によるものに見えるが……。
  • かつて miHoYo だったものが Hoyoverse になったようにレーベルの名前が変わり、サウンドトラックがそれを跨いで継続的に新しくリリースされ続けている場合、古い名前を使い続けるべきか新しい名前を使って分断を許容すべきか

こういったことを考えるとアーティスト情報は些か不安定であり、プレイリストを破壊するファイルパスにはできるだけ使いたくない。
一方でファイルパスに影響せずメタデータを変更するだけなら、検索に影響するのみでプレイリストは破壊されないため、そちらについては許容できる。

以上のような事情から、これまでアーティスト名をファイルパスに含めない運用を続けてきた。

nop_thread さんが1日前に更新

nop_thread さんは #note-4 で書きました:

以上のような事情から、これまでアーティスト名をファイルパスに含めない運用を続けてきた。

ただこれも #note-2 で挙げたようにアルバム名被りが発生して困ることはある。

#note-2 のときは後からフォルダ名を変更した。
先着が普通の名前を使い続けて後から追加された同名アルバムのみアーティスト名を含めるといった運用も可能ではあったが、アルバムの追加順という、ファイル一覧からでは得られない情報が強固にエンコードされてしまうのが嫌だったので扱いを対称にした。
別の言い方をすると、ファイル名等が破綻したり不備が発生したデータのみが手元にあったとしても、後からファイル名を一貫したルールで変更すれば単一の最終状態に持っていけるような規約で運用したい。

nop_thread さんが1日前に更新

nop_thread さんは #note-2 で書きました:

そのため WALKMAN ではアルバムの集約において「アルバムアーティスト」の違いが完全に無視されているとしか考えられない。

NW-A55 (非 Android) について以下のような情報があった。

ソニーのお問い合わせチャットより質問してみた。
結論は「仕様」とのこと。
解決方法は、曲のアルバム名(タグ)をかぶらないように変更してくださいとのこと。

——ウォークマン同じアルバム名は一つになるのが仕様 | 67th Star

昔から (「10年以上」) WALKMAN はそういうもので、それがまだ直ってない?
さすがに勘弁してほしいが。

nop_thread さんが1日前に更新

nop_thread さんは #note-6 で書きました:

NW-A55 (非 Android) について以下のような情報があった。

一方で以下のような情報もあった。

アルバム名でソートされ、下階層はアルバム収録曲。 同名別アーティストのアルバムは分けられる。 別フォルダ同アーティスト同アルバムは統合される。

——Sony Walkman NW-A50にまつわるあれこれ - Chienomi

どっちが正しいんだ……
(まあ何にせよ Android になる前の WALKMAN なのであまり手元環境を考える参考にはならないが)

nop_thread さんが1日前に更新 · 編集済み

ところで現状についてだが、 ARTISTALBUMARTIST タグどちらも single value として管理しているので、その点ではとりあえず問題にはなっていない。
また COMPILATION#note-2 のとおり WALKMAN 上で無意味で、かつコンピレーションは ALBUMARTISTVarious Artists とすることで対処しているため、現状でそこまで状況は悪くない。

それを踏まえて、今回のメタデータ更新では以下の操作を行う予定。

  • ARTISTALBUMARTIST のような表示名として使える単数のものは優先的に設定する。
  • ARTIST の値が複合的な楽曲については、 ARTISTS タグ (複数) の設定を行う。
    • 複合的でないものについては ARTISTS は (設定されていようが存在しなかろうが) 矛盾しない限り放置。
    • 本当は複合的でなくとも、字面が複合的に見えるものは ARTISTS を適切に設定する。
      • たとえば MYTH & ROID のようなものは単数だが ARTIST のみ設定しているとお節介で分割されかねないため、 ARTISTS にも同様の値を設定する。
  • ALBUMARTIST の値が複合的な楽曲については、 ALBUMARTISTS タグ (複数) の設定を行う。
    • 複合的でないものについては ALBUMARTISTS は (設定されていようが存在しなかろうが) 矛盾しない限り放置。
    • 本当は複合的でなくとも、字面が複合的に見えるものは ALBUMARTISTS を適切に設定する。
      • ARTIST / ARTISTS と同様。例は省略。
    • ALBUMARTISTVarious Artists として設定されているものは、そこに設定すべき表示用の値が明らかでない限りは ALBUMARTISTALBUMARTISTS も放置。
      • まあ設定すべき値が明らかだったら、最初からそのように設定されているはずだが…… (たとえば Sān-Z, HOYO-MiX のように)。
  • コンピレーションアルバムについて COMPILATION フィールドを追加し、値を 1 に設定する。
    • そうでないものについてフィールドを作成したり値を 0 にしたりはしない。
  • ARTIST (not ALBUMARTIST) が Various Artists になっているものについては、基本的に値を削除して不明扱いにする。
    • Various Artists はコンピレーションの ALBUMARTIST 用と考え、楽曲単体のアーティストとしては使わない方針でいく。
    • 例外はありえるかもしれないので、臨機応変に。

nop_thread さんが1日前に更新

nop_thread さんが1日前に更新

nop_thread さんが1日前に更新

アルバム名について有力情報があった。

For those wondering about separating albums with the same album title.
You could edit the "Album Sort" tag, like in mp3tag.
You would have to input into the album sort field "Greatest Hits (BB King)", but keep the album title as "Greatest Hits".
It's under extended tags in mp3tag. If you don't see it, then you can "add field" and add the album sort tag that way.
Then it will show as Greatest Hits in your library while separating each album.

——SONY NW-WM1Z / WM1A | Page 1703 | Headphone Reviews and Discussion - Head-Fi.org (post 25545)

非 Android の NW-WM1Z/WM1A の話のようだが、 ALBUMSORT を別にすれば同名のアルバムであっても別アルバム扱いになるとか。
あとで確認してみる。

nop_thread さんが1日前に更新 · 編集済み

nop_thread さんは #note-11 で書きました:

非 Android の NW-WM1Z/WM1A の話のようだが、 ALBUMSORT を別にすれば同名のアルバムであっても別アルバム扱いになるとか。
あとで確認してみる。

ALBUMSORT で区別してみたが NW-A306 では駄目だった。

SONY ウォークマン NW-A30/A40/A50 Part69 - 5ちゃんねる掲示板 で示唆されているように ALBUMARTISTSORT でいけそうか試してみたが、こちらも駄目だった。
どうやら sort 系のフィールドで分離してくれるのは非 Android な WALKMAN だけで、 Android の W.ミュージック アプリは仕様が違うらしい。

NW-A50 とかの tips は結構出てくるのに NW-A100 以降は全然検索に引っ掛からないし、察するにアルバム名変更以外のワークアラウンドを誰も発見できていないのだろうな……

nop_thread さんが約24時間前に更新

nop_thread さんは #note-8 で書きました:

それを踏まえて、今回のメタデータ更新では以下の操作を行う予定。

MusicBrainz のメタデータを ID に使えると良いかもしれないが (musicbrainz_trackidmusicbrainz_albumid とか?)、ひとまずこれらは今回扱わない。
そのうち別チケットを立てるかも。

nop_thread さんが約8時間前に更新

  • pinnedいいえ から はい に変更
  • 前回確認日2025/03/12 にセット

MusicBrainz Picard が便利そうかなと一瞬思ったが、どうもこれはオレオレなタグ付与スキームを運用するには向いてなさそうな雰囲気がある。
MusicBrainz の DB と tagger に全ベットするなら便利だろうが、たとえば ARTISTSARTIST を両方ともうまいこと設定したい (しなければならない) とか、特定のタグだけフェッチして手動確認のうえ選択的に適用したいなどの面倒な要件には向いていないかもしれない。

nop_thread さんが約8時間前に更新

同定用に MBID (MusicBrainz Identifier) の設定くらいはすると便利そうだと思うのだが、 Picard を使わないとかなり面倒になりそう。
なにかうまい手はないか……

他の形式にエクスポート: Atom PDF