iOS系統音頻

音頻

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);

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章