我正在使用iPhone4的后置摄像头,并进行标准而繁琐的过程来创建AVCaptureSession并向其中添加一个AVCaptureDevice。
在将该相机的AvCaptureDeviceInput附加到会话之前,我正在测试自己对白平衡和曝光的理解,因此我正在尝试以下操作:
[self.theCaptureDevice lockForConfiguration:nil];
[self.theCaptureDevice setWhiteBalanceMode:AVCaptureWhiteBalanceModeLocked];
[self.theCaptureDevice setExposureMode:AVCaptureExposureModeContinuousAutoExposure];
[self.theCaptureDevice unlockForConfiguration];
1- 鉴于白平衡模式的各种选项都在枚举中,我原以为默认值总是零,因为枚举Typedef变量从未被赋值。但是,如果我在断点处并在调试器中查看值,我发现默认白平衡模式实际上设置为2。不幸的是,AVCaptureDevice的头文件没有说明不同相机设置的默认值。
2- 这可能听起来很傻,但我可以假设一旦我停止应用程序,所有白平衡、曝光模式的设置都会返回到它们的默认值。这样,如果我立即启动另一个应用程序,摄像机设备不会被卡在那些“硬件设置”上。