From e55424fb9368bc36e32879720c47e6a2825025ad Mon Sep 17 00:00:00 2001 From: Daniel Murfin Date: Sun, 6 Mar 2022 10:54:19 +0000 Subject: [PATCH] Adds a method to remove an existing video capture device. --- Sources/VideoIO/Camera.swift | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Sources/VideoIO/Camera.swift b/Sources/VideoIO/Camera.swift index f33e1fa..e7fc01c 100644 --- a/Sources/VideoIO/Camera.swift +++ b/Sources/VideoIO/Camera.swift @@ -151,6 +151,17 @@ public class Camera { } } + public func removeVideoCaptureDevice() { + self.captureSession.beginConfiguration() + + if let currentVideoDeviceInput = self.videoDeviceInput { + self.captureSession.removeInput(currentVideoDeviceInput) + self.videoDeviceInput = nil + } + + self.captureSession.commitConfiguration() + } + public var videoCaptureConnection: AVCaptureConnection? { return self.videoDataOutput?.connection(with: .video) }