【问题标题】:How to capture still image from custom video player screen in iOS?如何从 iOS 中的自定义视频播放器屏幕捕获静止图像?
【发布时间】:2016-06-20 21:47:29
【问题描述】:

我只是使用AVFoundation 库的 AVPlayer* myPlayer 创建自己的自定义视频播放器。现在我想通过在UIButton 上运行播放视频来捕获视频书签的图像,单击action。点击UIButton,它会拍摄播放器屏幕的快照并存储在文档目录中。 请建议我怎么做? 先感谢您。

【问题讨论】:

标签: ios objective-c iphone avfoundation xcode7


【解决方案1】:
AVAsset *asset = [AVAsset assetWithURL:sourceURL];
AVAssetImageGenerator *imageGenerator = [[AVAssetImageGenerator alloc]initWithAsset:asset];
CMTime time = CMTimeMake(1, 1);
CGImageRef imageRef = [imageGenerator copyCGImageAtTime:time actualTime:NULL error:NULL];
UIImage *thumbnail = [UIImage imageWithCGImage:imageRef];
CGImageRelease(imageRef);  // CGImageRef won't be released by ARC

参考链接:

Create a thumbnail or image of an AVPlayer at current time

【讨论】:

  • 我使用的是 AVPlayer 而不是 MPMoviePlayer。
【解决方案2】:
AVAsset *asset = [AVAsset assetWithURL:videoURL];
AVAssetImageGenerator *imageGenerator = [[AVAssetImageGenerator alloc]initWithAsset:asset];
imageGenerator.appliesPreferredTrackTransform=TRUE;


CGImageRef imageRef = [imageGenerator copyCGImageAtTime:player.currentTime
                                             actualTime:NULL error:NULL];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-23
    • 2023-03-29
    • 1970-01-01
    • 1970-01-01
    • 2023-04-09
    • 1970-01-01
    相关资源
    最近更新 更多