zoukankan      html  css  js  c++  java
  • IOS批量截取视频截图 UIImage mp4 IOS Video


    IOS批量截取视频截图

        //生成截图

        NSString *path = [NSHomeDirectory() stringByAppendingString:@"/Documents"];

        NSLog(@"path %@", path);

        for (int i = 0; i<[mItems count]; i++) {

            NSMutableDictionary *info = (NSMutableDictionary *)mItems[i]; //视频信息

            NSString *mediaPath;

            mediaPath = [[NSBundle mainBundle] pathForResource:[info objectForKey:@"mediaName"]

                                                        ofType:[info objectForKey:@"type"]];

            UIImage *image = [self getImage:mediaPath];

            [UIImageJPEGRepresentation(image, 1) writeToFile:[path stringByAppendingPathComponent:[NSString stringWithFormat:@"file%d.jpg", i]] atomically:YES];

        }


    // 获取指定位置的视频的截屏    

    -(UIImage *)getImage:(NSString *)videoURL{

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

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

        gen.appliesPreferredTrackTransform = YES;

        CMTime time = CMTimeMakeWithSeconds(20.5, 600);  //  參数( 截取的秒数。 视频每秒多少帧)

        NSError *error = nil;

        CMTime actualTime;

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

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

        CGImageRelease(image);

        return thumb;

    }


  • 相关阅读:
    Linux 中如何用源代码安装软件,以及如何卸载它
    Linux 中的 Install命令
    PHP 常用header头定义
    如何防止重复提交表单?
    如何从二维数组中的多个key中获取指定key的值?
    jquery的ajax全局事件详解
    PHP+MySQL分页显示示例分析
    javascript中的事件类型
    事件委托/事件代理,
    彻底弄懂JS的事件冒泡和事件捕获
  • 原文地址:https://www.cnblogs.com/lcchuguo/p/5371491.html
Copyright © 2011-2022 走看看