2007-09-19

アートワークを埋め込むよ

iTunesでiTSにある曲のアートワークを自動ダウンロードしてくれる機能って、超絶すばらしいと思ってるんだけど、曲に画像を埋め込んでくれないのがイマイチだなーと思ってたら、こんな記事を発見。

できるじゃーん!と思ったら、これOS X用ですか・・・
音関係はWindowsに集約してしまってるんで、そのままじゃ使えない。

てことで、rubyとWin32OLEでやってみました。
 iTunesで埋め込みたい曲を含むように選択して、実行すると埋め込みます。

require ‘win32ole’

itunes = WIN32OLE.new(‘iTunes.Application’)
tracks = itunes.SelectedTracks

temp = ‘D:\temp\merge_artwork.tmp’

if (tracks == nil)
    exit
end

tracks.each {|trk|
    artworks = trk.Artwork
    if (artworks.Count > 0)
        artworks.each {|art|
            if (art.IsDownloadedArtwork)
                art.SaveArtworkToFile(temp)
                art.Delete
                trk.AddArtworkFromFile(temp)
            end
        }
    end
}

これって、アートワークをいったん削除してから追加してんだけど、置き換えもできるんかな?削除だと下手すると悲しいことになっちゃうから、ほんとは避けたいんだけど。

Trackback URL:

Comments and Trackback

Post a comment

使用できるXHTMLタグ: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>