iOS Swift:错误域=NSOSStatusErrorDomain 代码=-12792? [英] iOS Swift : Error Domain=NSOSStatusErrorDomain Code=-12792?

查看:47
本文介绍了iOS Swift:错误域=NSOSStatusErrorDomain 代码=-12792?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用以下代码获取视频缩略图:

I'm trying to get video thumbnails with the following code:

let asset = AVAsset(URL: url)
    let imageGenerator = AVAssetImageGenerator(asset: asset)
    imageGenerator.appliesPreferredTrackTransform = true

    do {
        let cgImage = try imgGenerator.copyCGImageAtTime(CMTimeMake(1, 30), actualTime: nil)
        let uiImage = UIImage(CGImage: cgImage)
        imageview.image = uiImage
    }
    catch let error as NSError
    {
        print("Image generation failed with error (error)")
    }

有时它可以工作,有时它不显示以下错误:

Sometimes it works and sometime it doesn't showing the following error:

Error Domain=AVFoundationErrorDomain Code=-11800 "操作可能未完成" UserInfo={NSLocalizedDescription=操作可以未完成,NSUnderlyingError=0x14eab520 {Error域=NSOSStatusErrorDomain 代码=-12792 "(null)"},NSLocalizedFailureReason=发生未知错误 (-12792)}

Error Domain=AVFoundationErrorDomain Code=-11800 "The operation could not be completed" UserInfo={NSLocalizedDescription=The operation could not be completed, NSUnderlyingError=0x14eab520 {Error Domain=NSOSStatusErrorDomain Code=-12792 "(null)"}, NSLocalizedFailureReason=An unknown error occurred (-12792)}

我试图弄清楚什么是 Domain=NSOSStatusErrorDomain Code=-12792,但我不明白如何获得有关此错误代码的更多详细信息.如何将此错误代码转换为字符串以获取有关此错误含义的相关信息?

I have tried to figure out what is Domain=NSOSStatusErrorDomain Code=-12792 but I don't understand how I can get more details about this error code. How can I convert this error code into a string to get relevant information about what this error means?

推荐答案

我通过以下方法解决了这个问题.

I was able to solve this issue by the following approach.

斯威夫特 4.1

func createThumbnailForVideo(atURL videoURL: URL , completion : @escaping (UIImage?)->Void) {
    let asset = AVAsset(url: videoURL)
    let assetImgGenerate = AVAssetImageGenerator(asset: asset)
    assetImgGenerate.appliesPreferredTrackTransform = true
    let time = CMTimeMakeWithSeconds(1, preferredTimescale: 60)
    let times = [NSValue(time: time)]
    assetImgGenerate.generateCGImagesAsynchronously(forTimes: times, completionHandler: {  _, image, _, _, _ in
        if let image = image {
            let uiImage = UIImage(cgImage: image)
            completion(uiImage)
        } else {
            completion(nil)
        }
    })
}

希望这会有所帮助.

这篇关于iOS Swift:错误域=NSOSStatusErrorDomain 代码=-12792?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆