Marc Rousavy
87e6bb710e
feat: Frame Processors for Android ( #196 )
...
* Create android gradle build setup
* Fix `prefab` config
* Add `pickFirst **/*.so` to example build.gradle
* fix REA path
* cache gradle builds
* Update validate-android.yml
* Create Native Proxy
* Copy REA header
* implement ctor
* Rename CameraViewModule -> FrameProcessorRuntimeManager
* init FrameProcessorRuntimeManager
* fix name
* Update FrameProcessorRuntimeManager.h
* format
* Create AndroidErrorHandler.h
* Initialize runtime and install JSI funcs
* Update FrameProcessorRuntimeManager.cpp
* Update CameraViewModule.kt
* Make CameraView hybrid C++ class to find view & set frame processor
* Update FrameProcessorRuntimeManager.cpp
* pass function by rvalue
* pass by const &&
* extract hermes and JSC REA
* pass `FOR_HERMES`
* correctly prepare JSC and Hermes
* Update CMakeLists.txt
* add missing hermes include
* clean up imports
* Create JImageProxy.h
* pass ImageProxy to JNI as `jobject`
* try use `JImageProxy` C++ wrapper type
* Use `local_ref<JImageProxy>`
* Create `JImageProxyHostObject` for JSI interop
* debug call to frame processor
* Unset frame processor
* Fix CameraView native part not being registered
* close image
* use `jobject` instead of `JImageProxy` for now :(
* fix hermes build error
* Set enable FP callback
* fix JNI call
* Update CameraView.cpp
* Get Format
* Create plugin abstract
* Make `FrameProcessorPlugin` a hybrid object
* Register plugin CXX
* Call `registerPlugin`
* Catch
* remove JSI
* Create sample QR code plugin
* register plugins
* Fix missing JNI binding
* Add `mHybridData`
* prefix name with two underscores (`__`)
* Update CameraPage.tsx
* wrap `ImageProxy` in host object
* Use `jobject` for HO box
* Update JImageProxy.h
* reinterpret jobject
* Try using `JImageProxy` instead of `jobject`
* Update JImageProxy.h
* get bytes per row and plane count
* Update CameraView.cpp
* Return base
* add some docs and JNI JSI conversion
* indent
* Convert JSI value to JNI jobject
* using namespace facebook
* Try using class
* Use plain old Object[]
* Try convert JNI -> JSI
* fix decl
* fix bool init
* Correctly link folly
* Update CMakeLists.txt
* Convert Map to Object
* Use folly for Map and Array
* Return `alias_ref<jobject>` instead of raw `jobject`
* fix JNI <-> JSI conversion
* Update JSIJNIConversion.cpp
* Log parameters
* fix params index offset
* add more test cases
* Update FRAME_PROCESSORS_CREATE_OVERVIEW.mdx
* fix types
* Rename to example plugin
* remove support for hashmap
* Try use HashMap iterable fbjni binding
* try using JReadableArray/JReadableMap
* Fix list return values
* Update JSIJNIConversion.cpp
* Update JSIJNIConversion.cpp
* (iOS) Rename ObjC QR Code Plugin to Example Plugin
* Rename Swift plugin QR -> Example
* Update ExamplePluginSwift.swift
* Fix Map/Dictionary logging format
* Update ExampleFrameProcessorPlugin.m
* Reconfigure session if frame processor changed
* Handle use-cases via `maxUseCasesCount`
* Don't crash app on `configureSession` error
* Document "use-cases"
* Update DEVICES.mdx
* fix merge
* Make `const &`
* iOS: Automatically enable `video` if a `frameProcessor` is set
* Update CameraView.cpp
* fix docs
* Automatically fallback to snapshot capture if `supportsParallelVideoProcessing` is false.
* Fix lookup
* Update CameraView.kt
* Implement `frameProcessorFps`
* Finalize Frame Processor Plugin Hybrid
* Update CameraViewModule.kt
* Support `flash` on `takeSnapshot()`
* Update docs
* Add docs
* Update CameraPage.tsx
* Attribute NonNull
* remove unused imports
* Add Android docs for Frame Processors
* Make JNI HashMap <-> JSI Object conversion faster
directly access `toHashMap` instead of going through java
* add todo
* Always run `prepareJSC` and `prepareHermes`
* switch jsc and hermes
* Specify ndkVersion `21.4.7075529`
* Update gradle.properties
* Update gradle.properties
* Create .aar
* Correctly prepare android package
* Update package.json
* Update package.json
* remove `prefab` build feature
* split
* Add docs for registering the FP plugin
* Add step for dep
* Update CaptureButton.tsx
* Move to `reanimated-headers/`
* Exclude reanimated-headers from cpplint
* disable `build/include_order` rule
* cpplint fixes
* perf: Make `JSIJNIConversion` a `namespace` instead of `class`
* Ignore runtime/references for `convert` funcs
* Build Android .aar in CI
* Run android build script only on `prepack`
* Update package.json
* Update package.json
* Update build-android-npm-package.sh
* Move to `yarn build`
* Also install node_modules in example step
* Update validate-android.yml
* sort imports
* fix torch
* Run ImageAnalysis on `FrameProcessorThread`
* Update Errors.kt
* Add clean android script
* Upgrade reanimated to 2.3.0-alpha.1
* Revert "Upgrade reanimated to 2.3.0-alpha.1"
This reverts commit c1d3bed5e03728d0b5e335a359524ff4f56f5035.
* ⚠️ TEMP FIX: hotfix reanimated build.gradle
* Update CameraView+TakeSnapshot.kt
* ⚠️ TEMP FIX: Disable ktlint action for now
* Update clean.sh
* Set max heap size to 4g
* rebuild lockfiles
* Update Podfile.lock
* rename
* Build lib .aar before example/
2021-06-27 12:37:54 +02:00
Marc Rousavy
9ea158ad8f
chore: Move to /mrousavy/ ( #224 )
...
* rename 1/n
* 2
* 3
* fix indent
2021-06-21 22:42:46 +02:00
Marc Rousavy
9c579c65aa
try: Improvements from WWDC 2021 1:1 workshop ( #197 )
...
* perf: Automatically determine Pixel Format depending on active format. (More efficient video recording 🚀 )
* perf: Skip `AVAssetWriter` transform by directly correctly orienting the Video Output connection
* feat: Support camera flipping while recording
* feat: Run frame processor on separate queue, avoids stutters in video recordigns
* feat: Automatically drop late frame processor frames
2021-06-11 21:06:19 +02:00
Marc Rousavy
02168e1f28
chore(deps): Use stable version of react-native-navigation
2021-06-09 14:14:40 +02:00
Marc Rousavy
68a716b506
feat: native Frame
type to provide Orientation ( #186 )
...
* Use Frame.h
* Add orientation
* Determine buffer orientation
* Replace plugins
* fix calls
* Update FRAME_PROCESSOR_CREATE_PLUGIN_IOS.mdx
* Update FRAME_PROCESSOR_CREATE_PLUGIN_IOS.mdx
* format
* Update CameraPage.tsx
* Update FRAME_PROCESSOR_CREATE_PLUGIN_IOS.mdx
* Add links to docs
* Use `.` syntax
* Make properties `readonly`
* Fix `@synthesize` backing store
2021-06-09 10:57:05 +02:00
Marc Rousavy
4038db2e28
feat: Frame Processors: Allow returning Frame
s (support for resize and other frame manipulations) ( #185 )
...
* batch
* Init Frame as box
* Use ObjC syntax
* Fix access
* Revert "Fix access"
This reverts commit 7de09e52739d4c2b53f485d5ed696f1665fa5737.
* Revert "Use ObjC syntax"
This reverts commit e33f05ae8451cc4ee24af41d14dc76a57c157554.
* Revert "Init Frame as box"
This reverts commit 5adafb6109bfbf7fddb8ddc4af7d306b7b76b476.
* use holder
* convert buffer <-> jsi object
* add docs
* add more docs
* Update JSIUtils.mm
* Update FRAME_PROCESSORS_CREATE_OVERVIEW.mdx
* Update CameraView+RecordVideo.swift
2021-06-08 14:20:07 +02:00
dependabot[bot]
1b08c0cbae
chore(deps-dev): bump typescript from 4.2.4 to 4.3.2 in /example ( #157 )
...
Bumps [typescript](https://github.com/Microsoft/TypeScript ) from 4.2.4 to 4.3.2.
- [Release notes](https://github.com/Microsoft/TypeScript/releases )
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.2.4...v4.3.2 )
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-08 14:07:03 +02:00
dependabot[bot]
8c69d902f9
chore(deps-dev): bump prettier from 2.3.0 to 2.3.1 in /example ( #170 )
...
Bumps [prettier](https://github.com/prettier/prettier ) from 2.3.0 to 2.3.1.
- [Release notes](https://github.com/prettier/prettier/releases )
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md )
- [Commits](https://github.com/prettier/prettier/compare/2.3.0...2.3.1 )
---
updated-dependencies:
- dependency-name: prettier
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-08 13:58:08 +02:00
dependabot[bot]
6ba683dd3f
chore(deps-dev): bump eslint from 7.27.0 to 7.28.0 in /example ( #169 )
...
Bumps [eslint](https://github.com/eslint/eslint ) from 7.27.0 to 7.28.0.
- [Release notes](https://github.com/eslint/eslint/releases )
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md )
- [Commits](https://github.com/eslint/eslint/compare/v7.27.0...v7.28.0 )
---
updated-dependencies:
- dependency-name: eslint
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-06-08 13:57:50 +02:00
Marc Rousavy
72a1fad78e
feat: Separate usecases (decouple microphone, video, photo) ( #168 )
...
* Add props
* add props (iOS)
* Add use-cases conditionally
* Update CameraView+RecordVideo.swift
* Update RecordingSession.swift
* reconfigure on change
* Throw correct errors
* Check for audio permission
* Move `#if` outward
* Throw appropriate errors
* Update CameraView+RecordVideo.swift
* fix Splashscreen
* Dynamic filePath
* Fix video extension
* add `avci` and `m4v` file types
* Fix RecordVideo errors
* Fix audio setup
* Enable `photo`, `video` and `audio`
* Check for `video={true}` in frameProcessor
* format
* Remove unused DispatchQueue
* Update docs
* Add `supportsPhotoAndVideoCapture`
* Fix view manager
* Fix error not being propagated
* Catch normal errors too
* Update DEVICES.mdx
* Update CAPTURING.mdx
* Update classdocs
2021-06-07 13:08:40 +02:00
Marc Rousavy
555474be7d
fix: Represent neutralZoom in factor instead of percentage ( #179 )
...
* Use factor instead of percent for `neutralZoom`
* fix zoom calculation
* Update CameraPage.tsx
2021-06-07 10:46:53 +02:00
Marc Rousavy
8aec647acd
fix: Fix CI ( #165 )
...
* fix conditional
* Build with cache again
* Update build-ios.yml
* Update build-ios.yml
* Build for iPhone 11 Pro
* Continue on buildcache restore error
* remove emoji
* Remove `measureElapsedTime<T>`
* Upgrade dependencies
* Build with `-quiet`
* Use `xcpretty`
* set -o
2021-06-04 12:32:20 +02:00
Marc Rousavy
835a48ff96
Update Podfile.lock
2021-06-04 10:55:16 +02:00
Marc Rousavy
60c194f428
chore: Update bundle
2021-06-03 15:43:47 +02:00
Marc Rousavy
eeb765f018
fix: Move Audio Input initialization shortly before startRecording
( #159 )
...
* rename
* Update AVAudioSession+updateCategory.swift
* fix bootstrap script
* Update CameraView+AVAudioSession.swift
* move audio input adding lower
* Activate AudioSession only when starting recording
* format
* Deactivate Audio Session
* remove audio input before deactivating audio session
* Update CameraView+AVAudioSession.swift
* log time
* Update CameraView+AVAudioSession.swift
* measure time with `measureElapsedTime`
* Update project.pbxproj
* only log in debug builds
* bootstrap with bridge (RNN new API)
* Mark two funcs as `@inlinable`
* format
* Update ReactLogger.swift
* Make audioWriter optional (allow videos without sound)
* only log frame drop reason in DEBUG
* Make audio writing entirely optional
* format
* Use function name as label for measureElapsedTime
* Update MeasureElapsedTime.swift
* Update MeasureElapsedTime.swift
* Mark AudioWriter as finished
* set `automaticallyConfiguresApplicationAudioSession` once
* Add JS console logging
* log to JS console for a few logs
* Update AVAudioSession+updateCategory.swift
* format
* Update JSConsoleHelper.mm
* catch log errors
* Update ReactLogger.swift
* fix docs
* Update RecordingSession.swift
* Immediatelly add audio input
* Update CameraView+AVCaptureSession.swift
* Update CameraView+AVCaptureSession.swift
* Update ReactLogger.swift
* immediatelly set audio session
* extract
* format
* Update TROUBLESHOOTING.mdx
* hmm
* Update AVAudioSession+updateCategory.swift
* Create secondary `AVCaptureSession` for audio
* Configure once, start stop on demand
* format
* fix audio notification interruptions
* docs
2021-06-03 14:16:02 +02:00
Marc Rousavy
71730a73ef
fix: Fix AVAudioSession not allowing background music playback ( #155 )
...
* Set category always if different
* rename org
* Fix video format sorting
* fix format filtering
* Update AVAudioSession+setCategoryIfNotSet.swift
* upgrade all dependencies
* Also run dependabot for JS codebase
* Update MediaPage.tsx
* Use typescript 4.2.4
* Also run TS in check-all
* Downgrade typescript to 4.2.3
* f
* recreate lockfiles
* docs: Revert package.json changes
* revert all package.json changes
* Update Podfile.lock
* bump all dependencies, pin typescript to 4.2.4
* Downgrade react-native-navigation for now
* upgrade to later snapshot
* Update yarn.lock
* remove yeet
2021-06-01 13:07:57 +02:00
Marc Rousavy
a0e063414a
chore(deps): Bump Android native dependencies ( #150 )
...
* Bump gradle build-tools to 4.2.1
* Bump kotlinx coroutines to 1.5.0
* Bump Kotlin to 1.5.0
* Replace `jcenter` with `mavenCentral`
* Upgrade Kotlin to 1.5.10
* Upgrade gradle plugin to 4.2.1
* Revert "Upgrade gradle plugin to 4.2.1"
This reverts commit 0946110ff442ddd24f2f3f31e7587851d7626c9e.
* Revert "Upgrade Kotlin to 1.5.10"
This reverts commit 2b11c5c911397d1db1ea7a24fb8c8634a25b5c76.
* Revert "Replace `jcenter` with `mavenCentral`"
This reverts commit 3e40b516619067c0d9da1abf3cfeb9acb6102c71.
2021-05-27 11:29:52 +02:00
Marc Rousavy
deb8beb688
chore: Bump reanimated requirements ( #149 )
...
* Bump the reanimated requirement to 2.2.0 and above
* bump versions podfile
* Simplify Frame Processor
* Add `'worklet'` note
2021-05-27 11:08:57 +02:00
Marc Rousavy
310ad5fc4c
chore: Simplify format sorting/filtering ( #140 )
...
* Simplify format sorting/filtering
* Update useCameraFormat.ts
* Also check photo HDR
* Simplify double tap
* Remove snapshot
* Remove custom `useCameraDevice` hook
* Update Podfile.lock
2021-05-14 11:52:28 +02:00
Marc Rousavy
f839bc23ac
chore: Cleanup codebase ( #137 )
...
* Remove `useCachedState`
* Add pressable opacity
* Update Media.tsx
* f
* Update FormatFilter.ts
* update
* App -> CameraPage, Media -> MediaPage
* Update CameraPage.tsx
* Create 60 FPS switch
* Update CameraPage.tsx
2021-05-11 12:59:05 +02:00
Marc Rousavy
b6a67d5ced
feature: Frame Processors (iOS) ( #2 )
...
* Clean up Frame Processor
* Create FrameProcessorHolder
* Create FrameProcessorDelegate in ObjC++
* Move frame processor to FrameProcessorDelegate
* Decorate runtime, check for null
* Update FrameProcessorDelegate.mm
* Cleanup FrameProcessorBindings.mm
* Fix RuntimeDecorator.h import
* Update FrameProcessorDelegate.mm
* "React" -> "React Helper" to avoid confusion
* Rename folders again
* Fix podspec flattening a lot of headers, causing REA nameclash
* Fix header imports to avoid REA naming collision
* Lazily initialize jsi::Runtime on DispatchQueue
* Install frame processor bindings from Swift
* First try to call jsi::Function (frame processor) 👀
* Call viewForReactTag on RCT main thread
* Fix bridge accessing
* Add more logs
* Update CameraViewManager.swift
* Add more TODOs
* Re-indent .cpp files
* Fix RCTTurboModule import podspec
* Remove unnecessary include check for swift umbrella header
* Merge branch 'main' into frame-processors
* Docs: use static width for images (283)
* Create validate-cpp.yml
* Update a lot of packages to latest
* Set SWIFT_VERSION to 5.2 in podspec
* Create clean.sh
* Delete unused C++ files
* podspec: Remove CLANG_CXX_LANGUAGE_STANDARD and OTHER_CFLAGS
* Update pod lockfiles
* Regenerate lockfiles
* Remove IOSLogger
* Use NSLog
* Create FrameProcessorManager (inherits from REA RuntimeManager)
* Create reanimated::RuntimeManager shared_ptr
* Re-integrate pods
* Add react-native-reanimated >=2 peerDependency
* Add metro-config
* blacklist -> exclusionList
* Try to call worklet
* Fix jsi::Value* initializer
* Call ShareableValue::adapt (makeShareable) with React/JS Runtime
* Add null-checks
* Lift runtime manager creation out of delegate, into bindings
* Remove debug statement
* Make RuntimeManager unique_ptr
* Set _FRAME_PROCESSOR
* Extract convertJSIFunctionToFrameProcessorCallback
* Print frame
* Merge branch 'main' into frame-processors
* Reformat Swift code
* Install reanimated from npm again
* Re-integrate Pods
* Dependabot: Also scan example/ and docs/
* Update validate-cpp.yml
* Create FrameProcessorUtils
* Create Frame.h
* Abstract HostObject creation away
* Fix types
* Fix frame processor call
* Add todo
* Update lockfiles
* Add C++ contributing instructions
* Update CONTRIBUTING.md
* Add android/src/main/cpp to cpplint
* Update cpplint.sh
* Fix a few cpplint errors
* Fix globals
* Fix a few more cpplint errors
* Update App.tsx
* Update AndroidLogger.cpp
* Format
* Fix cpplint script (check-cpp)
* Try to simplify frame processor
* y
* Update FrameProcessorUtils.mm
* Update FrameProcessorBindings.mm
* Update CameraView.swift
* Update CameraViewManager.m
* Restructure everything
* fix
* Fix `@objc` export (make public)
* Refactor installFrameProcessorBindings into FrameProcessorRuntimeManager
* Add swift RCTBridge.runOnJS helper
* Fix run(onJS)
* Add pragma once
* Add `&self` to lambda
* Update FrameProcessorRuntimeManager.mm
* reorder imports
* Fix imports
* forward declare
* Rename extension
* Destroy buffer after execution
* Add FrameProcessorPluginRegistry base
* Merge branch 'main' into frame-processors
* Add frameProcessor to types
* Update Camera.tsx
* Fix rebase merge
* Remove movieOutput
* Use `useFrameProcessor`
* Fix bad merge
* Add additional ESLint rules
* Update lockfiles
* Update CameraViewManager.m
* Add support for V8 runtime
* Add frame processor plugins API
* Print plugin invoke
* Fix React Utils in podspec
* Fix runOnJS swift name
* Remove invalid redecl of `captureSession`
* Use REA 2.1.0 which includes all my big PRs 🎉
* Update validate-cpp.yml
* Update Podfile.lock
* Remove Flipper
* Fix dereferencing
* Capture `self` by value. Fucking hell, what a dumb mistake.
* Override a few HostObject functions
* Expose isReady, width, height, bytesPerRow and planesCount
* use hook again
* Expose property names
* FrameProcessor -> Frame
* Update CameraView+RecordVideo.swift
* Add Swift support for Frame Processors Plugins
* Add macros for plugin installation
* Add ObjC frame processor plugin
* Correctly install frame processor plugins
* Don't require custom name for macro
* Check if plugin already exists
* Implement QR Code Frame Processor Plugin in Swift
* Adjust ObjC style frame processor macro
* optimize
* Add `frameProcessorFrameDropRate`
* Fix types
* Only log once
* Log if it executes slowly
* Implement `frameProcessorFps`
* Implement manual encoded video recordings
* Use recommended video settings
* Add fileType types
* Ignore if input is not ready for media data
* Add completion handler
* Add audio buffer sampling
* Init only for video frame
* use AVAssetWriterInputPixelBufferAdaptor
* Remove AVAssetWriterInputPixelBufferAdaptor
* Rotate VideoWriter
* Always assume portrait orientation
* Update RecordingSession.swift
* Use a separate Queue for Audio
* Format Swift
* Update CameraView+RecordVideo.swift
* Use `videoQueue` instead of `cameraQueue`
* Move example plugins to example app
* Fix hardcoded name in plugin macro
* QRFrame... -> QRCodeFrame...
* Update FrameProcessorPlugin.h
* Add example frame processors to JS base
* Update QRCodeFrameProcessorPluginSwift.m
* Add docs to create FP Plugins
* Update FRAME_PROCESSORS_CREATE.mdx
* Update FRAME_PROCESSORS_CREATE.mdx
* Use `AVAssetWriterInputPixelBufferAdaptor` for efficient pixel buffer recycling
* Add customizable `pixelFormat`
* Use native format if available
* Update project.pbxproj
* Set video width and height as source-pixel-buffer attributes
* Catch
* Update App.tsx
* Don't explicitly set video dimensions, let CVPixelBufferPool handle it
* Add a few logs
* Cleanup
* Update CameraView+RecordVideo.swift
* Eagerly initialize asset writer to fix stutter at first frame
* Use `cameraQueue` DispatchQueue to not block CaptureDataOutputDelegate
* Fix duration calculation
* cleanup
* Cleanup
* Swiftformat
* Return available video codecs
* Only show frame drop notification for video output
* Remove photo and video codec functionality
It was too much complexity and probably never used anyways.
* Revert all android related changes for now
* Cleanup
* Remove unused header
* Update AVAssetWriter.Status+descriptor.swift
* Only call Frame Processor for Video Frames
* Fix `if`
* Add support for Frame Processor plugin parameters/arguments
* Fix arg support
* Move to JSIUtils.mm
* Update JSIUtils.h
* Update FRAME_PROCESSORS_CREATE.mdx
* Update FRAME_PROCESSORS_CREATE.mdx
* Upgrade packages for docs/
* fix docs
* Rename
* highlight lines
* docs
* community plugins
* Update FRAME_PROCESSOR_CREATE_FINAL.mdx
* Update FRAME_PROCESSOR_PLUGIN_LIST.mdx
* Update FRAME_PROCESSOR_PLUGIN_LIST.mdx
* Update dependencies (1/2)
* Update dependencies (2/2)
* Update Gemfile.lock
* add FP docs
* Update README.md
* Make `lastFrameProcessor` private
* add `frameProcessor` docs
* fix docs
* adjust docs
* Update DEVICES.mdx
* fix
* s
* Add logs demo
* add metro restart note
* Update FRAME_PROCESSOR_CREATE_PLUGIN_IOS.mdx
* Mirror video device
* Update AVCaptureVideoDataOutput+mirror.swift
* Create .swift-version
* Enable whole module optimization
* Fix recording mirrored video
* Swift format
* Clean dictionary on `markInvalid`
* Fix cleanup
* Add docs for disabling frame processors
* Update project.pbxproj
* Revert "Update project.pbxproj"
This reverts commit e67861e51b88b4888a6940e2d20388f3044211d0.
* Log frame drop reason
* Format
* add more samples
* Add clang-format
* also check .mm
* Revert "also check .mm"
This reverts commit 8b9d5e2c29866b05909530d104f6633d6c49eadd.
* Revert "Add clang-format"
This reverts commit 7643ac808e0fc34567ea1f814e73d84955381636.
* Use `kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange` as default
* Read matching video attributes from videoSettings
* Add TODO
* Swiftformat
* Conditionally disable frame processors
* Assert if trying to use frame processors when disabled
* Add frame-processors demo gif
* Allow disabling frame processors via `VISION_CAMERA_DISABLE_FRAME_PROCESSORS`
* Update FrameProcessorRuntimeManager.mm
* Update FRAME_PROCESSORS.mdx
* Update project.pbxproj
* Update FRAME_PROCESSORS_CREATE_OVERVIEW.mdx
2021-05-06 14:11:55 +02:00
dependabot[bot]
c3ff25de41
Bump gradle from 4.1.3 to 4.2.0 in /android ( #132 )
...
* Bump gradle from 4.1.3 to 4.2.0 in /android
Bumps gradle from 4.1.3 to 4.2.0.
Signed-off-by: dependabot[bot] <support@github.com>
* update gradle wrapper
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marc Rousavy <marcrousavy@hotmail.com>
2021-05-05 10:41:42 +02:00
Marc Rousavy
24a0bcde48
Add additional ESLint rules
2021-03-31 16:02:04 +02:00
Marc Rousavy
7c33839e36
Reformat ( #116 )
...
* Reformat
* Prettier: Print Width 140
* SwiftFormat: Disable `organizeDeclarations`
* React Helpers -> React Utils
* Use bundle exec for pods
* Disable Hermes in Example
* Create clean.sh
* Update package.json
* Re-generate lockfiles
* Add bundle install step to bootstrap
2021-03-31 15:43:29 +02:00
Marc Rousavy
501827cb87
Rename pod to VisionCamera
2021-03-26 16:22:24 +01:00
Marc Rousavy
9404b93dc3
Extract AVCaptureSession
and AVAudioSession
setup to extensions
2021-03-26 16:20:57 +01:00
Marc Rousavy
35806ff660
Upgrade Example to RN 0.64 ( #83 )
...
* ReactLogger: Also log function
* Run SwiftFormat & SwiftLint in example project
* Upgrade to RN 0.64 1/2
* Update lockfiles
* Upgrade a few packages
* index.tsx -> index.js
* Upgrade docusaurus
* Fix line length violation
* Update CameraView.swift
* Update gradle plugin
* Fix example to prefer higher res cameras
* Remove unused log line
* Update App.tsx
2021-03-19 15:53:19 +01:00
Marc Rousavy
b0069c23e1
Docs/capturing ( #70 )
...
* Add capturing base doc
* Pin RNN version where Modal without animation works
* Add docs for Taking Photos/Recording Videos
2021-03-17 15:17:05 +01:00
dependabot[bot]
50cabe9306
Bump eslint from 7.21.0 to 7.22.0 in /example ( #59 )
...
Bumps [eslint](https://github.com/eslint/eslint ) from 7.21.0 to 7.22.0.
- [Release notes](https://github.com/eslint/eslint/releases )
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md )
- [Commits](https://github.com/eslint/eslint/compare/v7.21.0...v7.22.0 )
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-15 10:35:59 +01:00
Marc Rousavy
33483cba94
Fix tsc ( #49 )
...
* Test: Rename a used prop
* Use `github-check` reporter
* Also output to CI
* Update validate-js.yml
* Update validate-js.yml
* Update validate-js.yml
* Revert "Test: Rename a used prop"
This reverts commit 266b2716ea591a1e826279c1f573870bee3b13e5.
* Run tsc and lint in parallel
* Flatten `CameraProps` into single `interface`
* Type NativeCameraViewProps
* Fix native method typings
* Force `as any` for now
2021-03-12 13:21:46 +01:00
dependabot[bot]
c4d7d81c36
Bump @types/react from 17.0.2 to 17.0.3 in /example ( #45 )
...
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react ) from 17.0.2 to 17.0.3.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react )
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-12 10:38:45 +01:00
dependabot[bot]
bb1a5e744b
Bump @types/react-native from 0.63.50 to 0.63.51 in /example ( #47 )
...
Bumps [@types/react-native](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-native ) from 0.63.50 to 0.63.51.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-native )
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-12 09:52:18 +01:00
dependabot[bot]
29c401bb8a
Bump typescript from 4.2.2 to 4.2.3 in /example ( #46 )
...
Bumps [typescript](https://github.com/Microsoft/TypeScript ) from 4.2.2 to 4.2.3.
- [Release notes](https://github.com/Microsoft/TypeScript/releases )
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.2.2...v4.2.3 )
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-12 09:51:40 +01:00
Marc Rousavy
1f08a44100
Use Ruby Gemfile (bundle) to optimize pod install times
2021-03-11 19:08:51 +01:00
dependabot[bot]
305add48b4
Bump @babel/core from 7.13.8 to 7.13.10 in /example ( #34 )
...
Bumps [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core ) from 7.13.8 to 7.13.10.
- [Release notes](https://github.com/babel/babel/releases )
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md )
- [Commits](https://github.com/babel/babel/commits/v7.13.10/packages/babel-core )
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-11 16:18:34 +01:00
dependabot[bot]
ae556cfa93
Bump @typescript-eslint/parser from 4.16.1 to 4.17.0 in /example ( #35 )
...
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser ) from 4.16.1 to 4.17.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases )
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md )
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.17.0/packages/parser )
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-11 16:15:32 +01:00
dependabot[bot]
6bd8552747
Bump @babel/runtime from 7.13.9 to 7.13.10 in /example ( #31 )
...
Bumps [@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime ) from 7.13.9 to 7.13.10.
- [Release notes](https://github.com/babel/babel/releases )
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md )
- [Commits](https://github.com/babel/babel/commits/v7.13.10/packages/babel-runtime )
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-11 16:12:43 +01:00
dependabot[bot]
a8fbe0109b
Bump @typescript-eslint/eslint-plugin from 4.16.1 to 4.17.0 in /example ( #33 )
...
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin ) from 4.16.1 to 4.17.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases )
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md )
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.17.0/packages/eslint-plugin )
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-11 16:08:45 +01:00
dependabot[bot]
845a7707d4
Bump react-native-navigation from 7.11.2 to 7.11.3 in /example ( #32 )
...
Bumps [react-native-navigation](https://github.com/wix/react-native-navigation ) from 7.11.2 to 7.11.3.
- [Release notes](https://github.com/wix/react-native-navigation/releases )
- [Changelog](https://github.com/wix/react-native-navigation/blob/master/CHANGELOG.md )
- [Commits](https://github.com/wix/react-native-navigation/compare/7.11.2...7.11.3 )
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-11 16:06:01 +01:00
Marc Rousavy
befd943f94
Update Podfile.lock
2021-03-10 15:24:12 +01:00
Marc Rousavy
b329107fa5
Update yarn.lock
2021-03-04 17:26:09 +01:00
Marc Rousavy
7cd3954a08
Update package.json
2021-03-04 17:25:47 +01:00
Marc Rousavy
6ea88a931b
Update README.md
2021-03-04 14:12:20 +01:00
Marc Rousavy
15709e9f53
Fix old links
2021-03-04 10:45:50 +01:00
David Angulo
c598414930
Update build.gradle ( #16 )
2021-03-04 09:47:39 +01:00
Marc Rousavy
ece148d93e
Upgrade all packages to latest
2021-03-03 21:56:03 +01:00
Victor Malov
e54276aa68
fix: fix banner image import path ( #14 )
2021-03-03 18:56:06 +01:00
Marc Rousavy
45c344c4df
Update img links
2021-03-03 12:42:28 +01:00
Marc Rousavy
0b7b4d50b5
Automatically build API documentation ( #11 )
...
* Automatically build API documentation using Typedoc and Docusaurus
* Move MD and move to MDX for Docusaurus Guides
2021-03-03 12:37:43 +01:00
Marc Rousavy
6438b9a8bc
Bump CameraX versions to alpha2/alpha22 ( #7 )
...
* Bump CameraX versions to alpha2/alpha22
* Use `setDefaultResolution` to set format's photoSize
2021-02-26 17:34:28 +01:00
Marc Rousavy
8849208d0c
Update App.tsx
2021-02-25 15:34:23 +01:00
Marc Rousavy
796b4f1b98
Fix wrong variable name for tag
2021-02-25 15:15:35 +01:00
Marc Rousavy
d601a8dcc9
Fix App.tsx tsc errors
2021-02-25 13:57:51 +01:00
Marc Rousavy
32da54ab46
Fix a few ESLint errors
2021-02-23 11:57:43 +01:00
Marc Rousavy
1f3de955c7
Update useIsForeground.ts
2021-02-22 12:28:56 +01:00
Marc Rousavy
d3fbf6700e
Update Constants.ts
2021-02-22 12:28:51 +01:00
Marc Rousavy
04fd5bb069
Squash format-filter
2021-02-20 23:20:28 +01:00
Marc Rousavy
f8a119ccc7
Update FormatFilter.ts
2021-02-20 17:44:54 +01:00
Marc Rousavy
1e1031f70a
remove RESOLUTION_LIMIT
2021-02-20 17:44:45 +01:00
Marc Rousavy
c1f3ea98d7
Update App.tsx
2021-02-20 17:42:37 +01:00
Marc Rousavy
6377f7be71
Update Settings.tsx
2021-02-20 17:39:41 +01:00
Marc Rousavy
b7274eb2e9
Add selectable FPS
2021-02-20 17:39:04 +01:00
Marc Rousavy
eaebda7954
example: Install rn-slider
2021-02-20 17:38:28 +01:00
Marc Rousavy
43ea7ed734
example: Install pipestate for minimal state management
2021-02-20 17:18:15 +01:00
Marc Rousavy
4989812de7
F
2021-02-20 17:12:21 +01:00
Marc Rousavy
fdbd45871a
ES
2021-02-20 17:08:35 +01:00
Marc Rousavy
dc2be934f6
ESLint autofix
2021-02-20 17:07:10 +01:00
Marc Rousavy
f2a1d52aa7
rm example dotfiles
2021-02-20 17:04:53 +01:00
Marc Rousavy
84a7a2f841
Update README.md
2021-02-20 16:38:40 +01:00
Marc Rousavy
adceea9261
Add example screenshot
2021-02-20 16:37:42 +01:00
Marc Rousavy
63201eab83
Delete package-lock.json
2021-02-19 21:30:18 +01:00
Marc Rousavy
36dbdfd570
Android: copy vector icons
2021-02-19 21:16:11 +01:00
Marc Rousavy
27f5ad016b
Fix android bottom
2021-02-19 21:14:42 +01:00
Marc Rousavy
f1a2db1141
A few manifest settings
2021-02-19 21:12:16 +01:00
Marc Rousavy
73b371ccdc
Statusbar settings
2021-02-19 21:10:32 +01:00
Marc Rousavy
a428aea69c
Android: Bump kotlin-gradle-plugin to 1.4.30
2021-02-19 21:05:19 +01:00
Marc Rousavy
fd698a610c
Android: Bump flipper to 0.74.0
2021-02-19 21:05:09 +01:00
Marc Rousavy
7bcbc2506f
Android: Fix a few things that went broke
2021-02-19 21:05:01 +01:00
Marc Rousavy
695f98f551
Set minSdkVersion to 21
2021-02-19 20:54:55 +01:00
Marc Rousavy
ffa2527849
Rename proj
2021-02-19 20:50:41 +01:00
Marc Rousavy
040722defa
update android lib name
2021-02-19 20:48:35 +01:00
Marc Rousavy
38d9cd353a
Create icon
2021-02-19 20:39:11 +01:00
Marc Rousavy
8a8525f8f8
Update app-icon
2021-02-19 20:21:20 +01:00
Marc Rousavy
438ad01b07
Create README.md
2021-02-19 20:15:28 +01:00
Marc Rousavy
c09ee2b8af
format
2021-02-19 20:05:02 +01:00
Marc Rousavy
ba32595b01
Update Splash.tsx
2021-02-19 19:56:42 +01:00
Marc Rousavy
6a6a198921
Update LaunchScreen.storyboard
2021-02-19 19:56:06 +01:00
Marc Rousavy
84da659969
Make wiggle animation
2021-02-19 19:54:30 +01:00
Marc Rousavy
0f50b51a1b
Add cool splashscreen
2021-02-19 19:51:59 +01:00
Marc Rousavy
674d9ccb8b
Implement media saving
2021-02-19 19:29:29 +01:00
Marc Rousavy
112af9b86c
Add icons to UIAppFonts
2021-02-19 19:14:00 +01:00
Marc Rousavy
4f8784cfd9
Revert "Add RNVectorIcons to podfile"
...
This reverts commit 0b0c8764ac
.
2021-02-19 19:13:16 +01:00
Marc Rousavy
0b0c8764ac
Add RNVectorIcons to podfile
...
Yes, it should be autolinked instead. I know.
2021-02-19 19:12:58 +01:00
Marc Rousavy
8712976a47
Update Media.tsx
2021-02-19 19:08:38 +01:00
Marc Rousavy
16e73fc910
update a whole lotta stuff
2021-02-19 19:06:28 +01:00
Marc Rousavy
cf157cb299
packages
2021-02-19 18:53:08 +01:00
Marc Rousavy
c13c46f388
Create media captured page
2021-02-19 18:44:05 +01:00
Marc Rousavy
1d71aada11
Install rnvideo
2021-02-19 18:43:41 +01:00
Marc Rousavy
2e2baddffb
Update Splash.tsx
2021-02-19 18:33:35 +01:00
Marc Rousavy
e1d041644a
Add static safe area insets
2021-02-19 18:24:32 +01:00