# VisionCamera documentation Use the `.md` page endpoints for source-friendly markdown. Use `/llms-full.txt` for the full corpus. ## Guides - [Getting Started](https://visioncamera.margelo.com/docs.md): Learn how to install VisionCamera, configure and request Camera permission, and render a Camera View in your app - [Production Apps](https://visioncamera.margelo.com/docs/production-apps.md): Popular production apps using react-native-vision-camera - [VisionCamera vs Expo Camera](https://visioncamera.margelo.com/docs/visioncamera-vs-expo-camera.md): Choosing between VisionCamera and Expo Camera based on available features, platform support and native integration requirements - [VisionCamera vs Data Scanner](https://visioncamera.margelo.com/docs/visioncamera-vs-data-scanner.md): Choosing between VisionCamera and react-native-data-scanner for QR and barcode scanning - **Concepts** - [Camera Devices](https://visioncamera.margelo.com/docs/devices.md): Understanding what Camera Devices are, what capabilities they have, and how to connect them to a Camera Session - [Camera Outputs](https://visioncamera.margelo.com/docs/camera-outputs.md): Understanding what Camera Outputs are, how to configure their resolutions, and how to add them to a Camera Session - [Camera Session](https://visioncamera.margelo.com/docs/camera-session.md): Understanding what a Camera Session is and how to add stream from inputs to outputs - [Constraints API](https://visioncamera.margelo.com/docs/constraints.md): Understanding the VisionCamera Constraints API to enable Camera features like FPS, HDR and more - [Camera Controller](https://visioncamera.margelo.com/docs/camera-controller.md): Creating a Camera Controller and using it to adjust the Camera's zoom, exposure, focus, and more - **Topics** - [Tap To Focus](https://visioncamera.margelo.com/docs/tap-to-focus.md): Starting a Focus Metering Action (AE/AF/AWB) to a specific point - [Zooming](https://visioncamera.margelo.com/docs/zooming.md): Zooming in and out in the Camera and understanding virtual device switchover - [Exposure Bias](https://visioncamera.margelo.com/docs/exposure-bias.md): Adjusting Exposure in a Camera using Exposure Bias Compensation - [Low Light Boost](https://visioncamera.margelo.com/docs/low-light-boost.md): Improving exposure in dark scenes using Low Light Boost, Camera Extensions, lower FPS and binned formats - [Orientation](https://visioncamera.margelo.com/docs/orientation.md): Understanding interface-, device- and custom- Orientation in various Outputs - [Lifecycle](https://visioncamera.margelo.com/docs/lifecycle.md): Understanding a Camera Session's lifecycle, `isActive` and shutdown - [FPS](https://visioncamera.margelo.com/docs/fps.md): Adjusting Frame Rate (FPS) for Preview, Video and Frame outputs - [Location](https://visioncamera.margelo.com/docs/location.md): Adding Location tags to captured photos (EXIF) and videos (metadata) - [Coordinate Systems](https://visioncamera.margelo.com/docs/coordinate-systems.md): Understanding Camera Coordinate Systems and converting between Preview/Frame/Camera space - [Locking AE/AF/AWB](https://visioncamera.margelo.com/docs/locking-ae-af-awb.md): Manually locking Focus, Exposure and White-Balance - [Multi-Camera](https://visioncamera.margelo.com/docs/multi-camera.md): Using multiple Camera Devices in a single Camera Session - [Performance](https://visioncamera.margelo.com/docs/performance.md): Understanding what configurations affect Performance, and how to improve it - [Camera Extensions](https://visioncamera.margelo.com/docs/camera-extensions.md): Understanding what Camera Extensions are, how to enable them, and what restrictions they have - **Views** - [](https://visioncamera.margelo.com/docs/camera-view.md): Using the View - [](https://visioncamera.margelo.com/docs/skiacamera-view.md): Using the View - [](https://visioncamera.margelo.com/docs/codescanner-view.md): Using the View - [](https://visioncamera.margelo.com/docs/nativepreview-view.md): Using the View - [](https://visioncamera.margelo.com/docs/nativeframerenderer-view.md): Using the View - **Capturing Photos** - [The Photo Output](https://visioncamera.margelo.com/docs/photo-output.md): Capturing Photos using the Photo Output - [A Photo](https://visioncamera.margelo.com/docs/a-photo.md): Understanding the Photo type - [Photo Output Callbacks](https://visioncamera.margelo.com/docs/photo-output-callbacks.md): Understanding the Photo Output's callbacks and receiving Preview Images - [Photo HDR](https://visioncamera.margelo.com/docs/photo-hdr.md): Capturing Photos in High-Dynamic-Range (HDR) - [Configuring Photo Quality](https://visioncamera.margelo.com/docs/photo-quality.md): Configuring Photo quality, JPEG compression, and balancing speed over quality - [Capturing RAW Photos](https://visioncamera.margelo.com/docs/raw-photos.md): Capturing RAW Photos using Adobe DNG containers - **Capturing Videos** - [The Video Output](https://visioncamera.margelo.com/docs/video-output.md): Capturing Videos using the Video Output - [The Recorder](https://visioncamera.margelo.com/docs/recorder.md): Understanding how to use the Recorder to start, pause, resume and stop a Video Recording - [Video HDR](https://visioncamera.margelo.com/docs/video-hdr.md): Capturing Videos in High-Dynamic-Range (HDR) with HLG/HDR encodings and 10-bit - [Video Stabilization](https://visioncamera.margelo.com/docs/video-stabilization.md): Understanding Video Stabilization and recording stabilized Videos - **Streaming Frames** - [The Frame Output](https://visioncamera.margelo.com/docs/frame-output.md): Streaming Frames using the Frame Output (formerly known as Frame Processors) - [A Frame](https://visioncamera.margelo.com/docs/a-frame.md): Understanding the Frame type - [Pixel Formats Map](https://visioncamera.margelo.com/docs/pixel-formats-map.md): Mapping VisionCamera PixelFormats to native iOS/Android Pixel Formats - [Resizing/Converting Frames](https://visioncamera.margelo.com/docs/resizer.md): Efficiently resizing Frames and converting to RGB-based pixel formats, layouts and data types on the GPU. - [Async Frame Processing](https://visioncamera.margelo.com/docs/async-frame-processing.md): Processing Frames asynchronously, freeing up work from the main Camera pipeline - [Native Frame Processor Plugins](https://visioncamera.margelo.com/docs/native-frame-processor-plugins.md): Understanding Native Frame Processor Plugins, using them and building them using Swift/Kotlin - [Skia Frame Processors](https://visioncamera.margelo.com/docs/skia-frame-processors.md): Using the Skia Frame Processor integration to render Frames on the GPU - [A Frame's NativeBuffer](https://visioncamera.margelo.com/docs/a-frames-nativebuffer.md): Understanding a Frame's NativeBuffer and using it with third-party APIs - **Barcode Scanning** - [The Barcode Scanner](https://visioncamera.margelo.com/docs/barcode-scanner.md): Using the Barcode Scanner view, output or plugin to detect Barcodes and QR codes - [A Barcode](https://visioncamera.margelo.com/docs/a-barcode.md): Understanding a Barcode object and decoding its value and position - [Barcode Scanner vs Object Output](https://visioncamera.margelo.com/docs/barcode-scanner-vs-object-output.md): Understanding the differences between the Barcode Scanner (cross-platform, MLKit) and the Object Output (iOS only, native) - **Scanning Objects** - [The Object Output](https://visioncamera.margelo.com/docs/object-output.md): Scanning Objects using the Object Output - [A ScannedObject](https://visioncamera.margelo.com/docs/a-scannedobject.md): Understanding the ScannedObject type - **Streaming Depth** - [The Depth Output](https://visioncamera.margelo.com/docs/depth-output.md): Streaming Depth frames using the Depth Frame Output - [A Depth Frame](https://visioncamera.margelo.com/docs/a-depth-frame.md): Understanding the Depth type - **Streaming Preview** - [The Preview Output](https://visioncamera.margelo.com/docs/preview-output.md): Streaming a Camera feed into a Preview - [Snapshot Capture](https://visioncamera.margelo.com/docs/snapshot-capture.md): Capturing Snapshots in a Preview with zero-latency - **Extending VisionCamera in third-party code** - [Implementing a custom native CameraOutput](https://visioncamera.margelo.com/docs/custom-native-camera-outputs.md): Custom Swift/Kotlin CameraOutputs can be implemented in third-party code, and added to a CameraSession like any other output ## API Reference - [API Reference](https://visioncamera.margelo.com/api.md) - react-native-vision-camera - [react-native-vision-camera](https://visioncamera.margelo.com/api/react-native-vision-camera.md) - HybridObjects - [CameraCalibrationData](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/CameraCalibrationData.md): Camera Calibration Data is per-frame data used to counter-apply any transformations applied by the Camera/ISP. - [CameraController](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/CameraController.md): A CameraController allows controlling an opened Camera. - [CameraDevice](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/CameraDevice.md): The CameraDevice represents a physical- or virtual Camera Device. - [CameraDeviceFactory](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/CameraDeviceFactory.md): The CameraDeviceFactory allows getting CameraDevices, listening to device changes, and querying extensions or preferred Cameras. - [CameraExtension](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/CameraExtension.md): A Camera Extension is a vendor-specific implementation of a private reprocessing pipeline, at ISP level. - [CameraFactory](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/CameraFactory.md): The CameraFactory allows creating various other Camera related objects with arguments. - CameraOutput - [CameraOutput](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/CameraOutput.md): A CameraOutput is the base-class of all outputs that can be connected to the CameraSession. - [CameraDepthFrameOutput](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/CameraDepthFrameOutput.md): The CameraDepthFrameOutput allows synchronously streaming Depth Frames from the Camera, aka "Depth Frame Processing". - [CameraFrameOutput](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/CameraFrameOutput.md): The CameraFrameOutput allows synchronously streaming Frames from the Camera, aka "Frame Processing". - [CameraObjectOutput](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/CameraObjectOutput.md): The CameraObjectOutput allows scanning various objects (ScannedObject), faces (ScannedFace), or machine-readable codes (ScannedCode) in the Camera, using a platform-native detection algorithm. - [CameraPhotoOutput](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/CameraPhotoOutput.md): The CameraPhotoOutput allows capturing Photos in-memory, as well as directly to a file. - [CameraPreviewOutput](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/CameraPreviewOutput.md): Represents the CameraOutput for preview. - [CameraVideoOutput](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/CameraVideoOutput.md): A Video output allows recording videos (possibly with audio) to a file. - [CameraOutputSynchronizer](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/CameraOutputSynchronizer.md): A CameraOutputSynchronizer synchronizes 2 or more CameraOutputs to align their timestamps. - [CameraSession](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/CameraSession.md): Represents a Camera Session. - [CameraSessionConfig](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/CameraSessionConfig.md): Session-level configuration for a CameraSession. - [Depth](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/Depth.md): A Depth Frame is a frame captured from a CameraDepthFrameOutput. - [Frame](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/Frame.md): Represents a single Frame the Camera "sees". - [FrameConverter](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/FrameConverter.md): The FrameConverter can convert Frames and Depth to Images. - [FramePlane](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/FramePlane.md): Represents a single Plane of a **planar** Frame. - [FrameRenderer](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/FrameRenderer.md): A FrameRenderer is an object that can render Frames into a given target. - GestureController - [GestureController](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/GestureController.md): A GestureController is a controller that can control a CameraController's property via a user gesture. - [TapToFocusGestureController](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/TapToFocusGestureController.md): A TapToFocusGestureController is a GestureController that can trigger a CameraController's focusTo(...) action via a native tap to focus gesture. - [ZoomGestureController](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/ZoomGestureController.md): A ZoomGestureController is a GestureController that can modify a CameraController's zoom via a native pinch-to-zoom gesture. - [Location](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/Location.md): Represents the physical Location, in real world coordinates (latitude, longitude). - [MeteringPoint](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/MeteringPoint.md): Represents a point that can be used for focusing AE/AF/AWB on the Camera via CameraController. - [NativeThread](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/NativeThread.md): Represents a native "Thread". - [NativeThreadFactory](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/NativeThreadFactory.md): A factory for creating NativeThreads. - [OrientationManager](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/OrientationManager.md): The OrientationManager allows listening to CameraOrientation changes, like device- or interface- orientation. - [Photo](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/Photo.md): Represents a captured Photo in-memory. - [Recorder](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/Recorder.md): Represents an instance that can record videos to a file. - ScannedObject - [ScannedObject](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/ScannedObject.md): Represents any kind of scanned object. - [ScannedCode](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/ScannedCode.md): Represents a machine-readable code, such as a QR code. - [ScannedFace](https://visioncamera.margelo.com/api/react-native-vision-camera/hybrid-objects/ScannedFace.md): Represents a Face. - Views - [Camera](https://visioncamera.margelo.com/api/react-native-vision-camera/views/Camera.md): The `` component. - [NativeFrameRendererView](https://visioncamera.margelo.com/api/react-native-vision-camera/views/NativeFrameRendererView.md): The `` component. - [NativePreviewView](https://visioncamera.margelo.com/api/react-native-vision-camera/views/NativePreviewView.md): The `` component. - Functions - [addOnCameraDevicesChangedListener](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/addOnCameraDevicesChangedListener.md): Adds a listener that gets called whenever the list of available CameraDevices changes - for example when a USB Camera is plugged in or out. - [getAllCameraDevices](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/getAllCameraDevices.md): Returns all CameraDevices currently available on this phone. - [getCameraDevice](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/getCameraDevice.md): Get the best matching Camera device that best satisfies your requirements using a sorting filter, or `undefined` if not Cameras are available on this platform. - [getDefaultCameraDevice](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/getDefaultCameraDevice.md): Returns the default CameraDevice for the given CameraPosition. - [getSupportedExtensions](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/getSupportedExtensions.md): Returns all CameraExtensions supported by the given CameraDevice. - [getUIRotation](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/getUIRotation.md): Gets the signed rotation needed to keep UI elements upright relative to the Camera output orientation. - [isScannedCode](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/isScannedCode.md): Returns `true` if the given ScannedObject is a ScannedCode - a subclass of ScannedObject that provides a machine readable code with corner points. - [isScannedFace](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/isScannedFace.md): Returns `true` if the given ScannedObject is a ScannedFace - a subclass of ScannedObject that provides face metadata. - [useAsyncRunner](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/useAsyncRunner.md): Use an AsyncRunner. - [useCamera](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/useCamera.md): Use the Camera. - [useCameraDevice](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/useCameraDevice.md): Get the best matching Camera device that best satisfies your requirements using a sorting filter, or a default Camera device at the given position if no filter was passed. - [useCameraDeviceExtensions](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/useCameraDeviceExtensions.md): Get a list of all available CameraExtensions for this specific CameraDevice. - [useCameraDevices](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/useCameraDevices.md): Get a list of all CameraDevices. - [useCameraPermission](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/useCameraPermission.md): Use the Camera Permission. - [useDepthOutput](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/useDepthOutput.md): Use a CameraDepthFrameOutput for streaming Depth Frames. - [useFrameOutput](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/useFrameOutput.md): Use a CameraFrameOutput. - [useFrameRenderer](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/useFrameRenderer.md): Use a FrameRenderer. - [useMicrophonePermission](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/useMicrophonePermission.md): Use the Microphone Permission. - [useObjectOutput](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/useObjectOutput.md): Use a CameraObjectOutput. - [useOrientation](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/useOrientation.md): Reactively use the current source CameraOrientation. - [usePhotoOutput](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/usePhotoOutput.md): Use a CameraPhotoOutput for capturing Photos. - [usePreviewOutput](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/usePreviewOutput.md): Use a CameraPreviewOutput for rendering the Camera's live preview on screen. - [useVideoOutput](https://visioncamera.margelo.com/api/react-native-vision-camera/functions/useVideoOutput.md): Use a CameraVideoOutput for recording videos. - Interfaces - [AsyncRunner](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/AsyncRunner.md): An AsyncRunner can be used to asynchronously run code in a Frame Processor on a separate, non-blocking Thread. - [BinnedConstraint](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/BinnedConstraint.md): A constraint to prefer a binned format, or prefer a non-binned format. - [BoundingBox](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/BoundingBox.md): Represents the bounding box around a ScannedObject, in camera-space coordinates (`0.0` ... - [CameraControllerConfiguration](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/CameraControllerConfiguration.md): Specifies options to use for configuring a CameraController via configure(...). - [CameraOutputConfiguration](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/CameraOutputConfiguration.md): Specifies options for an output in a CameraSessionConnection used in CameraSession.configure(...). - [CameraProps](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/CameraProps.md): Configuration for a CameraSession. - [CameraRef](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/CameraRef.md): A React-ref to the Camera view. - [CameraSessionConfiguration](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/CameraSessionConfiguration.md): Configuration for a CameraSession. - [CameraSessionConnection](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/CameraSessionConnection.md): Specifies a single Camera input stream connection streaming into zero or more outputs. - [CameraViewProps](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/CameraViewProps.md): Props for the Camera component. - [CapturePhotoCallbacks](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/CapturePhotoCallbacks.md): Callbacks for a capturePhoto(...) call. - [CapturePhotoSettings](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/CapturePhotoSettings.md): Configuration options for a capturePhoto(...) call. - [DepthFrameOutputOptions](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/DepthFrameOutputOptions.md): Configuration options for a CameraDepthFrameOutput. - [DeviceFilter](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/DeviceFilter.md) - [DynamicRange](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/DynamicRange.md): Represents a Dynamic Range, often used for recording HDR videos using a CameraVideoOutput. - [FocusOptions](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/FocusOptions.md): Options for a focus metering operation via CameraController.focusTo(...) - [FPSConstraint](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/FPSConstraint.md): A constraint to set a given FPS `number` for any Video, Frame or Preview Streams (e.g. - [FrameOutputOptions](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/FrameOutputOptions.md): Configuration options for a CameraFrameOutput. - [FrameRendererViewMethods](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/FrameRendererViewMethods.md) - [FrameRendererViewProps](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/FrameRendererViewProps.md) - [ListenerSubscription](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/ListenerSubscription.md): Represents a subscription to any kind of listener. - [NativeBuffer](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/NativeBuffer.md): An unmanaged memory pointer to a native platform buffer. - [ObjectOutputOptions](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/ObjectOutputOptions.md): Options for the CameraObjectOutput. - [PermissionState](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/PermissionState.md): The state of a Camera or Microphone permission, as returned by useCameraPermission or useMicrophonePermission. - [PhotoFile](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/PhotoFile.md): Represents a Photo captured by capturePhotoToFile(...) and written to a File. - [PhotoHDRConstraint](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/PhotoHDRConstraint.md): A constraint to set Photo HDR for Photo Outputs (e.g. - [PhotoOutputOptions](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/PhotoOutputOptions.md): Configuration options for a CameraPhotoOutput. - [PixelFormatConstraint](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/PixelFormatConstraint.md): A constraint to prefer a streaming Format with the given target PixelFormat. - [Point](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/Point.md): Represents a Point in the current context's coordinate system. - [PreviewStabilizationModeConstraint](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/PreviewStabilizationModeConstraint.md): A constraint to set a TargetStabilizationMode for Preview Streams (e.g. - [PreviewViewMethods](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/PreviewViewMethods.md) - [PreviewViewProps](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/PreviewViewProps.md) - [Range](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/Range.md): Represents a numeric range with a minimum and maximum value, inclusive on both ends. - [RecorderSettings](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/RecorderSettings.md): Video Recorder settings for a Recorder created by a CameraVideoOutput. - [ResolutionBiasConstraint](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/ResolutionBiasConstraint.md): A constraint to bias the resolution of the given CameraOutput over other constraints. - [RuntimeThread](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/RuntimeThread.md): An implementation for a separate Runtime/Thread. - [RuntimeThreadProvider](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/RuntimeThreadProvider.md): Provides an implementation for a separate Runtime/Thread. - [Size](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/Size.md): Represents a 2D size in pixels. - [TargetDynamicRange](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/TargetDynamicRange.md): Represents a target DynamicRange, for example to be used with the Constraints API. - [UseDepthOutputProps](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/UseDepthOutputProps.md) - [UseFrameOutputProps](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/UseFrameOutputProps.md) - [UseObjectOutputProps](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/UseObjectOutputProps.md) - [VideoDynamicRangeConstraint](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/VideoDynamicRangeConstraint.md): A constraint to set TargetDynamicRange for Video Streams (e.g. - [VideoOutputOptions](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/VideoOutputOptions.md): Configuration options for a CameraVideoOutput. - [VideoOutputSettings](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/VideoOutputSettings.md): Output settings for a CameraVideoOutput. - [VideoStabilizationModeConstraint](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/VideoStabilizationModeConstraint.md): A constraint to set a TargetStabilizationMode for Video Streams (e.g. - [WhiteBalanceGains](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/WhiteBalanceGains.md): Represents the per-channel gains applied for white balance correction. - [WhiteBalanceTemperatureAndTint](https://visioncamera.margelo.com/api/react-native-vision-camera/interfaces/WhiteBalanceTemperatureAndTint.md): Represents a white balance setting expressed as a color temperature and tint offset. - Type aliases - [AutoFocusSystem](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/AutoFocusSystem.md): Represents the auto-focus algorithm used by the CameraDevice, either while continuously keeping a scene in focus (via auto-3A / AE/AF/AWB), or for a metering action via CameraController.focusTo(...). - [AuxilaryDepthType](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/AuxilaryDepthType.md) - [CameraDeviceOrPosition](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/CameraDeviceOrPosition.md) - [CameraExtensionType](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/CameraExtensionType.md): Represents the type of the CameraExtension. - [CameraOrientation](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/CameraOrientation.md): Represents the orientation, relative to a base anchor. - [CameraPosition](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/CameraPosition.md): Represents the physical position of a CameraDevice on the device. - [ColorRange](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/ColorRange.md): Represents the range of YUV color components. - [ColorSpace](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/ColorSpace.md) - [Constraint](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/Constraint.md): Constraints are session configuration options that are negotiated by the CameraSession to find a closest-matching working Camera configuration. - [DepthDataAccuracy](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/DepthDataAccuracy.md) - [DepthDataQuality](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/DepthDataQuality.md) - [DepthPixelFormat](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/DepthPixelFormat.md): Represents the pixel format of a depth image buffer. - [DeviceType](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/DeviceType.md): Represents the type of a physical or logical Camera lens on the CameraDevice. - [DynamicRangeBitDepth](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/DynamicRangeBitDepth.md): Represents the bit-depth of a DynamicRange. - [ExposureMode](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/ExposureMode.md): Represents the exposure mode of a CameraDevice. - [FlashMode](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/FlashMode.md): Configures flash for photo capture. - [FocusMode](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/FocusMode.md): Represents the focus mode of a CameraDevice. - [FocusResponsiveness](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/FocusResponsiveness.md): Configures the responsiveness of a AE/AF/AWB focus operation. - [FrameDroppedReason](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/FrameDroppedReason.md): Represents the reason why a Frame was dropped by the Camera pipeline. - [FrameRendererView](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/FrameRendererView.md): The FrameRendererView Hybrid View. - [InterruptionReason](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/InterruptionReason.md) - [MediaType](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/MediaType.md): Represents the type of a media sample. - [MeteringMode](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/MeteringMode.md): Specifies the metering mode, also known as the 3A operation. - [MirrorMode](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/MirrorMode.md): Represents the target mirroring setting for a Camera Output. - [OrientationSource](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/OrientationSource.md): Represents the source of a CameraOrientation. - [OutputStreamType](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/OutputStreamType.md): Represents the type of an output stream, often related to CameraOutput. - [PermissionStatus](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/PermissionStatus.md): Represents the status of a Permission - e.g. - [PhotoContainerFormat](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/PhotoContainerFormat.md): Represents the container format of a captured Photo. - [PhysicalDeviceType](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/PhysicalDeviceType.md) - [PixelFormat](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/PixelFormat.md): Represents any kind of pixel format for a media sample. - [PreviewImplementationMode](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/PreviewImplementationMode.md): Represents the implementation mode for the PreviewView's surface on Android. - [PreviewResizeMode](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/PreviewResizeMode.md): Represents the resize mode for the PreviewView. - [PreviewView](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/PreviewView.md): The PreviewView Hybrid View. - [QualityPrioritization](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/QualityPrioritization.md): Specifies the prioritization between speed and quality for photo capture. - [RecorderFileType](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/RecorderFileType.md): Container file type for a CameraVideoOutput's recordings. - [RecordingFinishedReason](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/RecordingFinishedReason.md): Describes why a Recorder's recording finished, and was delivered to the `onRecordingFinished` callback passed to Recorder.startRecording(...). - [ScannedObjectType](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/ScannedObjectType.md): Represents the type of a ScannedObject. - [SceneAdaptiveness](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/SceneAdaptiveness.md): Configures the adaptiveness of the AE/AF/AWB pipeline after a metering operation has settled. - [StabilizationMode](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/StabilizationMode.md): Specifies the stabilization algorithm/mode to use. - [TargetCameraPosition](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/TargetCameraPosition.md): Represents the target physical position of a CameraDevice on the device. - [TargetColorRange](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/TargetColorRange.md) - [TargetColorSpace](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/TargetColorSpace.md) - [TargetDynamicRangeBitDepth](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/TargetDynamicRangeBitDepth.md) - [TargetPhotoContainerFormat](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/TargetPhotoContainerFormat.md): Represents a PhotoContainerFormat that can be used to capture Photos in. - [TargetStabilizationMode](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/TargetStabilizationMode.md): Specifies a target StabilizationMode. - [TargetVideoPixelFormat](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/TargetVideoPixelFormat.md): Represents a desired pixel format for a video pipeline. - [TorchMode](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/TorchMode.md): Represents the setting for the device's torch. - [VideoCodec](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/VideoCodec.md): Represents a video codec for encoded video data. - [VideoPixelFormat](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/VideoPixelFormat.md): Represents the pixel format of a video image buffer. - [WhiteBalanceMode](https://visioncamera.margelo.com/api/react-native-vision-camera/type-aliases/WhiteBalanceMode.md): Represents the white balance mode of a CameraDevice. - Variables - [CommonDynamicRanges](https://visioncamera.margelo.com/api/react-native-vision-camera/variables/CommonDynamicRanges.md): Common Dynamic Ranges for the Camera. - [CommonResolutions](https://visioncamera.margelo.com/api/react-native-vision-camera/variables/CommonResolutions.md): Common camera-centric resolution targets. - [HybridFrameConverter](https://visioncamera.margelo.com/api/react-native-vision-camera/variables/HybridFrameConverter.md): The HybridFrameConverter can be used to convert Frames and Depth frames to Images. - [VisionCamera](https://visioncamera.margelo.com/api/react-native-vision-camera/variables/VisionCamera.md): The native VisionCamera module. - react-native-vision-camera-barcode-scanner - [react-native-vision-camera-barcode-scanner](https://visioncamera.margelo.com/api/react-native-vision-camera-barcode-scanner.md) - HybridObjects - [Barcode](https://visioncamera.margelo.com/api/react-native-vision-camera-barcode-scanner/hybrid-objects/Barcode.md): Represents a single detected Barcode. - [BarcodeScanner](https://visioncamera.margelo.com/api/react-native-vision-camera-barcode-scanner/hybrid-objects/BarcodeScanner.md): Represents a Barcode Scanner that uses MLKit Barcodes. - [BarcodeScannerFactory](https://visioncamera.margelo.com/api/react-native-vision-camera-barcode-scanner/hybrid-objects/BarcodeScannerFactory.md) - Views - [CodeScanner](https://visioncamera.margelo.com/api/react-native-vision-camera-barcode-scanner/views/CodeScanner.md): A view that detects Barcodes in a Camera using the default rear CameraDevice. - Functions - [createBarcodeScanner](https://visioncamera.margelo.com/api/react-native-vision-camera-barcode-scanner/functions/createBarcodeScanner.md): Create a new BarcodeScanner. - [createBarcodeScannerOutput](https://visioncamera.margelo.com/api/react-native-vision-camera-barcode-scanner/functions/createBarcodeScannerOutput.md): Create a new Barcode Scanner CameraOutput. - [useBarcodeScanner](https://visioncamera.margelo.com/api/react-native-vision-camera-barcode-scanner/functions/useBarcodeScanner.md): Use a BarcodeScanner. - [useBarcodeScannerOutput](https://visioncamera.margelo.com/api/react-native-vision-camera-barcode-scanner/functions/useBarcodeScannerOutput.md): Use a Barcode Scanner CameraOutput. - Interfaces - [BarcodeScannerOptions](https://visioncamera.margelo.com/api/react-native-vision-camera-barcode-scanner/interfaces/BarcodeScannerOptions.md) - [BarcodeScannerOutputOptions](https://visioncamera.margelo.com/api/react-native-vision-camera-barcode-scanner/interfaces/BarcodeScannerOutputOptions.md) - [CodeScannerOptions](https://visioncamera.margelo.com/api/react-native-vision-camera-barcode-scanner/interfaces/CodeScannerOptions.md) - [Point](https://visioncamera.margelo.com/api/react-native-vision-camera-barcode-scanner/interfaces/Point.md): Represents a Point in the current context's coordinate system. - [Rect](https://visioncamera.margelo.com/api/react-native-vision-camera-barcode-scanner/interfaces/Rect.md): Represents a Rectangle in the current context's coordinate system. - Type aliases - [BarcodeFormat](https://visioncamera.margelo.com/api/react-native-vision-camera-barcode-scanner/type-aliases/BarcodeFormat.md): Represents a detected Barcode's format, or `'unknown'` if the format of a scanned Barcode could not be determined. - [BarcodeScannerOutputResolution](https://visioncamera.margelo.com/api/react-native-vision-camera-barcode-scanner/type-aliases/BarcodeScannerOutputResolution.md): Controls the camera buffer resolution used for barcode scanning. - [BarcodeValueType](https://visioncamera.margelo.com/api/react-native-vision-camera-barcode-scanner/type-aliases/BarcodeValueType.md): Represents the semantic type of data encoded in a Barcode - e.g. - [TargetBarcodeFormat](https://visioncamera.margelo.com/api/react-native-vision-camera-barcode-scanner/type-aliases/TargetBarcodeFormat.md): Represents a target BarcodeFormat that the BarcodeScanner can be configured to scan for, or `'all-formats'` to scan for every supported format. - react-native-vision-camera-location - [react-native-vision-camera-location](https://visioncamera.margelo.com/api/react-native-vision-camera-location.md) - HybridObjects - [LocationManager](https://visioncamera.margelo.com/api/react-native-vision-camera-location/hybrid-objects/LocationManager.md): Streams device location updates and exposes the last known Location. - [LocationManagerFactory](https://visioncamera.margelo.com/api/react-native-vision-camera-location/hybrid-objects/LocationManagerFactory.md) - Functions - [createLocation](https://visioncamera.margelo.com/api/react-native-vision-camera-location/functions/createLocation.md): Creates a new fake Location. - [createLocationManager](https://visioncamera.margelo.com/api/react-native-vision-camera-location/functions/createLocationManager.md): Create a new LocationManager with the given LocationManagerOptions - [useLocation](https://visioncamera.margelo.com/api/react-native-vision-camera-location/functions/useLocation.md): Reactively use the current user Location. - [useLocationManager](https://visioncamera.margelo.com/api/react-native-vision-camera-location/functions/useLocationManager.md): Use a stable LocationManager with the given LocationManagerOptions. - Interfaces - [ListenerSubscription](https://visioncamera.margelo.com/api/react-native-vision-camera-location/interfaces/ListenerSubscription.md): Represents a subscription to any kind of listener. - [LocationManagerOptions](https://visioncamera.margelo.com/api/react-native-vision-camera-location/interfaces/LocationManagerOptions.md) - [LocationState](https://visioncamera.margelo.com/api/react-native-vision-camera-location/interfaces/LocationState.md): The current state of the useLocation hook. - Type aliases - [LocationAccuracy](https://visioncamera.margelo.com/api/react-native-vision-camera-location/type-aliases/LocationAccuracy.md): The accuracy of a Location. - react-native-vision-camera-resizer - [react-native-vision-camera-resizer](https://visioncamera.margelo.com/api/react-native-vision-camera-resizer.md) - HybridObjects - [GPUFrame](https://visioncamera.margelo.com/api/react-native-vision-camera-resizer/hybrid-objects/GPUFrame.md): A GPUFrame represents a texture on the GPU, often the result of a Frame that has been resized with the Resizer. - [Resizer](https://visioncamera.margelo.com/api/react-native-vision-camera-resizer/hybrid-objects/Resizer.md): Represents a GPU-accelerated Frame resizer and converter. - [ResizerFactory](https://visioncamera.margelo.com/api/react-native-vision-camera-resizer/hybrid-objects/ResizerFactory.md): The ResizerFactory creates instances of a Resizer. - Functions - [createResizer](https://visioncamera.margelo.com/api/react-native-vision-camera-resizer/functions/createResizer.md): Create a new Resizer with the given ResizerOptions - [isResizerAvailable](https://visioncamera.margelo.com/api/react-native-vision-camera-resizer/functions/isResizerAvailable.md): Returns whether the GPU-accelerated Resizer pipeline is available on this device. - [useResizer](https://visioncamera.margelo.com/api/react-native-vision-camera-resizer/functions/useResizer.md): Use a Resizer with the given options. - Interfaces - [ResizerOptions](https://visioncamera.margelo.com/api/react-native-vision-camera-resizer/interfaces/ResizerOptions.md): Configures options for a Resizer. - Type aliases - [ChannelOrder](https://visioncamera.margelo.com/api/react-native-vision-camera-resizer/type-aliases/ChannelOrder.md): Represents how the three output channels are ordered in memory. - [DataType](https://visioncamera.margelo.com/api/react-native-vision-camera-resizer/type-aliases/DataType.md): Represents the scalar encoding used for each output channel. - [PixelLayout](https://visioncamera.margelo.com/api/react-native-vision-camera-resizer/type-aliases/PixelLayout.md): Represents how the individual channels per pixel are arranged in memory. - [ResizerState](https://visioncamera.margelo.com/api/react-native-vision-camera-resizer/type-aliases/ResizerState.md): The current state of the useResizer hook. - [ScaleMode](https://visioncamera.margelo.com/api/react-native-vision-camera-resizer/type-aliases/ScaleMode.md): The mode tells the GPU resize pipeline how to map the input image into the output bounds when the aspect ratio doesn't match. - react-native-vision-camera-skia - [react-native-vision-camera-skia](https://visioncamera.margelo.com/api/react-native-vision-camera-skia.md) - Views - [SkiaCamera](https://visioncamera.margelo.com/api/react-native-vision-camera-skia/views/SkiaCamera.md): Represents a Camera view component that uses [Skia](https://github.com/Shopify/react-native-skia) for rendering. - Interfaces - [SkiaCameraProps](https://visioncamera.margelo.com/api/react-native-vision-camera-skia/interfaces/SkiaCameraProps.md): Represents props for a SkiaCamera. - [SkiaCameraRef](https://visioncamera.margelo.com/api/react-native-vision-camera-skia/interfaces/SkiaCameraRef.md): A reference to a SkiaCamera. - [SkiaOnFrameState](https://visioncamera.margelo.com/api/react-native-vision-camera-skia/interfaces/SkiaOnFrameState.md): Represents the state for rendering a Frame. - react-native-vision-camera-worklets - [react-native-vision-camera-worklets](https://visioncamera.margelo.com/api/react-native-vision-camera-worklets.md) - HybridObjects - [WorkletQueueFactory](https://visioncamera.margelo.com/api/react-native-vision-camera-worklets/hybrid-objects/WorkletQueueFactory.md): The WorkletQueueFactory allows creating WorkletQueues from NativeThreads. - Functions - [createAsyncRunner](https://visioncamera.margelo.com/api/react-native-vision-camera-worklets/functions/createAsyncRunner.md): Creates a new AsyncRunner backed by a dedicated NativeThread. - [createRuntimeThreadProvider](https://visioncamera.margelo.com/api/react-native-vision-camera-worklets/functions/createRuntimeThreadProvider.md): Creates the default RuntimeThreadProvider implementation that bridges `react-native-vision-camera` with [react-native-worklets](https://docs.swmansion.com/react-native-worklets/docs/). - [createWorkletRuntimeForThread](https://visioncamera.margelo.com/api/react-native-vision-camera-worklets/functions/createWorkletRuntimeForThread.md): Creates a new `WorkletRuntime` that schedules its work on the given NativeThread. - [getCurrentThreadMarker](https://visioncamera.margelo.com/api/react-native-vision-camera-worklets/functions/getCurrentThreadMarker.md): Returns a unique identifier for the thread this function is currently running on. - Type aliases - [WorkletQueue](https://visioncamera.margelo.com/api/react-native-vision-camera-worklets/type-aliases/WorkletQueue.md)