Awesome
SceneKitVideoRecorder
Example
To run the example project, clone the repo, and run pod install
from the Example directory first.
Apps using SceneKitVideoRecorder
Send a PR to add your app here
Installation
SceneKitVideoRecorder is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod 'SceneKitVideoRecorder'
To install Swift 4 branch add the following line to your Podfile:
pod 'SceneKitVideoRecorder', :git => 'https://github.com/svtek/SceneKitVideoRecorder.git', :branch => 'swift4'
Usage
Add NSMicrophoneUsageDescription
to info.plist
Add below code to your view controller
var recorder: SceneKitVideoRecorder?
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
if recorder == nil {
var options = SceneKitVideoRecorder.Options.default
let scale = UIScreen.main.nativeScale
let sceneSize = sceneView.bounds.size
options.videoSize = CGSize(width: sceneSize.width * scale, height: sceneSize.height * scale)
recorder = try! SceneKitVideoRecorder(withARSCNView: sceneView, options: options)
}
}
@IBAction func startRecording (sender: UIButton) {
self.recorder?.startWriting().onSuccess {
print("Recording Started")
}
}
@IBAction func stopRecording (sender: UIButton) {
self.recorder?.finishWriting().onSuccess { [weak self] url in
print("Recording Finished", url)
}
}
Performance tips
Here is a piece of Apple sample code
if let camera = sceneView.pointOfView?.camera {
camera.wantsHDR = true
camera.wantsExposureAdaptation = true
camera.exposureOffset = -1
camera.minimumExposure = -1
}
The line camera.wantsHDR = true
and camera.wantsExposureAdaptation = true
causes a huge drop in video recording performance. You should remove or disable it for video recording.
Author
<img src="https://avatars1.githubusercontent.com/u/1448702?v=4" width="100px;"/> | Omer Karisman<br/><br/><sub>Product Manager @ MojiLaLa</sub><br/> | <img src="https://pbs.twimg.com/profile_images/1331045707961274368/-YifJbqn_400x400.jpg" width="100px;"/> | Sahin Boydas<br/><br/><sub>Co-Founder @ MojiLaLa</sub><br/> |
---|
Inspired from
noppefoxwolf, noppelabs@gmail.com
License
SceneKitVideoRecorder is available under the MIT license. See the LICENSE file for more info.