我正在使用
iphone4的后置摄像头,并执行创建AVCaptureSession的标准和漫长过程,并向其添加AVCaptureDevice.
在将相机的AvCaptureDeviceInput附加到会话之前,我正在测试我对白平衡和曝光的理解,所以我正在尝试这样做:
[self.theCaptureDevice lockForConfiguration:nil];
[self.theCaptureDevice setWhiteBalanceMode:AVCaptureWhiteBalanceModeLocked];
[self.theCaptureDevice setExposureMode:AVCaptureExposureModeContinuousAutoExposure];
[self.theCaptureDevice unlockForConfiguration];
1-鉴于白平衡模式的各种选项都在枚举中,我认为默认值始终为零,因为枚举Typedef变量从未赋值.我发现,如果我断开并调试调试器中的值,默认的白平衡模式实际上设置为2.不幸的是,AVCaptureDevice的头文件没有说明不同相机设置的默认值.
2-这可能听起来很愚蠢,但是我可以假设一旦我停止应用程序,白平衡,曝光模式的所有设置都将恢复为默认值.因此,如果我立即启动另一个应用程序,相机设备不会以某种方式卡在那些“硬件设置”上.
最佳答案 经过一番研究和帮助后,我找到了答案:
1-所有相机设置(白平衡,对焦和曝光)默认为“连续”设置,以便相机不断调整所有相机.检查AVCaptureDevice.h是否有枚举值.
2-所有应用程序都在筒仓中运行.当调用它的应用程序移动到后台时,相机会停止.当新应用程序调用相机时,会再次设置上述默认值.