I have been getting bored with the music selection that I have on my iPod. Since my laptop only has a subset of our total music collection, the iPod only has music from this set.
I wanted to make sure that the iTunes Library on my laptop had access to all of the music on the Mac mini, so I wrote the following script. What it does is:
- Iterates through the iTunes library on the Mac mini
- For each track that is a MP3 of unprotected AAC file, checks with the local iTunes to see if a track with the same title, artist, and album exists
- If no track exists, it adds a link to the remote file mounted via afp.
This script is not is not optimized, but it works. And I am only planning on letting it run once.
using terms from application "iTunes"
tell (choose remote application)
repeat with t from 1 to count of (every file track of library playlist 1)
set aTr to (file track t of library playlist 1)
if kind of aTr = "MPEG audio file" or kind of aTr = "AAC audio file" then
tell application "iTunes"
set trackList to (every file track of library playlist 1 where artist = (artist of aTr) and name = (name of aTr) and album = (album of aTr))
if (count of trackList) = 0 then
-- this track is not in the itunes
set filelocation to (location of aTr as string)
set filelocation to (characters 7 thru (length of filelocation) of filelocation as string)
set filelocation to "/Volumes" & filelocation
open (POSIX file filelocation as alias)
end if
end tell
end if
set foo to name of aTr
end repeat
end tell
end using terms from
tell (choose remote application)
repeat with t from 1 to count of (every file track of library playlist 1)
set aTr to (file track t of library playlist 1)
if kind of aTr = "MPEG audio file" or kind of aTr = "AAC audio file" then
tell application "iTunes"
set trackList to (every file track of library playlist 1 where artist = (artist of aTr) and name = (name of aTr) and album = (album of aTr))
if (count of trackList) = 0 then
-- this track is not in the itunes
set filelocation to (location of aTr as string)
set filelocation to (characters 7 thru (length of filelocation) of filelocation as string)
set filelocation to "/Volumes" & filelocation
open (POSIX file filelocation as alias)
end if
end tell
end if
set foo to name of aTr
end repeat
end tell
end using terms from
Technorati Tags: AppleScript, iTunes
No comments:
Post a Comment