Commit Graph

681 Commits

Author SHA1 Message Date
Marc Rousavy
5919d46a46
fix: Make recorder less error-prone (#189)
* Abort recording if failed to start or empty frames

* Activate Audio Session on `cameraQueue`

* Double-check stop recording in callback

* Only call callback once

* Format

* Add description to `.aborted` error

* Update RecordingSession.swift

* Update AVAudioSession+updateCategory.swift

* Rename serial dispatch queues
2021-06-09 14:56:56 +02:00
Marc Rousavy
02168e1f28 chore(deps): Use stable version of react-native-navigation 2021-06-09 14:14:40 +02:00
Marc Rousavy
489d313451
docs: Update Zooming 2021-06-09 12:49:59 +02:00
Marc Rousavy
48a97eccdd docs: Move ANIMATED -> ZOOMING 2021-06-09 12:46:26 +02:00
Marc Rousavy
8e520c42fe
docs: Update zooming 2021-06-09 12:45:22 +02:00
Marc Rousavy
d60d58b57f
docs: Improve Zooming documentation 2021-06-09 12:32:28 +02:00
Marc Rousavy
b53b259790
Update FRAME_PROCESSORS_CREATE_OVERVIEW.mdx 2021-06-09 11:22:53 +02:00
Marc Rousavy
db2d52c74c
Update FRAME_PROCESSORS_CREATE_OVERVIEW.mdx 2021-06-09 11:22:08 +02:00
Marc Rousavy
14c16ebdd0
Update FRAME_PROCESSOR_CREATE_PLUGIN_IOS.mdx 2021-06-09 11:20:31 +02:00
Marc Rousavy
0fee78924f
Update FRAME_PROCESSORS_CREATE_OVERVIEW.mdx 2021-06-09 11:19:52 +02:00
Marc Rousavy
80e00dad03 chore: release 2.3.0 2021-06-09 11:15:26 +02:00
Marc Rousavy
16f2a7cdec
chore: Cleanup void returns (#187)
* Place `return` in `return [void]` on separate line

* format

* Update CameraView+RecordVideo.swift

* f
2021-06-09 11:14:49 +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
7025fc1cbe
docs: Remove NSNull 2021-06-08 15:24:56 +02:00
Marc Rousavy
4038db2e28
feat: Frame Processors: Allow returning Frames (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]
d87a892c05
chore(deps-dev): bump typescript from 4.2.4 to 4.3.2 (#158)
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:06:58 +02:00
Marc Rousavy
5508dae8b6
docs: Add missing dependency 2021-06-08 14:06:26 +02:00
dependabot[bot]
39a8ce9dc2
chore(deps-dev): bump prettier from 2.3.0 to 2.3.1 (#171)
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:27 +02:00
dependabot[bot]
bba8db809b
chore(deps-dev): bump eslint from 7.27.0 to 7.28.0 (#172)
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:58:23 +02:00
dependabot[bot]
978ac21847
chore(deps-dev): bump release-it from 14.7.0 to 14.8.0 (#173)
Bumps [release-it](https://github.com/release-it/release-it) from 14.7.0 to 14.8.0.
- [Release notes](https://github.com/release-it/release-it/releases)
- [Changelog](https://github.com/release-it/release-it/blob/master/CHANGELOG.md)
- [Commits](https://github.com/release-it/release-it/compare/14.7.0...14.8.0)

---
updated-dependencies:
- dependency-name: release-it
  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:58:17 +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
be30d55df5
docs: Frame Processor Java Types (#183)
* add a few spaces

* Update FRAME_PROCESSORS_CREATE_OVERVIEW.mdx

* Update FRAME_PROCESSORS_CREATE_OVERVIEW.mdx

* Update FRAME_PROCESSORS_CREATE_OVERVIEW.mdx

* Update FRAME_PROCESSORS_CREATE_OVERVIEW.mdx
2021-06-08 10:15:34 +02:00
Marc Rousavy
af805bd331 docs: Add Java types 2021-06-07 17:34:24 +02:00
Marc Rousavy
a02f378a4b
docs: Lifecycle (#182)
* Add docs for Lifecycle

* Update CAPTURING.mdx

* move

* Update DEVICES.mdx

* Update FRAME_PROCESSOR_PLUGIN_LIST.mdx

* f

* move FP

* separate focusing

* fix links
2021-06-07 15:55:20 +02:00
Marc Rousavy
2915b176b2 update docs 2021-06-07 15:09:16 +02:00
Marc Rousavy
ac40880df0 Update DEVICES.mdx 2021-06-07 15:04:49 +02:00
Marc Rousavy
0163f2c85c Update CAPTURING.mdx 2021-06-07 15:01:09 +02:00
Marc Rousavy
d8452b6ee0 Update CAPTURING.mdx 2021-06-07 15:00:21 +02:00
Marc Rousavy
9e58e38114 Update CAPTURING.mdx 2021-06-07 14:59:28 +02:00
Marc Rousavy
27bd8eae23 docs: Add note about iOS deployment target 2021-06-07 14:58:14 +02:00
Marc Rousavy
45e7105bdf
docs: Add api link (#181)
* Add API link to `supportsPhotoAndVideoCapture`

* Update DEVICES.mdx

* and -> or

* add link

* Update CAPTURING.mdx

* Update DEVICES.mdx

* Make links relative
2021-06-07 13:39:36 +02:00
Marc Rousavy
5f43b7e38e chore: release 2.2.0 2021-06-07 13:22:41 +02:00
Marc Rousavy
9eaa67441a
Update README.md 2021-06-07 13:19:42 +02:00
Marc Rousavy
232801439b
chore(deps): Upgrade CameraX to alpha05 (#180) 2021-06-07 13:15:49 +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
Sergei Mitrofanov
0f94c2a996
fix: Fix wrong permission errors thrown (#163) 2021-06-03 19:07:52 +02:00
Marc Rousavy
947f5df171 chore: release 2.1.0 2021-06-03 15:52:41 +02:00
Marc Rousavy
60c194f428 chore: Update bundle 2021-06-03 15:43:47 +02:00
Marc Rousavy
0b5d277514
feat: Video Stabilization (#160)
* Set video stabilization mode

* Fix video stabilization below iOS 13

* swift format
2021-06-03 15:42:02 +02:00
Marc Rousavy
e5fe5ab175 fix: async dispatch conditional 2021-06-03 15:41:43 +02:00
Marc Rousavy
ca0c0e92e0
fix: Synchronize Audio Frames with Video Frames using masterClock (#161)
* Synchronize Audio Frames with Video Frames using `masterClock`

* Update CameraView+RecordVideo.swift
2021-06-03 14:50:08 +02:00
Marc Rousavy
aaad8fc94a fix: GH action iOS build 2021-06-03 14:31:04 +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
8189173120
Update FRAME_PROCESSORS.mdx 2021-05-31 14:11:33 +02:00