2d66d5893c
* docs: New V3 docs for new API * fix: Prefer Wide-Angle unless explicitly opted-out * docs: Update DEVICES * Finish Devices docs * Switch links * Revert "Switch links" This reverts commit 06f196ae0e67787cbd5768e125be6d0a3cb5bbc9. * docs: New LIFECYCLE * docs: New CAPTURING docs * Update Worklets links * docs: Update TROUBLESHOOTING and ZOOMING * fix: Update `getAvailableCameraDevices()` usages * docs: Update FORMATS * Update Errors.kt * docs: Fix broken links * docs: Update references to old hooks * docs: Create Frame Processor Tips * docs: Auto-dark mode * fix: Fix FPS filter * feat: Add `'max'` flag to format filter * fix: Use loop * fix: Fix bug in `getCameraFormat` * fix: Find best aspect ratio as well * fix: Switch between formats on FPS change * Update FRAME_PROCESSOR_PLUGIN_LIST.mdx * Add FPS graph explanation * feat: Support HDR filter * docs: Add HDR docs * docs: Add Video Stabilization * docs: Update Skia docs * Skia links * Add Skia labels * Update SKIA_FRAME_PROCESSORS.mdx * docs: Add Performance * Update some wording * Update headers / and zoom * Add examples for devices * fix highlights * fix: Expose `Frame` * docs: Update FP docs * Update links * Update FRAME_PROCESSOR_CREATE_PLUGIN_IOS.mdx
85 lines
3.2 KiB
Markdown
85 lines
3.2 KiB
Markdown
<a href="https://margelo.io">
|
|
<picture>
|
|
<source media="(prefers-color-scheme: dark)" srcset="./docs/static/img/banner-dark.png" />
|
|
<source media="(prefers-color-scheme: light)" srcset="./docs/static/img/banner-light.png" />
|
|
<img alt="VisionCamera" src="./docs/static/img/banner-light.png" />
|
|
</picture>
|
|
</a>
|
|
|
|
<br />
|
|
|
|
<div>
|
|
<img align="right" width="35%" src="docs/static/img/example.png">
|
|
</div>
|
|
|
|
### Features
|
|
|
|
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](https://react-native-vision-camera.com/docs/guides/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
|
|
* ⚡ Custom C++/GPU accelerated video pipeline (OpenGL)
|
|
|
|
Install VisionCamera from npm:
|
|
|
|
```sh
|
|
yarn add react-native-vision-camera
|
|
cd ios && pod install
|
|
```
|
|
|
|
..and get started by [setting up permissions](https://react-native-vision-camera.com/docs/guides)!
|
|
|
|
### Documentation
|
|
|
|
* [Guides](https://react-native-vision-camera.com/docs/guides)
|
|
* [API](https://react-native-vision-camera.com/docs/api)
|
|
* [Example](./package/example/)
|
|
* [Frame Processor Plugins](https://react-native-vision-camera.com/docs/guides/frame-processor-plugin-list)
|
|
|
|
### V3
|
|
|
|
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](https://github.com/mrousavy/react-native-vision-camera/tree/v2), which is still partially supported.
|
|
|
|
### Example
|
|
|
|
```tsx
|
|
function App() {
|
|
const device = useCameraDevice('back')
|
|
|
|
if (device == null) return <NoCameraErrorView />
|
|
return (
|
|
<Camera
|
|
style={StyleSheet.absoluteFill}
|
|
device={device}
|
|
isActive={true}
|
|
/>
|
|
)
|
|
}
|
|
```
|
|
|
|
> See the [example](./package/example/) app
|
|
|
|
### Adopting at scale
|
|
|
|
<a href="https://github.com/sponsors/mrousavy">
|
|
<img align="right" width="160" alt="This library helped you? Consider sponsoring!" src=".github/funding-octocat.svg">
|
|
</a>
|
|
|
|
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](https://github.com/sponsors/mrousavy) and <a href="mailto:me@mrousavy.com?subject=Adopting VisionCamera at scale">contact me</a> to receive premium enterprise support, help with issues, prioritize bugfixes, request features, help at integrating VisionCamera and/or Frame Processors, and more.
|
|
|
|
### Socials
|
|
|
|
* 🐦 [**Follow me on Twitter**](https://twitter.com/mrousavy) for updates
|
|
* 📝 [**Check out my blog**](https://mrousavy.com/blog) for examples and experiments
|
|
* 💬 [**Join the Margelo Community Discord**](https://discord.gg/6CSHz2qAvA) for chatting about VisionCamera
|
|
* 💖 [**Sponsor me on GitHub**](https://github.com/sponsors/mrousavy) to support my work
|
|
* 🍪 [**Buy me a Ko-Fi**](https://ko-fi.com/mrousavy) to support my work
|