OSStatus错误-12769?(OSStatus error -12769?)

2019-10-20 09:37发布

所以,我一直在试图使用AVAssetExportSession修剪方形视频。 但由于某些原因,我只是不断收到此错误:

Error Domain=AVFoundationErrorDomain Code=-11800 "The operation could not be completed" UserInfo=0x1a03be70 {NSLocalizedDescription=The operation could not be completed, NSUnderlyingError=0x1a04c5e0 "The operation couldn’t be completed. (OSStatus error -12769.)", NSLocalizedFailureReason=An unknown error occurred (-12769)}

从苹果公司的网站上,我发现, -11800是一个未知的错误,但对于OSStatus error -12769 ? 我到处找在互联网上,我还没有看到与此相关的错误代码的任何问题/问题。 请帮忙。 谢谢!

我的代码在这里:

AVAsset *asset = [[AVURLAsset alloc]initWithURL:self.originalVidUrl options:nil];
AVAssetTrack *clipVideoTrack = [[asset tracksWithMediaType:AVMediaTypeVideo] objectAtIndex:0];
if (clipVideoTrack.naturalSize.width==clipVideoTrack.naturalSize.height) {
    NSLog(@"Square video");
    NSArray *presets = [AVAssetExportSession exportPresetsCompatibleWithAsset:asset];
    if ([presets containsObject:AVAssetExportPresetHighestQuality]) {
        self.exportSession = [[AVAssetExportSession alloc]initWithAsset:asset presetName:AVAssetExportPresetHighestQuality];
        self.exportSession.outputURL = [NSURL fileURLWithPath: self.tmpVidPath];
        self.exportSession.outputFileType = AVFileTypeMPEG4;
        CMTime start = ...
        CMTime duration = ...
        CMTimeRange range = CMTimeRangeMake(start, duration);
        self.exportSession.timeRange = range;
        [self.exportSession exportAsynchronouslyWithCompletionHandler:^{
            switch ([self.exportSession status]) {
                case AVAssetExportSessionStatusFailed:
                    NSLog(@"%@",self.exportSession.error);
                    break;
                case AVAssetExportSessionStatusCancelled:
                    NSLog(@"Export canceled");
                    break;
                default:
                    NSLog(@"Export Success, File Saved.");
                    break;
            }
        }];
    }
}

PS这个代码适用于与天然相机应用时拍摄的视频(即,非正方形/未处理视频)。

Answer 1:

我想我找到了解决办法,但我不知道为什么或如何它的工作。

只需从更改预设名称AVAssetExportPresetHighestQualityAVAssetExportPreset1280x720 ,你是好去!



文章来源: OSStatus error -12769?