如何在iPhone上录制屏幕视频?

3

我希望能够从屏幕上捕获视频。

我无法从avplayer层捕获视频,但可以从其他视图中记录。

我需要搜索OpenGLES的代码吗?


1
别忘了点击接受答案旁边的蓝色数字来颁发悬赏奖励! - Goz
请看我的评论在被接受的答案中...我认为那不是正确的答案... - jesses.co.tt
6个回答

3
您可以查看博客,我认为它涵盖了您想要的内容。实际上,这个博客并没有使用AVPlayer,而是使用AVAssetWriter。在那里的评论中,您可以找到使用AVPlayer的提示。或者您可以使用该项目,用于屏幕录制。

3

这两个库是你可以使用来录制应用程序屏幕视频的最佳选择。 https://github.com/wess/Glimpse https://everyplay.com/about


2

是的,我正在处理与同样工作相关的问题,这是由于视频的高帧速率导致了黑屏。但是我已经解决了这个问题。
不要将AVPlayer添加到该视图中。将其添加到另一个视图中,并注意播放时间,然后裁剪已播放的时间段的视频,最后将其与录制的视频合并。
我已经简要说明了这个方法,希望你能理解。


1
我无法做到同样的事情,因为我已经添加了两个具有不同速度和缩放级别的AVPlayer,并希望同时为两者获取录制。 - Scorpian Alive

1
你需要使用OpenGLES来渲染视频层,否则画面会变黑。

1
但是,我的项目不是OpenGLES,那么该怎么做呢? - Scorpian Alive

0

这对于你的测试非常有用,你可以通过这个框架https://github.com/gabriel/CaptureRecord进行屏幕捕捉。但是,它只能用于记录模拟器。你不能使用此代码提交应用程序到应用商店,因为它使用了私有API。


0

我建议使用GPUImage框架,原因如下:

  1. 它是OpenGL,但是用Objective-C封装了起来,所以不需要学习OpenGL就可以实现它
  2. 它已经通过了App Store的审核 - 我有一个使用它的应用程序在商店中,还有其他几十个应用程序也在使用它

有一个名为GPUImageMovie的类,它包装了AVAssetReader以进行播放,另一个名为GPUImageMovieWriter的类允许您将纹理写入文件 - 这些可以是同一个文件或分开的文件。

存储库中提供了相当多的示例,应该很容易理解...

源代码/Git存储库 * https://github.com/BradLarson/GPUImage

博客 * http://www.sunsetlakesoftware.com/2012/02/12/introducing-gpuimage-framework

希望这有所帮助!


为什么我被踩了?因为我对被接受的答案进行了批评性评论吗? - jesses.co.tt

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接