* De-allocate `frame` HybridClass with JNI class loader if using Hermes
See 1b3a0c2612
* Don't wrap in `#if FOR_HERMES`, other `jsi::Runtime`s might also run GC on another Thread.
* Use `jni::local_ref` for `FrameHostObject`
* Update JImageProxyHostObject.cpp
* Only run with JNI `ClassLoader` if ctor Thread ID != dtor Thread ID
* Upgrade reanimated to 2.3.0-beta.1 to fix JNI crash
* Remove `this_thread::get_id()`
* Update Podfile.lock

Vison Camera playground
Overview
This is a demo application featuring some of the many features of the Vision Camera:
- Photo capture
- Video capture
- Flipping device (back camera <-> front camera)
- Device filtering (ultra-wide-angle, wide-angle, telephoto, or even combined virtual multi-cameras)
- Format filtering (targeting 60 FPS, best capture size, best matching aspect ratio, etc.)
- Zooming using react-native-gesture-handler and react-native-reanimated
- Smoothly switching between constituent camera devices (see demo on my Twitter)
- HDR mode
- Night mode
- Flash for photo capture
- Flash for video capture
- Activating/Pausing the Camera but keeping it "warm"
- Using the Example Frame Processor Plugin
Get started
To try the playground out for yourself, run the following commands:
git clone https://github.com/mrousavy/react-native-vision-camera
cd react-native-vision-camera
yarn bootstrap
iOS
- Open the
example/ios/VisionCameraExample.xcworkspace
file with Xcode - Change signing configuration to your developer account
- Select your device in the devices drop-down
- Hit run
Android
- Open the
example/android/
folder with Android Studio - Select your device in the devices drop-down
- Hit run