VisionCamera is a powerful and fast Camera component for React Native. It features:
- 📸 Photo and Video capture
- 📱 Customizable devices and multi-cameras ("fish-eye" zoom)
- 🎞️ Customizable resolutions and aspect-ratios (4k/8k images)
- ⏱️ Customizable FPS (30..240 FPS)
- 🧩 Frame Processors (JS worklets to run QR-Code scanning, facial recognition, AI object detection, realtime video chats, ...)
- 🔍 Smooth zooming (Reanimated)
- ⏯️ Fast pause and resume
- 🌓 HDR & Night modes
- ⚡ Highly efficient C++/GPU buffers
Install VisionCamera from npm:
yarn add react-native-vision-camera
cd ios && pod install
..and get started by setting up permissions!
You're looking at the V3 version of VisionCamera, which features a full rewrite on the Android codebase and a huge refactor on the iOS codebase. If you encounter issues on V3, you can also downgrade to V2, which is still partially supported.
function App() {
const devices = useCameraDevices('wide-angle-camera')
const device = devices.back
if (device == null) return <LoadingView />
return (
<Camera
style={StyleSheet.absoluteFill}
device={device}
isActive={true}
/>
)
}
See the example app
VisionCamera is provided as is, I work on it in my free time.
If you're integrating VisionCamera in a production app, consider funding this project and contact me to receive premium enterprise support, help with issues, prioritize bugfixes, request features, help at integrating VisionCamera and/or Frame Processors, and more.
- 🐦 Follow me on Twitter for updates
- 📝 Check out my blog for examples and experiments
- 💬 Join the Margelo Community Discord for chatting about VisionCamera
- 💖 Sponsor me on GitHub to support my work
- 🍪 Buy me a Ko-Fi to support my work