itunesからアートワークを取得する
真面目にCOMのドキュメントを読んで頑張るともうちょっと込み入ったことが出来るそうです。
iTunes COM Interface: IiTunes Interface Reference
書いたスクリプト
こんな感じ。ユーザ固有のtempフォルダにjpg/png/bmpのいずれかで取得したアートワークを保存します。アートワークが無い楽曲で実行すると"artworks.Item"がNGになるのでソレ以降もNGになります。(ファイル無いので考えれば当然ですが割とハマりました、、、)
Function getArtworkAndPath() Dim objShell Dim tmp Dim iTunesApp Dim current Dim artworks Dim artwork Dim format Dim c_str Set objShell = CreateObject("WScript.Shell") tmp = objShell.ExpandEnvironmentStrings("%TMP%") Set iTunesApp = CreateObject("iTunes.Application") Set current = iTunesApp.CurrentTrack Set artworks = current.Artwork Set artwork = artworks.Item(1) format = artwork.Format Select Case format Case 1 c_str = "jpg" Case 2 c_str = "png" Case 3 c_str = "bmp" End Select artwork.SaveArtworkToFile(tmp + "\\z." + c_str) getArtworkAndPath = tmp + "\\z."+ c_str End Function
割りとウザいことにアートワークの画像形式がjpgだったりpngだったりbmpだったりするので確認して拡張子を変えてます。
デモ
次のトラックに移動する↓のスクリプトを一緒にして
Sub nextTrack() Dim iTunesApp set iTunesApp = CreateObject("iTunes.Application") iTunesApp.NextTrack End Sub
ソレを実行する部分を末尾に書き足して
nextTrack getArtworkAndPath
ちょっとプログラムした気になりました(ぉ