Dupin v2.6
I'm pleased to announce that Dupin v2.6 is now available.
Dupin is your iTunes duplicates manager. With Dupin you can:
- Very quickly find all sets of duplicate iTunes tracks based on your choice of criteria
- Select the "Keeper" tracks from among a number of duplicates automatically using a variety of versatile filtering options
- Consolidate the play, skip, and ratings information from all tracks in a Dupe Group to the single "Keeper" track
- Re-populate iTunes playlists replacing "non-Keeper" tracks with "Keeper" tracks
- Remove duplicate tracks from iTunes and send files to the Trash
- Manage intentionally duplicated tracks
- Copy tracks to new iTunes playlists
- And much more
Updated in version 2.6:
- Added "Filename" to Criteria (recognizes local files only)
- Added ability to play/view selected tracks in QuickLook panel via spacebar (OS X 10.7+)
- Updated "Get Info" window, incorporating play/pause album artwork thumbnail (OS X 10.7+)
- Improved sorting algorithms
- Addressed issues with restoring windows
- Moved "List Font Size" options from Preferences to View menu
- Minor UI changes
- General maintenance fixes and improvements
This is a free update for registered users of Dupin v2.5 and later. More information and download here.
NEW: ConvExp to Album Folders
In my (seemingly never-ending) quest to get music into my car like a Regular Person I found that if I fill a USB stick with audio files in Artist/Album folders my car's audio system will occasionally work right. The script Export to Album Folders does this. Then I realized that I had a lot of Apple Lossless files which I'd have to convert to MP3 before dumping them to the stick. But that leaves the superfluous converted tracks and their files in iTunes' library which I'd have to remove using my hands.
ConvExp to Album Folders (Convert and Export to Album Folders) takes care of converting selected tracks, moving the converted files in Artist/Album folders to a selected location, and removing of the converted effluvia from iTunes.
A couple of Correspondents inquired about doing something like this, so I hope they and you find it useful.
More info and download here.
More Airplay stuff
Earlier, I posted a way to hardcode the Airplay devices in a script. But if you only have one computer, AirPort Express, or Apple TV kind of Airplay device you can forego using the name property and do something like this, which sets my lone Apple TV as the current Airplay device:
tell application "iTunes"
set current AirPlay devices to (get AirPlay devices whose kind is Apple TV)
end tell
Even though there is only a single item result from Airplay devices whose kind is Apple TV, it's returned as a list which is what current AirPlay devices takes.
The other kind values, AirPlay device and unknown, are too generic to use this way—unless you know you only have one of them.
Hardcode Airplay Device Speakers
Correspondent Matt Stevens sent the following, which illustrates how to hard code your Airplay device names:
tell application "iTunes"
set computerSpeaker to (first AirPlay device whose name = "Computer")
set kitchenSpeaker to (first AirPlay device whose name = "Kitchen")
set current AirPlay devices to {computerSpeaker, kitchenSpeaker}
end tell
The current AirPlay devices application property accepts a list—even if the list is only one item.
Airplay device properties
These are the new Airplay device properties accessible via AppleScript:
active (boolean, r/o) : is the device currently being played to?
available (boolean, r/o) : is the device currently available?
kind (computer/AirPort Express/Apple TV/AirPlay device/unknown, r/o) : the kind of the device
network address (text, r/o) : the network (MAC) address of the device
protected (boolean, r/o) : is the device password- or passcode-protected?
selected (boolean) : is the device currently selected?
supports audio (boolean, r/o) : does the device support audio playback?
supports video (boolean, r/o) : does the device support video playback?
sound volume (integer) : the output volume for the device (0 = minimum, 100 = maximum)
Notice that all the properties are read-only (r/o) except for selected and sound volume, meaning only those two properties can be changed; the others can only be polled.
Basic Airplay script
This is a pretty basic use of the new Airplay stuff. Select and set your Airplay devices:
tell application "iTunes"
set apNames to (get name of AirPlay devices)
set apDevices to (get AirPlay devices)
set rez to choose from list apNames with prompt "Select Airplay:" with multiple selections allowed
if rez is false then return
set apPlays to {}
repeat with i from 1 to length of apNames
if item i of apNames is in rez then set end of apPlays to item i of apDevices
end repeat
set current AirPlay devices to apPlays
end tell
iTunes 11.0.3 Released
iTunes 11.0.3 was released today. Mods to the Mini player seem to be the most obvious. Under the hood, AppleScript has some new Airplay access.
First, there's a new Airplay device class and AirPlay enabled and current AirPlay devices application properties which should make scripting Airplay operations pretty easy. I'll have some stuff later.
The track class gains a iTunes U property ("is this track an iTunes U episode?").
More as it develops.
UPDATED: File Renamer v2.2
File Renamer will rename the files of the selected tracks (or the files of the tracks in the selected playlist) with a filename pattern that is formulated using the tracks' tag data. Optionally, export a copy of the files to a chosen location and rename the files in that location.
This latest version fixes a problem with escaping file path delimiters, fixes an issue with closing the Preview window, and has other minor fixes and enhancements.
You can download it here.
UPDATED: Export Selected With M3U v1.1
I've been wrestling with how to get files onto a USB stick for my car's audio system for some time now. The system can read files on a stick and then sort them by Songs, Artist, Album, Genre, Folders, and Playlist; but unless the files are loaded just-so, playlists are empty, data goes missing, files can't be played. I've also heard from Correspondents who report similar difficulties with their devices and it's obvious that there is no single standard convention for file storage among the many types of media players out there. Some players can't read subfolders, some require subfolders; some need everything in a "MUSIC" folder; some need specialized file-naming; and so on. (My car can also read the data from various generations of iPods and iPhones but, again, not consistently.)
Export Selected With M3U v1.1 will copy the files of the selected tracks to a user-chosen locationpresumably some kind of portable mediaand then create a M3U playlist file in the same location with relative file path references to the copied files.
The options available should be able to contend with any configuration required by any particular player. This latest version adds pattern-substitution file renaming and can optionally detect if the selected volume is FAT32 formatted which some players require.
More information, screenshot of results, and download is here.
UPDATED: File Renamer v2.0
Week or so ago this site got some hits from a post at Reddit which served to remind me that "Uh, this site's been around for thirteen years." One of the comments reported that "I used a file renamer script that renames files based on the tracks metadata. It changed all my .m4a tracks to .mp3 and broke a lot of my library even though I told it to not replace file extensions." Sorry about that.
The original version of File Renamer (which was written by a fellow named Tino Heth) was posted in January 2002 and it hasn't been updated since. Back then, there were only MP3s, so the script didn't have to account for M4A. Unfortunately, it didn't account for any other extensions either. So I thought if people are still talking about it after all these years I'd better update it.
You can download it here.