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

IOS-闪光灯操作

2014-02-24 14:34 148 查看
AVCaptureDevice.h主要用来获取iphone一些关于相机设备的属性。

前置和后置摄像头

enum {

AVCaptureDevicePositionBack = 1,

AVCaptureDevicePositionFront = 2

};

typedef NSInteger AVCaptureDevicePosition;

闪光灯开关

enum {

AVCaptureFlashModeOff = 0,

AVCaptureFlashModeOn = 1,

AVCaptureFlashModeAuto = 2

};

typedef NSInteger AVCaptureFlashMode;

手电筒开关

enum {

AVCaptureTorchModeOff = 0,

AVCaptureTorchModeOn = 1,

AVCaptureTorchModeAuto = 2,

};

typedef NSInteger AVCaptureTorchMode;

焦距调整

enum {

AVCaptureFocusModeLocked = 0,

AVCaptureFocusModeAutoFocus = 1,

AVCaptureFocusModeContinuousAutoFocus = 2,

};

typedef NSInteger AVCaptureFocusMode;

曝光量调节

enum {

AVCaptureExposureModeLocked = 0,

AVCaptureExposureModeAutoExpose = 1,

AVCaptureExposureModeContinuousAutoExposure = 2,

};

typedef NSInteger AVCaptureExposureMode;

白平衡

enum {

AVCaptureWhiteBalanceModeLocked = 0,

AVCaptureWhiteBalanceModeAutoWhiteBalance = 1,

AVCaptureWhiteBalanceModeContinuousAutoWhiteBalance = 2,

};

typedef NSInteger AVCaptureWhiteBalanceMode;

开启闪光灯

AVCaptureDevice* d = nil; // find a device by positionNSArray* allDevices = [AVCaptureDevice devices]; for (AVCaptureDevice* currentDevice in allDevices) {   if (currentDevice.position == AVCaptureDevicePositionBack) {     d = currentDevice;   } }
// at this point, d may still be nil, assuming we found something we like.... NSError* err = nil; BOOL lockAcquired = [d lockForConfiguration:&err]; if (!lockAcquired) {    // log err and handle... } else {   // flip on the flash mode    if ([d hasFlash] && [d isFlashModeSupported:AVCaptureFlashModeOn] ) {       [d setFlashMode:AVCaptureFlashModeOn];    }    [d unlockForConfiguration]; }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: