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
This commit is contained in:
parent
8189173120
commit
71730a73ef
34
.github/dependabot.yml
vendored
34
.github/dependabot.yml
vendored
@ -1,18 +1,36 @@
|
|||||||
version: 2
|
version: 2
|
||||||
|
|
||||||
updates:
|
updates:
|
||||||
# - package-ecosystem: "npm"
|
- package-ecosystem: "npm"
|
||||||
# directory: "/"
|
directory: "/"
|
||||||
# schedule:
|
schedule:
|
||||||
# interval: "daily"
|
interval: "weekly"
|
||||||
# labels:
|
labels:
|
||||||
# - "dependencies"
|
- "🛠 dependencies"
|
||||||
# - "js"
|
- "☕️ js"
|
||||||
|
|
||||||
|
- package-ecosystem: "npm"
|
||||||
|
directory: "/docs/"
|
||||||
|
schedule:
|
||||||
|
interval: "weekly"
|
||||||
|
labels:
|
||||||
|
- "🛠 dependencies"
|
||||||
|
- "☕️ js"
|
||||||
|
- "📚 documentation"
|
||||||
|
|
||||||
|
- package-ecosystem: "npm"
|
||||||
|
directory: "/example/"
|
||||||
|
schedule:
|
||||||
|
interval: "weekly"
|
||||||
|
labels:
|
||||||
|
- "🛠 dependencies"
|
||||||
|
- "☕️ js"
|
||||||
|
- "🛸 example"
|
||||||
|
|
||||||
- package-ecosystem: "gradle"
|
- package-ecosystem: "gradle"
|
||||||
directory: "/android/"
|
directory: "/android/"
|
||||||
schedule:
|
schedule:
|
||||||
interval: "daily"
|
interval: "weekly"
|
||||||
labels:
|
labels:
|
||||||
- "🛠 dependencies"
|
- "🛠 dependencies"
|
||||||
- "🤖 android"
|
- "🤖 android"
|
||||||
|
@ -12,12 +12,12 @@
|
|||||||
"clear": "docusaurus clear"
|
"clear": "docusaurus clear"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@docusaurus/core": "2.0.0-alpha.75",
|
"@docusaurus/core": "^2.0.0-beta.0",
|
||||||
"@docusaurus/preset-classic": "2.0.0-alpha.75",
|
"@docusaurus/preset-classic": "^2.0.0-beta.0",
|
||||||
"@mdx-js/react": "^1.6.21",
|
"@mdx-js/react": "^1.6.22",
|
||||||
"clsx": "^1.1.1",
|
"clsx": "^1.1.1",
|
||||||
"react": "^17.0.1",
|
"react": "^17.0.2",
|
||||||
"react-dom": "^17.0.1"
|
"react-dom": "^17.0.2"
|
||||||
},
|
},
|
||||||
"browserslist": {
|
"browserslist": {
|
||||||
"production": [
|
"production": [
|
||||||
@ -32,9 +32,9 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"docusaurus-plugin-typedoc": "^0.13.0",
|
"docusaurus-plugin-typedoc": "^0.14.2",
|
||||||
"typedoc": "^0.20.36",
|
"typedoc": "^0.20.36",
|
||||||
"typedoc-plugin-markdown": "^3.7.2",
|
"typedoc-plugin-markdown": "^3.9.0",
|
||||||
"typescript": "^4.2.3"
|
"typescript": "4.2.4"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
1573
docs/yarn.lock
1573
docs/yarn.lock
File diff suppressed because it is too large
Load Diff
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 01.05.21.
|
// Created by Marc Rousavy on 01.05.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#import <Foundation/Foundation.h>
|
#import <Foundation/Foundation.h>
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 30.04.21.
|
// Created by Marc Rousavy on 30.04.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVKit
|
import AVKit
|
||||||
|
@ -1,14 +1,14 @@
|
|||||||
PODS:
|
PODS:
|
||||||
- boost-for-react-native (1.63.0)
|
- boost-for-react-native (1.63.0)
|
||||||
- DoubleConversion (1.1.6)
|
- DoubleConversion (1.1.6)
|
||||||
- FBLazyVector (0.64.0)
|
- FBLazyVector (0.64.1)
|
||||||
- FBReactNativeSpec (0.64.0):
|
- FBReactNativeSpec (0.64.1):
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- RCTRequired (= 0.64.0)
|
- RCTRequired (= 0.64.1)
|
||||||
- RCTTypeSafety (= 0.64.0)
|
- RCTTypeSafety (= 0.64.1)
|
||||||
- React-Core (= 0.64.0)
|
- React-Core (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- ReactCommon/turbomodule/core (= 0.64.0)
|
- ReactCommon/turbomodule/core (= 0.64.1)
|
||||||
- glog (0.3.5)
|
- glog (0.3.5)
|
||||||
- RCT-Folly (2020.01.13.00):
|
- RCT-Folly (2020.01.13.00):
|
||||||
- boost-for-react-native
|
- boost-for-react-native
|
||||||
@ -19,190 +19,190 @@ PODS:
|
|||||||
- boost-for-react-native
|
- boost-for-react-native
|
||||||
- DoubleConversion
|
- DoubleConversion
|
||||||
- glog
|
- glog
|
||||||
- RCTRequired (0.64.0)
|
- RCTRequired (0.64.1)
|
||||||
- RCTTypeSafety (0.64.0):
|
- RCTTypeSafety (0.64.1):
|
||||||
- FBLazyVector (= 0.64.0)
|
- FBLazyVector (= 0.64.1)
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- RCTRequired (= 0.64.0)
|
- RCTRequired (= 0.64.1)
|
||||||
- React-Core (= 0.64.0)
|
- React-Core (= 0.64.1)
|
||||||
- React (0.64.0):
|
- React (0.64.1):
|
||||||
- React-Core (= 0.64.0)
|
- React-Core (= 0.64.1)
|
||||||
- React-Core/DevSupport (= 0.64.0)
|
- React-Core/DevSupport (= 0.64.1)
|
||||||
- React-Core/RCTWebSocket (= 0.64.0)
|
- React-Core/RCTWebSocket (= 0.64.1)
|
||||||
- React-RCTActionSheet (= 0.64.0)
|
- React-RCTActionSheet (= 0.64.1)
|
||||||
- React-RCTAnimation (= 0.64.0)
|
- React-RCTAnimation (= 0.64.1)
|
||||||
- React-RCTBlob (= 0.64.0)
|
- React-RCTBlob (= 0.64.1)
|
||||||
- React-RCTImage (= 0.64.0)
|
- React-RCTImage (= 0.64.1)
|
||||||
- React-RCTLinking (= 0.64.0)
|
- React-RCTLinking (= 0.64.1)
|
||||||
- React-RCTNetwork (= 0.64.0)
|
- React-RCTNetwork (= 0.64.1)
|
||||||
- React-RCTSettings (= 0.64.0)
|
- React-RCTSettings (= 0.64.1)
|
||||||
- React-RCTText (= 0.64.0)
|
- React-RCTText (= 0.64.1)
|
||||||
- React-RCTVibration (= 0.64.0)
|
- React-RCTVibration (= 0.64.1)
|
||||||
- React-callinvoker (0.64.0)
|
- React-callinvoker (0.64.1)
|
||||||
- React-Core (0.64.0):
|
- React-Core (0.64.1):
|
||||||
- glog
|
- glog
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default (= 0.64.0)
|
- React-Core/Default (= 0.64.1)
|
||||||
- React-cxxreact (= 0.64.0)
|
- React-cxxreact (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-jsiexecutor (= 0.64.0)
|
- React-jsiexecutor (= 0.64.1)
|
||||||
- React-perflogger (= 0.64.0)
|
- React-perflogger (= 0.64.1)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/CoreModulesHeaders (0.64.0):
|
- React-Core/CoreModulesHeaders (0.64.1):
|
||||||
- glog
|
- glog
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.64.0)
|
- React-cxxreact (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-jsiexecutor (= 0.64.0)
|
- React-jsiexecutor (= 0.64.1)
|
||||||
- React-perflogger (= 0.64.0)
|
- React-perflogger (= 0.64.1)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/Default (0.64.0):
|
- React-Core/Default (0.64.1):
|
||||||
- glog
|
- glog
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-cxxreact (= 0.64.0)
|
- React-cxxreact (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-jsiexecutor (= 0.64.0)
|
- React-jsiexecutor (= 0.64.1)
|
||||||
- React-perflogger (= 0.64.0)
|
- React-perflogger (= 0.64.1)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/DevSupport (0.64.0):
|
- React-Core/DevSupport (0.64.1):
|
||||||
- glog
|
- glog
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default (= 0.64.0)
|
- React-Core/Default (= 0.64.1)
|
||||||
- React-Core/RCTWebSocket (= 0.64.0)
|
- React-Core/RCTWebSocket (= 0.64.1)
|
||||||
- React-cxxreact (= 0.64.0)
|
- React-cxxreact (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-jsiexecutor (= 0.64.0)
|
- React-jsiexecutor (= 0.64.1)
|
||||||
- React-jsinspector (= 0.64.0)
|
- React-jsinspector (= 0.64.1)
|
||||||
- React-perflogger (= 0.64.0)
|
- React-perflogger (= 0.64.1)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTActionSheetHeaders (0.64.0):
|
- React-Core/RCTActionSheetHeaders (0.64.1):
|
||||||
- glog
|
- glog
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.64.0)
|
- React-cxxreact (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-jsiexecutor (= 0.64.0)
|
- React-jsiexecutor (= 0.64.1)
|
||||||
- React-perflogger (= 0.64.0)
|
- React-perflogger (= 0.64.1)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTAnimationHeaders (0.64.0):
|
- React-Core/RCTAnimationHeaders (0.64.1):
|
||||||
- glog
|
- glog
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.64.0)
|
- React-cxxreact (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-jsiexecutor (= 0.64.0)
|
- React-jsiexecutor (= 0.64.1)
|
||||||
- React-perflogger (= 0.64.0)
|
- React-perflogger (= 0.64.1)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTBlobHeaders (0.64.0):
|
- React-Core/RCTBlobHeaders (0.64.1):
|
||||||
- glog
|
- glog
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.64.0)
|
- React-cxxreact (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-jsiexecutor (= 0.64.0)
|
- React-jsiexecutor (= 0.64.1)
|
||||||
- React-perflogger (= 0.64.0)
|
- React-perflogger (= 0.64.1)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTImageHeaders (0.64.0):
|
- React-Core/RCTImageHeaders (0.64.1):
|
||||||
- glog
|
- glog
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.64.0)
|
- React-cxxreact (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-jsiexecutor (= 0.64.0)
|
- React-jsiexecutor (= 0.64.1)
|
||||||
- React-perflogger (= 0.64.0)
|
- React-perflogger (= 0.64.1)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTLinkingHeaders (0.64.0):
|
- React-Core/RCTLinkingHeaders (0.64.1):
|
||||||
- glog
|
- glog
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.64.0)
|
- React-cxxreact (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-jsiexecutor (= 0.64.0)
|
- React-jsiexecutor (= 0.64.1)
|
||||||
- React-perflogger (= 0.64.0)
|
- React-perflogger (= 0.64.1)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTNetworkHeaders (0.64.0):
|
- React-Core/RCTNetworkHeaders (0.64.1):
|
||||||
- glog
|
- glog
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.64.0)
|
- React-cxxreact (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-jsiexecutor (= 0.64.0)
|
- React-jsiexecutor (= 0.64.1)
|
||||||
- React-perflogger (= 0.64.0)
|
- React-perflogger (= 0.64.1)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTSettingsHeaders (0.64.0):
|
- React-Core/RCTSettingsHeaders (0.64.1):
|
||||||
- glog
|
- glog
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.64.0)
|
- React-cxxreact (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-jsiexecutor (= 0.64.0)
|
- React-jsiexecutor (= 0.64.1)
|
||||||
- React-perflogger (= 0.64.0)
|
- React-perflogger (= 0.64.1)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTTextHeaders (0.64.0):
|
- React-Core/RCTTextHeaders (0.64.1):
|
||||||
- glog
|
- glog
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.64.0)
|
- React-cxxreact (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-jsiexecutor (= 0.64.0)
|
- React-jsiexecutor (= 0.64.1)
|
||||||
- React-perflogger (= 0.64.0)
|
- React-perflogger (= 0.64.1)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTVibrationHeaders (0.64.0):
|
- React-Core/RCTVibrationHeaders (0.64.1):
|
||||||
- glog
|
- glog
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default
|
- React-Core/Default
|
||||||
- React-cxxreact (= 0.64.0)
|
- React-cxxreact (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-jsiexecutor (= 0.64.0)
|
- React-jsiexecutor (= 0.64.1)
|
||||||
- React-perflogger (= 0.64.0)
|
- React-perflogger (= 0.64.1)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-Core/RCTWebSocket (0.64.0):
|
- React-Core/RCTWebSocket (0.64.1):
|
||||||
- glog
|
- glog
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/Default (= 0.64.0)
|
- React-Core/Default (= 0.64.1)
|
||||||
- React-cxxreact (= 0.64.0)
|
- React-cxxreact (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-jsiexecutor (= 0.64.0)
|
- React-jsiexecutor (= 0.64.1)
|
||||||
- React-perflogger (= 0.64.0)
|
- React-perflogger (= 0.64.1)
|
||||||
- Yoga
|
- Yoga
|
||||||
- React-CoreModules (0.64.0):
|
- React-CoreModules (0.64.1):
|
||||||
- FBReactNativeSpec (= 0.64.0)
|
- FBReactNativeSpec (= 0.64.1)
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- RCTTypeSafety (= 0.64.0)
|
- RCTTypeSafety (= 0.64.1)
|
||||||
- React-Core/CoreModulesHeaders (= 0.64.0)
|
- React-Core/CoreModulesHeaders (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-RCTImage (= 0.64.0)
|
- React-RCTImage (= 0.64.1)
|
||||||
- ReactCommon/turbomodule/core (= 0.64.0)
|
- ReactCommon/turbomodule/core (= 0.64.1)
|
||||||
- React-cxxreact (0.64.0):
|
- React-cxxreact (0.64.1):
|
||||||
- boost-for-react-native (= 1.63.0)
|
- boost-for-react-native (= 1.63.0)
|
||||||
- DoubleConversion
|
- DoubleConversion
|
||||||
- glog
|
- glog
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-callinvoker (= 0.64.0)
|
- React-callinvoker (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-jsinspector (= 0.64.0)
|
- React-jsinspector (= 0.64.1)
|
||||||
- React-perflogger (= 0.64.0)
|
- React-perflogger (= 0.64.1)
|
||||||
- React-runtimeexecutor (= 0.64.0)
|
- React-runtimeexecutor (= 0.64.1)
|
||||||
- React-jsi (0.64.0):
|
- React-jsi (0.64.1):
|
||||||
- boost-for-react-native (= 1.63.0)
|
- boost-for-react-native (= 1.63.0)
|
||||||
- DoubleConversion
|
- DoubleConversion
|
||||||
- glog
|
- glog
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-jsi/Default (= 0.64.0)
|
- React-jsi/Default (= 0.64.1)
|
||||||
- React-jsi/Default (0.64.0):
|
- React-jsi/Default (0.64.1):
|
||||||
- boost-for-react-native (= 1.63.0)
|
- boost-for-react-native (= 1.63.0)
|
||||||
- DoubleConversion
|
- DoubleConversion
|
||||||
- glog
|
- glog
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-jsiexecutor (0.64.0):
|
- React-jsiexecutor (0.64.1):
|
||||||
- DoubleConversion
|
- DoubleConversion
|
||||||
- glog
|
- glog
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-cxxreact (= 0.64.0)
|
- React-cxxreact (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-perflogger (= 0.64.0)
|
- React-perflogger (= 0.64.1)
|
||||||
- React-jsinspector (0.64.0)
|
- React-jsinspector (0.64.1)
|
||||||
- react-native-blur (0.8.0):
|
- react-native-blur (0.8.0):
|
||||||
- React
|
- React
|
||||||
- react-native-cameraroll (4.0.4):
|
- react-native-cameraroll (4.0.4):
|
||||||
@ -214,76 +214,76 @@ PODS:
|
|||||||
- react-native-video/Video (= 5.1.1)
|
- react-native-video/Video (= 5.1.1)
|
||||||
- react-native-video/Video (5.1.1):
|
- react-native-video/Video (5.1.1):
|
||||||
- React-Core
|
- React-Core
|
||||||
- React-perflogger (0.64.0)
|
- React-perflogger (0.64.1)
|
||||||
- React-RCTActionSheet (0.64.0):
|
- React-RCTActionSheet (0.64.1):
|
||||||
- React-Core/RCTActionSheetHeaders (= 0.64.0)
|
- React-Core/RCTActionSheetHeaders (= 0.64.1)
|
||||||
- React-RCTAnimation (0.64.0):
|
- React-RCTAnimation (0.64.1):
|
||||||
- FBReactNativeSpec (= 0.64.0)
|
- FBReactNativeSpec (= 0.64.1)
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- RCTTypeSafety (= 0.64.0)
|
- RCTTypeSafety (= 0.64.1)
|
||||||
- React-Core/RCTAnimationHeaders (= 0.64.0)
|
- React-Core/RCTAnimationHeaders (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- ReactCommon/turbomodule/core (= 0.64.0)
|
- ReactCommon/turbomodule/core (= 0.64.1)
|
||||||
- React-RCTBlob (0.64.0):
|
- React-RCTBlob (0.64.1):
|
||||||
- FBReactNativeSpec (= 0.64.0)
|
- FBReactNativeSpec (= 0.64.1)
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/RCTBlobHeaders (= 0.64.0)
|
- React-Core/RCTBlobHeaders (= 0.64.1)
|
||||||
- React-Core/RCTWebSocket (= 0.64.0)
|
- React-Core/RCTWebSocket (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-RCTNetwork (= 0.64.0)
|
- React-RCTNetwork (= 0.64.1)
|
||||||
- ReactCommon/turbomodule/core (= 0.64.0)
|
- ReactCommon/turbomodule/core (= 0.64.1)
|
||||||
- React-RCTImage (0.64.0):
|
- React-RCTImage (0.64.1):
|
||||||
- FBReactNativeSpec (= 0.64.0)
|
- FBReactNativeSpec (= 0.64.1)
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- RCTTypeSafety (= 0.64.0)
|
- RCTTypeSafety (= 0.64.1)
|
||||||
- React-Core/RCTImageHeaders (= 0.64.0)
|
- React-Core/RCTImageHeaders (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-RCTNetwork (= 0.64.0)
|
- React-RCTNetwork (= 0.64.1)
|
||||||
- ReactCommon/turbomodule/core (= 0.64.0)
|
- ReactCommon/turbomodule/core (= 0.64.1)
|
||||||
- React-RCTLinking (0.64.0):
|
- React-RCTLinking (0.64.1):
|
||||||
- FBReactNativeSpec (= 0.64.0)
|
- FBReactNativeSpec (= 0.64.1)
|
||||||
- React-Core/RCTLinkingHeaders (= 0.64.0)
|
- React-Core/RCTLinkingHeaders (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- ReactCommon/turbomodule/core (= 0.64.0)
|
- ReactCommon/turbomodule/core (= 0.64.1)
|
||||||
- React-RCTNetwork (0.64.0):
|
- React-RCTNetwork (0.64.1):
|
||||||
- FBReactNativeSpec (= 0.64.0)
|
- FBReactNativeSpec (= 0.64.1)
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- RCTTypeSafety (= 0.64.0)
|
- RCTTypeSafety (= 0.64.1)
|
||||||
- React-Core/RCTNetworkHeaders (= 0.64.0)
|
- React-Core/RCTNetworkHeaders (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- ReactCommon/turbomodule/core (= 0.64.0)
|
- ReactCommon/turbomodule/core (= 0.64.1)
|
||||||
- React-RCTSettings (0.64.0):
|
- React-RCTSettings (0.64.1):
|
||||||
- FBReactNativeSpec (= 0.64.0)
|
- FBReactNativeSpec (= 0.64.1)
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- RCTTypeSafety (= 0.64.0)
|
- RCTTypeSafety (= 0.64.1)
|
||||||
- React-Core/RCTSettingsHeaders (= 0.64.0)
|
- React-Core/RCTSettingsHeaders (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- ReactCommon/turbomodule/core (= 0.64.0)
|
- ReactCommon/turbomodule/core (= 0.64.1)
|
||||||
- React-RCTText (0.64.0):
|
- React-RCTText (0.64.1):
|
||||||
- React-Core/RCTTextHeaders (= 0.64.0)
|
- React-Core/RCTTextHeaders (= 0.64.1)
|
||||||
- React-RCTVibration (0.64.0):
|
- React-RCTVibration (0.64.1):
|
||||||
- FBReactNativeSpec (= 0.64.0)
|
- FBReactNativeSpec (= 0.64.1)
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-Core/RCTVibrationHeaders (= 0.64.0)
|
- React-Core/RCTVibrationHeaders (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- ReactCommon/turbomodule/core (= 0.64.0)
|
- ReactCommon/turbomodule/core (= 0.64.1)
|
||||||
- React-runtimeexecutor (0.64.0):
|
- React-runtimeexecutor (0.64.1):
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- ReactCommon/turbomodule/core (0.64.0):
|
- ReactCommon/turbomodule/core (0.64.1):
|
||||||
- DoubleConversion
|
- DoubleConversion
|
||||||
- glog
|
- glog
|
||||||
- RCT-Folly (= 2020.01.13.00)
|
- RCT-Folly (= 2020.01.13.00)
|
||||||
- React-callinvoker (= 0.64.0)
|
- React-callinvoker (= 0.64.1)
|
||||||
- React-Core (= 0.64.0)
|
- React-Core (= 0.64.1)
|
||||||
- React-cxxreact (= 0.64.0)
|
- React-cxxreact (= 0.64.1)
|
||||||
- React-jsi (= 0.64.0)
|
- React-jsi (= 0.64.1)
|
||||||
- React-perflogger (= 0.64.0)
|
- React-perflogger (= 0.64.1)
|
||||||
- ReactNativeNavigation (7.8.4-snapshot.1439):
|
- ReactNativeNavigation (7.15.0-snapshot.1548):
|
||||||
- React-Core
|
- React-Core
|
||||||
- React-RCTImage
|
- React-RCTImage
|
||||||
- React-RCTText
|
- React-RCTText
|
||||||
- ReactNativeNavigation/Core (= 7.8.4-snapshot.1439)
|
- ReactNativeNavigation/Core (= 7.15.0-snapshot.1548)
|
||||||
- ReactNativeNavigation/Core (7.8.4-snapshot.1439):
|
- ReactNativeNavigation/Core (7.15.0-snapshot.1548):
|
||||||
- React-Core
|
- React-Core
|
||||||
- React-RCTImage
|
- React-RCTImage
|
||||||
- React-RCTText
|
- React-RCTText
|
||||||
@ -322,7 +322,7 @@ PODS:
|
|||||||
- React
|
- React
|
||||||
- RNVectorIcons (8.1.0):
|
- RNVectorIcons (8.1.0):
|
||||||
- React-Core
|
- React-Core
|
||||||
- VisionCamera (2.0.1):
|
- VisionCamera (2.0.2):
|
||||||
- React
|
- React
|
||||||
- React-callinvoker
|
- React-callinvoker
|
||||||
- React-Core
|
- React-Core
|
||||||
@ -455,43 +455,43 @@ EXTERNAL SOURCES:
|
|||||||
SPEC CHECKSUMS:
|
SPEC CHECKSUMS:
|
||||||
boost-for-react-native: 39c7adb57c4e60d6c5479dd8623128eb5b3f0f2c
|
boost-for-react-native: 39c7adb57c4e60d6c5479dd8623128eb5b3f0f2c
|
||||||
DoubleConversion: cf9b38bf0b2d048436d9a82ad2abe1404f11e7de
|
DoubleConversion: cf9b38bf0b2d048436d9a82ad2abe1404f11e7de
|
||||||
FBLazyVector: 49cbe4b43e445b06bf29199b6ad2057649e4c8f5
|
FBLazyVector: 7b423f9e248eae65987838148c36eec1dbfe0b53
|
||||||
FBReactNativeSpec: e800dc469340da7e8e47f45145f69d75a7b06874
|
FBReactNativeSpec: 17b92ef63a5334d2c068d3a05f0b49ace5649eb3
|
||||||
glog: 73c2498ac6884b13ede40eda8228cb1eee9d9d62
|
glog: 73c2498ac6884b13ede40eda8228cb1eee9d9d62
|
||||||
RCT-Folly: ec7a233ccc97cc556cf7237f0db1ff65b986f27c
|
RCT-Folly: ec7a233ccc97cc556cf7237f0db1ff65b986f27c
|
||||||
RCTRequired: 2f8cb5b7533219bf4218a045f92768129cf7050a
|
RCTRequired: ec2ebc96b7bfba3ca5c32740f5a0c6a014a274d2
|
||||||
RCTTypeSafety: 512728b73549e72ad7330b92f3d42936f2a4de5b
|
RCTTypeSafety: 22567f31e67c3e088c7ac23ea46ab6d4779c0ea5
|
||||||
React: 98eac01574128a790f0bbbafe2d1a8607291ac24
|
React: a241e3dbb1e91d06332f1dbd2b3ab26e1a4c4b9d
|
||||||
React-callinvoker: def3f7fae16192df68d9b69fd4bbb59092ee36bc
|
React-callinvoker: da4d1c6141696a00163960906bc8a55b985e4ce4
|
||||||
React-Core: 70a52aa5dbe9b83befae82038451a7df9fd54c5a
|
React-Core: 46ba164c437d7dac607b470c83c8308b05799748
|
||||||
React-CoreModules: 052edef46117862e2570eb3a0f06d81c61d2c4b8
|
React-CoreModules: 217bd14904491c7b9940ff8b34a3fe08013c2f14
|
||||||
React-cxxreact: c1dc71b30653cfb4770efdafcbdc0ad6d388baab
|
React-cxxreact: 0090588ae6660c4615d3629fdd5c768d0983add4
|
||||||
React-jsi: 74341196d9547cbcbcfa4b3bbbf03af56431d5a1
|
React-jsi: 5de8204706bd872b78ea646aee5d2561ca1214b6
|
||||||
React-jsiexecutor: 06a9c77b56902ae7ffcdd7a4905f664adc5d237b
|
React-jsiexecutor: 124e8f99992490d0d13e0649d950d3e1aae06fe9
|
||||||
React-jsinspector: 0ae35a37b20d5e031eb020a69cc5afdbd6406301
|
React-jsinspector: 500a59626037be5b3b3d89c5151bc3baa9abf1a9
|
||||||
react-native-blur: cad4d93b364f91e7b7931b3fa935455487e5c33c
|
react-native-blur: cad4d93b364f91e7b7931b3fa935455487e5c33c
|
||||||
react-native-cameraroll: 88f4e62d9ecd0e1f253abe4f685474f2ea14bfa2
|
react-native-cameraroll: 88f4e62d9ecd0e1f253abe4f685474f2ea14bfa2
|
||||||
react-native-slider: e99fc201cefe81270fc9d81714a7a0f5e566b168
|
react-native-slider: e99fc201cefe81270fc9d81714a7a0f5e566b168
|
||||||
react-native-video: 0bb76b6d6b77da3009611586c7dbf817b947f30e
|
react-native-video: 0bb76b6d6b77da3009611586c7dbf817b947f30e
|
||||||
React-perflogger: 9c547d8f06b9bf00cb447f2b75e8d7f19b7e02af
|
React-perflogger: aad6d4b4a267936b3667260d1f649b6f6069a675
|
||||||
React-RCTActionSheet: 3080b6e12e0e1a5b313c8c0050699b5c794a1b11
|
React-RCTActionSheet: fc376be462c9c8d6ad82c0905442fd77f82a9d2a
|
||||||
React-RCTAnimation: 3f96f21a497ae7dabf4d2f150ee43f906aaf516f
|
React-RCTAnimation: ba0a1c3a2738be224a08092fa7f1b444ab77d309
|
||||||
React-RCTBlob: 283b8e5025e7f954176bc48164f846909002f3ed
|
React-RCTBlob: f758d4403fc5828a326dc69e27b41e1a92f34947
|
||||||
React-RCTImage: 5088a484faac78f2d877e1b79125d3bb1ea94a16
|
React-RCTImage: ce57088705f4a8d03f6594b066a59c29143ba73e
|
||||||
React-RCTLinking: 5e8fbb3e9a8bc2e4e3eb15b1eb8bda5fcac27b8c
|
React-RCTLinking: 852a3a95c65fa63f657a4b4e2d3d83a815e00a7c
|
||||||
React-RCTNetwork: 38ec277217b1e841d5e6a1fa78da65b9212ccb28
|
React-RCTNetwork: 9d7ccb8a08d522d71700b4fb677d9fa28cccd118
|
||||||
React-RCTSettings: 242d6e692108c3de4f3bb74b7586a8799e9ab070
|
React-RCTSettings: d8aaf4389ff06114dee8c42ef5f0f2915946011e
|
||||||
React-RCTText: 8746736ac8eb5a4a74719aa695b7a236a93a83d2
|
React-RCTText: 809c12ed6b261796ba056c04fcd20d8b90bcc81d
|
||||||
React-RCTVibration: 0fd6b21751a33cb72fce1a4a33ab9678416d307a
|
React-RCTVibration: 4b99a7f5c6c0abbc5256410cc5425fb8531986e1
|
||||||
React-runtimeexecutor: cad74a1eaa53ee6e7a3620231939d8fe2c6afcf0
|
React-runtimeexecutor: ff951a0c241bfaefc4940a3f1f1a229e7cb32fa6
|
||||||
ReactCommon: cfe2b7fd20e0dbd2d1185cd7d8f99633fbc5ff05
|
ReactCommon: bedc99ed4dae329c4fcf128d0c31b9115e5365ca
|
||||||
ReactNativeNavigation: 63321d37e8172bdcc1fbb93e77cffc74a0ba6d20
|
ReactNativeNavigation: 1357861a63f5d4da6ee099062c4d3473d777c86a
|
||||||
RNGestureHandler: a479ebd5ed4221a810967000735517df0d2db211
|
RNGestureHandler: a479ebd5ed4221a810967000735517df0d2db211
|
||||||
RNReanimated: 9c13c86454bfd54dab7505c1a054470bfecd2563
|
RNReanimated: 9c13c86454bfd54dab7505c1a054470bfecd2563
|
||||||
RNStaticSafeAreaInsets: 6103cf09647fa427186d30f67b0f5163c1ae8252
|
RNStaticSafeAreaInsets: 6103cf09647fa427186d30f67b0f5163c1ae8252
|
||||||
RNVectorIcons: 31cebfcf94e8cf8686eb5303ae0357da64d7a5a4
|
RNVectorIcons: 31cebfcf94e8cf8686eb5303ae0357da64d7a5a4
|
||||||
VisionCamera: 117cb3364d4f23fb786a60a8942031ba34bb039a
|
VisionCamera: d274e912758134d5275d1ee3b9873d40d1fbb2a1
|
||||||
Yoga: 8c8436d4171c87504c648ae23b1d81242bdf3bbf
|
Yoga: a7de31c64fe738607e7a3803e3f591a4b1df7393
|
||||||
|
|
||||||
PODFILE CHECKSUM: 4b093c1d474775c2eac3268011e4b0b80929d3a2
|
PODFILE CHECKSUM: 4b093c1d474775c2eac3268011e4b0b80929d3a2
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/**
|
/**
|
||||||
* Copyright (c) Facebook, Inc. and its affiliates.
|
* Copyright (c) mrousavy
|
||||||
*
|
*
|
||||||
* This source code is licensed under the MIT license found in the
|
* This source code is licensed under the MIT license found in the
|
||||||
* LICENSE file in the root directory of this source tree.
|
* LICENSE file in the root directory of this source tree.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/**
|
/**
|
||||||
* Copyright (c) Facebook, Inc. and its affiliates.
|
* Copyright (c) mrousavy
|
||||||
*
|
*
|
||||||
* This source code is licensed under the MIT license found in the
|
* This source code is licensed under the MIT license found in the
|
||||||
* LICENSE file in the root directory of this source tree.
|
* LICENSE file in the root directory of this source tree.
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/**
|
/**
|
||||||
* Copyright (c) Facebook, Inc. and its affiliates.
|
* Copyright (c) mrousavy
|
||||||
*
|
*
|
||||||
* This source code is licensed under the MIT license found in the
|
* This source code is licensed under the MIT license found in the
|
||||||
* LICENSE file in the root directory of this source tree.
|
* LICENSE file in the root directory of this source tree.
|
||||||
|
@ -12,12 +12,12 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@react-native-community/blur": "^3.6.0",
|
"@react-native-community/blur": "^3.6.0",
|
||||||
"@react-native-community/cameraroll": "^4.0.2",
|
"@react-native-community/cameraroll": "^4.0.4",
|
||||||
"@react-native-community/slider": "^3.0.3",
|
"@react-native-community/slider": "^3.0.3",
|
||||||
"react": "17.0.2",
|
"react": "^17.0.2",
|
||||||
"react-native": "0.64",
|
"react-native": "^0.64.1",
|
||||||
"react-native-gesture-handler": "^1.10.3",
|
"react-native-gesture-handler": "^1.10.3",
|
||||||
"react-native-navigation": "7.8.4-snapshot.1439",
|
"react-native-navigation": "7.15.0-snapshot.1548",
|
||||||
"react-native-pressable-opacity": "^1.0.4",
|
"react-native-pressable-opacity": "^1.0.4",
|
||||||
"react-native-reanimated": "^2.2.0",
|
"react-native-reanimated": "^2.2.0",
|
||||||
"react-native-static-safe-area-insets": "^2.1.1",
|
"react-native-static-safe-area-insets": "^2.1.1",
|
||||||
@ -25,25 +25,25 @@
|
|||||||
"react-native-video": "^5.1.1"
|
"react-native-video": "^5.1.1"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@babel/core": "^7.14.0",
|
"@babel/core": "^7.14.3",
|
||||||
"@babel/runtime": "^7.14.0",
|
"@babel/runtime": "^7.14.0",
|
||||||
"@react-native-community/eslint-config": "^2.0.0",
|
"@react-native-community/eslint-config": "^2.0.0",
|
||||||
"@react-native-community/eslint-plugin": "^1.1.0",
|
"@react-native-community/eslint-plugin": "^1.1.0",
|
||||||
"@types/react": "^17.0.4",
|
"@types/react": "^17.0.8",
|
||||||
"@types/react-native": "^0.64.4",
|
"@types/react-native": "^0.64.8",
|
||||||
"@types/react-native-vector-icons": "^6.4.6",
|
"@types/react-native-vector-icons": "^6.4.6",
|
||||||
"@types/react-native-video": "^5.0.4",
|
"@types/react-native-video": "^5.0.5",
|
||||||
"@typescript-eslint/eslint-plugin": "^4.22.0",
|
"@typescript-eslint/eslint-plugin": "^4.26.0",
|
||||||
"@typescript-eslint/parser": "^4.22.0",
|
"@typescript-eslint/parser": "^4.26.0",
|
||||||
"babel-plugin-module-resolver": "^4.0.0",
|
"babel-plugin-module-resolver": "^4.1.0",
|
||||||
"eslint": "^7.25.0",
|
"eslint": "^7.25.0",
|
||||||
"eslint-config-prettier": "^8.3.0",
|
"eslint-config-prettier": "^8.3.0",
|
||||||
"eslint-plugin-prettier": "^3.4.0",
|
"eslint-plugin-prettier": "^3.4.0",
|
||||||
"eslint-plugin-react-hooks": "^4.2.0",
|
"eslint-plugin-react-hooks": "^4.2.0",
|
||||||
"eslint-plugin-react-native": "^3.10.0",
|
"eslint-plugin-react-native": "^3.11.0",
|
||||||
"metro-config": "^0.66.0",
|
"metro-config": "^0.66.0",
|
||||||
"metro-react-native-babel-preset": "^0.66.0",
|
"metro-react-native-babel-preset": "^0.66.0",
|
||||||
"prettier": "^2.2.1",
|
"prettier": "^2.2.1",
|
||||||
"typescript": "^4.2.4"
|
"typescript": "4.2.4"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -127,9 +127,6 @@ export const MediaPage: NavigationFunctionComponent<MediaProps> = ({ componentId
|
|||||||
};
|
};
|
||||||
|
|
||||||
MediaPage.options = {
|
MediaPage.options = {
|
||||||
modal: {
|
|
||||||
swipeToDismiss: false,
|
|
||||||
},
|
|
||||||
modalPresentationStyle: OptionsModalPresentationStyle.overCurrentContext,
|
modalPresentationStyle: OptionsModalPresentationStyle.overCurrentContext,
|
||||||
animations: {
|
animations: {
|
||||||
showModal: {
|
showModal: {
|
||||||
|
1100
example/yarn.lock
1100
example/yarn.lock
File diff suppressed because it is too large
Load Diff
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 09.11.20.
|
// Created by Marc Rousavy on 09.11.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 14.01.21.
|
// Created by Marc Rousavy on 14.01.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import Foundation
|
import Foundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 22.03.21.
|
// Created by Marc Rousavy on 22.03.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import Foundation
|
import Foundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 26.03.21.
|
// Created by Marc Rousavy on 26.03.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
@ -22,10 +22,7 @@ extension CameraView {
|
|||||||
try addAudioInput()
|
try addAudioInput()
|
||||||
|
|
||||||
let audioSession = AVAudioSession.sharedInstance()
|
let audioSession = AVAudioSession.sharedInstance()
|
||||||
if audioSession.category != .playAndRecord {
|
try audioSession.setCategoryIfNotSet(AVAudioSession.Category.playAndRecord, options: [.mixWithOthers, .allowBluetoothA2DP, .defaultToSpeaker])
|
||||||
// allow background music playback
|
|
||||||
try audioSession.setCategory(AVAudioSession.Category.playAndRecord, options: [.mixWithOthers, .allowBluetoothA2DP, .defaultToSpeaker])
|
|
||||||
}
|
|
||||||
audioSession.trySetAllowHaptics(true)
|
audioSession.trySetAllowHaptics(true)
|
||||||
|
|
||||||
// activate current audio session because camera is active
|
// activate current audio session because camera is active
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 26.03.21.
|
// Created by Marc Rousavy on 26.03.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 19.02.21.
|
// Created by Marc Rousavy on 19.02.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import Foundation
|
import Foundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 16.12.20.
|
// Created by Marc Rousavy on 16.12.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 16.12.20.
|
// Created by Marc Rousavy on 16.12.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 18.12.20.
|
// Created by Marc Rousavy on 18.12.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import Foundation
|
import Foundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 09.11.20.
|
// Created by Marc Rousavy on 09.11.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 09.11.20.
|
// Created by Marc Rousavy on 09.11.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#import <Foundation/Foundation.h>
|
#import <Foundation/Foundation.h>
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 09.11.20.
|
// Created by Marc Rousavy on 09.11.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 05.05.21.
|
// Created by Marc Rousavy on 05.05.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
21
ios/Extensions/AVAudioSession+setCategoryIfNotSet.swift
Normal file
21
ios/Extensions/AVAudioSession+setCategoryIfNotSet.swift
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
//
|
||||||
|
// AVAudioSession+trySetCategory.swift
|
||||||
|
// VisionCamera
|
||||||
|
//
|
||||||
|
// Created by Marc Rousavy on 01.06.21.
|
||||||
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
|
//
|
||||||
|
|
||||||
|
import AVFoundation
|
||||||
|
import Foundation
|
||||||
|
|
||||||
|
extension AVAudioSession {
|
||||||
|
/**
|
||||||
|
Calls [setCategory] if the given category or options are not equal to the currently set category and options.
|
||||||
|
*/
|
||||||
|
func setCategoryIfNotSet(_ category: AVAudioSession.Category, options: AVAudioSession.CategoryOptions = []) throws {
|
||||||
|
if self.category != category || categoryOptions.rawValue != options.rawValue {
|
||||||
|
try setCategory(category, options: options)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 26.03.21.
|
// Created by Marc Rousavy on 26.03.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 07.01.21.
|
// Created by Marc Rousavy on 07.01.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 10.01.21.
|
// Created by Marc Rousavy on 10.01.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 10.01.21.
|
// Created by Marc Rousavy on 10.01.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 19.12.20.
|
// Created by Marc Rousavy on 19.12.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 15.01.21.
|
// Created by Marc Rousavy on 15.01.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 15.01.21.
|
// Created by Marc Rousavy on 15.01.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 18.01.21.
|
// Created by Marc Rousavy on 18.01.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 18.01.21.
|
// Created by Marc Rousavy on 18.01.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 15.01.21.
|
// Created by Marc Rousavy on 15.01.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 10.01.21.
|
// Created by Marc Rousavy on 10.01.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import Foundation
|
import Foundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 15.03.21.
|
// Created by Marc Rousavy on 15.03.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 22.03.21.
|
// Created by Marc Rousavy on 22.03.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
@ -18,7 +18,7 @@ class JSI_EXPORT FrameHostObject: public Frame, public jsi::HostObject {
|
|||||||
public:
|
public:
|
||||||
explicit FrameHostObject(CMSampleBufferRef buffer): Frame(buffer) {}
|
explicit FrameHostObject(CMSampleBufferRef buffer): Frame(buffer) {}
|
||||||
~FrameHostObject();
|
~FrameHostObject();
|
||||||
|
|
||||||
public:
|
public:
|
||||||
jsi::Value get(jsi::Runtime&, const jsi::PropNameID& name) override;
|
jsi::Value get(jsi::Runtime&, const jsi::PropNameID& name) override;
|
||||||
std::vector<jsi::PropNameID> getPropertyNames(jsi::Runtime& rt) override;
|
std::vector<jsi::PropNameID> getPropertyNames(jsi::Runtime& rt) override;
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 22.03.21.
|
// Created by Marc Rousavy on 22.03.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#import "FrameHostObject.h"
|
#import "FrameHostObject.h"
|
||||||
@ -25,8 +25,8 @@ std::vector<jsi::PropNameID> FrameHostObject::getPropertyNames(jsi::Runtime& rt)
|
|||||||
|
|
||||||
jsi::Value FrameHostObject::get(jsi::Runtime& runtime, const jsi::PropNameID& propName) {
|
jsi::Value FrameHostObject::get(jsi::Runtime& runtime, const jsi::PropNameID& propName) {
|
||||||
auto name = propName.utf8(runtime);
|
auto name = propName.utf8(runtime);
|
||||||
|
|
||||||
|
|
||||||
if (name == "Symbol.toPrimitive") {
|
if (name == "Symbol.toPrimitive") {
|
||||||
// not implemented
|
// not implemented
|
||||||
return jsi::Value::undefined();
|
return jsi::Value::undefined();
|
||||||
@ -40,13 +40,13 @@ jsi::Value FrameHostObject::get(jsi::Runtime& runtime, const jsi::PropNameID& pr
|
|||||||
auto imageBuffer = CMSampleBufferGetImageBuffer(buffer);
|
auto imageBuffer = CMSampleBufferGetImageBuffer(buffer);
|
||||||
auto width = CVPixelBufferGetWidth(imageBuffer);
|
auto width = CVPixelBufferGetWidth(imageBuffer);
|
||||||
auto height = CVPixelBufferGetHeight(imageBuffer);
|
auto height = CVPixelBufferGetHeight(imageBuffer);
|
||||||
|
|
||||||
NSMutableString* string = [NSMutableString stringWithFormat:@"%lu x %lu Frame", width, height];
|
NSMutableString* string = [NSMutableString stringWithFormat:@"%lu x %lu Frame", width, height];
|
||||||
return jsi::String::createFromUtf8(runtime, string.UTF8String);
|
return jsi::String::createFromUtf8(runtime, string.UTF8String);
|
||||||
};
|
};
|
||||||
return jsi::Function::createFromHostFunction(runtime, jsi::PropNameID::forUtf8(runtime, "toString"), 0, toString);
|
return jsi::Function::createFromHostFunction(runtime, jsi::PropNameID::forUtf8(runtime, "toString"), 0, toString);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (name == "isValid") {
|
if (name == "isValid") {
|
||||||
auto isValid = buffer != nil && CMSampleBufferIsValid(buffer);
|
auto isValid = buffer != nil && CMSampleBufferIsValid(buffer);
|
||||||
return jsi::Value(isValid);
|
return jsi::Value(isValid);
|
||||||
@ -79,7 +79,7 @@ jsi::Value FrameHostObject::get(jsi::Runtime& runtime, const jsi::PropNameID& pr
|
|||||||
// TODO: Actually return the pixels of the buffer. Not sure if this will be a huge performance hit or not
|
// TODO: Actually return the pixels of the buffer. Not sure if this will be a huge performance hit or not
|
||||||
return jsi::Array(runtime, 0);
|
return jsi::Array(runtime, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
return jsi::Value::undefined();
|
return jsi::Value::undefined();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 11.03.21.
|
// Created by Marc Rousavy on 11.03.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 01.05.21.
|
// Created by Marc Rousavy on 01.05.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#ifndef FrameProcessorPlugin_h
|
#ifndef FrameProcessorPlugin_h
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 24.03.21.
|
// Created by Marc Rousavy on 24.03.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 24.03.21.
|
// Created by Marc Rousavy on 24.03.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#import "FrameProcessorPluginRegistry.h"
|
#import "FrameProcessorPluginRegistry.h"
|
||||||
@ -27,10 +27,10 @@ static BOOL _isValid = YES;
|
|||||||
|
|
||||||
+ (void) addFrameProcessorPlugin:(NSString*)name callback:(FrameProcessorPlugin)callback {
|
+ (void) addFrameProcessorPlugin:(NSString*)name callback:(FrameProcessorPlugin)callback {
|
||||||
NSAssert(_isValid, @"Tried to add Frame Processor Plugin but Frame Processor Registry has already registered all plugins!");
|
NSAssert(_isValid, @"Tried to add Frame Processor Plugin but Frame Processor Registry has already registered all plugins!");
|
||||||
|
|
||||||
BOOL alreadyExists = [[FrameProcessorPluginRegistry frameProcessorPlugins] valueForKey:name] != nil;
|
BOOL alreadyExists = [[FrameProcessorPluginRegistry frameProcessorPlugins] valueForKey:name] != nil;
|
||||||
NSAssert(!alreadyExists, @"Tried to two Frame Processor Plugins with the same name! Either choose unique names, or remove the unused plugin.");
|
NSAssert(!alreadyExists, @"Tried to two Frame Processor Plugins with the same name! Either choose unique names, or remove the unused plugin.");
|
||||||
|
|
||||||
[[FrameProcessorPluginRegistry frameProcessorPlugins] setValue:callback forKey:name];
|
[[FrameProcessorPluginRegistry frameProcessorPlugins] setValue:callback forKey:name];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 23.03.21.
|
// Created by Marc Rousavy on 23.03.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 23.03.21.
|
// Created by Marc Rousavy on 23.03.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#import <Foundation/Foundation.h>
|
#import <Foundation/Foundation.h>
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 15.03.21.
|
// Created by Marc Rousavy on 15.03.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 15.03.21.
|
// Created by Marc Rousavy on 15.03.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#import "FrameProcessorUtils.h"
|
#import "FrameProcessorUtils.h"
|
||||||
@ -14,19 +14,19 @@
|
|||||||
|
|
||||||
FrameProcessorCallback convertJSIFunctionToFrameProcessorCallback(jsi::Runtime &runtime, const jsi::Function &value) {
|
FrameProcessorCallback convertJSIFunctionToFrameProcessorCallback(jsi::Runtime &runtime, const jsi::Function &value) {
|
||||||
__block auto cb = value.getFunction(runtime);
|
__block auto cb = value.getFunction(runtime);
|
||||||
|
|
||||||
return ^(CMSampleBufferRef buffer) {
|
return ^(CMSampleBufferRef buffer) {
|
||||||
#if DEBUG
|
#if DEBUG
|
||||||
std::chrono::steady_clock::time_point begin = std::chrono::steady_clock::now();
|
std::chrono::steady_clock::time_point begin = std::chrono::steady_clock::now();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
auto frame = std::make_shared<FrameHostObject>(buffer);
|
auto frame = std::make_shared<FrameHostObject>(buffer);
|
||||||
try {
|
try {
|
||||||
cb.call(runtime, jsi::Object::createFromHostObject(runtime, frame));
|
cb.call(runtime, jsi::Object::createFromHostObject(runtime, frame));
|
||||||
} catch (jsi::JSError& jsError) {
|
} catch (jsi::JSError& jsError) {
|
||||||
NSLog(@"Frame Processor threw an error: %s", jsError.getMessage().c_str());
|
NSLog(@"Frame Processor threw an error: %s", jsError.getMessage().c_str());
|
||||||
}
|
}
|
||||||
|
|
||||||
#if DEBUG
|
#if DEBUG
|
||||||
std::chrono::steady_clock::time_point end = std::chrono::steady_clock::now();
|
std::chrono::steady_clock::time_point end = std::chrono::steady_clock::now();
|
||||||
auto duration = std::chrono::duration_cast<std::chrono::milliseconds>(end - begin).count();
|
auto duration = std::chrono::duration_cast<std::chrono::milliseconds>(end - begin).count();
|
||||||
@ -34,7 +34,7 @@ FrameProcessorCallback convertJSIFunctionToFrameProcessorCallback(jsi::Runtime &
|
|||||||
NSLog(@"Warning: Frame Processor function took %lld ms to execute. This blocks the video queue from recording, optimize your frame processor!", duration);
|
NSLog(@"Warning: Frame Processor function took %lld ms to execute. This blocks the video queue from recording, optimize your frame processor!", duration);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Manually free the buffer because:
|
// Manually free the buffer because:
|
||||||
// 1. we are sure we don't need it anymore, the frame processor worklet has finished executing.
|
// 1. we are sure we don't need it anymore, the frame processor worklet has finished executing.
|
||||||
// 2. we don't know when the JS runtime garbage collects this object, it might be holding it for a few more frames
|
// 2. we don't know when the JS runtime garbage collects this object, it might be holding it for a few more frames
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 01.05.21.
|
// Created by Marc Rousavy on 01.05.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 29.12.20.
|
// Created by Marc Rousavy on 29.12.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 19.12.20.
|
// Created by Marc Rousavy on 19.12.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 15.12.20.
|
// Created by Marc Rousavy on 15.12.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 15.12.20.
|
// Created by Marc Rousavy on 15.12.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 29.12.20.
|
// Created by Marc Rousavy on 29.12.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 15.12.20.
|
// Created by Marc Rousavy on 15.12.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 18.12.20.
|
// Created by Marc Rousavy on 18.12.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 15.12.20.
|
// Created by Marc Rousavy on 15.12.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 15.12.20.
|
// Created by Marc Rousavy on 15.12.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 29.12.20.
|
// Created by Marc Rousavy on 29.12.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 01.05.21.
|
// Created by Marc Rousavy on 01.05.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 15.12.20.
|
// Created by Marc Rousavy on 15.12.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 18.12.20.
|
// Created by Marc Rousavy on 18.12.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import Foundation
|
import Foundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 15.12.20.
|
// Created by Marc Rousavy on 15.12.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 30.04.21.
|
// Created by Marc Rousavy on 30.04.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 02.05.21.
|
// Created by Marc Rousavy on 02.05.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#import "JSIUtils.h"
|
#import "JSIUtils.h"
|
||||||
@ -146,7 +146,7 @@ id convertJSIValueToObjCObject(jsi::Runtime &runtime, const jsi::Value &value, s
|
|||||||
}
|
}
|
||||||
return convertJSIObjectToNSDictionary(runtime, o, jsInvoker);
|
return convertJSIObjectToNSDictionary(runtime, o, jsInvoker);
|
||||||
}
|
}
|
||||||
|
|
||||||
throw std::runtime_error("Unsupported jsi::jsi::Value kind");
|
throw std::runtime_error("Unsupported jsi::jsi::Value kind");
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -158,30 +158,30 @@ RCTResponseSenderBlock convertJSIFunctionToCallback(jsi::Runtime &runtime, const
|
|||||||
if (wrapperWasCalled) {
|
if (wrapperWasCalled) {
|
||||||
throw std::runtime_error("callback arg cannot be called more than once");
|
throw std::runtime_error("callback arg cannot be called more than once");
|
||||||
}
|
}
|
||||||
|
|
||||||
auto strongWrapper = weakWrapper.lock();
|
auto strongWrapper = weakWrapper.lock();
|
||||||
if (!strongWrapper) {
|
if (!strongWrapper) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
strongWrapper->jsInvoker().invokeAsync([weakWrapper, responses]() {
|
strongWrapper->jsInvoker().invokeAsync([weakWrapper, responses]() {
|
||||||
auto strongWrapper2 = weakWrapper.lock();
|
auto strongWrapper2 = weakWrapper.lock();
|
||||||
if (!strongWrapper2) {
|
if (!strongWrapper2) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const jsi::Value* args = convertNSArrayToJSICStyleArray(strongWrapper2->runtime(), responses);
|
const jsi::Value* args = convertNSArrayToJSICStyleArray(strongWrapper2->runtime(), responses);
|
||||||
strongWrapper2->callback().call(strongWrapper2->runtime(), args, static_cast<size_t>(responses.count));
|
strongWrapper2->callback().call(strongWrapper2->runtime(), args, static_cast<size_t>(responses.count));
|
||||||
strongWrapper2->destroy();
|
strongWrapper2->destroy();
|
||||||
delete[] args;
|
delete[] args;
|
||||||
});
|
});
|
||||||
|
|
||||||
wrapperWasCalled = YES;
|
wrapperWasCalled = YES;
|
||||||
};
|
};
|
||||||
|
|
||||||
if (RCTTurboModuleBlockCopyEnabled()) {
|
if (RCTTurboModuleBlockCopyEnabled()) {
|
||||||
return [callback copy];
|
return [callback copy];
|
||||||
}
|
}
|
||||||
|
|
||||||
return callback;
|
return callback;
|
||||||
}
|
}
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 15.01.21.
|
// Created by Marc Rousavy on 15.01.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import Foundation
|
import Foundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 14.01.21.
|
// Created by Marc Rousavy on 14.01.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import Foundation
|
import Foundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 23.03.21.
|
// Created by Marc Rousavy on 23.03.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 23.03.21.
|
// Created by Marc Rousavy on 23.03.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
#import "RCTBridge+runOnJS.h"
|
#import "RCTBridge+runOnJS.h"
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// Cuvent
|
// Cuvent
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 15.12.20.
|
// Created by Marc Rousavy on 15.12.20.
|
||||||
// Copyright © 2020 Facebook. All rights reserved.
|
// Copyright © 2020 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import Foundation
|
import Foundation
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
// VisionCamera
|
// VisionCamera
|
||||||
//
|
//
|
||||||
// Created by Marc Rousavy on 01.05.21.
|
// Created by Marc Rousavy on 01.05.21.
|
||||||
// Copyright © 2021 Facebook. All rights reserved.
|
// Copyright © 2021 mrousavy. All rights reserved.
|
||||||
//
|
//
|
||||||
|
|
||||||
import AVFoundation
|
import AVFoundation
|
||||||
|
@ -8,6 +8,7 @@
|
|||||||
|
|
||||||
/* Begin PBXBuildFile section */
|
/* Begin PBXBuildFile section */
|
||||||
B80C0E00260BDDF7001699AB /* FrameProcessorPluginRegistry.mm in Sources */ = {isa = PBXBuildFile; fileRef = B80C0DFF260BDDF7001699AB /* FrameProcessorPluginRegistry.mm */; };
|
B80C0E00260BDDF7001699AB /* FrameProcessorPluginRegistry.mm in Sources */ = {isa = PBXBuildFile; fileRef = B80C0DFF260BDDF7001699AB /* FrameProcessorPluginRegistry.mm */; };
|
||||||
|
B80E06A0266632F000728644 /* AVAudioSession+setCategoryIfNotSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = B80E069F266632F000728644 /* AVAudioSession+setCategoryIfNotSet.swift */; };
|
||||||
B8103E1C25FF553B007A1684 /* FrameProcessorUtils.mm in Sources */ = {isa = PBXBuildFile; fileRef = B8103E1B25FF553B007A1684 /* FrameProcessorUtils.mm */; };
|
B8103E1C25FF553B007A1684 /* FrameProcessorUtils.mm in Sources */ = {isa = PBXBuildFile; fileRef = B8103E1B25FF553B007A1684 /* FrameProcessorUtils.mm */; };
|
||||||
B82FBA962614B69D00909718 /* RCTBridge+runOnJS.mm in Sources */ = {isa = PBXBuildFile; fileRef = B82FBA952614B69D00909718 /* RCTBridge+runOnJS.mm */; };
|
B82FBA962614B69D00909718 /* RCTBridge+runOnJS.mm in Sources */ = {isa = PBXBuildFile; fileRef = B82FBA952614B69D00909718 /* RCTBridge+runOnJS.mm */; };
|
||||||
B84760A62608EE7C004C3180 /* FrameHostObject.mm in Sources */ = {isa = PBXBuildFile; fileRef = B84760A52608EE7C004C3180 /* FrameHostObject.mm */; };
|
B84760A62608EE7C004C3180 /* FrameHostObject.mm in Sources */ = {isa = PBXBuildFile; fileRef = B84760A52608EE7C004C3180 /* FrameHostObject.mm */; };
|
||||||
@ -74,6 +75,7 @@
|
|||||||
B80C0DFE260BDD97001699AB /* FrameProcessorPluginRegistry.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = FrameProcessorPluginRegistry.h; sourceTree = "<group>"; };
|
B80C0DFE260BDD97001699AB /* FrameProcessorPluginRegistry.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = FrameProcessorPluginRegistry.h; sourceTree = "<group>"; };
|
||||||
B80C0DFF260BDDF7001699AB /* FrameProcessorPluginRegistry.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = FrameProcessorPluginRegistry.mm; sourceTree = "<group>"; };
|
B80C0DFF260BDDF7001699AB /* FrameProcessorPluginRegistry.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = FrameProcessorPluginRegistry.mm; sourceTree = "<group>"; };
|
||||||
B80D67A825FA25380008FE8D /* FrameProcessorCallback.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = FrameProcessorCallback.h; sourceTree = "<group>"; };
|
B80D67A825FA25380008FE8D /* FrameProcessorCallback.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = FrameProcessorCallback.h; sourceTree = "<group>"; };
|
||||||
|
B80E069F266632F000728644 /* AVAudioSession+setCategoryIfNotSet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "AVAudioSession+setCategoryIfNotSet.swift"; sourceTree = "<group>"; };
|
||||||
B8103E1B25FF553B007A1684 /* FrameProcessorUtils.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = FrameProcessorUtils.mm; sourceTree = "<group>"; };
|
B8103E1B25FF553B007A1684 /* FrameProcessorUtils.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = FrameProcessorUtils.mm; sourceTree = "<group>"; };
|
||||||
B8103E1E25FF5550007A1684 /* FrameProcessorUtils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = FrameProcessorUtils.h; sourceTree = "<group>"; };
|
B8103E1E25FF5550007A1684 /* FrameProcessorUtils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = FrameProcessorUtils.h; sourceTree = "<group>"; };
|
||||||
B8103E5725FF56F0007A1684 /* Frame.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Frame.h; sourceTree = "<group>"; };
|
B8103E5725FF56F0007A1684 /* Frame.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Frame.h; sourceTree = "<group>"; };
|
||||||
@ -183,6 +185,7 @@
|
|||||||
children = (
|
children = (
|
||||||
B8D22CDB2642DB4D00234472 /* AVAssetWriterInputPixelBufferAdaptor+initWithVideoSettings.swift */,
|
B8D22CDB2642DB4D00234472 /* AVAssetWriterInputPixelBufferAdaptor+initWithVideoSettings.swift */,
|
||||||
B86DC970260E2D5200FB17B2 /* AVAudioSession+trySetAllowHaptics.swift */,
|
B86DC970260E2D5200FB17B2 /* AVAudioSession+trySetAllowHaptics.swift */,
|
||||||
|
B80E069F266632F000728644 /* AVAudioSession+setCategoryIfNotSet.swift */,
|
||||||
B887516325E0102000DB86D6 /* AVCaptureDevice+neutralZoom.swift */,
|
B887516325E0102000DB86D6 /* AVCaptureDevice+neutralZoom.swift */,
|
||||||
B887516425E0102000DB86D6 /* AVCaptureDevice.Format+isBetterThan.swift */,
|
B887516425E0102000DB86D6 /* AVCaptureDevice.Format+isBetterThan.swift */,
|
||||||
B887516525E0102000DB86D6 /* AVCaptureDevice+isMultiCam.swift */,
|
B887516525E0102000DB86D6 /* AVCaptureDevice+isMultiCam.swift */,
|
||||||
@ -373,6 +376,7 @@
|
|||||||
B887518725E0102000DB86D6 /* CameraViewManager.m in Sources */,
|
B887518725E0102000DB86D6 /* CameraViewManager.m in Sources */,
|
||||||
B88751A925E0102000DB86D6 /* CameraView.swift in Sources */,
|
B88751A925E0102000DB86D6 /* CameraView.swift in Sources */,
|
||||||
B887519925E0102000DB86D6 /* AVCaptureVideoStabilizationMode+descriptor.swift in Sources */,
|
B887519925E0102000DB86D6 /* AVCaptureVideoStabilizationMode+descriptor.swift in Sources */,
|
||||||
|
B80E06A0266632F000728644 /* AVAudioSession+setCategoryIfNotSet.swift in Sources */,
|
||||||
B887519425E0102000DB86D6 /* MakeReactError.swift in Sources */,
|
B887519425E0102000DB86D6 /* MakeReactError.swift in Sources */,
|
||||||
B887519525E0102000DB86D6 /* ReactLogger.swift in Sources */,
|
B887519525E0102000DB86D6 /* ReactLogger.swift in Sources */,
|
||||||
B887519B25E0102000DB86D6 /* AVCaptureSession.Preset+descriptor.swift in Sources */,
|
B887519B25E0102000DB86D6 /* AVCaptureSession.Preset+descriptor.swift in Sources */,
|
||||||
|
21
package.json
21
package.json
@ -74,24 +74,23 @@
|
|||||||
"@react-native-community/eslint-config": "^2.0.0",
|
"@react-native-community/eslint-config": "^2.0.0",
|
||||||
"@react-native-community/eslint-plugin": "^1.1.0",
|
"@react-native-community/eslint-plugin": "^1.1.0",
|
||||||
"@release-it/conventional-changelog": "^2.0.0",
|
"@release-it/conventional-changelog": "^2.0.0",
|
||||||
"@types/react": "^17.0.4",
|
"@types/react": "^17.0.8",
|
||||||
"@types/react-native": "0.64.4",
|
"@types/react-native": "^0.64.8",
|
||||||
"@typescript-eslint/eslint-plugin": "^4.22.0",
|
"@typescript-eslint/eslint-plugin": "^4.26.0",
|
||||||
"@typescript-eslint/parser": "^4.22.0",
|
"@typescript-eslint/parser": "^4.26.0",
|
||||||
"eslint": "^7.25.0",
|
"eslint": "^7.27.0",
|
||||||
"eslint-config-prettier": "^8.3.0",
|
"eslint-config-prettier": "^8.3.0",
|
||||||
"eslint-plugin-prettier": "^3.4.0",
|
"eslint-plugin-prettier": "^3.4.0",
|
||||||
"eslint-plugin-react-hooks": "^4.2.0",
|
"eslint-plugin-react-hooks": "^4.2.0",
|
||||||
"eslint-plugin-react-native": "^3.10.0",
|
"eslint-plugin-react-native": "^3.11.0",
|
||||||
"jest": "^26.0.1",
|
"pod-install": "^0.1.23",
|
||||||
"pod-install": "^0.1.0",
|
|
||||||
"prettier": "^2.3.0",
|
"prettier": "^2.3.0",
|
||||||
"react": "17.0.2",
|
"react": "^17.0.2",
|
||||||
"react-native": "0.64.0",
|
"react-native": "^0.64.1",
|
||||||
"react-native-builder-bob": "^0.18.1",
|
"react-native-builder-bob": "^0.18.1",
|
||||||
"react-native-reanimated": "^2.2.0",
|
"react-native-reanimated": "^2.2.0",
|
||||||
"release-it": "^14.6.1",
|
"release-it": "^14.6.1",
|
||||||
"typescript": "^4.2.4"
|
"typescript": "4.2.4"
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"react": "*",
|
"react": "*",
|
||||||
|
@ -14,5 +14,6 @@ echo "Linting C++ code.."
|
|||||||
|
|
||||||
echo "Linting JS/TS code.."
|
echo "Linting JS/TS code.."
|
||||||
yarn lint --fix
|
yarn lint --fix
|
||||||
|
yarn typescript
|
||||||
|
|
||||||
echo "All done!"
|
echo "All done!"
|
||||||
|
@ -21,11 +21,17 @@ export const sortDevices = (left: CameraDevice, right: CameraDevice): number =>
|
|||||||
|
|
||||||
const leftHasWideAngle = left.devices.includes('wide-angle-camera');
|
const leftHasWideAngle = left.devices.includes('wide-angle-camera');
|
||||||
const rightHasWideAngle = right.devices.includes('wide-angle-camera');
|
const rightHasWideAngle = right.devices.includes('wide-angle-camera');
|
||||||
if (leftHasWideAngle) leftPoints += 5;
|
if (leftHasWideAngle) leftPoints += 2;
|
||||||
if (rightHasWideAngle) rightPoints += 5;
|
if (rightHasWideAngle) rightPoints += 2;
|
||||||
|
|
||||||
if (left.devices.length > right.devices.length) leftPoints += 3;
|
// telephoto cameras often have very poor quality.
|
||||||
if (right.devices.length > left.devices.length) rightPoints += 3;
|
const leftHasTelephoto = left.devices.includes('telephoto-camera');
|
||||||
|
const rightHasTelephoto = right.devices.includes('telephoto-camera');
|
||||||
|
if (leftHasTelephoto) leftPoints -= 2;
|
||||||
|
if (rightHasTelephoto) rightPoints -= 2;
|
||||||
|
|
||||||
|
if (left.devices.length > right.devices.length) leftPoints += 1;
|
||||||
|
if (right.devices.length > left.devices.length) rightPoints += 1;
|
||||||
|
|
||||||
return rightPoints - leftPoints;
|
return rightPoints - leftPoints;
|
||||||
};
|
};
|
||||||
@ -46,14 +52,22 @@ export const sortFormats = (left: CameraDeviceFormat, right: CameraDeviceFormat)
|
|||||||
rightPoints = 0;
|
rightPoints = 0;
|
||||||
|
|
||||||
// we downscale the points so much that we are in smaller number ranges for future calculations
|
// we downscale the points so much that we are in smaller number ranges for future calculations
|
||||||
// e.g. for 4k (4096), this adds 4 points.
|
// e.g. for 4k (4096), this adds 8 points.
|
||||||
leftPoints += Math.round(left.photoWidth / 1000);
|
leftPoints += Math.round(left.photoWidth / 500);
|
||||||
rightPoints += Math.round(right.photoWidth / 1000);
|
rightPoints += Math.round(right.photoWidth / 500);
|
||||||
|
// e.g. for 4k (4096), this adds 8 points.
|
||||||
|
if (left.videoWidth != null && right.videoWidth != null) {
|
||||||
|
leftPoints += Math.round(left.videoWidth / 500);
|
||||||
|
rightPoints += Math.round(right.videoWidth / 500);
|
||||||
|
}
|
||||||
|
|
||||||
|
// we downscale the points here as well, so if left has 16:9 and right has 21:9, this roughly
|
||||||
|
// adds 5 points. If the difference is smaller, e.g. 16:9 vs 17:9, this roughly adds a little
|
||||||
|
// bit over 1 point, just enough to overrule the FPS below.
|
||||||
const leftAspectRatioDiff = left.photoHeight / left.photoWidth - SCREEN_ASPECT_RATIO;
|
const leftAspectRatioDiff = left.photoHeight / left.photoWidth - SCREEN_ASPECT_RATIO;
|
||||||
const rightAspectRatioDiff = right.photoHeight / right.photoWidth - SCREEN_ASPECT_RATIO;
|
const rightAspectRatioDiff = right.photoHeight / right.photoWidth - SCREEN_ASPECT_RATIO;
|
||||||
leftPoints -= Math.abs(leftAspectRatioDiff) * 50;
|
leftPoints -= Math.abs(leftAspectRatioDiff) * 10;
|
||||||
rightPoints -= Math.abs(rightAspectRatioDiff) * 50;
|
rightPoints -= Math.abs(rightAspectRatioDiff) * 10;
|
||||||
|
|
||||||
return rightPoints - leftPoints;
|
return rightPoints - leftPoints;
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user