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!)
- An in-memory Photo type for even faster capture (convertable entirely in-memory to a react-native-nitro-image type)
- ๐ Native support for Coordinate System conversions (e.g.
Frame-> Preview coordinates, orBarcode-> 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
Frameagain
- ๐จ 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.