2014-03-03 19 views
2

我很感激這方面的任何幫助:成功訪問AVCaptureDevice模式iOS7?

對於我的增強現實應用程序(Vuforia SDK),我試圖使用AVFoundation框架鎖定iPhone 5相機的曝光,對焦和白平衡。下面建立 - 但使用時,相機不打擾:

void LockCam(){ 

NSArray *devices = [AVCaptureDevice devicesWithMediaType:AVMediaTypeVideo]; 

     for (AVCaptureDevice *device in devices) { 
    if ([device lockForConfiguration:nil]) { 
     [device setWhiteBalanceMode:AVCaptureWhiteBalanceModeLocked]; 
     [device setExposureMode:AVCaptureExposureModeLocked]; 
     [device unlockForConfiguration];} 

}} 

是的,我從其他的帖子複製這一切在一起,我是新來的Objective-C。但是,因爲這樣構建,因此不會拋出任何錯誤消息,我現在有點失落......

任何人都可以成爲我的iOS童話嗎? :)

回答

2

您可能需要從更抽象的位置獲取AVCaptureDevice *device,具體取決於您的配置。

喜歡的東西

AVCaptureDevice *device = // Your device... 
    if ([device isWhiteBalanceModeSupported: AVCaptureWhiteBalanceModeLocked] && [device isFocusModeSupported:AVCaptureFocusModeLocked]) { 
     if ([device lockForConfiguration:nil]) { 
      [device setFocusMode:AVCaptureFocusModeLocked]; 
      [device setWhiteBalanceMode:AVCaptureWhiteBalanceModeLocked]; 
      [device unlockForConfiguration]; 
     } 
    } 

可能工作。

+0

介意將它視爲正確的答案? – defense2000x