国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > iOS > 正文

AudioServicesPlaySystemSound音頻服務—IOS開發

2019-11-09 16:42:11
字體:
來源:轉載
供稿:網友

對于簡單的、無混音音頻,AVAudio ToolBox框架提供了一個簡單的C語言風格的音頻服務。

你可以使用AudioservicesPlaySystemSound函數來播放簡單的聲音。要遵守以下幾個規則:

1、音頻長度小于30秒

2、格式只能是PCM或者IMA4

3、文件必須被存儲為.caf、.aif、或者.wav格式

4、簡單音頻不能從內存播放,而只能是磁盤文件

除了對簡單音頻的限制外,你對于音頻播放的方式也基本無法控制。一旦音頻播放就會立即開始,而且是當前電話使用者設置的音

量播放。你將無法循環播放聲音,也無法控制立體聲效果。不過你還是可以設置一個回調函數,在音頻播放結束時被調用,這樣你

就可以對音頻對象做清理工作,以及通知你的程序播放結束。

直接上代碼:

#import <AudioToolbox/AudioToolbox.h>  #import <CoreFoundation/CoreFoundation.h>  //當音頻播放完畢會調用這個函數  static void SoundFinished(SystemSoundID soundID,void* sample){      /*播放全部結束,因此釋放所有資源 */      AudioServicesDisposeSystemSoundID(sample);      CFRelease(sample);      CFRunLoopStop(CFRunLoopGetCurrent());  }  
//主循環  int main(){      /*系統音頻ID,用來注冊我們將要播放的聲音*/      SystemSoundID soundID;      NSURL* sample = [[NSURL alloc]initWithString:@"sample.wav"];            OSStatus err = AudioServicesCreateSystemSoundID(sample, &soundID);      if (err) {          NSLog(@"Error occurred assigning system sound!");          return -1;      }      /*添加音頻結束時的回調*/      AudioServicesAddSystemSoundCompletion(soundID, NULL, NULL, SoundFinished,sample);      /*開始播放*/      AudioServicesPlaySystemSound(soundID);      CFRunLooPRun();      return 0;  }
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 开鲁县| 桐庐县| 区。| 冷水江市| 荃湾区| 峨山| 成武县| 元阳县| 南和县| 南通市| 昆明市| 吴川市| 广汉市| 治县。| 鞍山市| 沙湾县| 邵武市| 井陉县| 茶陵县| 田东县| 新巴尔虎左旗| 南华县| 克拉玛依市| 那曲县| 汉源县| 永平县| 南岸区| 汕头市| 儋州市| 蒙城县| 商都县| 奉新县| 廊坊市| 阳东县| 成安县| 石门县| 揭阳市| 清河县| 林西县| 贵南县| 灵武市|