0

我已经为优胜美地开发了一个用于 IOS 屏幕录制的 mac 应用程序。该应用程序将具有 MediaType Muxed 的设备(如 iPod 和 iphone)镜像到 Mac 屏幕上进行录制以及预览。该应用程序工作正常,除了每当我打开基于相机的应用程序时IOS 设备预览开始滞后。

这些是用于实现应用程序的框架:
AVFoundation
CoreMediaIO
Cocoa

要实现应用程序:

1.最初,我已将 CoreMediaIO 系统对象的属性(允许屏幕捕获设备)设置为 1,如 WWDC 视频会话 508 摄像机捕获:跟踪媒体中的手动控制中指定的那样。这显示了屏幕捕获设备列表中媒体类型为 Muxed 的设备。

2.比我创建了一个会话以及预览层来显示预览并提供用于录制的接口。

谁能帮我找到解决方案。

4

1 回答 1

0

当您使用 AVFoundation 创建捕获会话时,来自设备的有效负载被转码,假设最近的 iOS 设备,分辨率很高,转码的 CPU 消耗要求也很高,转码时 CPU 消耗高肯定会导致滞后,假设在这种情况下,我建议您通过直接使用 CoreMediaIO 来拦截从设备传入的 h264 有效负载,在录制时直接将其保存到文件中,并使用例如 devode 来避免一起转码。VideoToolBox 用于预览,这将需要更少的 CPU 并可能解决您的问题。

  • 有关 VideoToolBox 解码的详细信息,请参阅此链接
  • 查看我的博客以获取 CoreMediaIO 捕获示例
于 2015-07-23T19:40:31.637 回答