Есть ли бесплатный или коммерческий JPEG-декодирование, которое действительно быстро
Я использую C++, libjpeg для декодирования файла JPEG. Я считаю, что это не достаточно быстро, есть ли способ сделать это быстрее, установив какой-либо параметр компиляции? или есть ли другие библиотеки могут открывать файлы JPEG быстрее?
сейчас для открытия изображения в формате jpeg 4368 * 2912 4 м требуется около 750 мс. Я бы хотел, чтобы это можно было уменьшить до 150 мс. Большое спасибо!
Добавлено: IJL кажется быстрее, чем libjpeg:)
5 ответов
Самый быстрый способ - не декодировать его вообще. Обычно вы можете сначала использовать предварительный просмотр в низком разрешении; это требует только низких частот. Для предварительного просмотра размером 546 x 289 пикселей вам нужен только компонент (0,0) (DC).
Есть Intel Performance Primitives, который содержит реализации кодирования / декодирования JPEG
Также см. http://sourceforge.net/projects/libjpeg-turbo/ для вставной замены libjpeg, которая использует SIMD-инструкции для значительного повышения производительности.
Я думаю, что DirectX и libSDL могут декодировать JPEG - хотя libSDL может использовать libjpeg для декодирования.