Как масштабировать из CVImageBufferRef - или - почему не работает setPixelBufferAttributes?
Я снимаю видео с камеры (Macbook Air, OSX 10.9.5) через QTCaptureDecompressedVideoOutput
и обрабатывать его, но мне нужно масштабировать поступающее изображение. По какой-то причине изображение, возвращаемое мне, не соответствует размеру, который я запрашивал при установке атрибутов пиксельного буфера:
[mVideoOutput setPixelBufferAttributes:
[NSDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithDouble:width], (id)kCVPixelBufferWidthKey,
[NSNumber numberWithDouble:height], (id)kCVPixelBufferHeightKey,
[NSNumber numberWithUnsignedInt:kCVPixelFormatType_32ARGB], (id)kCVPixelBufferPixelFormatTypeKey,
nil]];
Я получаю изображение в два раза больше, чем я просил.
Каков наиболее эффективный способ масштабирования изображения до половины его размера?
Или даже лучше....
Почему setPixelBufferAttributes не работает должным образом?
1 ответ
Кажется, что setPixelBufferAttributes
был проигнорирован при первом запросе, поэтому при обратном вызове, когда изображение получено с камеры, я проверяю размер и снова выдаю запрос, если он неправильный. Это, кажется, решило проблему.