我有一些创建了 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 或其精简版本)。
在 Playground 中工作的完整示例 here .
关于ios - 保存已创建的实时照片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35572167/