         switch gestureRecognizer.state {
         case .began:
             self.startCapture()
+            self._panStartPoint = gestureRecognizer.location(in: self.view)
+            self._panStartZoom = CGFloat(NextLevel.shared.videoZoomFactor)
+            break
+        case .changed:
+            let newPoint = gestureRecognizer.location(in: self.view)
+            let scale = (self._panStartPoint.y / newPoint.y)
+            let newZoom = (scale * self._panStartZoom)
+            NextLevel.shared.videoZoomFactor = Float(newZoom)
             break
         case .ended:
             fallthrough

    internal var longPressGestureRecognizer: UILongPressGestureRecognizer?
    internal var photoTapGestureRecognizer: UITapGestureRecognizer?
    internal var focusTapGestureRecognizer: UITapGestureRecognizer?
    internal var zoomPanGestureRecognizer: UIPanGestureRecognizer?
    internal var flipDoubleTapGestureRecognizer: UITapGestureRecognizer?
    
    internal var panStartPoint: CGPoint = .zero
    internal var panStartZoom: CGFloat = 0.0
    
    // MARK: - object lifecycle
    

                focusTapGestureRecognizer.delegate = self
                focusTapGestureRecognizer.numberOfTapsRequired = 1
                gestureView.addGestureRecognizer(focusTapGestureRecognizer)
            }
        }
        
