!

Tips

Keep your target in mind

The iPhone speaker is quite tinny, and doesn't reproduce any sounds below about 120hz* - any sound played back will be lacking bass. The iPad and iPad mini fare better, getting down to around 60hz* or so, but they're still not exactly bass-rich. Whenever possible, preview sounds on the target device itself, as it'll sound vastly different to your desktop or laptop speakers.

Also remember that people will use your app in public spaces - avoid unexpectedly loud or obnoxious sounds, and make sure that it's easy for them to change volume.

Pro tip: The SystemSound API looks awesome on paper, but is unsuitable for UI sounds because it does not respect the device's volume on playback. AVAudioPlayer still seems to be the best simple solution for playback at this stage, and is used by the UIButton+Sound category included with Octave.

Use sparingly

Unless you're creating a game or a really media-rich app, you probably need fewer than six UI sounds throughout your app. Choose a handful of areas or actions that you think could be improved with sound. Including sounds on every action, or on repetitive actions such as tapping through a navigation controller, is probably overkill.

Buttons have two events

Remember: all buttons have two interaction events - a press and a release. Having a sound bound to each of these can work well - check out Letterpress for a great example. If the button displays a sidebar or modal view controller, for example, then a swooshing or moving sound would work well for the release.

Volume matters

The Octave sounds are calibrated to sound about as loud as each other, but it might be worth emphasising or de-emphasising some taps in your app by raising or lowering their volume slightly. Even small changes in volume can have a big impact in how sounds 'sit' together.

The easiest way to change the volume for UI sounds is at source - open the relevant file in Audacity or your wave editor of choice, and choose Amplify. A change of 3 or 4 dB is a good starting point.

Sculpt your sound

The two effects most useful to a budding sound designer are probably high and low pass filters, which filter out all treble or bass beyond a certain frequency. To oversimplify, filtering out highs will make a sound feel muffled or less bright, while filtering out lows will make a sound feel smaller or tinnier.

Luckily, Apple have been including great effects with Mac OS X since the dawn of time (ca. 10.3?) - in Audacity, just choose "AUHipass" or "AULowpass" from the Effects menu. There are a bunch of other good-quality Apple effects included here - go nuts and see what works.

Pro tip: Unintuitively, a low pass filters out highs, while a high pass filters out lows.

Use the right tool for the job

Audacity is free, but not the world's friendliest or prettiest app. Logic is beautiful, but really geared towards multi-track recording rather than editing individual files. A better choice for simple editing on the Mac is Amadeus Pro, which I use and recommend. Bias Peak is also good, if you can still find a copy somewhere.

* Based on my completely unscientific listening tests - thanks Matt!