我正在为 Lion 开发一个屏幕录制应用程序,它主要使用 Lion 的新 AVCaptureScreenInput 类来获取屏幕上指定矩形的屏幕视频流。一切似乎都很好,但是:
根据活动监视器,我每调用一次setCropRect:
,内存使用量就会增加 10-20Mb。由于我提供了一个可以在录制过程中更改矩形大小的功能,因此随着用户对矩形进行大量更改,内存使用量可能会增加到 1-2Gb,这是一场灾难:(
我严重怀疑这是否是 Apple SDK 中的错误,因此 Apple 的示例代码 AVScreenShack 示例也存在此问题。
我的代码是这样的:
[m_AVCaptureSession beginConfiguration];
[m_AVScreenInput setCropRect:CGRectMake((int)grabRect.origin.x, (int)grabRect.origin.y,(int)grabRect.size.width, (int)grabRect.size.height)];
[m_AVCaptureSession commitConfiguration];
谁能告诉我,如果它是 SDK 中的错误,或者我以错误的方式使用它,还是应该使用另一个类来执行此操作?谢谢