Is there any way of using QuickBMS as a standalone packer like gzip?

Doubts, help and support about QuickBMS and other game research tools
Definitive
Posts: 4
Joined: Fri Nov 03, 2017 3:14 am

Is there any way of using QuickBMS as a standalone packer like gzip?

Post by Definitive »

Hello forum! Nice to join!

I want to make a very simple question. Sorry if it is too much off-topic or already answered.
I noticed the huge amount of compression algorithms included on QuicBMS. It's astonishing! Which led me to wonder if it can't be used to just pack some file or data stream into other... Is there any command that does that? I haven't found one but just in case I ask. Or can be modified the source to do so?
I think that could be a wonderful application to the program, and I really could use such a feature.

Thank you very much in advance for any answer.
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Is there any way of using QuickBMS as a standalone packer like gzip?

Post by aluigi »

Yes :)

Code: Select all

quickbms.exe -s "comtype gzip_compress ; get SIZE asize ; clog new.gz 0 SIZE SIZE" "" YOUR_INPUT_FILE
Definitive
Posts: 4
Joined: Fri Nov 03, 2017 3:14 am

Re: Is there any way of using QuickBMS as a standalone packer like gzip?

Post by Definitive »

Thank you! Will try.
Definitive
Posts: 4
Joined: Fri Nov 03, 2017 3:14 am

Re: Is there any way of using QuickBMS as a standalone packer like gzip?

Post by Definitive »

Well... quick update. I've been playing around with QuickBMS' algorithms (115 as of today if I interpreted defs.h right)
Now I have like a zillion questions but I guess it's better to go one step at the time... :)

I saw that Microsoft's Lempel-Ziv-eXtended compression is supported. What I missed is a way of configure the levels of compression. Is it present in the program? Or is it a stripped-off version that only operate with the strongest setting?

I'm interested in use your code in a recompression program like precomp but in this case for lzx streams. And as far as I know, this could be the only open source code existing that is capable of doing so because wimlib has its own implementation that yields a stronger result than MS original algorithm.

Thanks in advance for any insight.
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Is there any way of using QuickBMS as a standalone packer like gzip?

Post by aluigi »

Currently quickbms 0.8.1 supports 699 algorithms of which just a few of them are duplicates, but for sure more than 650.

The XMemDecompress/xmemcompress algorithm accepts some settings on the DICT field: WindowSize and CompressionPartitionSize.

Example:

Code: Select all

comtype xmemlzx_compress "131072 524288"
get SIZE asize
clog "new.dat" 0 SIZE SIZE

The 2 values I used in my example are the default values of those settings I mentioned.
Definitive
Posts: 4
Joined: Fri Nov 03, 2017 3:14 am

Re: Is there any way of using QuickBMS as a standalone packer like gzip?

Post by Definitive »

WOW! 650? I have a lot to discover then. I'll read a little more and come back. I've found some other sources too.