【发布时间】:2017-06-08 08:36:36
【问题描述】:
我知道如何打开/关闭后置摄像头的闪光灯。我知道如何切换前置/后置摄像头。但我不知道如何独立于活动相机打开/关闭闪光灯。
我的意思是:如果活动摄像头是前置摄像头,当我打开闪光灯时,它会冻结。当我关闭它时,它会解冻。
到目前为止我的代码:
var back_cam:AVCaptureDevice?
for device in devices{
if (device as AnyObject).hasMediaType(AVMediaTypeVideo) && (device as AnyObject).position == .back{
back_cam=device as? AVCaptureDevice
}
}
guard let cam=back_cam else {
print("no back cam?")
return
}
if cam.hasTorch{
do{
try cam.lockForConfiguration()
if cam.torchMode == .on{
cam.torchMode = .off
}else{
do{
try cam.setTorchModeOnWithLevel(1)
}catch{
print(error)
}
}
cam.unlockForConfiguration()
}catch{
print(error)
}
}
}
编辑
如果我不清楚,我想保持灯亮,无论活动摄像头是后置摄像头还是前置摄像头。
【问题讨论】:
标签: ios swift camera avcapturesession avcapturedevice