iOS: get video duration and thumbnails without playing video

后端 未结 3 2093
北荒
北荒 2021-01-31 04:30

I need to get a (local) video\'s duration, and then get access to its individual frames as UIImages. So far I\'ve been using MPMoviePlayerController fo

3条回答
  •  温柔的废话
    2021-01-31 05:05

    To get the duration:

    NSURL *sourceMovieURL = [NSURL fileURLWithPath:somePath];
    AVURLAsset *sourceAsset = [AVURLAsset URLAssetWithURL:sourceMovieURL options:nil];
    CMTime duration = sourceAsset.duration;
    

    To get a framegrab:

    AVAssetImageGenerator* generator = [AVAssetImageGenerator assetImageGeneratorWithAsset:destinationAsset];
    
    //Get the 1st frame 3 seconds in
    int frameTimeStart = 3;
    int frameLocation = 1;
    
    //Snatch a frame
    CGImageRef frameRef = [generator copyCGImageAtTime:CMTimeMake(frameTimeStart,frameLocation) actualTime:nil error:nil];
    

提交回复
热议问题