AVPlayer海报框架

时间:2016-07-05 02:57:17

标签: ios avplayer

当AVPlayer位于第一帧时,我想在视频中显示不同的框架,如YouTube海报框架。你会如何做到这样的事情?

1 个答案:

答案 0 :(得分:0)

您可以相应地设置任何可见图层的contents属性:

UIImage *image = [UIImage imageWithCGImage:...]; // replace ... with the CGImage returned by AVAssetImageGenerator
view.layer.contents = (__bridge id)image.CGImage;

奇怪的是,您必须创建一个UIImage,然后将其转换回CGImage以设置Layer的contents属性。您可以使用CFRelease或使用__weak或__autoreleasing指示符立即释放UIImage,或者只使用@autoreleasepool。

不要让任何人告诉你这是耗费内存或缓慢的。如果你通过NSThread将它放到与主要单独的线程中,它就像其他任何方式一样快;而且,我之前在一个屏幕上以这种方式显示了80个UIImages。

但是,再次,多线程和内存管理是我的强项,正如你在这里看到的那样:

https://youtu.be/7QlaO7WxjGg