1

我有一个 UIView(带有它的 CALayer),它有UIImageView一个子视图。UIImageView 是动画的 ( imageView.animationImages)。

我想将当前播放的动画捕捉到一个视频文件,或者视频数据(以后要转换成视频文件),但不是捕捉屏幕上的所有元素,比如按钮和其他UI,而只是一个特定的UIView(不是为了宣传视频,而是作为应用程序功能的一部分)。

我尝试实现ScreenCaptureView,但是虽然它确实让我可以将特定内容实时UIView捕获到视频文件中,但它不会捕获 Animated ,它只显示第一帧......UIImageView

我考虑过使用 CALayer renderInContext:,然后以某种方式将CGImage(当前帧)附加到视频数据,然后从数据制作视频文件(或者可能直接附加到视频文件)。

我有点卡在附加部分......我真的不知道如何处理当前帧的渲染数据。

有没有人有任何提示或建议?

任何帮助都感激不尽 :)

4

1 回答 1

1

我对它进行了更改ScreenCaptureView.m,现在它捕获了UIImageView动画:

[self.layer renderInContext:context];

变成:

[self.layer.presentationLayer renderInContext:context];

尽管在设备(iPhone 4)上性能实际上很差......

于 2013-02-05T15:10:06.343 回答