iOS开发技术集合ios ios视频相关

iOS音视频学习1——播放系统音效

2016-03-24  本文已影响397人  Realank

本系列是学习Kenshin Cui's Blog的文章,版权归其所有。

在iOS中音频播放从形式上可以分为音效播放和音乐播放。前者主要指的是一些短音频播放,通常作为点缀音频,对于这类音频不需要进行进度、循环等控制。后者指的是一些较长的音频,通常是主音频,对于这些音频的播放通常需要进行精确的控制。在iOS中播放两类音频分别使用AudioToolbox.framework和AVFoundation.framework来完成音效和音乐播放。

音效

AudioToolbox.framework是一套基于C语言的框架,使用它来播放音效其本质是将短音频注册到系统声音服务(System Sound Service)。System Sound Service是一种简单、底层的声音播放服务,但是它本身也存在着一些限制

使用System Sound Service 播放音效的步骤如下:
  1. 调用
AudioServicesCreateSystemSoundID(   CFURLRef  inFileURL, SystemSoundID*   outSystemSoundID)

函数获得系统声音ID。

  1. 如果需要监听播放完成操作,则使用
AudioServicesAddSystemSoundCompletion( SystemSoundID inSystemSoundID, CFRunLoopRef  inRunLoop, CFStringRef  inRunLoopMode, AudioServicesSystemSoundCompletionProc  inCompletionRoutine, void*  inClientData)

方法注册回调函数。

  1. 调用
AudioServicesPlaySystemSound(SystemSoundID inSystemSoundID) ```
或者

AudioServicesPlayAlertSound(SystemSoundID inSystemSoundID)

方法播放音效(后者带有震动效果)。

具体调用代码如下:

//需要导入#import <AudioToolbox/AudioToolbox.h>
/**

上一篇下一篇

猜你喜欢

热点阅读