Сейчас на форуме: tyns777, zombi-vadim (+3 невидимых) |
![]() |
eXeL@B —› Программирование —› Интересуют наработки по архиватору Bee |
Посл.ответ | Сообщение |
|
Создано: 05 марта 2008 23:42 · Личное сообщение · #1 Есть такой опенсорсный архиватор называется Bee. Тут информация по нему: h..p://compression.ru/fa/ Есть паскалевские исходники. Проект правда давно заброшен, последнее обновление 23.09.2005 Вопрос собственно вот в чём. Кто ни будь работал с исходниками и имеет ли наработки по этому архиватору ? Может быть есть реализации на асме или под VB, может dll ? Вообще кто ни будь пользовался ? Очень впечатлило сжатие маленького фрагмента текста. К примеру скажу, что текстовый файл размером 256 байт Bee сжал до 185, в то время как даже rar сделал 217. Если пользовать lzw3 или aplib, то сжимает до 248 байт. Некоторые реализации Хоффмана отличились и увеличением файла… Вообще в идеале нужен код упаковки и распаковки строки или участка памяти на VB с хорошей компрессией без использования сторонних dll. ![]() |
|
Создано: 06 марта 2008 00:30 · Личное сообщение · #2 |
|
Создано: 06 марта 2008 01:34 · Личное сообщение · #3 Jupiter я учитывал путь и считал чистый блок данных... Gui версия Bee (как и Rar) выдаёт чистый размер данных без учета длинны файла. В сторону PAQ уже посмотрел, как раз хотел подправить топик... Интересно, и исходники есть. Тут h..p://cs.fit.edu/~mmahoney/compression/text.html#1323 нашел много всего. Вполне устроила версия paq8f. Старая, но код небольшой. Хотел бы глянуть p5, но исходников пока не нашёл. Единственное что смущает это Pentium MMX and higher. Ну и как бы поиметь функцию готовую что бы дать адрес буфера и прочее что нужно, а на выходе получить сжатый код. Есть какие ни будь реализации этого архиватора на дельфи или VB ? ![]() |
|
Создано: 06 марта 2008 02:21 · Личное сообщение · #4 ToBad пишет: Старая, но код небольшой. что значит старая? ToBad пишет: Хотел бы глянуть p5, но исходников пока не нашёл. если речь о PAQ - то все исходники доступны. ToBad пишет: Единственное что смущает это Pentium MMX and higher. учитывая год выпуска первых процессоров с MMX (1997-й год), это не должно смущать более того - учитывая низкую производительность PAQ в целом, не вижу смысла использовать этот алго на процах, которым больше 11-ти лет. в таком случае проще определять, что поддерживает процессор - и сжимать другим алго (например aPLib). ToBad пишет: Ну и как бы поиметь функцию готовую что бы дать адрес буфера и прочее что нужно, а на выходе получить сжатый код. видимо, разобраться в исходниках - там всё таки не так много кода ToBad пишет: Есть какие ни будь реализации этого архиватора на дельфи или VB ? ну если ты хочешь реализацию PAQ на VB - то может тебе лучше другой алго подыскать? в чём проблема использовать dll из VB ? ----- EnJoy! ![]() |
|
Создано: 06 марта 2008 03:17 · Личное сообщение · #5 Jupiter пишет: что значит старая? Ну paq8f датируется Feb. 28, 2006, а версия например paq8o8 от Oct. 23, 2007. Соответственно в более старых версиях код меньше. Для моих нужд подойдет и постарее. Jupiter пишет: в таком случае проще определять, что поддерживает процессор - и сжимать другим алго Да, так и придётся делать. Jupiter пишет: ну если ты хочешь реализацию PAQ на VB - то может тебе лучше другой алго подыскать? Почему ? Есть технология вставки ассемблерного кода в VB. Пишется код на nasm-е например, bin пихается в ресурсы, либо в массив, а затем передается управление через CallWindowProc. Можно передавать параметры... В общем работает. Насчёт исходников, то как я понял основная часть на Си, а вставки на асме ? Может есть в виде dll или целиком на ассемблере ? ![]() |
|
Создано: 07 марта 2008 13:08 · Личное сообщение · #6 Jupiter пишет: в чём проблема использовать dll из VB ? А не знаешь где взять готовую dll с реализованным PAQ ? Пытался я погуглить, но везде только ссылки на оригинальные исходные коды. Странно, но не смог найти ничего стороннего. Какие нибудь дельфевские компоненты, dll или какую нибудь реинкарнацию кодов на чистый асм или паскаль... Везде только Си. ![]() |
|
Создано: 07 марта 2008 13:52 · Личное сообщение · #7 |
|
Создано: 07 марта 2008 14:06 · Личное сообщение · #8 |
|
Создано: 07 марта 2008 19:21 · Личное сообщение · #9 |
|
Создано: 08 марта 2008 01:19 · Личное сообщение · #10 SWR пишет: а суть в чем - нужно сжать данные или сжать максимально? Если первое то полно LZ модиффикаций Хочется сжать лучше. У меня есть модификация LZ, но сжимает она плохо. Мой пример текст 256 байт сжимает до 248... Хотя конечно слишком мелкий файл... SWR пишет: А в чем сложность dll в ресурсы запихать и самому её грузить Сложность в отсутствии небольшой dll с хорошим алгоритмом типа PAQ или его клонов. ![]() |
![]() |
eXeL@B —› Программирование —› Интересуют наработки по архиватору Bee |