Converting or Creating Sound Sets for Entourage 2008

The new Entourage 2008 has changed the way that custom sound sets (for the new mail sound, sending mail, etc) are stored. The old style, from Entourage 2004 and earlier, packaged up all the sounds as 'snd' resources in a single file. If you've come to the Mac OS platform in the last decade you're probably wondering what a 'resource' is, and it's understandable, because that's just not the way things are done anymore and it's getting harder and harder to even find applications to deal with resources, especially now that Leopard has killed off Classic mode.

But the good news is that the new format makes it really easy to throw together a sound set, and it's not terribly difficult to convert an old Entourage sound set.

Much more than you ever wanted to know, after the jump...

Converting an old sound set

To convert an old-style Entourage sound set, you've first got to get the six sounds out of the single file. If you've still got a machine that can run Classic, you could use ResEdit to export the resources, but I found that FIle Juicer ($18 shareware with a fully-functional free trial) worked easiest. Drag your sound set file onto File Juicer's main window and you'll have a folder created on your Desktop with the name '[SoundSetName] Juice'. Inside that folder is a 'sfil' folder with 12 files in it -- the six sounds as .sfil files and as .mov files. File Juicer provides an Automator action that uses iTunes to convert the sounds to AIFF, or if you have QuickTime Pro you can just open the six .mov files and use Export » Sound to AIFF to get six AIFF files. At this point, you're ready to move on the same as if you were starting from scratch ... (See below for an updated warning about the size of those AIFF files.)

Creating a new sound set

The first step in creating a new sound set is to assemble your six sounds -- New Mail, Sent Mail, No Mail, Mail Error, Reminder, and Welcome -- either by converting an old sound set (see above), recording new sounds, or choosing sounds from one of the millions of sound resources available on the net. Entourage 2008 will evidently play anything that QuickTime can, so the sound files can be AIFFs, WAVs, MP3s, etc. Also, they don't have to be named to reflect what event they'll represent, so you can leave them named "swoosh.wav" and "doh.aif" or what have you.

Update: One important warning, here. "subgrav" points out in the comments that the files each need to under 1 MB. A quick back-of-the-envelope calculation gives me that a WAV or AIFF over 8 seconds or so would be over a megabyte, so if you're using longer sound bites you'll need to convert them to a compressed format like MP3 or AAC, which you can do with iTunes.

Create a new folder and name it 'MySoundSet.eragesoundset' -- the first part of the name is just for your benefit, so name it as you like, but the '.eragesoundset' part is important. Put the six sound files inside.

Now use the Property List Editor (if you have the Developer Tools installed) or any text editor to create a text file inside the folder called 'soundset.plist'. It needs 9 keys:

  • SoundSetFileFormatVersion (integer) - must be 0.
  • SoundSetUserString (string) - String to display in the prefs dialog.
  • SoundSetURL (string) - Clickable URL to display in the prefs dialog.
  • SoundFile_MailError (string) - Name (including extension) of the sound file to play for the Mail Error event.
  • SoundFile_MailSent (string) - Name (including extension) of the sound file to play for the Mail Sent event.
  • SoundFile_NewMail (string) - Name (including extension) of the sound file to play for the New Mail event.
  • SoundFile_NoMail (string) - Name (including extension) of the sound file to play for the No Mail event.
  • SoundFile_Reminder (string) - Name (including extension) of the sound file to play for the Reminder event.
  • SoundFile_Welcome (string) - Name (including extension) of the sound file to play for the Welcome event.

So here's an example for the Microsoft Sound Set that was included with Entourage 2004 but not with 2008:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>SoundSetFileFormatVersion</key>
	<integer>0</integer>
	<key>SoundSetUserString</key>
	<string>Microsoft Sound Set</string>
	<key>SoundSetURL</key>
	<string>http://www.microsoft.com/mac</string>
	<key>SoundFile_MailError</key>
	<string>Error.aif</string>
	<key>SoundFile_MailSent</key>
	<string>Sent Mail.aif</string>
	<key>SoundFile_NewMail</key>
	<string>New Mail.aif</string>
	<key>SoundFile_NoMail</key>
	<string>No Mail.aif</string>
	<key>SoundFile_Reminder</key>
	<string>Reminder.aif</string>
	<key>SoundFile_Welcome</key>
	<string>Welcome.aif</string>
</dict>
</plist>

(Watch out copy-and-pasting the above -- the line '<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">' should all be one line with no line break.)

Then just move that whole folder into [Your Home Folder]/Documents/Microsoft User Data/Entourage Sound Sets/. In my tests, the sound sets would then immediately show up in the Entourage Preferences (under Notification) but your mileage may vary and you may need to quit and relaunch Entourage.

As I said above, the Microsoft Sound Set sound set from Entourage 2004 was not included in 2008, so I've converted it and it's a great example set to see how this simple format works. Download a 500 KB zip file here. (Hopefully they won't mind since it's a sound set they used to include, and I figure it's more legal than using, say, a bunch of Simpsons sounds for my example.)

All my information on the structure of the Entourage 2008 sound set format comes from an Ars Technica forum post by Erik Schwiebert of the Microsoft Mac Business Unit.