Skip to main content

VisionCamera V5

VisionCamera V5 is the next major milestone for react-native-vision-camera. It is rewritten from the ground up using Nitro Modules, and offers both a declarative API as well as an imperative API for maximum control.

Some new features;

  • โšก๏ธ Faster performance (thanks to Nitro!)
  • ๐Ÿ“ Native support for Coordinate System conversions (e.g. Frame -> Preview coordinates, or Barcode -> Preview - including Skia Preview!)
  • ๐Ÿ—๏ธ Improved Frame Processor architecture
    • Native Frame Processor Plugins are now just Nitro Modules, as those work on every Worklet Runtime out-of-the-box
    • Native Frame Processor Plugins are now more powerful, allowing extra typed parameters, return values, and can even return a Frame again
  • ๐ŸŽจ New Skia Frame Processors (with react-native-worklets and Reanimated SharedValue support)
    • Focus support thanks to new coordinate system foundation
  • โš™๏ธ Full manual Focus/Exposure/White-Balance controls
  • ๐ŸŽž๏ธ Multi-Camera sessions (front and back Camera at the same time)
  • ๐ŸŒŠ Depth Data Streaming (and Frame + Depth Output Synchronization!)
  • ๐Ÿงช Barcode Scanner is now unified - Android uses MLKit, iOS uses either native Object Output or MLKit too (new!)
    • It can scan using a declarative output, or the imperative Frame Processor Plugin

V5 is currently sponsor-only, meaning if you ๐Ÿ’– sponsor me on GitHub ($20+) ๐Ÿ’– you get access to the private repo. You'll be able to test it early, and provide feedback or feature requests via GitHub issues in the new private repository.