vendredi 2 janvier 2015

How can I play a system sound at lower volume in Objective-C?

I am making an iOS 8 Objective-C app (deployed on my iPhone 5) and I'm using this code to play a sound through the phone from the app:



@property (assign) SystemSoundID scanSoundID;

...

- (void)someFunction {

...

//Play beep sound.
NSString *scanSoundPath = [[NSBundle mainBundle]
pathForResource:@"beep" ofType:@"caf"];
NSURL *scanSoundURL = [NSURL fileURLWithPath:scanSoundPath];
AudioServicesCreateSystemSoundID((__bridge CFURLRef)scanSoundURL, &_scanSoundID);
AudioServicesPlaySystemSound(self.scanSoundID);

...

}


This code works fine, but the beep.caf sound is quite loud. I want to play the beep sound at 50% volume (without changing the volume of the iPhone). In other words, I don't want to touch the iPhone's actual volume, I just want to play the sound with less amplitude so to speak.


How can I accomplish this (preferably with Audio Services like I'm using now)?


Thanks!


Aucun commentaire:

Enregistrer un commentaire