8 Commits

Author SHA1 Message Date
AFathi 850198ed7d v. 1.12 2017-11-20 23:21:45 -05:00
Ahmed Fathi Bekhit aebc1e303d Update README.md 2017-11-15 01:47:21 -05:00
Ahmed Fathi Bekhit 33ddee03ed Update README.md 2017-11-14 20:54:24 -05:00
Ahmed Fathi Bekhit 9b6edaacd7 Update README.md 2017-11-14 20:53:16 -05:00
Ahmed Fathi Bekhit 2c93b1585d Update README.md 2017-11-14 20:52:44 -05:00
Ahmed Fathi Bekhit a3cca1ba5b Update README.md 2017-11-10 22:04:23 -05:00
Ahmed Fathi Bekhit afee84b1bb Update README.md 2017-11-10 13:53:29 -05:00
AFathi 1e6217fcac Example update 2017-11-07 16:54:36 -05:00
15 changed files with 41 additions and 9 deletions
+2 -2
View File
@@ -371,7 +371,7 @@
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = "";
DEVELOPMENT_TEAM = TB37P94YA8;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
"$(PROJECT_DIR)",
@@ -392,7 +392,7 @@
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = "";
DEVELOPMENT_TEAM = TB37P94YA8;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
"$(PROJECT_DIR)",
@@ -46,7 +46,7 @@ class SKViewController: UIViewController, ARSKViewDelegate, RenderARDelegate, Re
recorder?.renderAR = self
// Configure the renderer to perform additional image & video processing 👁
recorder?.onlyRenderWhileRecording = false
//recorder?.onlyRenderWhileRecording = false
// Set the UIViewController orientations
recorder?.inputViewOrientations = [.landscapeLeft, .landscapeRight, .portrait]
@@ -41,12 +41,15 @@ class ViewController: UIViewController, ARSCNViewDelegate, RenderARDelegate, Rec
// Set the recorder's delegate
recorder?.delegate = self
// Set the renderer's delegate
recorder?.renderAR = self
// Configure the renderer to perform additional image & video processing 👁
recorder?.onlyRenderWhileRecording = false
//recorder?.onlyRenderWhileRecording = false
// Configure ARKit content mode. Default is .auto
//recorder?.contentMode = .aspectFit
// Set the UIViewController orientations
recorder?.inputViewOrientations = [.landscapeLeft, .landscapeRight, .portrait]
Binary file not shown.
@@ -204,7 +204,7 @@ SWIFT_MODULE_NAMESPACE_PUSH("ARVideoKit")
/// <a href="mailto:me@ahmedbekhit.com">Email</a>
/// </li>
/// </ul>
SWIFT_CLASS("_TtC10ARVideoKit15PHLivePhotoPlus")
SWIFT_CLASS("_TtC10ARVideoKit15PHLivePhotoPlus") SWIFT_AVAILABILITY(ios,introduced=9.1)
@interface PHLivePhotoPlus : PHLivePhoto
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder OBJC_DESIGNATED_INITIALIZER;
@@ -216,5 +216,7 @@ SWIFT_CLASS("_TtC10ARVideoKit15PHLivePhotoPlus")
SWIFT_MODULE_NAMESPACE_POP
#pragma clang diagnostic pop
Binary file not shown.
+30 -3
View File
@@ -1,7 +1,7 @@
# ARVideoKit
An iOS Framework that enables developers to capture videos 📹, photos 🌄, Live Photos 🎇, and GIFs 🎆 with ARKit content.
In other words, you **NO LONGER** have to use *screen recording*/*screenshots* to capture ARKit videos 📹 and photos 🌄!
In other words, you **NO LONGER** have to ~screen record~/~screenshot~ to capture videos 📹 and photos 🌄 of your awesome ARKit apps!
| Table of Contents | Description |
| ------------------ |:------------------:|
@@ -12,6 +12,7 @@ In other words, you **NO LONGER** have to use *screen recording*/*screenshots* t
| [Example Project](#example-project) | Explains how to run the example project provided in this repository |
| [Installation](#installation) | Describes the [Manual](#manual) option to install `ARVideoKit` |
| [Implementation](#implementation) | Lists the [steps needed](#implementation), [notes](#note), and [reference](#youre-all-set-) for more options |
| [Publishing to the App Store](#publishing-to-the-app-store) | Describes the steps **required** before submitting an application using `ARVideoKit` to the App Store. |
| [License](#license) | Describes `ARVideoKit` license |
## Preview
@@ -85,14 +86,14 @@ recorder?.prepare(configuration)
recorder?.rest()
```
7. Call the [`record()`](https://github.com/AFathi/ARVideoKit/wiki/RecordAR#func-record) method in an appropriate method.
7. Call the [`record()`](https://github.com/AFathi/ARVideoKit/wiki/RecordAR#func-record) method in the proper method to start recording.
```
@IBAction func startRecording(_ sender: UIButton) {
recorder?.record()
}
```
8. Call the [`stopAndExport()`](https://github.com/AFathi/ARVideoKit/wiki/RecordAR#func-stopandexport_-finished-_-videopath-url-_-permissionstatusphauthorizationstatus-_-exportedbool---swiftvoid--nil) method in an appropriate method.
8. Call the [`stopAndExport()`](https://github.com/AFathi/ARVideoKit/wiki/RecordAR#func-stopandexport_-finished-_-videopath-url-_-permissionstatusphauthorizationstatus-_-exportedbool---swiftvoid--nil) method in the proper method to stop recording.
```
@IBAction func stopRecording(_ sender: UIButton) {
recorder?.stopAndExport()
@@ -116,6 +117,32 @@ Make sure you add the usage description of the `camera`, `microphone`, and `phot
### You're all set. 🤓
Check [`RecordAR`](https://github.com/AFathi/ARVideoKit/wiki/RecordAR) documentation for more options!
## Publishing to the App Store
Before publishing to the App Store make sure to add the [ARVideoKit License](#license) to your app licences list.
Additionally, you MUST **strip out the simulator architectures** from the framework before pushing an application to the App Store.
To do so, follow those steps:
1. Install Carthage
> Download `Carthage.pkg` [from here](https://github.com/Carthage/Carthage/releases)
> Or install with Homebrew using this command `brew install carthage`
2. Go to your project target's `Build Phase`
<img width="684" alt="screen shot 2017-11-14 at 8 21 44 pm" src="https://user-images.githubusercontent.com/4106695/32813978-e70ae5a0-c97a-11e7-9d19-3ef434e4c4f1.png">
3. Add a new `Run Script Phase`
<img width="686" alt="screen shot 2017-11-14 at 8 22 14 pm" src="https://user-images.githubusercontent.com/4106695/32814003-0ab4cffc-c97b-11e7-97d0-cf3143afec6d.png">
4. Add the following command to the `Run Script Phase`
```
/usr/local/bin/carthage copy-frameworks
```
<img width="676" alt="screen shot 2017-11-14 at 8 30 12 pm" src="https://user-images.githubusercontent.com/4106695/32814033-3302bece-c97b-11e7-867c-e8707ac7dd6b.png">
5. Finally, add `ARVideoKit.framework` file path as an `Input File`. In my case, I have it in a folder named `Frameworks` inside my project folder
<img width="672" alt="screen shot 2017-11-14 at 8 41 06 pm" src="https://user-images.githubusercontent.com/4106695/32814258-327bd048-c97c-11e7-8148-8d606d545214.png">
## [License](LICENSE)
Copyright 2017 Ahmed Fathi Bekhit