Каждый разработчик так или иначе сталкивается со сложностями при работе с изображениями. Кто-то пытается найти выход через сторонние фреймворки, но многие выбирают сложный путь и ищут подходящие API в доступных нам фреймворках.
Например, на выходных я в одном из своих проектов искал путь к оптимизации генерации кадров для длинных видео (спойлер, решил через длину шага в зависимости от длительности исходного видео и качества самих thumbnails).
Эффективная работа с изображениями стоит на трёх китах: на сколько мы грузим проц, эффективно ли используем оперативку и записи на устройство (кэшировании).
📖 В этой статье основное внимание уделяется использованию процессора, в частности, когда происходит фактический процесс декодирования, а также тому, в каком потоке и на каком этапе рендеринга это происходит.
Кроме очевидных советов на счёт переноса тяжёлой работы с основного потока и использования превьюх, можно почитать и про
CVPixelBuffer, и про полезные практики.😃 iOS Dev
