iOS 8 - 将 MOV 文件保存到相机胶卷
iOS 8 - Save MOV file to Camera Roll
我正在尝试将 MOV 文件保存到存储在我的应用程序的文档目录中的相机胶卷中。在 iOS 7 中,我会像这样使用 ALAssetsLibrary 来导出我的视频:
NSString *URL = [NSHomeDirectory() stringByAppendingPathComponent:[NSString stringWithFormat:@"Documents/%@.mov", _recFinalName]];
NSURL *fileURL = [NSURL fileURLWithPath:URL];
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
[library writeVideoAtPathToSavedPhotosAlbum:fileURL
completionBlock:^(NSURL *assetURL, NSError *error) {}];
但是这个方法对iOS不起作用 8.我知道你必须使用photos框架。但是我不知道如何实际使用它来保存我的视频文件。我找不到关于此主题的任何信息。
更新 (1/22/15)
今天早些时候,我确实在另一台 iOS 8 设备上测试了我的原始方法 iPhone 5。我是 运行 iOS 8.2 beta 4 iPhone 6. 所以一定和硬件或者软件有关系
你可以试试这个
if (UIVideoAtPathIsCompatibleWithSavedPhotosAlbum (filePath))
{
UISaveVideoAtPathToSavedPhotosAlbum (filePath,self,@selector(video:didFinishSavingWithError:contextInfo:), nil);
}
其中 filePath
是您要保存到相机胶卷的电影文件的路径。
浏览 apple docs 以获得进一步的帮助。
谢谢。
很简单,有些设备要求它是 MP4 格式,它根本不会保存在 MOV 中。更改输出文件类型或在保存为 MP4 后更改它。现在应该可以保存到相机胶卷了!
我正在尝试将 MOV 文件保存到存储在我的应用程序的文档目录中的相机胶卷中。在 iOS 7 中,我会像这样使用 ALAssetsLibrary 来导出我的视频:
NSString *URL = [NSHomeDirectory() stringByAppendingPathComponent:[NSString stringWithFormat:@"Documents/%@.mov", _recFinalName]];
NSURL *fileURL = [NSURL fileURLWithPath:URL];
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
[library writeVideoAtPathToSavedPhotosAlbum:fileURL
completionBlock:^(NSURL *assetURL, NSError *error) {}];
但是这个方法对iOS不起作用 8.我知道你必须使用photos框架。但是我不知道如何实际使用它来保存我的视频文件。我找不到关于此主题的任何信息。
更新 (1/22/15)
今天早些时候,我确实在另一台 iOS 8 设备上测试了我的原始方法 iPhone 5。我是 运行 iOS 8.2 beta 4 iPhone 6. 所以一定和硬件或者软件有关系
你可以试试这个
if (UIVideoAtPathIsCompatibleWithSavedPhotosAlbum (filePath))
{
UISaveVideoAtPathToSavedPhotosAlbum (filePath,self,@selector(video:didFinishSavingWithError:contextInfo:), nil);
}
其中 filePath
是您要保存到相机胶卷的电影文件的路径。
浏览 apple docs 以获得进一步的帮助。
谢谢。
很简单,有些设备要求它是 MP4 格式,它根本不会保存在 MOV 中。更改输出文件类型或在保存为 MP4 后更改它。现在应该可以保存到相机胶卷了!