zoukankan      html  css  js  c++  java
  • AVCaptureDevice的几个属性

    AVCaptureDevice.h,主要用来获取iphone一些关于相机设备的属性。

    AVCaptureDevice.h,必须要引入AVFoundation.framework包。

    1. 前置和后置摄像头
    enum {
        AVCaptureDevicePositionBack = 1,
        AVCaptureDevicePositionFront = 2
    };
    typedef NSInteger AVCaptureDevicePosition;
    2. 闪光灯开关
    enum {
        AVCaptureFlashModeOff = 0,
        AVCaptureFlashModeOn = 1,
        AVCaptureFlashModeAuto = 2
    };
    typedef NSInteger AVCaptureFlashMode;
    3. 手电筒开关
    enum {
        AVCaptureTorchModelOff = 0,
        AVCaptureTorchModelOn = 1,
        AVCaptureTorchModeAuto = 2
    };
    typedef NSInteger AVCaptureTorchMode;
    4. 焦距调整
    enum {
        AVCaptureFocusModelLocked = 0,
        AVCaptureFocusModeAutoFocus = 1,
        AVCaptureFocusModeContinousAutoFocus = 2
    };
    typedef NSInteger AVCaptureFocusMode;
    5. 曝光量调节
    enum {
        AVCaptureExposureModeLocked = 0,
        AVCaptureExposureModeAutoExpose = 1,
        AVCaptureExposureModeContinuousAutoExposure = 2
    };
    typedef NSInteger AVCaptureExposureMode;
    6. 白平衡
    enum {
        AVCaptureWhiteBalanceModeLocked = 0,
        AVCaptureWhiteBalanceModeAutoWhiteBalance = 1,
        AVCaptureWhiteBalanceModeContinuousAutoWhiteBalance = 2
    };
    typedef NSInteger AVCaptureWhiteBalanceMode; 
    开启闪光灯
    AVCaptureDevice* d = nil; // find a device by position
    NSArray* 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];
    }

  • 相关阅读:
    The difference between applicationContext.xml in Spring and xxx-servlet.xml in SpringMVC
    01Java代码是怎么运行的
    Qt5.7不能加载MySql驱动问题(需要重新编译驱动)
    大前端工具介绍
    ARTS 第 1 周
    【标题】行动派
    Matlib’s lsqnonlin 和 scipy.optimize’s least_square
    每日背单词
    AngularJS入门篇
    吴裕雄 Bootstrap 前端框架开发——Bootstrap 字体图标(Glyphicons):glyphicon glyphicon-adjust
  • 原文地址:https://www.cnblogs.com/allanliu/p/4194620.html
Copyright © 2011-2022 走看看