目录
简介
在iOS7
当中, Apple就已经在AVFoundation
当中加入对扫码的支持, 大家从此就可以和ZXing
说拜拜了, 也感谢ZXing
长期以来为我们提供扫码的功能.
作者感言
如果你有更好的建议或者对这篇文章有不满的地方, 请联系我, 我会参考你们的意见再进行修改, 联系我时, 请备注
AVFoundation实现扫码
,最后:
祝大家学习愉快~谢谢~
Cain(罗家辉)
联系方式: zhebushimengfei@qq.com
腾讯QQ: 350116542
初识AVFoundation框架
首先我们从整体对所需框架做个初步了解。
AVFoundation
在相关框架栈中的的位置:
为了捕捉视频,我们需要这样几种类(与其它的子类)。
AVCaptureDevice
代表了输入设备,例如摄像头与麦克风。AVCaptureInput
代表了输入数据源AVCaptureOutput
代表了输出数据源AVCaptureSession
用于协调输入与输出之间的数据流并且还有
AVCaptureVideoPreviewLayer
提供摄像头的预览功能可以用这样一幅图来概述:
实际应用
AVFoundation
来捕捉视频流并不复杂。我们用代码简单地描述用
AVFoundation
捕捉视频的过程,其他捕捉音频,静态图像的过程也是大同小异的。创建
AVCaputureSession
, 作为协调输入与输出的中心,我们第一步需要创建一个Session
AVCaptureSession *session = [[AVCaptureSession alloc] init];
创建AVCaptureDevice
创建一个
AVCaptureDevice
代表代表输入设备, 在这里我们制定设备用于摄像。