FreeArc (Win32)

FreeArc (Win32) 0.67

Нет прав для скачивания

dixen18

Ветеран
nik1967, Ну не знаю..Пожал без икстула (размер кстати такой же и остался) - все нормально
 

zapsip

Участник
Отчетливо заметно изменение громкости и эффектов звука при переходах, когда то идёт видео .mp4 , то собственно игра, причём как в наушниках, так и в колонках.
Это очень неприятно.
Кто тоже такое заметил ?
 

toolame

Старожил
Проверенный
проблема такова:
нужно добавить в архив файл, при этом не перепаковывая солид блок в котором он уже есть (т.е. не удаляя старый)
вроде такое возможно, нет?
я пробовал следующее:
Код:
arc.exe j --append -o+ -- out_merged.arc original.arc updateFileOnly.arc
arc.exe a -o+ --append -m=somemethod -- out.arc relativeFilePath\file.dat
arc.exe a -u --append -m=somemethod -- out.arc relativeFilePath\file.dat
arc.exe a -f --append -m=somemethod -- out.arc relativeFilePath\file.dat
arc.exe f --append -m=somemethod -- out.arc relativeFilePath\file.dat
arc.exe u --append -m=somemethod -- out.arc relativeFilePath\file.dat
arc.exe f -o+ --append -m=somemethod -- out.arc relativeFilePath\file.dat
arc.exe u -o+ --append -m=somemethod -- out.arc relativeFilePath\file.dat
arc.exe a -nrelativeFilePath\file.dat --append -m=somemethod -r -- out.arc someDir
arc.exe a -o+ -nrelativeFilePath\file.dat --append -m=somemethod -r -- out.arc someDir
arc.exe a -u -nrelativeFilePath\file.dat --append -m=somemethod -r -- out.arc someDir
arc.exe a -f -nrelativeFilePath\file.dat --append -m=somemethod -r -- out.arc someDir
получается два варианта:
1. все остается как есть (старый архив без нового файла)
2. архив содержит два солид блока, только с одним и тем же файлом (все остальные файлы удалены)
 

Булат Зиганшин

Developer
Модератор
невозможно. я так понимаю, ты хочешь чтобы данные остались, просто ссылки в оглалении архива не было? я такой вариант не предсматривал
 

toolame

Старожил
Проверенный
ну типа, при распаковке этот файл в первом солид блоке пропускается, а берется со второго блока
да, излишний вес архива, но не значительно и к соотношению "перепаковка всего первого солид блока" такой вариант весьма привлекателен (ибо тупо долго)
 

Chopser

Новичок
Где можно почитать про алгоритм 4х4 и как использовать? В справке ничего нет.
 

sergey3695

Ветеран
Модератор
Chopser,
Булат Зиганшин написал(а):
параметр 4x4:b определяет размер блоков, на которые разбиваются входные данные (каждый блок сжимается независимо алгоритмом описанным внутри 4x4). по умолчанию размер блока равен размеру словаря во внутреннем алгоритме, т.е. для 4x4:lzma:128mb этот блок будет 128 мб.
4x4:
  • Быстрая обработка уже сжатых данных - они просто копируются в выходной файл со скоростью 1 ГБ/с
  • Для этого каждый блок данных сначала проверяется на order-0 сжатие и если его коэффициент >99% - данные передаются без упаковки
  • Настройка: параметр :r0 означает "не проверять и всегда пытаться сжать данные", :r99.5 означает "пропускать упаковку если коэффициент order-0 сжатия >99.5%"
 

toolame

Старожил
Проверенный
Chopser, более того, можно использовать внешние пакеры, только обязательно нужно указать размер блока, например:
Код:
4x4:b256mb:razor:256M
 

Edison007

Ветеран
Модератор
Стоит еще заметить, что оно крайне не стабильно работает с внешними пакерами через режим stdin/out, не работает с cls, и некоторые пакеры могут падать, например как-то давно я не смог заставить нормально работать 4x4:ofr в raw режиме
 

Chopser

Новичок
Спасибо большое всем! Что зависит от размера блока? Можно ли задать количество потоков? При упаковке в батнике почему то не отображаются проценты обработки как обычно, хотя обработка идет судя по файлу в
выходной папке - ххххх.tmp. Так и должно быть? И что-то пакует очень уж долго. Внешний компрессор использовал - FAZip x64. Просто заинтересовал этот 4х4 в связи с многопоточностью. А то распаковка в обычном режиме слишком уж долгая.
 

toolame

Старожил
Проверенный
Что зависит от размера блока?
ну конечный размер, по сути чем больше размер блока, тем лучше сжатие, но тем меньше кол-во ядер можно задействовать (из за ограничений х32 в 2GB памяти?)
Можно ли задать количество потоков?
через t вроде, или i (хз в чем разница)
Код:
4x4:t4:i2:lzma:max
я обычно в самом arc указываю через -mt4
И что-то пакует очень уж долго
если с tmp файлами, то да, долго будет
с другой стороны, например razor только через файлы и работает, и 4x4 спасает от необходимости создавать на диске полный файл (а он может быть несколько десятков GB) при распаковке (обработка идет кусками размером в блок)

Булат Зиганшин, можно ли как то указать какой процент несжимаемости считается у $compressed, ну на авто-детекте который, по умолчанию 99% же? я бы хотел опустить до 95%
 

Edison007

Ветеран
Модератор
Если юзать fazip, то можно использовать и его внутренний 4х4, на х64-системах не упремся в лимит 2 гб, как было сказано выше (Хотя как-то давно я заставил юзать инсталлятор ~ 3.4гб одним процессом), но с внешними компрессорами работать не будет.

через t вроде, или i (хз в чем разница)
t - потоки сжатия
i - потоки ввода/вывода
 

Chopser

Новичок
Мда... Все это конечно хорошо, но... Интересное получается кино - если паковать цепочкой: -mpzlib+srep+4x4:b128mb:lzma:176mb:normal:bt4:128:mc1000:lc8, просто Фриарком, то при распаковке выдает что заголовок архива поврежден и до свиданья. А если паковать с внешним FAZip, то распаковывается нормально и с внешним Фазипом и без Фазипа просто Фриарком. В чем дело? Винда 7 х64. Консольный FreeArc 0.67 от 15 марта 2014 года. Здесь кстати выложен более старый.

С Pzlib вообще интересные вещи происходят - если указывать число потоков любое до 75p - он работает в один поток, но если указать t75p - он работает в 3 потока. И вообще зачем нужна CLS-pzlib.dll - что с ней что без нее разницы не заметил. Кстати, если в PzLib указать 2 потока (t2), то индикатор распаковки идет кусками, рывками. Например стоит 70% потом сразу 84%. И этот PZLib вообще ничего не разжимает по умолчанию, пока не пропишешь размер куска - -c100m или c200m, в зависимости от размера упаковываемых данных.

Вся эта беда относится к игре - Call of Duty - Modern Warfare 3. Какая то гадкая попалась. А кнкретнее к папке: zone\russian - содержащей файлы с zlib потоками. Все это упаковал, но распаковка 48 минут, это вообще... Пробовал и PrecompInside - распаковка тоже рывками даже с Records.ini, PrecompMT с его долбаным - Intense0 вообще разхимает чуть-чуть, а как там поставить Intense без 0 не нашел.

P.S.
Пакую для себя и друзей, никуда ничего не выкладываю.
 
Последнее редактирование:

Shegorat

Lord of Madness
Администратор
FreeArc 0.67 alpha (16 Марта 2014)
Сайт FA больше недоступен. Надо было к нам заливать

Вся эта беда относится к игре - Call of Duty - Modern Warfare 3. Какая то гадкая попалась. А кнкретнее к папке: zone\russian - содержащей файлы с zlib потоками. Все это упаковал, но распаковка 48 минут, это вообще... Пробовал и PrecompInside - распаковка тоже рывками даже с Records.ini, PrecompMT с его долбаным - Intense0 вообще разхимает чуть-чуть, а как там поставить Intense без 0 не нашел.
Просто там каждый файл - один большой deflate поток. Соответственно и прогресс отображается только после декомпрессии такого потока, причем не всегда корректно.
 

Chopser

Новичок
Просто там каждый файл - один большой deflate поток. Соответственно и прогресс отображается только после декомпрессии такого потока, причем не всегда корректно.
Если паковать с PzLib то при распаковке в один поток прогресс гладкий даже без records.ini причем укладывается как раз в 100%. А если тем же PzLib, но в 2 потока то идет рывками как
с PrecompInside. А cls-pzlib.dll зачем вообще нужна?
 
Сверху