相关疑难解决方法(0)

从使用AVAssetWriter创建的视频生成缩略图

我正在使用AVAssetWritercaptureOutput回调来录制视频和音频。问题在于,在大约5%的情况下,我无法从第二个零开始生成缩略图(如果我尝试在视频中走得更远,则没有问题)。我得到的错误是:

错误域= AVFoundationErrorDomain代码= -11832“无法打开” UserInfo = 0x4b31b0 {NSLocalizedFailureReason =无法使用该介质。NSUnderlyingError = 0x4effb0“操作无法完成。(OSStatus错误-12431。)” }

这是我正在使用的代码:

AVURLAsset *asset=[[AVURLAsset alloc] initWithURL:url options:nil];
AVAssetImageGenerator *generator = [[AVAssetImageGenerator alloc] initWithAsset:asset];
generator.appliesPreferredTrackTransform=TRUE;
[asset release];
CMTime thumbTime = CMTimeMakeWithSeconds(0,30);

AVAssetImageGeneratorCompletionHandler handler = ^(CMTime requestedTime, CGImageRef im, CMTime actualTime, AVAssetImageGeneratorResult result, NSError *error)
{
    if (result != AVAssetImageGeneratorSucceeded)
    {
        [self NSLogPrint:[NSString stringWithFormat:@"couldn't generate thumbnail, error:%@", error]];
    }

    UIImage *thumbImg=[[UIImage imageWithCGImage:im] retain];   

    [image setImage:thumbImg];
    [thumbImg release];

    [generator release];
};

CGSize maxSize = CGSizeMake(177, 100);
generator.maximumSize = …
Run Code Online (Sandbox Code Playgroud)

iphone video avfoundation ios avassetwriter

5
推荐指数
1
解决办法
2254
查看次数

标签 统计

avassetwriter ×1

avfoundation ×1

ios ×1

iphone ×1

video ×1