【问题标题】:Getting thumbnail for trimmed video in swift快速获取修剪视频的缩略图
【发布时间】:2016-05-18 10:34:19
【问题描述】:

这是我的代码:
当我尝试执行此操作时
self.my.image = UIImage(contentsOfFile: "\(self.sharedelegate.editthumbforvideo)")
self.my.image 的值总是打印 nil。self.videodelegate.editthumbforvideo 数据类型是 (UIImage)my.image(UIImageview)

不知道如何解决这个问题,无法获得修剪后视频的缩略图。

提前致谢

            let url=NSURL(fileURLWithPath: videoPath as String)
            let asset: AVAsset = AVAsset(URL: url)
            let imageGenerator = AVAssetImageGenerator(asset: asset);
            imageGenerator.appliesPreferredTrackTransform = true

            let timestamp = CMTime(seconds: 0.0, preferredTimescale:        60)
            var actualTime : CMTime = CMTimeMake(0, 0)
            let myImage = try?( imageGenerator.copyCGImageAtTime(timestamp, actualTime: &actualTime))
            self.image=UIImage(CGImage: myImage!)
            print("my print...\(self.image)")
            self.videodelegate.editthumbforvideo = self.image
            self.my.image = UIImage(contentsOfFile: "\(self.sharedelegate.editthumbforvideo)")

【问题讨论】:

    标签: ios swift video


    【解决方案1】:

    您可以通过编写以下代码来创建缩略图,

    var err: NSError? = nil
    let url=NSURL(fileURLWithPath: videoPath as String)
    let asset = AVURLAsset(URL: url, options: nil)
    let imgGenerator = AVAssetImageGenerator(asset: asset)
    let cgImage = imgGenerator.copyCGImageAtTime(CMTimeMake(0, 1), actualTime: nil, error: &err)
    
    let uiImage = UIImage(CGImage: cgImage)
    let imageView = UIImageView(image: uiImage)
    

    希望这会对你有所帮助。

    【讨论】:

    • 感谢您的回复。我得到了缩略图,但不知道如何在 Imageview 中显示它
    • 这样写:self.my.image = uiImage OR self.my.image = UIImageView(image: uiImage)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-25
    • 1970-01-01
    • 2011-05-25
    • 2017-12-04
    • 1970-01-01
    • 2013-08-31
    • 2017-10-21
    相关资源
    最近更新 更多