我有一些代码可以编辑视频,然后创建一个 AVAssetExportSession 将编辑后的视频保存在某个地方。我想将它保存到相机胶卷,但无法弄清楚它的 NSURL 是什么。
var session: AVAssetExportSession = AVAssetExportSession(asset: myasset, presetName: AVAssetExportPresetHighestQuality)
session.outputURL = ???
session.exportAsynchronouslyWithCompletionHandler(nil)
有谁知道如何确定将视频保存到相机胶卷的正确 NSURL?预先感谢您的帮助。
最佳答案
您不能仅通过使用 session.outputURL = ...
将视频直接保存到相机胶卷。您必须将视频保存到文件路径(临时或其他),然后使用 writeVideoAtPathToSavedPhotosAlbum:
将该 url 处的视频写入相机胶卷,例如:
var exportPath: NSString = NSTemporaryDirectory().stringByAppendingFormat("/video.mov")
var exportUrl: NSURL = NSURL.fileURLWithPath(exportPath)!
var exporter = AVAssetExportSession(asset: myasset, presetName: AVAssetExportPresetHighestQuality)
exporter.outputURL = exportUrl
exporter.exportAsynchronouslyWithCompletionHandler({
let library = ALAssetsLibrary()
library.writeVideoAtPathToSavedPhotosAlbum(exportURL, completionBlock: { (assetURL:NSURL!, error:NSError?) -> Void in
// ...
})
})
关于ios - 如何将视频从 AVAssetExportSession 保存到相机胶卷?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28977049/