2008年09月16日 21:44
アートワークを振り分ける
iTunesのアートワークを色々いじっているんですが、iTunesには見た目同じでありながら2種類のアートワークが存在します。
- 自分で貼り付けたアートワーク
- iTunesStoreから入手したアートワーク
これがなかなかわかりにくい。アートワークがないもの。アートワークがあるもの。さらに、あるものの中で自分で貼り付けたもの。iTunesStoreから入手したもの。3種類に分類してやると自分自身でもわかりやすいのだけど、そんなスマートプレイリストは作成できない。じゃ、自分で振り分けるか?というと、これは大変面倒。
膨大な楽曲を処理するのは手作業では無理。とはいえ、プログラムを組んで...と言うのもチョット。と思ったところで、デメリットはあるものの手軽に組めそうなAppleScriptを思い出しました。デメリットは「速度」。メリットは簡単であること。簡単であることを選択しました。
tell application "iTunes"
repeat with oneTrack in (every track of playlist "大元のプレイリスト名")
if (every artwork of oneTrack is not {}) then
set iTS_flag to downloaded of artwork 1 of oneTrack
if iTS_flag then
duplicate oneTrack to playlist "iTunesStoreプレイリスト名"
else
duplicate oneTrack to playlist "自貼プレイリスト名"
end if
else
duplicate oneTrack to playlist "ないものプレイリスト名"
end if
end repeat
end tell
エラー処理は一切していません。赤字の4つのプレイリストは事前に用意しておいて下さい。大元のプレイリストに入っているすべての楽曲について以下3つのプレイリストに楽曲を貼り付けていきます。大元のプレイリストにたくさんのファイルが入っている場合、非常に時間がかかります。會澤の環境下で800曲ほどを1分程度かかって振り分けました。蛇足ながら、振り分けると言ってもプレイリストは文字通りリストですから、楽曲そのものには影響を及ぼしません。その点はご安心下さい。
単純に一つずつ拾い上げてアートワークのあり・なし。ある場合はiTunesStoreから入手したものかどうかのチェックをして、プレイリストに登録していくという単純作業です。重複していないかどうかの確認や、プレイリスト自体の存在確認(なければエラーになります)など一切行っていません。大元のプレイリストに動画が登録されている場合、動画に自動的につくアートワーク(?)は、iTunesが付けたものですが、Storeからの入手ではないというフラグが立ちます。動画の場合アートワークというのは意味がないと思われます。また、ポットキャストや、PDFが含まれていた場合の処理なども考えていません。大元のプレイリストはスマートプレイリストであっても構わないので、會澤の場合、音楽のみをスマートプレイリストで抽出して、それに対して上記AppleScriptを適応させました。
結果、同じアルバムでありながら、iTunesStoreからアートワークを入手したもの、自分で貼り付けたもの。が混在しているのが見つかりました。iTunesStoreからの入手条件は次の通り。
- 登録しようとする楽曲がiTunesStoreに存在すること
- 登録しようとする楽曲に自前のアートワークが存在しないこと
おそらく混在した理由は、自前のアートワークを貼り付けていたものを外してiTunesStoreのものに切り替えた際、外し忘れていたものと思われます。Storeのアートワークはさすが純正だけあって綺麗。で、自分でリッピングしたアルバムにも適応してもらえるので便利なんですが、Store登録のアーティスト名・アルバム名と合致していないとダメっていうチョットなかなかシビアなルールもあります。たとえば、サブタイトルのように文言が続くもの、「手嶌 葵」の「The Rose - I Love Cinemas -」というアルバム。會澤のライブラリの中では「The Rose 〜I Love Cinemas〜」となっていました。これだと合致しません。ところが、「misono」の「二人三脚 - Single」の場合は、「二人三脚」というアルバム名でも入手可能でした。なかなかややこしい。一度入手した後にアルバム名などを変更しても問題ないので、その点は臨機応変に。
蛇足ついでに、アートワーク絡みの設定は、初期設定のStoreタブにあります。これは新規に読み込んだときの設定で、既にある楽曲に新たにiTunesStore所有のアートワークを読み込ませるには、詳細メニューの「アルバムアートワークの入手」これで、ライブラリ全部をスキャンしてくれます。個別の楽曲に対して行う場合は、該当楽曲を選択した状態で右クリック。一番下の方にある「アートワークを入手」で行います。ただ、既存のアートワークがある場合は入手されずにそのままです。画像で表示したのは、左から、初期設定・メニュー・右クリックです。右クリックの画面は、iTunesStoreからアートワークを既に入手した楽曲を示していますが、「ダウンロードされたアートワークを消去」とあります。自前のアートワークではこの項目が現れません。楽曲ごとに確認する場合はこれが手っ取り早いのですが、これを全部について行うのは気が遠くなりますな。
ともあれ、分類可能になりました。さて次は...
Posted by kaizawa | TrackBacks