首页 > 解决方案 > 广播扩展将 PixelBuffer 发送到 OpenTok 服务器

问题描述

我正在开发一个使用 OpenTok API 具有实时屏幕流功能的应用程序。我必须在将缓冲区发送到 OpenTok 服务器时进行内存管理,因为它们不接受来自 SampleHandler 的原始缓冲区。因此,我需要找到一种方法来压缩从 processSampleBuffer 收到的 CVPixelBufferRefs,但是即使我使用了他们的官方git repo ,我也一直收到 MEMORY (limit = 50 MB, used = 0x0) 错误,它崩溃是因为内存限制。我一直在搜索调整像素缓冲区的大小和缩放,但它在 CPU 上的成本很高 - CIContext 的 GPU 使用率和最终广播扩展最终导致内存限制再次崩溃。最后,我看到了Telegram有一个屏幕共享功能(它在 iPad 和 iPhone 上工作得非常好,分辨率很高),我查了一下,但它超出了我的领域,因为我不熟悉使用 CoreMedia 对 pixelBuffer 进行内核级别调整。

标签: telegramcore-imageopentokreplaykitcore-video

解决方案


推荐阅读