Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.84/19: Рейтинг темы: голосов - 19, средняя оценка - 4.84
10 / 10 / 0
Регистрация: 04.03.2013
Сообщений: 665
1

zlib метод\уровень сжатия

19.09.2013, 10:09. Показов 3734. Ответов 33
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Как менять метод и уровень сжатия при этом применяя api?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.09.2013, 10:09
Ответы с готовыми решениями:

Метод сжатия строк, основанный на повторяющихся символах
Можете помочь написать программу на C++, доп. библиотек использовать нельзя Для управления котами...

Метод сжатия Хаффмана
Есть Метод сжатия Хаффмана или нет и как его использовать ? покажите если можите ? ну те кто уже...

Метод сжатия Хаффмана
Ктонибуть ответит по существу по теме ?

Метод сжатия информации LZ
Люди добрые, помогите, тону... Может у кого завалялась программулька для сжатия информации методом...

33
10 / 10 / 0
Регистрация: 04.03.2013
Сообщений: 665
19.09.2013, 10:10  [ТС] 2
api:
Вложения
Тип файла: rar zlibs.rar (22.5 Кб, 36 просмотров)
0
10 / 10 / 0
Регистрация: 04.03.2013
Сообщений: 665
19.09.2013, 13:54  [ТС] 3
Актуально.
0
Почетный модератор
Эксперт С++
5850 / 2861 / 392
Регистрация: 01.11.2011
Сообщений: 6,907
19.09.2013, 14:05 4
Arwel, выложите пожалуйста код на форум. Расскажите чуть подробнее что именно делаете, как. С примерами желательно.
1
10 / 10 / 0
Регистрация: 04.03.2013
Сообщений: 665
19.09.2013, 18:43  [ТС] 5
Я применяю две функции:
C++
1
2
3
4
5
6
ZEXTERN int ZEXPORT compress OF((Bytef *dest,   uLongf *destLen,
                                 const Bytef *source, uLong sourceLen));
 
ZEXTERN int ZEXPORT compress2 OF((Bytef *dest,   uLongf *destLen,
                                  const Bytef *source, uLong sourceLen,
                                  int level));
С первой все ок.
Но я хочу менять метод и уровень сжатия, как мне это сделать? Апи приложил выше.
0
Эксперт С++
4985 / 3092 / 456
Регистрация: 10.11.2010
Сообщений: 11,169
Записей в блоге: 10
19.09.2013, 18:48 6
Цитата Сообщение от Arwel Посмотреть сообщение
Но я хочу менять метод и
А я думал что у zlib всего один метод сжатия..
1
10 / 10 / 0
Регистрация: 04.03.2013
Сообщений: 665
19.09.2013, 18:50  [ТС] 7
Если это так, то нужно чуть больше информации
0
Эксперт С++
4985 / 3092 / 456
Регистрация: 10.11.2010
Сообщений: 11,169
Записей в блоге: 10
19.09.2013, 18:51 8
Цитата Сообщение от Arwel Посмотреть сообщение
Если это так, то нужно чуть больше информации
Что?
1
10 / 10 / 0
Регистрация: 04.03.2013
Сообщений: 665
19.09.2013, 18:52  [ТС] 9
А я думал что у zlib всего один метод сжатия..
То есть мне нужно подтверждение.
0
Эксперт С++
4985 / 3092 / 456
Регистрация: 10.11.2010
Сообщений: 11,169
Записей в блоге: 10
19.09.2013, 18:53 10
Цитата Сообщение от Arwel Посмотреть сообщение
То есть мне нужно подтверждение.
Подтверждение чего?
1
10 / 10 / 0
Регистрация: 04.03.2013
Сообщений: 665
19.09.2013, 18:57  [ТС] 11
Подтверждение того, что у zlib один метод сжатия.
0
Эксперт С++
4985 / 3092 / 456
Регистрация: 10.11.2010
Сообщений: 11,169
Записей в блоге: 10
19.09.2013, 19:01 12
Я тебя не понимаю.. разложи по пунктам, что ты хочешь сделать?
1
10 / 10 / 0
Регистрация: 04.03.2013
Сообщений: 665
19.09.2013, 19:13  [ТС] 13
1)уровень компрессии
#define Z_NO_COMPRESSION 0
#define Z_BEST_SPEED 1
#define Z_BEST_COMPRESSION 9
#define Z_DEFAULT_COMPRESSION (-1)

2)стратегия компрессии
#define Z_FILTERED 1
#define Z_HUFFMAN_ONLY 2
#define Z_RLE 3
#define Z_FIXED 4
#define Z_DEFAULT_STRATEGY 0

3)тип сжимаемых данных
#define Z_BINARY 0
#define Z_TEXT 1
#define Z_ASCII Z_TEXT /* for compatibility with 1.2.2 and earlier */
#define Z_UNKNOWN 2

Нужно узнать как это менять, все 3
И если можно - смысл этого в частности стратегии

>>
Зачем нужны дублирующие функции - каково их предназначение ?

Пример:
C++
1
2
3
4
5
6
ZEXTERN int ZEXPORT compress OF((Bytef *dest,   uLongf *destLen,
                                 const Bytef *source, uLong sourceLen));
 
ZEXTERN int ZEXPORT compress2 OF((Bytef *dest,   uLongf *destLen,
                                  const Bytef *source, uLong sourceLen,
                                  int level));
1
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
19.09.2013, 19:35 14
У Zlib четыре варианта компрессии: Best, Good, Fast, и Store. И обо всем это подробно написано прямо в исходниках.
Также, как и про отличие compress2 от compress (TIP: int level).
1
10 / 10 / 0
Регистрация: 04.03.2013
Сообщений: 665
19.09.2013, 19:38  [ТС] 15
Спасибо конечно, но я об этом уже знал.
Хотелось бы получить более подробную информацию
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
19.09.2013, 19:51 16
Здесь все ответы и примеры: ZLib Usage Example

Добавлено через 8 минут
Вдогонку: вы бы озвучили ваши цели.

На ZLib свет клином не сошелся - довольно пухлая и весьма древняя библиотека со скромным, по нынешним временам, сжатием. Плохо совместима со своими же старыми версиями (<= 1.13). Единственное достоинство - высокая скорость работы.

IMHO, формат ZIP держится "на плаву" только по инерции (ни сильного сжатия, ни коррекции ошибок).
1
10 / 10 / 0
Регистрация: 04.03.2013
Сообщений: 665
19.09.2013, 20:22  [ТС] 17
Ну раз так, тогда посоветуй актуальную библиотеку:
1) мульти платформа (минимум - win & linux)
2) с лицензией позволяющей использовать ее как в свободном программном обеспечении, так и в платных программах с закрытым исходным кодом
3) + архиватор с исходным кодом
0
Эксперт С++
4985 / 3092 / 456
Регистрация: 10.11.2010
Сообщений: 11,169
Записей в блоге: 10
19.09.2013, 20:28 18
Цитата Сообщение от gazlan Посмотреть сообщение
На ZLib свет клином не сошелся - довольно пухлая и весьма древняя библиотека со скромным, по нынешним временам, сжатием. Плохо совместима со своими же старыми версиями (<= 1.13).
Ты загибаешь...
1. Не пухлая.
2. Не древняя.
3. Соотношение сжатия на скорость давай не будем сравнивать, она популярна до сих пор из-за своей простоты/быстроты/скорости.
0
Ушел с форума
Эксперт С++
16473 / 7436 / 1187
Регистрация: 02.05.2013
Сообщений: 11,617
Записей в блоге: 1
19.09.2013, 20:33 19
Zlib - это в первую очередь ZLIB/DEFLATE/GZIP. И уже только потом ZIP.
0
castaway
19.09.2013, 20:35     zlib метод\уровень сжатия
  #20

Не по теме:

Убежденный, при всем уважении, но про zip тут и речи не было...

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.09.2013, 20:35

Фрактальный метод сжатия
Всем привет! Возможно у кого-то есть исходники или какие-то программы которые реализуют фрактальный...

Метод сжатия RLE
Помогите написать программу для сжатия данных методом RLE. Чтобы через встроенную граф.систему...

Статический метод сжатия
Составить статический метод «сжатия» исходной последовательности символов: каждая...

Ionic Zip асинхронный метод сжатия
Доброго времени господа. Помогите пожалуйста реализовать асинхронный метод сжатия. Что я сделал. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru