2 ポイント 投稿者 GN⁺ 2023-11-13 | 2件のコメント | WhatsAppで共有
  • Navidromeのソースコードとデータモデルを見ながら整理した事例で、音楽メタデータはタイトル・アーティスト・アルバム・カバー・リリースだけを扱っても、正規化しにくい例外が多い
  • , , ', (), <|°_°|>, スラッシュ、空白、絵文字、数式、EICARテスト文字列のような名前は、ファイル名・検索・ソート・セキュリティツールと簡単に衝突する
  • 無題のアルバム、複数のカバー、同じタイトルの複数アルバム、7時間・13時間・4723時間のトラック、99トラック中ほとんどが4秒の無音であるEPは、音楽単位の長さと構造に関する単純な前提を崩す
  • 同一人物の複数の別名、バンド名の変更、地域ごとの名前の違い、同名の複数バンド、国際化された名前の重複があると、単一の文字列でアーティストを識別するのは難しい
  • MusicBrainzのようなデータベーススキーマがアルバム・リリース・アーティスト・別名・トラックを細かく分けている理由は、こうした例外を実際に処理する必要があるため

タイトルと名前が壊す基本前提

  • 音楽メタデータではアルバム名は人間にとっては創造的でも、システムにとっては特殊文字処理の問題になる
    • Justiceの†
    • David Bowieの★
    • Frank Zappaの'
    • Sigur Rósの()
    • PrinceのLove Symbol; Princeは1993年にステージ名もこのシンボルへ変更し、“The Artist Formerly Known as Prince”と呼ばれた
    • Caravan Palaceの<|°_°|>
  • OSとファイルシステムも名前に揺さぶられる
    • MASTER BOOT RECORDのアルバム名体系はWindowsでもLinuxでも問題になりうる
    • Linux環境ではThe You Suck Flying Circusの///////-//-/////のような名前が特に目立つ
    • Marco.VのC:/del*mp3はファイルパスのように見えるタイトル
    • Auto!Automatic!!のAnother Round Won't Get Us Downには\\\\\\というトラックと//////////というトラックがある
  • 検索とソートも単純ではない
    • VaporwaveジャンルのアーティストはHallmark '87のA T R I U Mのように文字の間へ空白を入れることがある
    • Laughing MantisはEICARテストファイル文字列と同じ名前の曲X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*を出している

無題、紛らわしいタイトル、長いタイトル

  • アルバムにはタイトルがない場合がある
    • Rammsteinの最新アルバム
    • Led Zeppelinの4枚目のアルバム
    • KoЯnの8枚目のアルバム
  • タイトルがないように見えたり紛らわしかったりするアルバム名も多い
    • The Byrdsの(untitled)
    • R Kellyのuntitled
    • Autechreのuntilted
    • +/-のSelf-Titled Long-Playing Debut Album
    • Tintern Abbeyの7インチ・ヴァイナル・シングルA面はBeeside
    • WeezerはWeezerというタイトルのアルバムを複数出しており、同じ年に2枚出したこともある
    • UnderoathのØ (Disambiguation)はWikipediaのØの曖昧さ回避ページと混同を生む
    • Meghan TrainorのTitle
  • 非常に長いアルバムタイトルはUI、検索、表示領域を圧迫する

カバー、トラック数、長さ、リリース版

  • 一部のアルバムはカバーが複数あるため、「アルバム1つ = カバー1つ」という前提は成り立たない
    • The PoliceのSynchronicityには36種類のカバー違いがある
    • Art GarfunkelのFate for Breakfastはカバーが6種類あったが、アメリカでヒットしなかったため大半の人は1種類しか見ていない
    • Ian Dury & The BlockheadsのDo It Yourselfには少なくとも34種類のスリーブがあった
  • カバー画像そのものが論争や検閲版を生むこともある
  • トラックはタイトルがなかったり、名前そのものが混乱を招いたりする
  • トラックの長さと構成には極端な事例がある
    • NǽnøĉÿbbŒrğ VbëřřĦōlökäävsŦの“Doom Apocalypse X, The Ultimate Fate Of The Universe (Part IX: The Photon Era)”はほぼ7時間で、アルバム全体“The Ultimate Fate Of The Universe”は23時間弱に及ぶ
    • Pipe Choir ThreeのThe Rise and Fall of Bossanovaは13時間の曲を5パートに分けている
    • Bull of Heavenの209: Blurred With Tears And Suffering Beyond Hopeには4723時間54分37秒のトラックが含まれる
    • Nine Inch NailsのBrokenは99トラックを持ち、7番から97番まではそれぞれ4秒の無音
  • ほとんどのアルバムは複数のバージョンやリリースを持つ
    • The Eminem Showには15バージョンある
    • All Lights Fucked on the Hairy Amp Droolingには1994年のカセット27トラック版、2022年再発4トラック版、ブートレグ31トラック版がある
    • God Speed You Black Emperor!は2002年に“Godspeed You! Black Emperor”へ名前を変えた
    • SybreedのAntaresは日本版・アメリカ版・ロシア版・スイスのプロモ版・ヨーロッパのプロモ版でトラック数と11曲目が異なる
    • Art of NoiseのClose-Upシングルは、同じカタログ番号と同じスリーブを持つイギリス盤4種がそれぞれ異なるトラックを収録しており、そのうち1つには“Close-Up”自体が入っていなかった
    • Taylor Swiftは音楽の完全な所有権を取り戻すためにアルバムを再録音した
  • ライセンス問題もリリース差分を生む
    • MF DOOMのMM..FOODは2004年に出たが、整理されていないSesame Streetサンプルのため、2007年に再録音版が出た

アーティスト識別が難しくなるケース

  • 1つのトラックに非常に多くのアーティストが付くことがある
    • GRAY(グレイ)の“119 REMIX”には、タイトルどおり119人のアーティストが参加している
  • バンドは名前を変えたり、地域ごとに異なる名前を使ったりすることがある
    • GZRは1枚目のアルバムではg//z/r、2枚目ではgeezer、3枚目ではGZRと表記された
    • GhostはしばらくアメリカでのみGhost B.C.として知られていた
    • Suedeはアメリカで“The London Suede”として知られている
    • Zoviet Franceには:$OVIET:FRANCE:, Soviet France, :Zoviet-France:, :zoviet*france:のような表記がある
    • Invent, Animateは2つのアーティストと誤解されないよう“Invent, Animate”に改名した
  • 複数の名前を使うアーティストもいる
    • Aphex TwinにはBlue Calx, Caustic Window, Brian Tregaskin, The Dice Man, Polygon Window, Power-Pill, Richard D. James, GAK, The Tuss, user48736353001など多くの別名がある
    • Filipe Santosも複数名義の例として挙げられている
  • バンド名そのものが検索・ソート規則を揺さぶる
  • 異なるバンドが同じ名前を使うこともある
    • “Emperor”はノルウェーのブラックメタルバンド、ドラムンベースのプロデューサー、トランスアーティスト、日本のメタルバンド、Arknights世界の架空のペンギン・ヒップホップアーティストなど複数を指しうる
    • HavamalはViking metalバンドと別のViking metalバンドの両方を指しうる
    • Bulldog Breedはイギリス出身の2つのバンドを指し、どちらも“Made in England”というアルバムを出している
    • Avishai Cohenはイスラエル出身のジャズミュージシャン2人を指す
    • Revolver、Peace、Hybrid、Endのような一般的で「かっこいい」名前は重複が多い
  • 国際化も識別をさらに難しくする
    • Пётр Ильич Чайковский、つまりTchaikovskyには、MusicBrainz上で31の名前がある

文字エンコーディング、OS、データモデル

  • 一部のアーティストとアルバムはUTF-8対応とOSの処理を試す
  • “Classical music”も別個の問題領域として挙げられている
  • お気に入りの例としてはbrouillardがある
    • バンド名がbrouillardで、唯一のメンバーもbrouillard、すべてのアルバムもすべてのトラックもbrouillard
  • こうした混乱をどう扱うかはMusicBrainz database schemaを見るとうかがえる

2件のコメント

 
kunggom 2023-11-13

この記事はすでにGeekNewsに掲載されたことがあります。
https://ja.news.hada.io/topic?id=6319

 
GN⁺ 2023-11-13
Hacker News のコメント
  • Metallica の "Kill 'Em All" を中古 CD 店に売って、また同じ "Kill 'Em All" を買ったとき、店員がかなり混乱していたのを覚えている
    ある版にはカバー曲 Am I EvilBlitzkrieg がさらに 2 曲入っているのだが、2 枚の CD の識別番号が同じなので余計にややこしい
    当然、今売った CD をなぜまた買うのかと聞かれたので見せたら、こんなケースは初めて見たと呆然としていた

  • The The, so much for skipping articles like "A" or "The" I guess.

    以前 Google で "The Who" を検索したミーム画像があって、結果の上に「'The' は一般的な語なので検索語から除外しました」/「'Who' は一般的な語なので検索語から除外しました」と出ていた

    • よくある掲示板ソフトウェアの一つは、デフォルトで 3 文字以下の検索語をすべて無視するかブロックしていた
      略語を多用する技術フォーラムでは、信じられないほどイライラする設定
    • Siri を壊すバンド名は、実際に自分の生活にある問題
      Them、お前たちのことだ O_o
    • 2000 年代前半から中頃にかけて、有名な統計ソフトウェア R でかなり多くの作業をしていた
      当時は R で何かをする方法を Google で探すには、メーリングリストのアーカイブの場所を知っていて、そのドメインに検索を限定する、といったかなり具体的なコツが必要だった
      後に Google が社内で R を多用し始めると、突然その問題は消えた
  • Taylor Swift が昔の曲をすべて再録音して再リリースした件も、かなり有名な事例
    誰かが Alexa に "Love Story" をかけてと頼んだら、Taylor により多くのロイヤルティが入るバージョンを再生すべきか、それともどこかの音楽出版社により多く入るバージョンを再生すべきか
    曲の人気ランキングを付けるときは、複数のバージョンを別々の曲のように扱うべきではない可能性が高い

    • ストリーミングサービスの再生回数の多い曲リストで、同じ曲が 2 回ランクインすることがある
      シングル版アルバム版の両方があるため
  • 関連: https://github.com/minimaxir/big-list-of-naughty-strings
    Big List of Naughty Strings は、ユーザー入力データとして使われたときに問題を引き起こす可能性が高い文字列の一覧

    • 関連していて面白い記事: https://www.sempf.net/post/On-Testing1
    • よくある LLM インジェクション文字列もこのリストに追加すべき
    • 何十年もシステム管理者として働いてきたが、大半のコーダーはこのリストを見たこともないし、今後も見ないだろうと断言できる :|
  • 単に A というバンドを見落としているようだ
    このバンドは “nothing” という曲を出している https://en.wikipedia.org/wiki/Nothing_(A_song)
    昔 Amazon で彼らのアルバムを探すのに苦労した記憶があり、今でも特に簡単になっているようには見えない

    • または 80 年代初頭の Jethro Tull のアルバム A もある
    • そのアルバムが出たときは本当に気に入っていた
      しかし検索は本当に不可能で、結局 CD を買うしかなかった
  • Some tracks are long

    録音されたトラックだけの話をしているのだろうけど、13 時間なんて初心者向けの数字だ[0]
    [0] https://en.wikipedia.org/wiki/As_Slow_as_Possible#Halberstad...

    • 録音されたトラックの中には 4,700 時間のものもある
      https://www.discogs.com/release/3580802-Bull-Of-Heaven-209-B...
      5.5 年のトラックもあるが、一部しか公開されていない
      https://www.discogs.com/release/3580806-Bull-Of-Heaven-210-L...
      それでも約 13,000 時間
    • 短いピアノ曲が一つあるのだが[1]、作曲家の元の指示が千回以上繰り返せというものなので[2]、実際の演奏は 24 時間を超える
      だから当然、ほとんど演奏されない
      John Cage の As Slow as Possible のようなものもあり、今も進行中の公演がある
      2001 年に始まり 2640 年に終わるので、終わりを見届けたいなら急いだほうがいいかもしれない
      [1] たぶん Ravel の曲だと思うが、記憶も手早い検索も今はうまく合わない
      [2] 2347 のような、少し任意に聞こえる特別な数字だった気がする
    • 必ずしもこの話ではないかもしれないが、タイトルも非常に長くなり得る
      Sufjan Stevens の "The Black Hawk War, or, How to Demolish an Entire Civilization and Still Feel Good About Yourself in the Morning, or, We Apologize for the Inconvenience but You're Going to Have to Leave Now, or, 'I Have Fought the Big Knives and Will Continue to Fight Them Until They Are Off Our Lands!'" が思い浮かぶ
      幼いスクリプトキディだった自分に FAT32 のフルパス長 255 文字制限を教えてくれた曲
  • Marco V の C:\del.mp3* も特筆に値する
    https://www.discogs.com/release/133498-MarcoV-Cdelmp3-Solari...

    • ほとんど音楽界の Bobby Tables
  • emma essex の音楽を聴き始めてから、今の時代でもユニコード処理がどれほど中途半端にしか実装されていないかを知った
    好きな例としては、アルバム「𝅙𝅙」(U+1D159)に収録されている「HHSU 𓃚 𝕮𝖆𝖒𝖇𝖎𝖚𝖒, 𝕏𝕪𝕝𝕖𝕞, 𝓗𝓮𝓪𝓻𝓽𝔀𝓸𝓸𝓭」の「⎆」、「♫♫♩♫‿♩ but it's 怒首領蜂 大往生」、「rtrc{(''»'')²2}:≞(''»''01);」などがある

    • Apple Music は「⎆」という曲がよほど嫌いなのか、自分のアカウントではその曲がアルバムから丸ごと抜けている
    • これを見て、UTF-8 をユニコードのコードポイントに変換するコマンドラインツールを探してみたところ、実は uconv -x hex/unicode だった
      最初の例は、ほとんどが数学用英数字記号のように見える
      https://en.wikipedia.org/wiki/Mathematical_Alphanumeric_Symb...
      誰かがユニコードの私用領域文字を使ってみたことがあるのか気になる
      面白い結果になるかもしれない
    • HN が文字の一部を消してしまっていそうだ
  • GZR, also known as g//z/r on their first album, geezer on their second, and GZR on their third.

    アルバムごとにバンド名を変えていて、3枚のアルバム名がすべて同じだったら印象的だったと思う

    • album_grouping_key や musicbrainz_albumid のようなものがあれば、20年前に解決できていたはずなのに
      「ひどいな」
    • こうしたバンド名変更のエッジケースは、データセット内でエンティティに ID を付与して分離すれば解決できる
      この段階では、エッジケースと呼ぶべきことなのかもよく分からない
  • Autechre の Untilted は、わざと紛らわしくしたアルバムタイトルの中で自分が一番好きな例だ
    記事にも出てくるが、小さな文字でレンダリングされると、目で見ていてもタイトルが「Untitled」ではないことがはっきりしない

    • 誓って、何年も聴いてきたのに、アルバム名が「untitled」ではないと最近になってようやく気づいた
      よくやった、Ae!