您的位置:首页 > 移动开发 > IOS开发

(0070)iOS开发之AVFoundation枚举属性注解

2017-12-04 16:22 281 查看
转载: http://www.jianshu.com/p/5e56e35217bf

我们可以通过设置AVCaptureSession的一些属性来改变捕捉画面的质量
但是要注意:size相关的属性的时候需要首先进行测试设备是否支持
判断方法是  canSetSessionPreset

AVAssetExportPresetLowQuality        低质量 可以通过移动网络分享
AVAssetExportPresetMediumQuality     中等质量 可以通过WIFI网络分享
AVAssetExportPresetHighestQuality    高等质量
AVAssetExportPreset640x480
AVAssetExportPreset960x540
AVAssetExportPreset1280x720    720pHD
AVAssetExportPreset1920x1080   1080pHD
AVAssetExportPreset3840x2160

设置摄像头的方向
typedef NS_ENUM(NSInteger, AVCaptureDevicePosition) {
AVCaptureDevicePositionUnspecified         = 0,    // 最近打开的方向,记录最近时间打开的方向
AVCaptureDevicePositionBack                = 1,    // 后置摄像头
AVCaptureDevicePositionFront               = 2     // 前置摄像头
} NS_AVAILABLE(10_7, 4_0) __TVOS_PROHIBITED;

设置闪光灯模式
typedef NS_ENUM(NSInteger, AVCaptureFlashMode) {
AVCaptureFlashModeOff  = 0,    // 关闭闪光灯
AVCaptureFlashModeOn   = 1,   // 打开闪光灯
AVCaptureFlashModeAuto = 2   // 自动模式
} NS_AVAILABLE(10_7, 4_0) __TVOS_PROHIBITED;

系统对焦模式
typedef NS_ENUM(NSInteger, AVCaptureAutoFocusSystem) {
AVCaptureAutoFocusSystemNone              = 0,      // 不设置对焦模式
AVCaptureAutoFocusSystemContrastDetection = 1,    //  对比度检测对焦
AVCaptureAutoFocusSystemPhaseDetection    = 2,       // 相位检测对焦
} NS_AVAILABLE_IOS(8_0) __TVOS_PROHIBITED;

视频防抖动模式
typedef NS_ENUM(NSInteger, AVCaptureVideoStabilizationMode) {
AVCaptureVideoStabilizationModeOff       = 0,     // 视频防抖动模式关闭
AVCaptureVideoStabilizationModeStandard  = 1,  // 视频防抖标准模式
AVCaptureVideoStabilizationModeCinematic = 2,  // 视频防抖电影模式
AVCaptureVideoStabilizationModeAuto      = -1,   // 视频防抖自动模式
} NS_AVAILABLE_IOS(8_0) __TVOS_PROHIBITED;

手电筒模式
typedef NS_ENUM(NSInteger, AVCaptureTorchMode) {
AVCaptureTorchModeOff  = 0,    // 手电筒关闭
AVCaptureTorchModeOn   = 1,    // 手电筒打开
AVCaptureTorchModeAuto = 2,   // 手电筒自动模式
} NS_AVAILABLE(10_7, 4_0) __TVOS_PROHIBITED;

焦距调整
typedef NS_ENUM(NSInteger, AVCaptureFocusMode) {
AVCaptureFocusModeLocked              = 0,     //  锁定对焦
AVCaptureFocusModeAutoFocus           = 1,   //  自动对焦模式
AVCaptureFocusModeContinuousAutoFocus = 2,  // 连续自动对焦
} NS_AVAILABLE(10_7, 4_0) __TVOS_PROHIBITED;

自动对焦范围限制
typedef NS_ENUM(NSInteger, AVCaptureAutoFocusRangeRestriction) {
AVCaptureAutoFocusRangeRestrictionNone = 0,    // 不限制
AVCaptureAutoFocusRangeRestrictionNear = 1,     //  近距离对焦模式
AVCaptureAutoFocusRangeRestrictionFar  = 2,      //   远距离对焦模式
} NS_AVAILABLE_IOS(7_0) __TVOS_PROHIBITED;

曝光模式设置
typedef NS_ENUM(NSInteger, AVCaptureExposureMode) {
AVCaptureExposureModeLocked                            = 0,    // 锁定曝光
AVCaptureExposureModeAutoExpose                        = 1,  // 自动曝光模式
AVCaptureExposureModeContinuousAutoExposure            = 2,  //   连续自动曝光模式
AVCaptureExposureModeCustom NS_ENUM_AVAILABLE_IOS(8_0) = 3,   // 自定义曝光模式
} NS_AVAILABLE(10_7, 4_0) __TVOS_PROHIBITED;

白平衡模式
typedef NS_ENUM(NSInteger, AVCaptureWhiteBalanceMode) {
AVCaptureWhiteBalanceModeLocked            = 0,     // 锁定白平衡模式
AVCaptureWhiteBalanceModeAutoWhiteBalance         = 1,  //   自动
AVCaptureWhiteBalanceModeContinuousAutoWhiteBalance = 2,  // 连续自动
} NS_AVAILABLE(10_7, 4_0) __TVOS_PROHIBITED;

授权状态  用户是否已经允许启用设备
typedef NS_ENUM(NSInteger, AVAuthorizationStatus) {
AVAuthorizationStatusNotDetermined = 0,    //  授权状态未确定
AVAuthorizationStatusRestricted,     //  授权受限
AVAuthorizationStatusDenied,         //   授权被拒绝
AVAuthorizationStatusAuthorized    //   授权被许可
} NS_AVAILABLE_IOS(7_0) __TVOS_PROHIBITED;

交通运输 - 播放控制模式
typedef NS_ENUM(NSInteger, AVCaptureDeviceTransportControlsPlaybackMode) {
AVCaptureDeviceTransportControlsNotPlayingMode      = 0,
AVCaptureDeviceTransportControlsPlayingMode         = 1
} NS_AVAILABLE(10_7, NA) __TVOS_PROHIBITED;

AVFoundation 框架支持以下类型的条形码扫描:

supportedCodeType简写说明
AVMetadataObjectTypeUPCECode
UPCECode一种长度固定、连续性的条码,解释
AVMetadataObjectTypeCode39Code
Code39Code解释条形码 韵达和申通
AVMetadataObjectTypeCode39Mod43Code
Code39Mod43Code解释
AVMetadataObjectTypeEAN13Code
EAN13Code欧洲物品编码的缩写,EAN-13条码符号(EAN-13 Bar Code Symbol): EAN/UPC码制中的一个条码符号,用于表示EAN/UCC-13标识代码,解释
AVMetadataObjectTypeEAN8Code
EAN8CodeEAN-8条码符号(EAN-8 Bar Code Symbol): EAN/UPC码制中的一个条码符号,用于表示EAN/UCC-8标识代码
AVMetadataObjectTypeCode93Code
Code39CodeCode39是条形码的一种.星号来表示起始符及终止符,如邮政EMS单上的条码
AVMetadataObjectTypeCode128Code
Code128CodeCODE128码是广泛应用在企业内部管理、生产流程、物流控制系统方面的条码码制.商品条码 顺丰用的
AVMetadataObjectTypePDF417Code
PDF417CodePDF417条码是一种高密度、高信息含量的便携式数据文件,是实现证件及卡片等大容量、高可靠性信息自动存储、携带并可用机器自动识读的理想手段解释
AVMetadataObjectTypeQRCode
QRCode二维码
AVMetadataObjectTypeAztecCode
AztecCode一种高容量二维条形码格式,解释
AVMetadataObjectTypeInterleaved2of5Code
Interleaved2of5Code交叉25码,一维条形码的一种
AVMetadataObjectTypeITF14Code
ITF14CodeGS1规定的用于商品流通环节的条码,ITF-14用于商品的储运和批发环节
有些没用过,不过基本上都有自己的特有功能, 有写的不对的地方希望各位可以指正。感谢
无聊时写写。 后续继续调研。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: