0%

iOS开发 使用System Sound Services播放音频文件

System Sound Services只能播放不越过30秒的声音,且支持格式只有wav,没有提供操纵声音和控制音量的功能,一般只用于播放通知。

    SystemSoundID soundId;
    //后面将使用soundId引用音频文件
    NSString *soundFile=[[NSBundle mainBundle] pathForResource:@"aaa" ofType:@"wav"];
    //通过NSBundle的 mainBundle方法返回一个NSBundle对象,该对象对应当前应用程序可执行二进制文件所属目录。pathForResource方法获取aaa.wav的真实路径。
    AudioServicesCreateSystemSoundID((__bridge CFURLRef)[NSURL fileURLWithPath:soundFile], &soundId);
    //创建soundFile的SystemSoundID,(__bridge CFURLRef)是强制转换成CFURLRef对象,因为此处要将一个c语言的结构转换为Objective-c对象,所以必须加上__bridge
    AudioServicesPlaySystemSound(soundId);
    //播放音频 System Sound Services不能播放越过30秒的声音,且只支持wav