All Projects → LimitPoint → Livephoto

LimitPoint / Livephoto

A single-file library for working with Apple Live Photos

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Livephoto

Agimagecontrols
cool tools for image edition
Stars: ✭ 217 (+189.33%)
Mutual labels:  photos, avfoundation
Swiftycam
A Snapchat Inspired iOS Camera Framework written in Swift
Stars: ✭ 1,879 (+2405.33%)
Mutual labels:  photos, avfoundation
Gncam
📷 A Swift 3 library for interacting with the camera on iOS using AVFoundation
Stars: ✭ 42 (-44%)
Mutual labels:  photos, avfoundation
MCamera
CameraViewController which allows to take photos, set filters, peform image blurring and more.
Stars: ✭ 28 (-62.67%)
Mutual labels:  photos, avfoundation
Vuejs Carousel
Complete photo carousel build with VueJS and web standards in mind
Stars: ✭ 53 (-29.33%)
Mutual labels:  photos
Papr
🌁 An Unsplash app for iOS
Stars: ✭ 1,025 (+1266.67%)
Mutual labels:  photos
My Photo Timeline
A simple command-line app to organize your local photos by dates (year/month) on your local file system, for those who don't store photos in the cloud
Stars: ✭ 34 (-54.67%)
Mutual labels:  photos
Jkscreenrecorder
JKScreenRecorder(屏幕录制),use RPScreenRecorder of ReplayKit.framework supports iOS9 and later, use AVAssetWriter of AVFoundation.framework supports iOS8
Stars: ✭ 32 (-57.33%)
Mutual labels:  avfoundation
Timelapsebuilder Swift
Build a movie from jpeg images in Swift using AVFoundation
Stars: ✭ 72 (-4%)
Mutual labels:  avfoundation
Tumblr Crawler
Easily download all the photos/videos from tumblr blogs. 下载指定的 Tumblr 博客中的图片,视频
Stars: ✭ 1,118 (+1390.67%)
Mutual labels:  photos
Gphotos Sync
Google Photos and Albums backup with Google Photos Library API
Stars: ✭ 1,066 (+1321.33%)
Mutual labels:  photos
Photo Blog
The Photo Blog Application based on Laravel 5 and Vue.js 2 + Prerender
Stars: ✭ 55 (-26.67%)
Mutual labels:  photos
Aperture
Record the screen on macOS
Stars: ✭ 1,051 (+1301.33%)
Mutual labels:  avfoundation
Bringing Old Photos Back To Life
Bringing Old Photo Back to Life (CVPR 2020 oral)
Stars: ✭ 9,525 (+12600%)
Mutual labels:  photos
Dofle
🐱 CLI that opens a random photo of my cat Dofle
Stars: ✭ 68 (-9.33%)
Mutual labels:  photos
Photo Affix
📷 Stitch your photos together vertically or horizontally easily!
Stars: ✭ 969 (+1192%)
Mutual labels:  photos
Imageselector
图片选择器, 支持多图选择和图片预览
Stars: ✭ 62 (-17.33%)
Mutual labels:  photos
8 Bit Musicmaker
An 8-Bit music sequencer in a Swift Playground 🎵 WWDC Scholarship Winner 🏅
Stars: ✭ 47 (-37.33%)
Mutual labels:  avfoundation
Easyandroid
一系列简单、轻量、方便的Android开发工具集合(持续更新中),包括Android动态权限、SharedPreferences、反射、日志、Toast、Bundle、MVP、线程池、Html、图文混排、蒙层引导、拍照、图库选择等
Stars: ✭ 1,039 (+1285.33%)
Mutual labels:  photos
Metalvideoprocess
MetalVideoProcess is a High-Performance video effects processing framework. It's base on GPUImage3 Metal, support asynchronous and multithread processing.
Stars: ✭ 52 (-30.67%)
Mutual labels:  avfoundation

LivePhotoIcon

LivePhoto.swift

A single-file helper library to work with Apple Live Photos

A Live Photo is a paired camera photo ("key photo") and video recording ("paired video"). Learn more about Live Photos from our in-depth blog post.

Live Photo format

A Live Photo consists of two resources paired using an asset identifier (a UUID string):

  1. JPEG image with special metadata for kCGImagePropertyMakerAppleDictionary with [17 : assetIdentifier]
  2. Quicktime MOV with
    1. Quicktime metadata for ["com.apple.quicktime.content.identifier" : assetIdentifier]
    2. Timed metadata track with ["com.apple.quicktime.still-image-time" : 0xFF]. This lets the system know where the still image sits in the movie timeline.

LivePhoto.swift

The entire library is contained in the LivePhoto.swift file:

Extracting Resources from PHLivePhoto

LivePhoto.extractResources(from: livePhoto, completion: resources -> Void) {
  let pairedImageURL = resources.pairedImageURL
  let pairedVideoURL = resources.pairedVideoURL
}

Generating a Live Photo & Saving it to the Photo Library

LivePhoto.generate(from: photoURL, videoURL: videoURL, progress: { percent in }, completion: { livePhoto, resources in
  // Display the Live Photo in a PHLivePhotoView
  livePhotoView.livePhoto = livePhoto
  // Or save the resources to the Photo library
  LivePhoto.saveToLibrary(resources)
  })
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].