一、UIimagePickerController 用于控制和调用系统自带的媒体类型,设置实例的sourceType属性为一下三种类型就可以使用相对应的系统的资源
1.UIImagePickerControllerSourceTypePhotoLibrary(系统的照片库选择照片);
2.UImagePickerControllerSourceTypeSavedPhotosAlbum(只能在保存的相册中选择照片);
3.UImagePickerControllerSourceTypeCamera(使用系统照相机来获取图片或视频)
因此我们可以既可以从本地获取图片,也可以调用照相机来获取。当我们完成了获取图片和选择了用照相机拍下的照片或视频式或者取消了这写操作式。它就调用它的代理。
1. - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info;
可以根据字典型的参数 info 的keys 来获取相应的数据,下面式 info的keys值:
(1).UIImagePickerControllerMediaType; // an NSString (UTI, i.e. kUTTypeImage)
(2).UIImagePickerControllerOriginalImage; // a UIImage
(3).UIImagePickerControllerEditedImage; // a UIImage
(4).UIImagePickerControllerCropRect; // an NSValue (CGRect)
(5).UIImagePickerControllerMediaURL; // an NSURL
(6).UIImagePickerControllerReferenceURL //参考一个有用的资源在AssetsLibrary framework
(7).UIImagePickerControllerMediaMetadata // 包含拍摄照片的元数据
2. - (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker;
用于取消操作时调用的代理。
一些属性: (1). cameraOverlayView //可以自己定制Camer拍摄页面
(2).videoQuality //拍摄Video的质量
(3).showsCameraControls // 布尔型 默认为YES,如果你设置为NO,将会隐藏camera UI
(4).allowsEditing //布尔型 默认为NO ,为YES可以编辑图片和视频。
UIImgePickercontroller处理的并不是原始摄像头数据, 它是在原始数据被处理成图像后才开始访问。
所以UIImagePickerController可以用于简单的媒体捕捉,通过设置属性sourceType和captureMode可以设置使用前置摄像头还是后置摄像头,让它以不同的分辨率捕捉静止图像或者视频。不过AVFountion能在原始数据编程图像之前就可以访问它。
二、
1.AVCaptureSession用来控制设备(AVCaptureDeviceInput)视频图像到流入输出缓存区(AVCaptureOutput)的过程。一旦AVCature启动以后,就会收集来自输入设备的信息,并在适当的时候将这些信息输出到数据缓冲区中。
2.AVCaptureVideoPreviewLayer默认情况下会显示来自输入设备的原始数据,是个预览图层。如果要实现实时滤镜或在这个图层上绘制额外的物体,那么就要从视频输出缓冲区获取数据帧数据,并对其进行处理,处理完毕后可将像素数据输出到另一个图层或者OpenGL上下文中。
3.AVCaptureConnection 用来在AVCaptureInput和ACaptureOutput之间建立连接 。 AVCaptureSession必须从AVCaptureConnection中获取实际数据。
4.AVCaptureDevice可以用来创建必要的输入捕捉设备如摄像头。
5.AVCaptureStillImageOutput或者AVCaptureVideoDataOutput来添加一个输出缓冲区
具体的使用参考 http://furnacedigital.blogspot.com/2012/11/avcapturestillimageoutput.html
http://furnacedigital.blogspot.tw/2012/11/avcapturevideodataoutput.html
相关推荐
UIImagePickerController和MPMoviePlayerController的使用
UIImagePickerController摄像头和相册的demo,有兴趣的可以瞅瞅
UIImagePickerController之打开图片库和相机选择图片修改头像,就是所有软件应用中用到的修改头像的功能 ;
NULL 博文链接:https://eric-gao.iteye.com/blog/1722533
一个学习UIImagePickerController的代码工程。
自定义系统UIImagePickerController 视频录制界面 实现 录制视频 暂停(将多段视频合成为一个视频)
Tatsi 一个UIImagePickerController替代拥有更多的选项,并能够选择多个图像/或视频
IOS UIImagePickerController调用,包括打开相机以及打开图库,录像,以及将录像导出
使用UIImagePickerController时3DTouch引起的Crash问题的解决
UIImagePickerController使用实例,使用照相功能,涉及的到UIImageView的使用,调用Iphone相册,通讯录等功能
QBImagePicker 一个具有多个选择支持的UIImagePickerController的克隆
iOS UIImagePickerController 详细使用文档
UIImagePickerController 是系统提供的用来获取图片和视频的接口; 用UIImagePickerController 类来获取图片视频,大体分为以下几个步骤: 1. 初始化UIImagePickerController 类; 2. 设置UIImagePickerController ...
Xamarin.iOS-UIImagePickerController调用相机和获取相册列表【控件篇】 欢迎关注 http://blog.csdn.net/u014220518/article/details/53669910
UIImagePickerController的直接替代品,具有更多选项以及选择多个图像和/或视频的功能。 屏幕截图 介绍 嗨,我们很。 我们为iOS Reddit客户端创建了一个可定制的图像选择器 。 UIImagePickerController仅支持一次...
GKImagePicker, 为UIImagePickerController启用自定义裁剪矩形 GKImagePicker曾经想要UIImagePickerController的定制裁剪区域? 现在你可以用 GKImagePicker 了。 只要设置你定制的裁剪区域就可以了。 只有 4行代码...
该类继承自UINavigationController类 步骤: 检查媒体来源模式是否可用 检查该来源模式下所支持的媒体类型 创建图像选取控制器,设置其属性并显示 在委托协议方法中处理
作者taruntyagi697,源码AssetPicker,AssetPicker 是 UIViewController 子类,提供一个可替代 UIImagePickerController 的解决方案。
作者ytakzk,源码Fusuma,可替代 UIImagePickerController 可以在相机里面抓取图片 使用 AVFoundation 抓取指定大小的图片 控制闪光灯的开关 可控制前后摄像头 Installation 拖动Fusuma的文件到项目中 还可以使用 ...