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