【发布时间】:2019-08-26 15:15:51
【问题描述】:
我创建了一个 ReplayKit 广播扩展,所以我可以使用的最大内存量是 50 MB。
我正在对广播流进行采样,以通过 CFMessagePortSendRequest 调用发送这些图像。由于该函数只接受 CFData 类型,我需要将我的多平面图像转换为数据。
NSKeyedArchiver.archivedObject() 似乎超过了这 50 MB。在通话之前断线,我可以看到大约 6 MB 的内存消耗。然后,执行 archivedObject 调用,我的扩展崩溃导致它超出内存限制。
将 CVPixelBuffer 的 CIImage 转换为 Data 是否有更少的内存消耗方式?然后回来,当然。
【问题讨论】:
标签: ios objective-c swift replaykit