iOS系统音频

来源:互联网 发布:mac口红lustre系列色号 编辑:程序博客网 时间:2024/05/16 07:44

音频

iOS里面有四种专门实现播放音频的方式

1, System Sound Services (系统声音服务)

2, OpenAL(跨平台的开源的音频处理接口)

3, Audio Queue Services(播放和录制音频服务)

4, AVAudioPlayer(高级音频播放器)

 System Sound Services (系统声音服务)是最底层也是最简单的声音播放服务,通过调用AudioServicesPlaySystemSound这个函数就可以播放一些简单的音频文件

使用场景:适合播放一些很小的提示或者警告音.

局限性:1, 声音长度要小于30秒

            2, 格式:IMA4

            3, 不能控制播放的进度

            4, 调用方法后立即播放声音

            5, 没有循环播放和立体声音播放

//系统声音服务

    //1, 找到播放资源的路径

    NSString *path = [[NSBundle mainBundle]pathForResource:@"蔡琴 - 爱断情伤.wav" ofType:@""];

    //2, 系统对于每种音频,都对应的给了一个SystemSoundID, 类似身份证号, 让系统进行识别

    SystemSoundID soundID;

    //fileURLWithPath:  将本地的资源转化为URL 对象

    NSURL *url = [NSURL fileURLWithPath:path];

    //这个函数是帮助我们创建一个 soundID, 第一个参数,是资源的本地url, 是OC级别的, OC 跟 C 在变量传值上要借助桥接(bridge)

    AudioServicesCreateSystemSoundID((__bridge CFURLRef)url, &soundID);

    //播放,(任选其一)

    //1, 播放声音和震动

//    AudioServicesPlayAlertSoundWithCompletion(soundID, ^{

//        NSLog(@"播放完成之后触发");

//    });

    //2, 只播放声音

    AudioServicesPlaySystemSound(soundID);

    //3, 只震动

//    AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);

1 0
原创粉丝点击