截取指定时间的视频缩略图


/**

 *  截取指定时间的视频缩略图

 *

 *  @param timeBySecond 时间点

 */

-(void)thumbnailImageRequest:(CGFloat )timeBySecond{

    //创建URL

    NSURL *url=[self getFileUrl];

    //根据url创建AVURLAsset

    AVURLAsset *urlAsset=[AVURLAsset assetWithURL:url];

    //根据AVURLAsset创建AVAssetImageGenerator

    AVAssetImageGenerator *imageGenerator=[AVAssetImageGenerator assetImageGeneratorWithAsset:urlAsset];

    /*截图

     * requestTime:缩略图创建时间

     * actualTime:缩略图实际生成的时间

     */

    NSError *error=nil;

    CMTime time=CMTimeMakeWithSeconds(timeBySecond, 10);//CMTime是表示电影时间信息的结构体,第一个参数是视频第几秒,第二个参数时每秒帧数.(如果要活的某一秒的第几帧可以使用CMTimeMake方法)

    CMTime actualTime;

    CGImageRef cgImage= [imageGenerator copyCGImageAtTime:time actualTime:&actualTime error:&error];

    if(error){

        NSLog(@"截取视频缩略图时发生错误,错误信息:%@",error.localizedDescription);

        return;

    }

    CMTimeShow(actualTime);

    UIImage *image=[UIImage imageWithCGImage:cgImage];//转化为UIImage

    //保存到相册

    UIImageWriteToSavedPhotosAlbum(image,nil, nil, nil);

    CGImageRelease(cgImage);

}


转载于:https://my.oschina.net/asjoker/blog/615087

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值