標籤:des style blog io ar color os sp for
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;
開啟閃光燈:
1 AVCaptureDevice* d = nil; // find a device by position 2 NSArray* allDevices = [AVCaptureDevice devices]; 3 for (AVCaptureDevice* currentDevice in allDevices) { 4 if (currentDevice.position == AVCaptureDevicePositionBack) { 5 d = currentDevice; 6 } 7 } // at this point, d may still be nil, assuming we found something we like.... 8 NSError* err = nil; 9 BOOL lockAcquired = [d lockForConfiguration:&err]; 10 if (!lockAcquired) { 11 // log err and handle... 12 } else { 13 // flip on the flash mode 14 if ([d hasFlash] && [d isFlashModeSupported:AVCaptureFlashModeOn] ) { 15 [d setFlashMode:AVCaptureFlashModeOn]; 16 } 17 [d unlockForConfiguration]; 18 }
IOS-閃光燈操作