获取视频的第一帧图片

+ (UIImage *)getFirstFrameOfVideoWithVideoURL:(NSURL *)videoURL
{
    AVURLAsset *asset = [[AVURLAsset alloc] initWithURL:videoURL options:nil];
    NSParameterAssert(asset);
    AVAssetImageGenerator *assetIG = [[AVAssetImageGenerator alloc] initWithAsset:asset];

    assetIG.appliesPreferredTrackTransform = YES;
    assetIG.apertureMode = AVAssetImageGeneratorApertureModeEncodedPixels;

    CGImageRef thumbnailImageRef = NULL;
    CFTimeInterval thumbnailImageTime = 60;
    NSError *igError = nil;
    thumbnailImageRef = [assetIG copyCGImageAtTime:CMTimeMake(thumbnailImageTime, 60) actualTime:NULL error:&igError];

    if (!thumbnailImageRef)
        NSLog(@"thumbnailImageGenerationError %@", igError );

    UIImage *thumbnailImage = thumbnailImageRef ? [[UIImage alloc] initWithCGImage:thumbnailImageRef] : nil;

    return thumbnailImage;
}
时间: 2024-08-25 03:22:55

获取视频的第一帧图片的相关文章

第五十二篇、 OC获取视频的第一帧图片thumbnailImage

获取视频的第一帧图片 有时候我们拍摄完视频后,希望获取一张图片当作这个视频的介绍,这个图片thumbnailImage可以从视频的第一帧获取到. 我们的思路是先获取视频的URL,然后初始化一个MPMoviePlayerController做工具,利用MPMoviePlayerController来拿图片,看具体代码如下: - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWit

在Android中如何获取视频的第一帧图片并显示在一个ImageView中

String path  = Environment.getExternalStorageDirectory().getPath(); MediaMetadataRetriever media = new MediaMetadataRetriever(); media.setDataSource(path+"/123.rmvb"); Bitmap bitmap = media.getFrameAtTime(); image = (ImageView)this.findViewById(

获取视频的第一帧

public static Bitmap getVideoFirstFrame(Context context, Uri uri) { Bitmap bitmap = null; String className = "android.media.MediaMetadataRetriever"; Object objectMediaMetadataRetriever = null; Method release = null; try { //反射获取视频第一帧 objectMedia

js 获取视频的第一帧

<!DOCTYPE html> <html><head><meta charset="UTF-8"><title>capture screen</title></head><body><video id="video" controls="controls"><source src="img/test.mp4"&g

C#:获取视频某一帧的缩略图

读取方式:使用ffmpeg读取,所以需要先下载ffmpeg.网上资源有很多. 原理是通过ffmpeg执行一条命令获取视频某一帧的缩略图. 首先,需要获取视频的帧高度和帧宽度,这样获取的缩略图才不会变形. 获取视频的帧高度和帧宽度可以http://www.zhoumy.cn/?p=35通过查看. 获取到视频的帧高度和帧宽度后,还需要获取缩略图的高度和宽度,这是按比例缩放的. 比如你存放缩略图的区域的最大宽度和最大高度是100,缩略图的高度也应缩放到对应大小. 接下来通过执行一条命令就可以获取到视频

java获取视频第一帧图片

2018-10-10 用的jar包如下(用的版本比较新),主要是: jar包链接:https://pan.baidu.com/s/1LI68r6H17sAA4Pfbnpm44g 1 public static void fetchFrame(String videofile, String framefile) 2 throws Exception { 3 long start = System.currentTimeMillis(); 4 File targetFile = new File(

iOS开发之视频根据url获取第一帧图片,获取任一帧图片

+ (UIImage*) thumbnailImageForVideo:(NSURL *)videoURL atTime:(NSTimeInterval)time {  AVURLAsset *asset = [[AVURLAsset alloc] initWithURL:videoURL options:nil]; NSParameterAssert(asset); AVAssetImageGenerator *assetImageGenerator =[[AVAssetImageGenera

C#取视频某一帧图片

首先下载 ffmpeg http://ffmpeg.org/ 注意一定要从官网下载,其他地方可以会有问题 解压后在 bin 目录下找到 ffmpeg.exe 用到的使命是 -i 视频地址 -ss 第几帧 -f image2 图片存放地址 用cmd试一下,首先切换到ffmpeg.exe所在目录,输入命令,回车 最后上C#代码 using (System.Diagnostics.Process process = new System.Diagnostics.Process()){ process.

关于video标签移动端开发遇到的问题,获取视频第一帧,全屏,自动播放,自适应等问题

最近一直在处理video标签在IOS和Android端的兼容问题,其中遇到不少坑,绝大多数问题已经解决,下面是处理问题经验的总结: 1.获取视频的第一帧作为背景图: 技术:canvas绘图 window.onload = function(){ var video = document.getElementById('video'); //使用严格模式 'use strict'; //第一帧图片与原视频的比例 var scal = 0.8; //监听页面加载事件 video.addEventLi