Каков наиболее эффективный способ получить декодированный CGImage из поддерживаемого JPEG CGImage?

Сегодня я был удивлен тем, что поддерживаемый JPEG CGImage поддерживал CALayer (я имею в виду [[JPEG backed CGImage] backed CALayer] ) был настолько медленным, что для 8-мегапиксельной фотографии там не было GPU.

Я попытался создать новый CGImage, основанный на растровом изображении, вытащив оригинальный CGImage в CGBitmapContext, который каким-то образом решил проблему скорости. Но это принесло 6-мегабайтный пакет памяти (от 3 МБ) и заняло 1 с или около того, чтобы сделать рисунок.

Есть ли способ получить декодированное изображение из оригинального CGImage? Или другие способы ускорить работу CGImage с поддержкой JPEG, может быть, сказать, что он просто использует растровое изображение кеша и никогда не мусор?


Я переключился на подход CGDataProviderCopyData. Немного быстрее, но по-прежнему занимает 0,8 с на iPhone 4S. Я начинаю задаваться вопросом, каков механизм CALayer, поддерживаемый закодированным источником? Он замедляется, когда изображение уменьшается, и отображается больше части изображения. Но не так медленно, как 1fps, даже когда отображается вся картина (на самом деле я все еще могу получить что-то вроде 10fps).

Interesting Posts

Вычисление заголовка компаса для определенной координаты вместо северного

Невозможно одновременно удовлетворить ограничения – ограничений нет

requestFileSystem не запускает никаких обратных вызовов в iOS

добавление сегментированного управления с помощью панели навигации

Конкатенация строки в String Objective-c

Fade Animation для UIImages в Swift

Как использовать логотип изображения на панели навигации вместо заголовка

Вставить UISlider как элемент в таблицу UIA в iOS7

Использование NSBundle для загрузки моих ресурсов

Как создать новую категорию «шаблонов» на Xcode 4 и использовать мои собственные шаблоны файлов?

UIViewController запутывается, когда включена личная горячая точка

Visual Studio Cordova Отсутствует ключ Info.plist

анализ JSON-объекта и подэлементов в приложении iphone

Как сделать текст UITextView всем доступным и показать вариант копирования для приложения iPhone для iPhone?

поделиться на facebook фото api new IOS

PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.