func showCamera() {
   let previewLayer = cameraView.view.layer as? AVCaptureVideoPreviewLayer
   previewLayer?.session = viewData.captureSession

   if let device = viewData.captureDevice, let preview = previewLayer {
      viewData.rotationCoordinator = AVCaptureDevice.RotationCoordinator(device: device, previewLayer: preview)
      preview.connection?.videoRotationAngle = viewData.rotationCoordinator!.videoRotationAngleForHorizonLevelPreview
         
      nonisolated(unsafe) let preview = preview
      viewData.previewObservation = viewData.rotationCoordinator!.observe(\.videoRotationAngleForHorizonLevelPreview, changeHandler: { old, value in
         Task{ @MainActor in
            preview.connection?.videoRotationAngle = self.viewData.rotationCoordinator!.videoRotationAngleForHorizonLevelPreview
         }
      })
   }
   Task.detached {
      await self.viewData.captureSession?.startRunning()
   }
}