【发布时间】:2013-07-23 05:16:02
【问题描述】:
尽管它看起来像一个简单的过程,但我现在尝试了 3 个小时但没有成功。我可能错过了一些非常愚蠢的东西。
所以,我有这个应用程序从互联网上下载视频。视频正确存储在本地,因为我可以提供本地 url 播放它们。但是,我无法成功地将视频复制到相机胶卷。这是我的工作:
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
ALAssetsLibraryWriteVideoCompletionBlock videoWriteCompletionBlock =
^(NSURL *newURL, NSError *error) {
if (error) {
NSLog( @"Error writing image with metadata to Photo Library: %@", error );
} else {
NSLog( @"Wrote image with metadata to Photo Library %@", newURL.absoluteString);
}
};
NSLog(@"file %@", localPath);
NSURL *url = [NSURL fileURLWithPath:localPath isDirectory:NO];
[library writeVideoAtPathToSavedPhotosAlbum:url
completionBlock:videoWriteCompletionBlock];
但我得到的输出是:
2013-07-24 00:13:32.094 App[1716:907] file /var/mobile/Applications/70C18C4E-9F97-4A6A-B63E-1BD19961F010/Documents/downloaded_video.mp4
2013-07-24 00:13:32.374 App[1716:907] Wrote image with metadata to Photo Library (null)
当然,该文件不会保存在相机胶卷中。这是一个简单的 mp4,与我正在使用的设备兼容(即应该可以保存它)。
老实说,我不知道该怎么做。任何提示将不胜感激。谢谢
【问题讨论】:
-
您是否验证过该视频与相机胶卷兼容?致电
videoAtPathIsCompatibleWithSavedPhotosAlbum:对您正在处理的视频有何看法? -
我已经按照@fa7d0 链接给出的提示进行操作,但没有成功。我还转储了 Documents 目录,文件就在那里。
-
使用@JoshBuhler 建议的方法,我实际上得到了一个NO.. 但很奇怪,容器是一个mp4,应该可以保存它......跨度>
-
而且无论如何,如果不兼容,保存操作不应该抛出错误吗?!
标签: iphone ios objective-c camera avfoundation