   }
 
 }
+

  @objc private func updateDisplayLink() {

    frameQueue.async { [weak self] in
      
      if self?.writer.status == .unknown { return }
      if self?.writer.status == .failed { return }
      guard let input = self?.videoInput, input.isReadyForMoreMediaData else { return }

  private var finishedCompletionHandler: ((_ url: URL) -> Void)? = nil

  @available(iOS 11.0, *)
  public convenience init(withARSCNView view: ARSCNView, options: Options = .`default`) throws {
    try self.init(scene: view, options: options)
  }

  public init(scene: SCNView, options: Options = .`default`) throws {

    self.sceneView = scene

