swift 中通过AVFoundation来定制拍摄窗口
发布时间:2020-12-14 07:09:23 所属栏目:百科 来源:网络整理
导读:let devices = AVCaptureDevice.devices().filter{ $0.hasMediaType(AVMediaTypeVideo) $0.position == AVCaptureDevicePosition.Back } if let captureDevice = devices.first as? AVCaptureDevice { do{ try captureSession.addInput(AVCaptureDeviceInput
let devices = AVCaptureDevice.devices().filter{ $0.hasMediaType(AVMediaTypeVideo) && $0.position == AVCaptureDevicePosition.Back } if let captureDevice = devices.first as? AVCaptureDevice { do{ try captureSession.addInput(AVCaptureDeviceInput.init(device: captureDevice)) }catch let error as NSError { logger.error(error.debugDescription) } captureSession.sessionPreset = AVCaptureSessionPresetPhoto captureSession.startRunning() stillImageOutput.outputSettings = [AVVideoCodecKey:AVVideoCodecJPEG] if captureSession.canAddOutput(stillImageOutput) { captureSession.addOutput(stillImageOutput) } if let previewLayer = AVCaptureVideoPreviewLayer(session: captureSession) { previewLayer.frame = view.bounds previewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill let cameraPreview = UIView(frame: CGRectMake(0.0,0.0,maskBottomView.frame.size.width,maskBottomView.frame.size.height)) cameraPreview.layer.addSublayer(previewLayer) cameraPreview.addGestureRecognizer(UITapGestureRecognizer(target: self,action:"saveToCamera:")) maskTopView.layer.cornerRadius = 80; maskTopView.layer.shadowOffset = CGSizeMake(15,20); maskTopView.layer.shadowRadius = 5; maskTopView.layer.shadowOpacity = 0.5; view.insertSubview(cameraPreview,belowSubview: maskBottomView) } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |