Simplifies playing caf audio files using AudioServicesPlaySystemSound.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Simplifies playing caf audio files using AudioServicesPlaySystemSound. Audio files can also be scheduled to be played with a specified interval.


AKSystemSound uses the AudioServices API to play short alert sounds. These audio files have to be in the CAF-format.

  • convert files to CAF using afconvert
afconvert -f caff -d LEI16 [input] out.caf
  • play once
[[AKSystemSound soundWithName:@"ping"] play];
  • schedule repeated playback
soundID = [[AKSystemSound soundWithName:@"ping"] scheduleRepeatWithInterval:5];
  • schedule playback in delta time
soundID = [[AKSystemSound soundWithName:@"ping"] schedulePlayInInterval:5];
  • schedule playback at specified date
soundID = [[AKSystemSound soundWithName:@"ping"] schedulePlayAtDate:date];
  • unschedule
[AKSystemSound unscheduleSoundID:soundID];
soundID = AKSystemSoundInvalidID;


  • AKSystemSoundsWillPlay-/AKSystemSoundsDidPlayNotification Sent before and after a set of sounds are played. Good to have if you have any other audio playback (AudioQueue etc) and need to temporarily lower the output volume from that.

  • AKSystemSoundWillPlay-/AKSystemSoundDidPlayNotification Sent before and after each sound is played.


Public domain, free use. Created by Anton Kiland 2011