如何解决AVFoundationErrorDomain代码= -11819“无法完成操作”错误在应用ChroCIFilter并使用AVMutableVideoCompositionInstruction进行覆盖时
要求:
- 我要从画廊取2个视频。一个用于绿色背景的前景,另一个用于背景的视频。
- 点击导出按钮后, 一世。删除色度并使用CIFilter的转换值按比例缩小视频。 ii。放大色度仅需一个步骤即可删除视频并覆盖所选背景。 iii。在预览屏幕中显示重叠视频。
已完成流程:
**步骤1:** 使用CIFilter [用于从前景视频中去除色度颜色[绿色背景]的自定义滤镜,并通过使用缩放值= 0.66的“ CIAffineTransform”滤镜通过应用色度和变换滤镜并写入文件的异步处理程序来缩放视频,从而消除色度使用“ AVAssetExportSession”
应用色度和缩小变换值的代码:
AVMutableVideoComposition * chromaKeyComposition = [AVMutableVideoComposition videoCompositionWithAsset:inputAsset ApplyingCIFiltersWithHandler:^(AVAsynchronousCIImageFilteringRequest * request) {
demoFilter.activeColor = [[CIColor alloc] initWithColor:[UIColor greenColor]];
demoFilter.threshold = 0.438944011926651;
CIFilter * chromaFilter = demoFilter; //带有内核自定义滤镜的色度去除滤镜
[chromaFilter setValue:request.sourceImage forKey:kCIInputImageKey];
CIImage * output = chromaFilter.outputImage;
//应用转换
CIFilter * transformFilter = [CIFilter filterWithName:@“ CIAffineTransform”];
[transformFilter setDefaults];
[transformFilter setValue:Key的输出:kCIInputImageKey];
[transformFilter setValue:[NSValue valueWithCGAffineTransform:transformFinal] forKey:@“ inputTransform”];
CIImage * finalResult = [transformFilter valueForKey:kCIOutputImageKey];
[请求finishWithImage:finalResult上下文:无];
}];
第二步: 一世。将色度去除网址作为前景视频的输入 ii。通过比例值= 0.66再次放大前景输入视频 iii。选定的背景视频 iv。使用“ AVMutableVideoCompositionInstruction” 进行覆盖,并使用“ AVAssetExportSession”
写入文件结果: 在第一步中,我得到输出视频,在覆盖上,我得到下面的错误。如何解决此问题
遇到错误
失败的错误域= AVFoundationErrorDomain代码= -11819“无法完成操作” UserInfo = {NSLocalizedRecoverySuggestion =稍后重试。,NSLocalizedDescription =无法完成操作,NSUnderlyingError = 0x28059db60 {Error Domain = NSOSStatusErrorDomain Code = -16978“(null)” }}
谢谢
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。