AV Foundation的含义
- AV Foundation是苹果OS X和iOS系统中用于处理基于时间的媒体数据的高级Objective-C的高级框架
- AV Foundation考虑到了目前硬件环境以及应用程序,充分利用你够了多核的优势并大量使用了Block&GCD机制将复杂的计算过程放在了后台线程运行,会自动提供硬件的加速要求,确保在大部分的应用上高速运行
- AV Foundation的设计也充分考虑了电量效率来满足如Iphone和Ipad的诸类的移动设备对电量的要求
- AV Foundation一开始就是针对64系统设备设计的,可以发挥64位的所有优势
AV Foundation适用范围
AV Foundation在整个体系中所处的角色
两个平台都针对处理媒体相关操作提供了了一系列的高级解决方案
- iOS中利用UIKit可以很容的将基本的静态图片和视频捕捉整合到应用程序中
- iOS 、Mac OS两个系统都可以通过在UIWebview,Webview中添加<”audio”>和<”vidio”>HTML5标签播放音频和视频文件。
- 两者都提供了AVKit框架,用于解决目前流行的视频播放应用
AV Foundation的主要框架功能
Core Audio
Core Audio是OS X 和iOS系统上的所有处理音频事件的框架。是多个框架整合在一起的总称,为音频和MIDI内容的录制、播放和处理提供相应的接口 ,Core Audio 也提供高层级的接口。如: Audio Queue Services框架所提供的那些框架,主要处理音频的录制和播放的相关功能,并通过 Audio Units来构建一些复杂的音频处理模式。
Core Video
Core Video是OS X和iOS系统上针对数字视频所提供的官道模式,Core Video为其相对的Core media提供图片缓存和缓冲池支持,提供了一个能针对数字视频的逐帧的访问接口。通过像素格式之间的转换必过管理视频同步事项使得复杂的工作得到了有效简化Core Media
Core media是AV Foundation所用到的低级媒体管道的一部分,他提供针对音频样本和视频帧处理所需的底层级数据类型和接口,Core media还提供了AV Foundation用到的基于CMTime数据类型的时基模型,CMTime及其相关数据类型一般在AV Foundation处理基于时间的操作时候使用(时间的的操作一般也就是视频的播放时长,总时长)。Core Animation
Core Animation 是MAC OS X和iOS提供的合成及动画相关框架。主要功能是提供平台的美观和流畅动画的效果
初识AV Foundation
AVSpeechSynthesizer类:
这个类可以使我们方便的在cocoa添加文本语音的功能
AVSpeechSynthesizer *Synthesizer = [[AVSpeechSynthesizer alloc] init];
AVSpeechUtterance *utterpace = [[AVSpeechUtterance alloc] initWithString:@"1,2,3,4,5"];
// Synthesizer.
[Synthesizer speakUtterance:utterpace];
如果运行这段代码,即可听见读出语句@“1,2,3,4,5”