Ru-Board.club
← Вернуться в раздел «Программы»

» Пережатиe/Pекомпрессия/Oптимизация файлов для лучшего сжатия

Автор: crotoff
Дата сообщения: 08.12.2009 08:00
Kosako
думаешь, злой_дед dllки из exeшников сделал? Чтобы чёрные окна во время распаковки не выскакивали? Прекомпом скорей всего zip-ресурсы обработал а сверху чем-то ассиметричным, раз быстро распаковывается. Можно кстати попробовать свои профили подобрать под каждую игруху и в шапке выкладывать
Автор: Xuligator
Дата сообщения: 08.12.2009 08:41

Цитата:
Замени вот эту строчку:
Result:= FreeArcCmd(callback,'x','-o+','-dp'+AnsiToUtf8(Destination),'--',AnsiToUtf8(Source),'','','','',''); // код ошибки
на вот эту:
Result:= FreeArcCmd(callback,'x','-o+','-dp'+AnsiToUtf8(Destination),'--',AnsiToUtf8(Source),'-w'+AnsiToUtf8(Destination),'','','',''); // код ошибки



Цитата:
советую переставить -w перед '--'. иначе перестанет работать со следующей версией unarc.dll


Спасибо огроменное, замена на строку
Result:= FreeArcCmd(callback,'x','-o+','-dp'+AnsiToUtf8(Destination),'-w'+AnsiToUtf8(Destination),'--',AnsiToUtf8(Source),'','','','');
принесла долгожданные результаты, наконец-то temp файлы precomp архивов не ломятся на системный диск, а идут стройными колоннами в целевую папку установки!

Для полного счастья не хватает только одного: элиминации precomp окна при распаковке с Inno Setup. Оно упорно всплывает на архивах Freearc 3 December + скрипт 3.4.
В соседней теме у человека при определённых параметрых оно вроде не всплывает, но при указанной выше связке оно появляется с завидным постоянством (я заранее извиняюсь, может я что-то пропустил - мну не было полтора месяца, и наука шагнула далеко вперёд с тех пор, и избавилась наконец от этого чёрного окна, но как этого добиться?)
Автор: egor23
Дата сообщения: 08.12.2009 08:57
Kosako

Цитата:
там экзешники в dllки переделаны. Короче, чтобы сильно жать, надо программирование знать.



Цитата:
Convert.dll
msvcr80.dll
packjpg_dll.dll
Precomp.dll
Unpack.dll
zip.dll
zlib1.dll

setup.exe 4МБ - инсталл
Gamedata 681МБ - папка с main\video\ *.bik
data-a.bin 1.58ГБ - архив FreeArc (lzma:512mb:normal:128:mc2:lc4) (внутри *.ff.pcf)
data-b.bin 1.43ГБ - архив FreeArc (lzma:512mb:normal:128:mc2:lc4) (внутри распакованные iw_XX_iwd)
data-c.bin 462МБ - архив FreeArc (lzma:128mb:normal:bt4:128) (внутри распакованные iw_XX_iwd, localized_russian_iwXX_iwd)

Convert.dll (Convert.exe) - OggDec 1.0.1
msvcr80.dll
packjpg_dll.dll
Precomp.dll (Precomp.exe) - Precomp v0.3.8
Unpack.dll (Unpack.exe) - FreeArc 0.60 RC (November 3 2009)
zip.dll (zip.exe) - Zip 2.32
zlib1.dll
Автор: crotoff
Дата сообщения: 08.12.2009 09:17
стало быть, ресурсы жмутся LZMA уже предварительно распакованные? Видимо после извлечения они запаковываются обратно в *.iwd с помощью zip.dll - вот и весь секрет
Автор: egor23
Дата сообщения: 08.12.2009 09:42
crotoff

Цитата:
стало быть, ресурсы жмутся LZMA уже предварительно распакованные?

*.ff - Precomp расжал

Цитата:
Видимо после извлечения они запаковываются обратно в *.iwd с помощью zip.dll - вот и весь секрет

секрет в том что звук пожат (пережат: mp3 в mp3) в mp3 и ogg, соответственно эти ресурсные файлы полюбому распаковывать нужно было...

Добавлено:

Цитата:
(пережат: mp3 в mp3)

это если установленная версия, что под рукой была, оригинальная
Автор: Bulat_Ziganshin
Дата сообщения: 08.12.2009 09:49

Цитата:
Для полного счастья не хватает только одного: элиминации precomp окна при распаковке с Inno Setup.

а то что при этом индикатор прогресса будет долгое время стоять на одном месте - ничего? с окошком хоть виден прогресс распаковки в precomp
Автор: egor23
Дата сообщения: 08.12.2009 10:53
crotoff

Цитата:
секрет в том что звук пожат (пережат: mp3 в mp3) в mp3 и ogg, соответственно эти ресурсные файлы полюбому распаковывать нужно было...

и *.bik пережаты (attract.bik отсутствует)
http://forum.ru-board.com/topic.cgi?forum=5&topic=30239&start=480#5
Автор: Kosako
Дата сообщения: 08.12.2009 11:09
блин, не пойму в чем дело...
прекомп работать нормально перестал. Раньше работал со средней скоростью, а сейчас в начале вроде скорость нормальная, потом уменьшается и под конец (примерно на 99.5%) просто виснет. 9Гб обрабатывал часов за 5-6, сейчас 5Гб за сутки не съел.
Сдается мне, что это после пары не удачных экспериментов началось. До этого прекомп запускался из C:\Program Files\FreeArc\PowerPack\Max, а теперь из C:\Windows\system32\cmd.exe, в общем через ком строку срабатывает. Как его оттуда выковырнуть и заставить снова запускаться из папки Max? В PATH путь до precomp прописан (C:\Program Files\FreeArc\PowerPack\Max\precomp.exe)
Автор: Bulat_Ziganshin
Дата сообщения: 08.12.2009 11:16

Цитата:
В PATH путь до precomp прописан (C:\Program Files\FreeArc\PowerPack\Max\precomp.exe)

в PATH должен быть каталог, т.е. C:\Program Files\FreeArc\PowerPack\Max
Автор: 1pik1
Дата сообщения: 08.12.2009 14:27
egor23
ну раз вы в этом разбираетесь,то ответьте мне на пару вопросов:
что это за вещи такие внутри распакованные iw_XX_iwd,внутри распакованные iw_XX_iwd, localized_russian_iwXX_iwd?


и как бы мне всё это собрать в одно:

Цитата:
setup.exe 4МБ - инсталл
Gamedata 681МБ - папка с main\video\ *.bik
data-a.bin 1.58ГБ - архив FreeArc (lzma:512mb:normal:128:mc2:lc4) (внутри *.ff.pcf)
data-b.bin 1.43ГБ - архив FreeArc (lzma:512mb:normal:128:mc2:lc4) (внутри распакованные iw_XX_iwd)
data-c.bin 462МБ - архив FreeArc (lzma:128mb:normal:bt4:128) (внутри распакованные iw_XX_iwd, localized_russian_iwXX_iwd)

Convert.dll (Convert.exe) - OggDec 1.0.1
msvcr80.dll
packjpg_dll.dll
Precomp.dll (Precomp.exe) - Precomp v0.3.8
Unpack.dll (Unpack.exe) - FreeArc 0.60 RC (November 3 2009)
zip.dll (zip.exe) - Zip 2.32
zlib1.dll

хотелось бы узнать где это всё взять и можно ли это всё реанимировать с помощью freearc_example-ext ?
Автор: egor23
Дата сообщения: 08.12.2009 16:23
1pik1

Цитата:
что это за вещи такие внутри распакованные iw_XX_iwd,внутри распакованные iw_XX_iwd, localized_russian_iwXX_iwd?

распакованные файлы *.iwd

Цитата:
и как бы мне всё это собрать в одно:

и это и есть "всё одно целое"

Цитата:
хотелось бы узнать где это всё взять

там же где и все берут, где-то скачать... (4.2ГБ)


Цитата:
data-a.bin 1.58ГБ - архив FreeArc (lzma:512mb:normal:128:mc2:lc4) (внутри *.ff.pcf)

для тех кому интересно
если пережать содержимое data-a.bin
например srep+lzma:512m
можно получить архив на 465МБ меньше.
Автор: 1pik1
Дата сообщения: 08.12.2009 16:33
egor23
а как мне freearc архивы сделать вот втакой формат: data-a.bin?
так всё-таки можно всё это реанимировать через freearc_example-ext?(это подразумевал под и как бы мне всё это собрать в одно)
Автор: AtotIK
Дата сообщения: 08.12.2009 16:36
У меня несколько вопросиков, чисто для ознакомления:

1. И как же применять Precomp? Пробовал, у меня файлы получаются идентичные....Мож я дурак или лыжи не едут?

2. FreeArc vs. 7-Zip. Не заметил разницы + реализация под Инно проще...Концовка такая же как и в 1 вопросе...

З.Ы. + Precomp'овские файлы порой получаются намного больше оригинальных файлов...что это такое вообще????
Автор: egor23
Дата сообщения: 08.12.2009 19:09
1pik1

Цитата:
а как мне freearc архивы сделать вот втакой формат: data-a.bin?

взять data-a.arc и переименовать в data-a.bin

AtotIK

Цитата:
З.Ы. + Precomp'овские файлы порой получаются намного больше оригинальных файлов...что это такое вообще????

Precomp предназначен для разжатия, соответственно размер данных после Precomp'а будет больше.
Автор: 1pik1
Дата сообщения: 08.12.2009 20:17
egor23
а какие файлы посоветуешь разжимать precomp'ом?
Автор: egor23
Дата сообщения: 08.12.2009 20:22
1pik1
http://schnaader.info/precomp.html

Добавлено:
перевод
http://translate.google.com/translate?js=y&prev=_t&hl=ru&ie=UTF-8&layout=1&eotf=1&u=http%3A%2F%2Fschnaader.info%2Fprecomp.html&sl=en&tl=ru
Автор: milwaukeeman
Дата сообщения: 08.12.2009 20:39
Люди. Вопрос назрел. как прекомпит файлы одглго расширения все сразу а не по одному?
Автор: lol2xD
Дата сообщения: 08.12.2009 20:43
Рип Мв2 делается легко. =))
1.Жмем Видео процентов на 50,удаляем видео файл attract.bik(трейлер код4)
2.Заходим в zone\russian там удаляем файл у которых в названии есть mp
3.Файлы из zone\russian обрабатываем прекомпом потом жмем во фриарк
4.В папке main распаковываем архивы(*.iwd) так что бы на пример (Архив iw_00.iwd ра распаковываем так что бы получилось папка iw_00 а там внутри файлы из архива (папка images и файл fileSysCheck.cfg)
5.Тоже самое делаем с остальными архивами.
6.Жмем wav ки в ogg.mp3 файлы жать не знаю как =( (самому интересно)
7.Что б восстановить игровые архивы во время установки юзаем это _http://rghost.ru/685762
кидаем все файлы в {app}.В builder.ini пишем какие папки архивировать например
[more]
[общие]
; формат - 7z, zip, gzip, bzip2, tar
формат=zip
; степень сжатия 0-9
сжатие=0
; расширение конечного файла
расширение=iwd
; title программы
название=Call of Duty Modern Warfare 2 - Сборка игровых архивов
статус=Cоздание файла
; ico файл
значок=builder.ico
картинка=builder.bmp

[контент]
штук=2
путь1=main\iw_01
путь2=main\iw_02
[/more]
П.с ну а так игровые архивы можно не восстанавливать.Но тогда что б игра работала нужно просто распаковать так.Правой кнопкой мыши>7zip>Распаковать здесь.ит ак со всеми архивами.
НУ вот в принципе наверно и всё.

Добавлено:
milwaukeeman
Все файлы можно в exe архив 7zipa запихать (без сжатия)а потом работать с ним.Я лично так делаю,но можно и по другому.
Автор: Xuligator
Дата сообщения: 08.12.2009 20:53

Цитата:
И как же применять Precomp? Пробовал, у меня файлы получаются идентичные....Мож я дурак или лыжи не едут?


Проще всего запустить Freearc, выбрать нужный файл -> Упаковать.

2. В строке "Сжатие" стереть всё к чёртовой бабушке и вставить:
-max -ld=768m (где 768 - кол-во оперативной памяти, которая потребуется впоследствии этому архиву для распаковки. Можно поставить 512 или сколько хошь)

3. Freearc сам сначала разожмёт файл через precomp, а потом сам же упакует с максимальным сжатием

4. Всё, архив та-да-да.arc готов

P.S. Конечно не все файлы жмутся через прекомп, а только те, в которых есть jpeg потоки - то есть игровые архивы с текстурами там всякими, и т.п....


Цитата:
а то что при этом индикатор прогресса будет долгое время стоять на одном месте - ничего? с окошком хоть виден прогресс распаковки в precomp


поскольку при наличии precomp архива в скрипте 3.4 (и в ранних тоже, конечно) не срабатывает определение времени завершения распаковки и висит одно слово "завершение", то можно вместо него поставить "ожидайте" =) и всё будет очень даже эстетичненько, имхо ....
Автор: 1pik1
Дата сообщения: 08.12.2009 21:04
lol2xD
и чем сначало распаквать *.iwd (пункт 4 и 5)
и вообще эти два пункта дают большой толк?
параметры использовать эти: lzma:512mb:normal:128:mc2:lc4?
если это то в них уже есть команда прекомпа?
Автор: milwaukeeman
Дата сообщения: 08.12.2009 21:08

Цитата:
Все файлы можно в exe архив 7zipa запихать (без сжатия)а потом работать с ним.Я лично так делаю,но можно и по другому.
Еще примеры есть?


Добавлено:

Цитата:
Все файлы можно в exe архив 7zipa запихать (без сжатия)а потом работать с ним.Я лично так делаю,но можно и по другому.
lol2xD

А если например у меня есть файлы при установке они распаковываются по пути, а потом прекомпятся обратно в начальный вид? после этого еще распаковку 7zip делать?

Автор: lol2xD
Дата сообщения: 08.12.2009 21:59
1pik1
7zip winrar

milwaukeeman
ну получится типа так:распаковка архва(где лежит разжатый файл)>рекомпрессия>распаковка 7z exe архива.
Автор: milwaukeeman
Дата сообщения: 08.12.2009 22:49
lol2xD

Цитата:
ну получится типа так:распаковка архва(где лежит разжатый файл)>рекомпрессия>распаковка 7z exe архива.

Хорошо, а если в конце юудет lzma freearc вместо 7zip?
И вообще кто нибудь может показать пример такого Скрипта?
Автор: ExpeditorR
Дата сообщения: 09.12.2009 07:25
Bulat_Ziganshin

Цитата:
а то что при этом индикатор прогресса будет долгое время стоять на одном месте - ничего? с окошком хоть виден прогресс распаковки в precomp


Xuligator

Цитата:
поскольку при наличии precomp архива в скрипте 3.4 (и в ранних тоже, конечно) не срабатывает определение времени завершения распаковки и висит одно слово "завершение", то можно вместо него поставить "ожидайте" =) и всё будет очень даже эстетичненько, имхо ....


Специально для таких случаев я написал isProgressBar.dll с 4-мя вариантами анимации, чтобы скрасить неопределённое время ожидания. Скачать можно здесь:http://forum.ru-board.com/topic.cgi?forum=5&topic=31936&start=0&limit=1&m=1#1
либо здесь: http://narod.ru/disk/15735147000/isProgressBar%20v1.00.rar.html
Автор: milwaukeeman
Дата сообщения: 09.12.2009 08:06
Как пользоваться precomp например в Total Commander? что нужно вводить в командную строку? пример с Прекомпрессия: precomp -slow image.img ничего не получается. все exe, dll, и архивы лежат в одной папке в это время.

Добавлено:
Если просто кидаю файл на precomp все работает, но тогда как подставить параметр -slow?
Автор: 1pik1
Дата сообщения: 09.12.2009 19:15
lol2xD

Цитата:
Рип Мв2 делается легко. =))
1.Жмем Видео процентов на 50,удаляем видео файл attract.bik(трейлер код4)
2.Заходим в zone\russian там удаляем файл у которых в названии есть mp
3.Файлы из zone\russian обрабатываем прекомпом потом жмем во фриарк
4.В папке main распаковываем архивы(*.iwd) так что бы на пример (Архив iw_00.iwd ра распаковываем так что бы получилось папка iw_00 а там внутри файлы из архива (папка images и файл fileSysCheck.cfg)
5.Тоже самое делаем с остальными архивами.
6.Жмем wav ки в ogg.mp3 файлы жать не знаю как =( (самому интересно)
7.Что б восстановить игровые архивы во время установки юзаем это _http://rghost.ru/685762
кидаем все файлы в {app}.В builder.ini пишем какие папки архивировать например
Подробнее... [?]
П.с ну а так игровые архивы можно не восстанавливать.Но тогда что б игра работала нужно просто распаковать так.Правой кнопкой мыши>7zip>Распаковать здесь.ит ак со всеми архивами.
НУ вот в принципе наверно и всё.

а можно пример скрипта,через,что можно это реализовать,а то идея понравилась.
Автор: milwaukeeman
Дата сообщения: 10.12.2009 06:18

Цитата:
Как пользоваться precomp например в Total Commander? что нужно вводить в командную строку? пример с Прекомпрессия: precomp -slow image.img ничего не получается. все exe, dll, и архивы лежат в одной папке в это время.

Добавлено:
Если просто кидаю файл на precomp все работает, но тогда как подставить параметр -slow?

Автор: Kosako
Дата сообщения: 10.12.2009 21:24
товарищи, кто srep пробовал? у всех все нормально работает? а то у меня на распаковке, как раз после srep, вылетает (скрипт ext).
В ручную все нормально распаковывается.
Автор: LonerDergunov
Дата сообщения: 10.12.2009 22:40

Цитата:
Заходим в zone\russian там удаляем файл у которых в названии есть mp

Вырезать из игры основную часть? А смысл делать подобный неработоспособный репак? Может, тогда все файлы удалить из указанной папки и не мучаться? Размер репака будет гораздо меньше, и что так, что так - поиграть все-равно будет невозможно.


Цитата:
распаковываем архивы(*.iwd)

Стим на перепакованные архивы не ругается? Или потом скажет: Вы не можете играть, файлы не оригинальные. По крайней мере панкбастер ругался на это
Автор: Kosako
Дата сообщения: 11.12.2009 02:36

Цитата:
Вырезать из игры основную часть? А смысл делать подобный неработоспособный репак? Может, тогда все файлы удалить из указанной папки и не мучаться? Размер репака будет гораздо меньше, и что так, что так - поиграть все-равно будет невозможно.

mp=multiplayer
Я вырезал из zone\russian и файлов .iwd все папки/файлы с содержанием в названии mp или MP. После чего прошел, для проверки, всю игру. Глюков нету. По такому же принципу можно выкинуть спец операции. Это файлы в названии которых присутствует so

З.Ы. Да, кстати

Цитата:
Стим на перепакованные архивы не ругается?

Зачем CoD стим? Она и без него припрекрасно работает.

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100

Предыдущая тема: Надстройки IE8


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.