【发布时间】:2014-02-18 08:46:43
【问题描述】:
我想在视频播放器上制作模糊效果。 所以我使用 AVPlayer 播放视频,每当我想将视频分享到社交媒体时,就在视频播放器上分享窗口显示。只是我想应用模糊效果来共享窗口的背景。
renderContext 函数不会渲染 AVPlayer 的图层。但是我看到苹果新的API drawViewHierarchyInRect 会渲染特定的层,比如视频播放器或者OpenGL层。
所以我使用了 drawViewHierarchyInRect,它在模拟器上也能正常工作,但在设备上却不行。
有什么想法吗?
- (UIImage *)snapshotOfVideoPlayer
{
UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, NO, 1.0);
[self.view drawViewHierarchyInRect:self.view.bounds afterScreenUpdates:NO];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return image;
}
【问题讨论】:
-
是哪个设备?模糊效果/动画是否停止(为了提高效率)?
-
你能出示你的代码吗?
-
感谢您的快速回复。设备是装有 iOS 7 的 iPad4。它根本不工作。始终为黑色图像。
标签: ios7 blur video-player