zoukankan      html  css  js  c++  java
  • 通视频URL截取第一帧图片

    为了方便直接给UIImage加个类别,以后什么时候使用可以直接调用。

    #import <UIKit/UIKit.h>

     

    @interface UIImage (Video)

     

    /**

     通过视频URL获取视频的第一帧图片

     

     @param videoURL 视频连接

     @return 第一帧图片

     */

    + (UIImage *)interceptFirstTimeVideoPicture:(NSURL *)videoURL;

     

    @end

     

    -----------------------------------分割线------------------------

    #import "UIImage+Video.h"

    #import <AVFoundation/AVFoundation.h>

     

    @implementation UIImage (Video)

     

     

    + (UIImage *)interceptFirstTimeVideoPicture:(NSURL *)videoURL{

        

        // 根据视频的URL创建AVURLAsset

        AVURLAsset *asset = [[AVURLAsset alloc] initWithURL:videoURL options:nil];

       

        // 根据AVURLAsset创建AVAssetImageGenerator对象

         AVAssetImageGenerator* gen = [[AVAssetImageGenerator alloc] initWithAsset: asset];

        

         gen.appliesPreferredTrackTransform = YES;

        

        // 定义获取0帧处的视频截图

        CMTime time = CMTimeMake(0, 10);

        

        NSError *error = nil;

        

        CMTime actualTime;

        

        // 获取time处的视频截图

        CGImageRef  image = [gen  copyCGImageAtTime: time actualTime: &actualTime error:&error];

        

        // CGImageRef转换为UIImage

        UIImage *thumb = [[UIImage alloc] initWithCGImage: image];

        

        CGImageRelease(image);

        

        return  thumb;

        

    }

     

     

    @end

     

    注意点:

    使用AVAssetImageGenerator这个类是要记得导入#import <AVFoundation/AVFoundation.h>头文件。

  • 相关阅读:
    一个功能完善的资源管理器
    数据结构和算法
    Build Native Mobile Apps in HTML5: PhoneGap from Start to Finish
    HTML5安全:CORS(跨域资源共享)简介
    Start A mobile web app
    ASP.NET MVC4 常见问题集
    ASP.NET MVC4 ASP.NET Web API OAuth2 delegation with Windows Azure Access Control Service
    【转】HTTP access control (CORS)
    ASP.NET MVC4最新特性介绍 (待续)
    C#实现小写金额转换大写的方法
  • 原文地址:https://www.cnblogs.com/huanghaipo/p/7061459.html
Copyright © 2011-2022 走看看