         
             // setup preset and mode
             
-            self.removeOutputsIfNecessary(session: session)
+            self.removeUnusedOutputsForCurrentCameraMode(session: session)
             
             switch self.cameraMode {
             case .video:

        
    }

    private func removeOutputs(session: AVCaptureSession) {
        guard let outputs = session.outputs as? [AVCaptureOutput] else {
            return
        }

        if let session = self._captureSession {
            self.beginConfiguration()
            self.removeInputs(session: session)
            self.removeOutputs(session: session)
            self.commitConfiguration()
        }

