Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Пережатиe,рекомпрессия,оптимизация файлов для лучшего сжатия

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154

Открыть новую тему     Написать ответ в эту тему

spider91

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору



Oбсуждаем какими утилитами и каким способом оптимизировать файлы для лучшего сжатия.

 

 
Precomp (по-русски) Прекомпрессор с интерфейсом командной строки. Вы можете использовать его для достижения лучшего сжатия некоторых типов файлов (работает с файлами, сжатыми методами ZLib или Deflate, и GIF-файлами). Precomp пытается произвести распаковку потоков этих файлов, и, если они декомпрессированые при последующей перекомпрессии идентичны бит-в-бит оригинальному потоку, то перекомпрессия не производится.
 
В результате получается .pcf-файл (PCF = PreCompressedFile), который содержит больше декомпрессированных данных, чем оригинальный файл. Обратите внимание, что этот файл больше оригинального, но, если сжать его методом сжатия сильнее, чем Deflate, он сожмётся лучше, чем оригинал (или использовать lprepaq для прекомпрессии и сжатия за один шаг).

пример для командной строки | Важно: Precomp 0.4.1 и выше | пример для Inno Setup
 
Если файл, который дали Precomp'у он смог обработать (разжать), то в результате получится файл большего размера. Если дали файл JPG и т.п., то в результате получится файл меньшего размера.
 
Rep (Встроен в FreeArc) LZ77-препроцессор, позволяющий находить повторяющиеся блоки данных на больших дистанциях (до половины объёма ОЗУ, max 2gb).
 
SRep aka SuperREP LZ77-препроцессор, позволяющий находить повторяющиеся блоки данных на сверхбольших дистанциях (в 10-20 раз больше размера ОЗУ при -l512 и ещё дальше при увеличении -l). В отличии от Rep при распаковке копирует повторяющиеся данные непосредственно из распакованного файла.
 
PackJPG Программа разработанная специально для перепаковки JPEG файлов без потерь (восстановление идёт бит в бит). В среднем уменьшает размер JPEG файлов на 18%.
 
PNGOut и OptiPNG Aлгоритмы для cжатия PNG.
png optimize suite(Win32) Набор консольных компрессоров для PNG с батником, брутфорсит PNGи
 
Tiff Precompression of Tiff files encoded with packbits. It precompresses only the first page of multi-page tiff files yet.
 
DICT (Встроен в FreeArc) Словарный препроцессор для текстовых файлов, заменяющий часто встречающиеся последовательности символов на краткие коды, таблица замены создаётся путём анализа каждого блока данных (по умочанию по 64 мб)
 
Delta (Встроен в FreeArc) Препроцессор (фильтр) увеличивающий сжатие табличных данных в бинарных файлах. Он обнаруживает табличные данные и затем 1) вычитает последовательные значения в каждой колонке, 2) переставляет колонки стараясь максимизировать дальнейшее сжатие
 
MM (Встроен в FreeArc) Простой препроцессор мультимедийных данных, не уменьшающий их размеры, но вычитающий последовательные значения. Используя GRZip или PPMd на его выходных данных, можно добиться сжатия на уровне rar, uharc и sbc. Использует модуль mmdet для определения структуры (кол-во каналов*размер сэмпла) входных данных.
 
Rad Video Tools Программа для сжатия/создания файлов с расширением .bik и .smk. Tак же можно добавлять/удалять звуковые дорожки в этих файлах. пример
 
NVidia nvDXT tool Mощная утилита для сжатия текстур (.dds). пример
 
AMD Compressonator Mощная утилита для сжатия текстур (.dds и не только). Бывший ATI Compress.
 
Xdelta Tool and library for differential compression. Xdelta release version 3 supports VCDIFF encoding and decoding. Supports compressing 64 bit files on Windows, Linux, etc. пример
 
батники для перекомпрессии ZIP-ресурсов игр и офисных (MS Office2007; Oo) файлов Cкрипты осуществляют рекурсивный поиск и распаковку в одноимённые папки zipов для более плотного сжатия FA, а также последующее сжатие содержимого папок в одноимённые файлы. Маски прописывать в скрипте пример
 
XWRT 3.2 Препроцессор/компрессор, заточенный под XML (часто встречаются в играх а также в офисных 2007файлах)
Описание: XWRT is a good XML compressor, actually working with all textual files. It transforms XML to more compressible form and uses zlib (default), LZMA, PPMVC, or lpaq6 as back-end compressor. The program also creates a semi-dynamic dictionary and replaces frequently used words with shorter codes.
пример
 
Примечание для всех участников

Перед тем, как задать вопрос: Первый вариант: загрузите "версию для печати" (ссылка справа вверху, над номерами страниц) и попробуйте поискать средствами браузера (ctrl+F).
Большинство типовых задач уже решались, причем неоднократно!

Всего записей: 605 | Зарегистр. 02-02-2009 | Отправлено: 15:02 24-04-2009 | Исправлено: Maz, 14:53 06-09-2021
egor23



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
WildGoblin

Цитата:
Может хотя бы какие-нибудь доки (всё равно на каком языке)?  
Как, к примеру, высчитывать значения параметров -B и -W?  
Есть у меня два файла по гигобайту - дифф получается размером ~600 Мб, но я знаю что можно уменьшить его размер до ~300 Мб...  
P.S. Сейчас увеличил значение -B до 220000000 - получил на выходе дифф 500 Мб. До каких пределов можно увеличивать -B, как этот пареметр взаимодействует с размером файлов, размером RAM? Поделитесь пожалуйста знаниями!

хоть на каком - это на офф.сайте
http://code.google.com/p/xdelta/wiki/TuningMemoryBudget
Читать дальше..
 
-B до 220000000 - предел 2ГБ (не влияет на требуемую память для распаковки)
 
Добавлено:

Цитата:
как этот пареметр взаимодействует с размером файлов, размером RAM?

для -B
при уровне компрессии -0 - отъест памяти сколько указали в -B
при уровне компрессии -1...9 - отъест памяти 2*B

Всего записей: 3832 | Зарегистр. 03-11-2003 | Отправлено: 18:52 12-10-2009
WildGoblin



Ru-Board Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
egor23
Я раньше допустил ошибку - вместо 220000000 надо было ввести 2200000000 - сейчас удалось получить дифф (как кстати правильно называть этот файл?) размером 367 вместо 500 Мб.
Большое спасибо за помощь.
P.S. Читаю топик.

Всего записей: 29965 | Зарегистр. 15-09-2001 | Отправлено: 22:32 12-10-2009
egor23



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
WildGoblin

Цитата:
Я раньше допустил ошибку - вместо 220000000 надо было ввести 2200000000

-B будет уменьшено до размера исходного файла, т.е. до 1ГБ
2200000000 - ничего хорошего не даст, по-умолчанию адресное пространство процесса 2ГБ
выдаст ошибку
xdelta3: malloc: Код доступа неверен.

Цитата:
как кстати правильно называть этот файл?

как хотите, можете diff_xxx

Цитата:
-B до 220000000 - предел 2ГБ

писал по страой памяти, сейчас проверил: 2ГБ - это не предел для -B (предел 4ГБ)
всё упирается в адресное пространсвто процесса, которое по-умолчанию 2ГБ

Цитата:
при уровне компрессии -1...9 - отъест памяти 2*B

уточняю может быть в промежутке B...2*B (по крайне мере так показалось)

Всего записей: 3832 | Зарегистр. 03-11-2003 | Отправлено: 00:28 13-10-2009 | Исправлено: egor23, 00:29 13-10-2009
WildGoblin



Ru-Board Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
egor23

Цитата:
-B будет уменьшено до размера исходного файла, т.е. до 1ГБ

То есть -B нужно выставлять <= размер исходного файла?
Это я просто округлил 2147483648

Цитата:
уточняю может быть в промежутке B...2*B (по крайне мере так показалось)

Я тоже уже заметил что не всегда 2*B.

Всего записей: 29965 | Зарегистр. 15-09-2001 | Отправлено: 00:48 13-10-2009
egor23



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
То есть -B нужно выставлять <= размер исходного файла?

как говорится больше - не меньше, хуже не будет

Цитата:
Это я просто округлил 2147483648

-B выставляйте с учётом количесвта RAM \ и условий "эксплуатации" - Win64\Win32 и т.п.
 
Добавлено:
кроме -B и другие параметры и т.п. хотят память

Всего записей: 3832 | Зарегистр. 03-11-2003 | Отправлено: 00:58 13-10-2009 | Исправлено: egor23, 00:59 13-10-2009
LonerDergunov



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Кто-нибудь смог precompoм победить zip-архивы в игре Neverwinter Nights 2 ?
Какие-то хитрые очень архивы.

Всего записей: 2972 | Зарегистр. 11-07-2007 | Отправлено: 02:53 13-10-2009
WildGoblin



Ru-Board Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
У кого-нибудь работает в precomp (v0.4 21.03.2009) рекурсивная рапаковка (Maximal_Recursion_Level >0)?

Всего записей: 29965 | Зарегистр. 15-09-2001 | Отправлено: 13:00 13-10-2009
crotoff

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
у меня работает, проверял на трёх пдфках -l9 и -l10
 
Добавлено:
LonerDergunov
что с архивами? Зашифрованы или просто большие?

Всего записей: 961 | Зарегистр. 17-04-2007 | Отправлено: 14:16 13-10-2009
LonerDergunov



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
crotoff

Цитата:
что с архивами? Зашифрованы или просто большие?

Ни то, ни другое.
Согласно WinRarу:
Zip archive. Version to extract - 2.0, Host OS - DOS
В гекс-редакторе первые байты выглядят так:
50 4B 03 04 0A
Архивы разного размера, сжатые (то есть внутри архива данные упакованные), всего 81 штука, около 4 гиг.
Пробовал выборочно жать precompom (несколько из этих архивов, разного размера, с параметрами slow и brute) - размер полученного файла такой же, как у оригинала.
 

Всего записей: 2972 | Зарегистр. 11-07-2007 | Отправлено: 19:37 13-10-2009
Sig666

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
LonerDergunov, прекомп не работает с зип архивами.

Всего записей: 134 | Зарегистр. 15-01-2008 | Отправлено: 19:51 13-10-2009
Andrey909

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sig666
Работает он с ZIP архивами, но не со всеми.
Цитата с оффициального сайта :
 
"Filetypes
Here is a list of filetypes that can eventually achieve better compression with Precomp and how you can check if they can.
....
ZIP/JAR
Most ZIP files use Deflate for compression. JAR files basically are ZIP files with an additional manifest for use with Java"
 
LonerDergunov
А если данные из архивов другой программой перепаковать в ZIP? Игра их увидит?

Всего записей: 47 | Зарегистр. 05-04-2008 | Отправлено: 20:24 13-10-2009
WildGoblin



Ru-Board Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Обрабатываю файлы xdelta с последующим архивированием - даст ли что то сжатие в xdelta или лучше его отключить (-0)?

Всего записей: 29965 | Зарегистр. 15-09-2001 | Отправлено: 21:02 13-10-2009 | Исправлено: WildGoblin, 21:06 13-10-2009
LonerDergunov



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sig666

Цитата:
прекомп не работает с зип архивами.

С большинством работает; с чем же ему еще работать, как не с зипами.
 
Andrey909

Цитата:
А если данные из архивов другой программой перепаковать в ZIP? Игра их увидит?

Видит, но не хочу извращаться.
К тому же при этом теряется поддержка патчей если таковые еще будут выходить (патчи в игре именно пропатчивают существующие файлы).

Всего записей: 2972 | Зарегистр. 11-07-2007 | Отправлено: 23:20 13-10-2009
Sig666

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
С большинством работает; с чем же ему еще работать, как не с зипами.  

Не попадался мне еще такой зип. Сейчас ради эксперимента упаковал exe 15mb 4 разными программами (WinRar, 7zip, Info-zip, pkzip) и ни один не прошел. А упакованный в WinRar'e и info-zip'e текстовый файл такого же объема прекомп разжал.  

Всего записей: 134 | Зарегистр. 15-01-2008 | Отправлено: 01:27 14-10-2009
WildGoblin



Ru-Board Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Обрабатываю файлы xdelta с последующим архивированием - даст ли что то сжатие в xdelta или лучше его отключить (-0)?

Сам же и отвечаю - лучше не сжимать, ставить параметр -0.

Всего записей: 29965 | Зарегистр. 15-09-2001 | Отправлено: 01:45 14-10-2009
crotoff

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
LonerDergunov
внутри ZIP'ов могут быть файлы, которые precomp попытается обработать (пдфы, графика...) и на этом вылетит с ошибкой. Лучше скормить зипы precompу поодиночке а затем склеить в один. Я однажды пытался сжать кучку mov'ов (внутри MJPEG потоки), так вот из шести мувиков 5 сжались нормально, а на одном постоянно вылетал, хзнает почему

Всего записей: 961 | Зарегистр. 17-04-2007 | Отправлено: 09:41 14-10-2009
WildGoblin



Ru-Board Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Хочется узнать, кто по каким критериям определяет файлы годные для последующей их обработки xdelta?
egor23

Цитата:
кроме -B и другие параметры и т.п. хотят память

Если не трудно не могли бы вы рассказать про эти другие параметры так же как и про -B?

Всего записей: 29965 | Зарегистр. 15-09-2001 | Отправлено: 14:23 14-10-2009 | Исправлено: WildGoblin, 15:28 14-10-2009
egor23



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
WildGoblin

Цитата:
Если не трудно не могли бы вы рассказать про эти другие параметры так же как и про -B?

больше ничего детального рассказать не смогу.

Всего записей: 3832 | Зарегистр. 03-11-2003 | Отправлено: 15:20 14-10-2009
LonerDergunov



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
crotoff

Цитата:
скормить зипы precompу поодиночке

Выборочно пробовал несколько зипов с разным содержимым сжать поотдельности - результата нет.
То ли архивы какие-то интересные, то ли нужны ухищрения.
В общем, вот несколько архивов, может кому интересно будет поколдовать:
http://dreamlair.net/download/Zip.rar

Всего записей: 2972 | Зарегистр. 11-07-2007 | Отправлено: 21:52 15-10-2009
Bulat_Ziganshin

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
LonerDergunov
значит так. precomp использует тот простой факт, что большинство зипов создано с помощью zlib и надо просто перебрать ~100 вариантов его настройки чтобы найти нужный. архивы созданные другими алгоритмами (7-zip, power archiver и т.д.) ес-но не перепакуются

Всего записей: 3401 | Зарегистр. 13-08-2007 | Отправлено: 22:05 15-10-2009
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154

Компьютерный форум Ru.Board » Компьютеры » Программы » Пережатиe,рекомпрессия,оптимизация файлов для лучшего сжатия


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru