gsabran / Dddkit
Licence: mit
360 video player for iOS written in swift - a subset of SceneKit that works
Stars: ✭ 118
Programming Languages
swift
15916 projects
Projects that are alternatives of or similar to Dddkit
Swifty360player
iOS 360-degree video player streaming from an AVPlayer.
Stars: ✭ 118 (+0%)
Mutual labels: cocoapods, scenekit
Scenekit Bezier Animations
Create animations over Bezier curves of any number of points
Stars: ✭ 35 (-70.34%)
Mutual labels: cocoapods, scenekit
Efautoscrolllabel
A label which can scroll when text length beyond the width of label.
Stars: ✭ 111 (-5.93%)
Mutual labels: cocoapods
Swiftloader
A simple and beautiful activity indicator written in Swift
Stars: ✭ 116 (-1.69%)
Mutual labels: cocoapods
Uilabel Copyable
A simple category to add copy functionality to UILabel.
Stars: ✭ 113 (-4.24%)
Mutual labels: cocoapods
Lightweightobservable
📬 A lightweight implementation of an observable sequence that you can subscribe to.
Stars: ✭ 114 (-3.39%)
Mutual labels: cocoapods
Tkkeyboardcontrol
TKKeyboardControl adds keyboard awareness and scrolling dismissal (like iMessages app) to any view with only 1 line of code for Swift.
Stars: ✭ 110 (-6.78%)
Mutual labels: cocoapods
Towebviewcontroller
A view controller class for iOS that allows users to view web pages directly within an app.
Stars: ✭ 1,500 (+1171.19%)
Mutual labels: cocoapods
Bottomsheet
Component which presents a dismissible view from the bottom of the screen.
Stars: ✭ 113 (-4.24%)
Mutual labels: cocoapods
Rhythmbox
A Rhythm Box System for your iOS app written in Swift. 🎵
Stars: ✭ 116 (-1.69%)
Mutual labels: cocoapods
Artetris
Augmented Reality Tetris made with ARKit and SceneKit
Stars: ✭ 1,483 (+1156.78%)
Mutual labels: scenekit
Device
Light weight tool for detecting the current device and screen size written in swift.
Stars: ✭ 1,503 (+1173.73%)
Mutual labels: cocoapods
Sharaku
(Not maintained)Image filtering UI library like Instagram.
Stars: ✭ 1,497 (+1168.64%)
Mutual labels: cocoapods
Ios Rubik Solver
An iOS app that detects a 3x3 Rubik's cube, recognizes the color of all cubies, solves it and provides a 3D visualisation of the solving process.
Stars: ✭ 111 (-5.93%)
Mutual labels: scenekit
Emspinnerbutton
UIButton sublcass with loading animation
Stars: ✭ 117 (-0.85%)
Mutual labels: cocoapods
Fontawesome.swift
Use FontAwesome in your Swift projects
Stars: ✭ 1,513 (+1182.2%)
Mutual labels: cocoapods
Microfeatures Example
📦📱 Example of iOS app built using the uFeatures architecture
Stars: ✭ 112 (-5.08%)
Mutual labels: cocoapods
DDDKit
An open source library to support 360 videos and pictures. It's designed as a generic 3D library that you can use for much more!
Example of use cases
- 360 video player
- 360 image display
- generic 3D scene
- photo / video filters within a 3D scene
Installation
See the wiki! or:
pod 'DDDKit'
Quickstart
import DDDKit
import AVFoundation
class ViewController: DDD360VideoViewController {
override func viewDidLoad() {
super.viewDidLoad()
show(from: myVideoURL)
}
}
Example
Image filter (easy to be creative!)
// B&W filter:
@IBAction func didPressBW(_ sender: Any) {
let program = try! DDDShaderProgram(fragment: defaultShader, shaderModifiers: [
.fragment: "gl_FragColor = vec4(vec3(gl_FragColor.x + gl_FragColor.y + gl_FragColor.z) / 3.0, 1.0);",
])
videoNode.material.shaderProgram = program
}
cubic projection
360node.geometry = DDDGeometry.Cube()
let videoTexture = DDDVideoTexture(player: player) // AVPlayer with 360 cubic video
node.material.set(
property: videoTexture,
for: "SamplerY",
and: "SamplerUV"
)
Screenshots from the demo app:
Documentation
See the wiki!
Features
- easy to use syntax and logic
- support of image and video textures
- direct and easy access to shader's code, shaders modifiers -> easy to make image filters
- focus on reliability on video support.
- equirectangular and cubic 360 support
- elements that can have any shape / position
Why not SceneKit?
- SceneKit has bugs, such as memory leaks, failing video support (see SO)
- no support of AVPlayerLayer / AVPlayer as video input
- indirect video support (through SpriteKit)
- openGL backed rendering failing on iOS 10
- poor documentation
- unresponsiveness from Apple on issues, and no timeline/transparency on fixes
- no access to code to fix things yourself, since it's not open source.
Author
Guillaume Sabran, [email protected], CTO @Pie
License
DDDKit is available under the MIT license. See the LICENSE file for more info.
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].