AVAssetwriter写入失败

时间:2017-04-30 09:59:27

标签: ios avassetwriter

我正在iOS上编写一个小视频编辑应用程序。我按照this question中评分最高的答案来使用AVAssetwriter,但写作最终失败了。当我进入

中的完整回调时
[videoWriter finishWritingWithCompletionHandler:^(){}];

我每次都会从videoWriter.error中收到此错误。

[0] (null)  "NSUnderlyingError" : domain: "NSOSStatusErrorDomain" - code: 18446744073709539204  
[1] (null)  "NSLocalizedRecoverySuggestion" : "Try saving again."   
[2] (null)  "NSLocalizedDescription" : "Cannot Save"    

我尝试保存图片的网址是由

构建的
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDir = [paths objectAtIndex:0];
NSString *filename = @"processedVideo.mp4";
NSString *filenameFull = [documentsDir stringByAppendingPathComponent:filename];
NSURL *videoOutURL = [NSURL fileURLWithPath:filenameFull];

所以它就像

file:///var/mobile/Containers/Data/Application/FA2BF494-9093-4034-8E6F-0FC177C9F2E3/Documents/processedVideo.mp4

有关我出错的建议吗?

1 个答案:

答案 0 :(得分:1)

如果保存目录中已存在文件,则资产编写者会给出写入错误。首先检查是否存在任何文件。你可以删除以前的现有文件。

BOOL success = [fileManager removeItemAtPath: filenameFull error:&error];

或者您可以使用不同的文件名编写文件。希望它能起作用