効果音(wav,aif,car)ファイルを再生する
・XCODEのFrameworksを右クリック「追加>既存のフレームワーク」で、Frameworks|AudioToolbox.framework(ex./Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/System/Library/Frameworks/AudioToolbox.framework)を追加する。 Resourcesディレクトリに、sound.wavファイルをコピーする。
※AudioToolbox.frameworkをプロジェクトディレクトリにコピーしてしまうと、
"_AudioServicesPlaySystemSound", referenced from: -[SoundEffect play] in SoundEffect.o
といったリンクエラーが表示されます。プロジェクトにAudioToolbox.frameworkフォルダをコピーしないようにします。
次の方法で短いサウンドファイルを鳴らすことができます。
- (void)playSound:(NSString*)soundFile { //create soundid SystemSoundID soundId; NSURL *countdownFileURL = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:soundFile ofType:@"wav"] isDirectory:NO]; OSStatus error = AudioServicesCreateSystemSoundID((CFURLRef)countdownFileURL, &soundId); if (error != kAudioServicesNoError) { NSLog(@"Error %d loading sound at path: %@", error, soundFile); } // play sound AudioServicesPlaySystemSound(soundId); }