iTunesで自動取得したアートワークを取り出したい

やりたいこと

iTunes(ミュージックアプリ)で「アートワークを取得」した音楽ファイルは、外部のサービスに持っていくとアートワークが設定されていないことがある。これはミュージックアプリが独自の形式でアートワークを管理しているからで、mp3のファイル自体に埋め込むようにしたい。

外部からダウンロードした画像をアートワークに設定した場合にはmp3のタグとして設定される仕様のようなので、すでに自動取得されているアートワークはとりあえずたとえば「アルバム名.jpg」のような形で保存したい。(とりあえず判別がつけばなんでも良い)

アートワーク情報の保存場所

アートワークの情報は下記のパスにある
~/Library/Containers/com.apple.AMPArtworkAgent/Data/Documents

上記の中に、
・画像ファイル自体のフォルダ:artwork/
がある。


ただしartwork/配下にはjpgファイルが直接置かれているが、ファイル名がhashっぽいものになっているので直接判別はできなそう。ここの対応付の解読がポイントになりそう。

その他、
・データベースっぽいもの:artworkd.sqlite
がこのフォルダにはあるので、このあたりに画像ファイルの情報が入っていると推測する。

その他元になりそうな情報としては、ミュージックアプリから「ファイル>ライブラリ>ライブラリを書き出し…」したxmlファイルが使えそう。
※どうもswiftのフレームワークでライブラリファイルを直接読むこともできそうだがいったん書き出したxmlファイルで良しとする。

なんとなく上記の情報から取り出しはできそうな気がしてきた(続く)

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

CAPTCHA