Модераторы: xvr
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Быстрое пережатие изображений, Для сжимающего прокси-сервера 
:(
    Опции темы
Alex13
Дата 20.3.2010, 13:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 280
Регистрация: 30.12.2005
Где: Новосибирск

Репутация: нет
Всего: 1



Добрый день!
Задача встала следующая. Я работаю над сжимающим прокси сервером и помоми компрессии страниц хочу еще реализовать ужатие изображений за счет понижения качества. Собственно встал вопрос, с помощью чего это сделать, чтобы это требовало минимум ресурсов. Поначалу думал в сторону imagemagick, но уж больно избыточен он для таких целей.
Все, что мне требуется - это уметь понижать качество для gif, jpeg и png, поскольку они наиболее распространенные.

Посоветуете какую-нибудь подходящую библиотеку?


--------------------
Самая страшная ошибка - это ошибка, не имеющая явных причин и конкретных последствий.
Антисоциальный блог.
PM WWW ICQ Jabber   Вверх
nickless
Дата 21.3.2010, 18:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Гентозавр
****


Профиль
Группа: Участник Клуба
Сообщений: 2976
Регистрация: 29.8.2005
Где: Germany

Репутация: 4
Всего: 181



Возможно будет достаточно специализированых библиотек libgif, libjpeg и libpng.


--------------------
user posted image

Real men don't use backups, they post their stuff on a public ftp server and let the rest of the world make copies
- Linus Torvalds
PM MAIL   Вверх
xvr
Дата 22.3.2010, 15:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 20
Всего: 223



gif и png это форматы файлов с компрессией без потери качества, так что в них понижать нечего  smile 
jpeg можно перепаковать

PM MAIL   Вверх
nickless
Дата 24.3.2010, 03:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Гентозавр
****


Профиль
Группа: Участник Клуба
Сообщений: 2976
Регистрация: 29.8.2005
Где: Germany

Репутация: 4
Всего: 181



Цитата(xvr @  22.3.2010,  14:23 Найти цитируемый пост)
компрессией без потери качества, так что в них понижать нечего

Потерь не было, но можно добавить, уменьшить количество цветов например, png можно еще сгладить, оно тогда сожмётся лучше.


--------------------
user posted image

Real men don't use backups, they post their stuff on a public ftp server and let the rest of the world make copies
- Linus Torvalds
PM MAIL   Вверх
xvr
Дата 24.3.2010, 09:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 20
Всего: 223



Цитата(nickless @ 24.3.2010,  03:29)
Цитата(xvr @  22.3.2010,  14:23 Найти цитируемый пост)
компрессией без потери качества, так что в них понижать нечего

Потерь не было, но можно добавить, уменьшить количество цветов например, png можно еще сгладить, оно тогда сожмётся лучше.

Можно, но для этого потребуются уже другие библиотеки (обработки изображений). Еще можно gif и png разжать и перепаковать в jpeg. Тогда других библиотек не понадобится  smile 
PM MAIL   Вверх
Alex13
Дата 4.4.2010, 12:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 280
Регистрация: 30.12.2005
Где: Новосибирск

Репутация: нет
Всего: 1



Спасибо за ответы.
Менять формат картинок все-таки считаю не очень разумным, мало ли как это повлияет на отображение.

Цитата(nickless @  24.3.2010,  07:29 Найти цитируемый пост)
Потерь не было, но можно добавить, уменьшить количество цветов например, png можно еще сгладить, оно тогда сожмётся лучше. 

не подскажете, какие библиотеки это умеют?


--------------------
Самая страшная ошибка - это ошибка, не имеющая явных причин и конкретных последствий.
Антисоциальный блог.
PM WWW ICQ Jabber   Вверх
nickless
Дата 4.4.2010, 14:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Гентозавр
****


Профиль
Группа: Участник Клуба
Сообщений: 2976
Регистрация: 29.8.2005
Где: Germany

Репутация: 4
Всего: 181



Цитата(Alex13 @  4.4.2010,  11:06 Найти цитируемый пост)
не подскажете, какие библиотеки это умеют? 

Уменьшать цвета нужно при сохранении файла, соответствующей библиотекой. А чтобы сглаживать, ну imagemagick может smile


--------------------
user posted image

Real men don't use backups, they post their stuff on a public ftp server and let the rest of the world make copies
- Linus Torvalds
PM MAIL   Вверх
Void
Дата 4.4.2010, 16:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


λcat.lolcat
****


Профиль
Группа: Участник Клуба
Сообщений: 2206
Регистрация: 16.11.2004
Где: Zürich

Репутация: 3
Всего: 173



lossless оптимизацию PNG умеет утилита pngcrush.
lossy (с превращением полноцветной картинки в 8-битную с палитрой) — pngnq.
Для GIF тоже может быть что-то подобное.


--------------------
“Coming back to where you started is not the same as never leaving.” — Terry Pratchett
PM MAIL WWW GTalk   Вверх
proc_maker
Дата 14.9.2010, 12:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 84
Регистрация: 11.11.2006

Репутация: 1
Всего: 1



Цитата(Alex13 @  4.4.2010,  12:06 Найти цитируемый пост)
не подскажете, какие библиотеки это умеют? 


jpeglib.h
gif_lib.h
libpng

Создаете распаковщики для тех типов картинок которые будете пережимать, далее все пакуете в jpeg с нужным коэфициентом сжатия. Распаковка достаточно несложная в большинстве случаев. Далее - дело техники как подсунуть их вместо оригинальных клиенту.

Надеюсь вычислительной мощности сервера хватит чтобы обслуживать желаемое кол-во клиентов  smile 
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Программирование под Unix/Linux"
xvr
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой "Код".
  • Вопросы мобильной разработки тут
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема »


 




[ Время генерации скрипта: 0.1091 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.