Spline
Spline copied to clipboard
Demo app accompanying Ryder Mackay’s AVFoundation talk at TACOW May 14, 2013.
Spline
This is the demo app that accompanied my AVFoundation talk at the Toronto Area Cocoa & Web Objects Developers Group on May 14, 2013. It showcases capture, composition, a custom player and scrubber interface, synchronized CAAnimations, and real-time VFX. I hope you find it useful. Spline is a funny word.
Requirements
Universal app. iOS 6 only.
RGMRecordingViewController
This is a very simple implementation of the popular video app Vine. Tap the camera button to start a capture session. The gimmick: it only writes samples while your finger is on the screen. Tap the stop button to render the composition to disk.
RGMPlayerViewController
Tap a video to view it in a custom player. This demonstrates use of <AVAsynchronousKeyValueLoading> to load track info, thumbnail generation, transport controls, periodic observation and looping. Hit the "Add Magic" button and drag your finger around the screen to record a CAKeyframeAnimation in synchrony with the current player item. Scrub the timeline to seek through the animation.
RGMGLPlayerViewController
Tap the disclosure buttons (…) to open a GLKView-based player. This uses the new AVPlayerItemVideoDataOutput class to collect and process sample buffers from a video file during playback on the GPU. Use the slider to change the intensity of a CIColorMonochrome filter in real-time!
Additional Resources
- WWDC 2012 Session 517: Real-time media effects and processing during playback
- AVBasicVideoOutput
- AVSimpleEditoriOS
- AVLoupe
- RosyWriter
- Brad Larson -- GPUImage
- Bob McCune -- AVFoundationEditor
- Bill Dudney -- AVCoreImageIntegration
Contact
Ryder Mackay Twitter: @rydermackay ADN: @ryder http://analogkid.ca