Я работаю над приложением для записи экрана для Lion, которое в основном использует новый класс Lion AVCaptureScreenInput для получения видеопотока экрана для указанного прямоугольника на экране. Все выглядит хорошо, но:
По данным монитора активности, каждый раз Я звоню setCropRect:
, использование памяти будет увеличиваться на 10-20 МБ . Поскольку я предоставляю функцию, что размер прямоугольника может быть изменен во время записи, использование памяти может увеличиться до 1-2 Гб, так как пользователь сильно меняет прямоугольник, что является катастрофой: (* 1008 *
Я серьезно сомневаюсь, что это ошибка в SDK от Apple, поэтому в примере 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, или я использовал ее неправильно, или я должен использовать другой класс для этого? THX