我已经创建了一些实时照片JPEG和MOV文件,现在我想将它们导入应用程序,以允许用户将实时照片保存到他们的照片库中。我该怎么做呢?
我已经研究了一下:https://github.com/genadyo/LivePhotoDemoSwift 它基本上允许您录制视频并将其转换为实时照片。 但是,由于我已经创建了"实时照片",我可以立即将它们保存到相机胶卷中还是需要遵循不同的路线?
您可以使用
PHLivePhoto.requestLivePhotoWithResourceFileURLs
从LivePhoto中的单独元素创建LivePhoto,然后就可以将其保存到库中。
func makeLivePhotoFromItems(imageURL: NSURL, videoURL: NSURL, previewImage: UIImage, completion: (livePhoto: PHLivePhoto) -> Void) {
PHLivePhoto.requestLivePhotoWithResourceFileURLs([imageURL, videoURL], placeholderImage: previewImage, targetSize: CGSizeZero, contentMode: PHImageContentMode.AspectFit) {
(livePhoto, infoDict) -> Void in
if let lp = livePhoto {
completion(livePhoto: lp)
}
}
}
makeLivePhotoFromItems(imgURL, videoURL: movURL, previewImage: prevImg) { (livePhoto) -> Void in
// "livePhoto" is your PHLivePhoto object, save it/use it here
}
您将需要 JPEG 文件 URL、MOV 文件 URL 和"预览"图像(通常只是 JPEG 或它的较轻版本)。
在操场上工作的完整示例在这里。