媒体层提供了图形、音频和视频技术支持,以达到移动设备上多媒体体验。
图形框架
- 相册管理框架
photos iOS 8.0 出的框架;
AssetLibrary iOS 9.0 废弃的框架;
- 图像渲染处理
OpenGL-ES Framework (EAGLContest,AGLKView(不能商用) )
GLKit Framework (GLKView,GLKTextureInfo,GLKBaseEffect)提供2D、3D硬件加速渲染接口
ImageI/O Framework (CGImageinfo)提供大部分图像格式的读写接口
CoreImage Framework (CIImage , CIFilter)视频和静态图片的高级支持
CoreGraphics Framework (CGImage ,CGlayer [Quartz 2D API manages the graphic context and implements drawing.]) 处理本地2D矢量图形和基于图像的渲染
QuartzCore Framework (CALayer,CADisplaylink ) EAGLDrawable 协议(openGL),CAEAGLLayer实现( CAAnimation 提供视图动画高级支持
metal Framework
SpriteKit Framework
可使用场景
The difference between Quartz2D and OpenGL is that Quartz2D is used for 2D drawing and OpenGL can be used for both 2D and 3D drawing.
The Quartz 2D API is part of the Core Graphics framework, so you may see Quartz referred to as Core Graphics or, simply, CG.
CoreGraphics - this is again a framework provided by Apple which uses Quartz. It helps in low-level 2D drawing.
CoreAnimation - this is also a framework which is used for animating drawings. So if you want to do animations like keyframe animations (think Flash), fading of objects, moving them around etc, you use CoreAnimation
Cocos2d - Cocos2d is a 2D game engine built on top of OpenGL. The iOS port also includes integrated physics engines. This makes it easy to create animations in your app without knowing an awful lot about OpenGL , which can be a little difficult to understand for some.
One for doing 2D drawing (CoreGraphics.framework) and the other (QuartzCore.framework) being for handling animations as well as image processing. You can count the UIKit.framework in this category too but it is more about handling views and view hierarchies and user event management.