В одну реку не войти дважды или почему результат жима всегда разный ?

  • Автор темы Автор темы zapsip
  • Дата начала Дата начала

zapsip

Участник
Почему из одинакового сырья и при одном и том же алгоритме или сочетании способов сжатия информации получается продукт разного размера ?

Сырье : установленная игра http://rustorka.com/forum/viewtopic.php?t=215839
(при приготовлении раздачи на торенте по этой ссылке ещё не применялись указанные ниже методы сжатия)
На неё воздействовали четырьмя способами :
1 srep + NanoZip
2 Precomp + srep + lzmaMTD
3 PrecompMT + srep + lzmaMTD
4 MSC + srep + lzmaMTD
Потом ещё повоздействовали.
Всего проведено несколько десятков актов сжатия каждым способом.
Продукт всегда выходил разного размера, например :
8bd19e0c4f81.png
Причём при разворачивании жима в исходную форму размер оказывался всегда одинаковым с точностью до байта.
 
Последнее редактирование:
zapsip, распакуй архивы pk3 сожми просто лзма я так делал на call of duty 1 и 2
при распаковке в модуле исдоне укажи запаковать архивы обратно
if not ISPackZIP ( 0, 0, ExpandConstant('{app}\Main\pak0\*'), ExpandConstant('{app}\Main\pak0.pk3'), 2, false ) then break;
if not ISPackZIP ( 0, 0, ExpandConstant('{app}\Main\pak1\*'), ExpandConstant('{app}\Main\pak1.pk3'), 2, false ) then break;
if not ISPackZIP ( 0, 0, ExpandConstant('{app}\Main\pak2\*'), ExpandConstant('{app}\Main\pak2.pk3'), 2, false ) then break; и так далее все архивы которые ты распакуеш
 
vint56, Спасибо за совет. Как освою, тогда применю.
А факт всегда разного пожатого размера с использование одного и того же алгоритма жима должен ли тревожить ?
Сравнить одинаковые строчки (1,2,3,4) левого и правого столбца.
Может, всегда разный результат готового размера зависит от времени создания файла или метода сортировки в просмотрщике файлов ?
 
1. lzma например использует двухпоточный алгоритм сжатия и afair, результаты могут немного меняться из-за синхронизации этих потоков. хотя разница вроде гнбольшая должна быть
2. возможно между архивациями ты например запускал игру, она делала сейвы или обновляла какую-то инфу. попробуй исползовать скажем 7z h для получения хеша дерева перед каждой архивацией и сравни их
 
1. lzma например использует двухпоточный алгоритм сжатия и afair, результаты могут немного меняться из-за синхронизации этих потоков. хотя разница вроде гнбольшая должна быть
Звучит умно и вроде такой ответ мне нравится :)
Насчёт второго пункта - такого у меня не было. Сырьё для жима не менялось никак )
Ведь :
Причём при разворачивании жима в исходную форму размер оказывался всегда одинаковым с точностью до байта.
 
я уточню : в эти файлы и папки, подвергнутые жиму, "не играли", "игру не запускали", хотя, да, это часть от игры.
Это как бы эталонные данные. В них не "поиграешь".
Кроме того,
Мной также замечено, что если опять снова запустить жим того же самого сырья, (переименовав готовый продукт во избежание утраты), то результат хоть немного будет иным по размеру.
 
Назад
Сверху