问题描述
@IBOutlet weak var viewCam: UIView!
let captureSession = AVCaptureSession()
var captureDevice : AVCaptureDevice?
var previewLayer : AVCaptureVideoPreviewLayer?
captureSession.sessionPreset = AVCaptureSession.Preset.low
// Get all audio and video devices on this machine
let devices = AVCaptureDevice.devices()
// Find the FaceTime HD camera object
for device in devices {
print(device)
if ((device as AnyObject).hasMediaType(AVMediaType.video)) {
print(device)
captureDevice = device as? AVCaptureDevice
}
}
if captureDevice != nil {
do {
try captureSession.addInput(AVCaptureDeviceInput(device: captureDevice!))
previewLayer = AVCaptureVideoPreviewLayer(session: captureSession)
previewLayer?.frame = (self.viewCam.frame)
// Add previewLayer into custom view
self.viewCam.layer.addSublayer(previewLayer!)
// Start camera
} catch {
print(AVCaptureSessionErrorKey.description)
}
}
我在Mac-catalist(iOS)中使用此代码,它在iPhone iPad上运行正常,但在Mac上返回 captureDevice 无效。
但是当我在Mac本机版本中使用相同的代码时,它运行良好。我不确定如何在Mac-catalist中实现这一目标。
请在下面回答或发表评论,谢谢。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)