Я написал 64-битное приложение Cocoa на Snow Leopard, которое извлекает отдельные кадры из фильма с помощью API QuickTime.Он использует [QTMovie currentFrameImage], который, к сожалению, очень медленный, как было указано здесь:
https://stackoverflow.com/questions/5843702/export-every-frame-from-a-movie-using-quicktime-api
Сайт разработчика Apple описывает следующий альтернативный метод с использованием QTPixelBufferContextCreate с NewMovieFromProperties:
http://developer.apple.com/library/mac/#qa/qa1443/_index.html
Используя этот подход, я написал 32-разрядное приложение, которое могло извлекать кадры с гораздо более высокой скоростью, но кажется, что API (например, QTVisualContextRef) недоступен для64-битные приложения, как было указано здесь:
http://www.mailinglistarchive.com/html/quicktime-api@lists.apple.com/2009-01/msg00014.html
и здесь:
Ошибка: ожидаемый список спецификаторов-определителей перед 'QTVisualContextRef'
Мое приложение должно быть 64-разрядным, поэтому я ищу другую альтернативу для быстрого извлечения кадров.Кто-нибудь достиг этого, используя фреймворки, доступные в настоящее время на Snow Leopard?
Edit:
Я не нашел способа быстро извлечь фреймы на Snow Leopard, но я нашел способ сделать этоиспользуя AV Foundation на Lion.AV Foundation была доступна для iOS, но она нова для Mac OS, начиная с Lion.Хорошее описание того, как быстро извлечь кадры с помощью AV Foundation, можно найти по адресу 7twenty7com .