In this AudioToolbox example, two methods are used. It's really simple!
1. Create an AudioService ID
AudioServiceCreateSystemSoundID(fileURL, soundID);
2. Play sound.
AudioServicePlaySystemSound(soundID)
// Code Fragment.
#import <UIKit/UIKit.h> #import <AudioToolbox/AudioServices.h> @interface Sound : NSObject { SystemSoundID _soundID; } +(id)soundWithContentsOfFile:(NSString *)aPath; -(id)initWithContentsOfFile:(NSString *)aPath; -(void)play; @end Sound.m #import "Sound.h" @implementation Sound +(id)soundWithContentsOfFile:(NSString *)aPath { if(aPath) { return [[[Sound alloc]initWithContentsOfFile:aPath]autorelease]; } return nil; } -(id)initWithContentsOfFile:(NSString *)aPath { self = [super init]; if(self != nil) { NSURL *aFileURL = [NSURL fileURLWithPath:aPath isDirectory:NO]; if(aFileURL != nill) { SystemSoundID aSoundID; OSStatus error = AudioServicesCreateSystemSoundID((CFURLRef)aFileURL, &aSoundID); if(error == kAudioServicesNoError) { _soundID = aSoundID; } else { NSLog(@"Error %d loading sound at path : %@", error, aPath); } } else { NSLog(@"NSURL is nil for path : %@", aPath); [self release], self = nil; } } return self; } -(void)play { AudioServicesPlaySystemSound(_soundID); }