Использование archiver.obj

Applications development, KoOS API questions
  • Как насчет сделать программу-распаковщик zip архивов? Вроде
    kunzip "/sys/arc.zip" "/tmp0/1/"
    Рисует только окно с процессом распаковки: имя распаковуемого файла, полоса прогресса.
    Из хаоса в космос
  • For network applications, it would be useful to have deflate function which works on streams.
    I have tried hacking the archiver library to do this in the past but could not master.
    (Applications/protocols which come to mind: HTTP, VNC, SSH,...)
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • Leency wrote:Как насчет сделать программу-распаковщик zip архивов? Вроде
    kunzip "/sys/arc.zip" "/tmp0/1/"
    Рисует только окно с процессом распаковки: имя распаковуемого файла, полоса прогресса.
    Идея хорошая но думаю что с полосой прогресса могут быть проблемы. Дело в том что распаковка архива идет за один вызов функции deflate_unpack потому полоса прогресса будет или пустой или сразу полной.
    hidnplayr wrote:For network applications, it would be useful to have deflate function which works on streams. I have tried hacking the archiver library to do this in the past but could not master.
    Apparently the compression is working properly. But I would like to further develop neotroye function of the library. For example, in the source code 'longest_match' function was 2 version. If you set the FASTEST == 0 and make the code of the function for this parameter, it will be possible to establish different degrees of compression. I think that even though it is already possible to use the library.
  • Полоса может отображать количество распакованных файлов относительно всех файлов в архиве, ех. 10/134.
    Из хаоса в космос
  • Обнаружил что функция deflate (из zlib.obj) почему-то не работает с параметром Z_NO_FLUSH. Потому если кто захочет использовать ее, то пусть всегда ставит Z_FINISH, до выяснения причины почему не работает. Это может немного ухудшить качество сжатия, но сжимать всеравно должно.
  • IgorA, а ты zlib "с нуля" что ли переписываешь на ассемблере?
    Есть ведь zlib уже http://websvn.kolibrios.org/listing.php ... 86eb580ba9
  • 0CodErr wrote:IgorA, а ты zlib "с нуля" что ли переписываешь на ассемблере?
    Есть ведь zlib уже http://websvn.kolibrios.org/listing.php ... 86eb580ba9
    Оно же там на C++, а мне очень нужно было на asm, потому как libimg экспортировала функции из archiver-а который также был на asm.
  • rev 6799
    Удалось сделать более сложный вариант функции longest_match, который дает большее сжатие. Теперь png файл с пустым рабочим столом занимает не 269 кб а 80 кб.
  • IgorA
    Круто! Paint открывает норм.
    Но ни XnView, ни Chome не хочет открывать созданный файл http://prntscr.com/dk6t08
    Из хаоса в космос
  • Leency wrote:Но ни XnView, ни Chome не хочет открывать созданный файл http://prntscr.com/dk6t08
    Думаю что может быть одно из 2-х:
    1) Либо не правильно считаются контрольные суммы crc, adler. Потому как Колибриевская функция deflate_unpack по моим опытам вообще на crc не реагирует и распаковывает всегда. Возможно что Виндосовские программы увидев не правильную контрольную сумму даже не берутся за распаковку данных и выкидывают ошибку.
    2) Возможно что данные в IDAT нужно паковать по строкам изображения а не кусками по 16 кб как у меня в libimg.
    Leency wrote:Paint открывает норм.
    Это уже хорошо, значит можно в случае чего смотреть и пересохранять через Paint и потери данных не будет.
    А пока будет над чем еще дальше подумать.
  • Leency wrote:Но ни XnView, ни Chome не хочет открывать созданный файл http://prntscr.com/dk6t08
    Пока все никак не могу найти причину такого поведения. Уже так много ошибок исправил но все мимо.
    Вероятнее всего что где-то не правильно работает на стороне libimg, потому как в archiver (оно же zlib) в последнее время много чего было исправлено.
  • Who is online

    Users browsing this forum: No registered users and 3 guests