FileForums

FileForums (https://fileforums.com/index.php)
-   Conversion Tutorials (https://fileforums.com/forumdisplay.php?f=55)
-   -   Universal Accelerator - cls-mtx.dll (https://fileforums.com/showthread.php?t=103664)

BLACKFIRE69 13-09-2020 20:37

Quote:

Originally Posted by Cesar82 (Post 487930)
If you are not going to increase the size of your library a lot, even if it does not serve to increase performance, it could include support for all the most used methods that would dispense with the use of other CLS.


Does your cls-mtx.dll library allow me to extract using executables in folders?
I want to include a mode with decompressors in folders in the CIU and I think that the other CLS don't work the way I need.

Creating folder structures as:
Code:

Compressors\PRECOMP\<precomp files>
Compressors\MPZAPI\<mpz files>
Compressors\RAZOR\<rz files>

In the Arc.ini file informing the folder containing the executables, like this:
Code:

[External compressor:precomp]
header    = 0
unpackcmd = "PRECOMP\{compressor}" -r -o$$arcdatafile$$.tmp $$arcpackedfile$$.tmp

[External compressor:mpz]
header    = 0
unpackcmd = "MPZAPI\{compressor}" d <stdin> <stdout>

[External compressor:rz]
header    = 0
unpackcmd = "RAZOR\{compressor}" e -y $$arcpackedfile$$.tmp $$arcdatafile$$.tmp

Using in the Inno Setup script like this:
Code:

[Files]
Source: cls-mtx.dll; Flags: dontcopy;
Source: CLS.ini; Flags: dontcopy;
Source: Arc.ini; Flags: dontcopy;
Source: UnARC.dll; Flags: dontcopy;
Source: ISDone.dll; Flags: dontcopy;
Source: "Compressors\*"; Flags: dontcopy createallsubdirs recursesubdirs;

[code ]
function InitializeSetup(): Boolean;
begin
 
ExtractTemporaryFile('cls-mtx.dll');
  ExtractTemporaryFile('CLS.ini');
  ExtractTemporaryFile('Arc.ini');
  ExtractTemporaryFile('UnARC.dll');
  ExtractTemporaryFile('ISDone.dll');

  ExtractTemporaryFiles('{tmp}\Compressors\*');
end;




Cesar,
"cls-mtx.dll" supports this feature, since v2.0.0.3.

and unpackcmd should be like, ( without inverted commas (") ) (i'll fix this issue in the next update.)
Code:

[External compressor:bcm]
header    = 0
unpackcmd = Res\Bcm\{compressor} -d $$arcpackedfile$$.tmp $$arcdatafile$$.tmp

not

unpackcmd = "Res\Bcm\{compressor}" -d $$arcpackedfile$$.tmp $$arcdatafile$$.tmp


here is the full example, ;)

cls-mtx Example - Cesar.rar

Cesar82 13-09-2020 21:36

Quote:

Originally Posted by BLACKFIRE69 (Post 487934)
Cesar,
"cls-mtx.dll" supports this feature, since v2.0.0.3.

and unpackcmd should be like, ( without inverted commas (") ) (i'll fix this issue in the next update.)
Code:

not

unpackcmd = "Res\Bcm\{compressor}" -d $$arcpackedfile$$.tmp $$arcdatafile$$.tmp


Without double quotes (") in the path names, if the path has spaces then I think it will detect the path to the space and the rest will be interpreted as another parameter causing errors.
Code:

[External compressor:bcm]
header    = 0
unpackcmd = Res\Bcm Compressor\{compressor} -d $$arcpackedfile$$.tmp $$arcdatafile$$.tmp

I will look forward to future updates.
Thank you.

BLACKFIRE69 13-09-2020 22:51

Quote:

Originally Posted by Cesar82 (Post 487936)
Without double quotes (") in the path names, if the path has spaces then I think it will detect the path to the space and the rest will be interpreted as another parameter causing errors.
Code:

[External compressor:bcm]
header    = 0
unpackcmd = Res\Bcm Compressor\{compressor} -d $$arcpackedfile$$.tmp $$arcdatafile$$.tmp

I will look forward to future updates.
Thank you.


that's not a problem. you can set the path without ("). (note that: for cls-mtx :cool:)


like this..

Code:

[External compressor:bcm]
header    = 0
packcmd  = Res\Bcm Compressor\{compressor} -9 $$arcdatafile$$.tmp $$arcpackedfile$$.tmp
unpackcmd = Res\Bcm Compressor\{compressor} -d $$arcpackedfile$$.tmp $$arcdatafile$$.tmp

works well....


Cesar82 13-09-2020 23:19

Quote:

Originally Posted by BLACKFIRE69 (Post 487937)
that's not a problem. you can set the path without ("). (note that: for cls-mtx :cool:)


like this..

Code:

[External compressor:bcm]
header    = 0
packcmd  = Res\Bcm Compressor\{compressor} -9 $$arcdatafile$$.tmp $$arcpackedfile$$.tmp
unpackcmd = Res\Bcm Compressor\{compressor} -d $$arcpackedfile$$.tmp $$arcdatafile$$.tmp

works well....


Thank you!
But if the path was something like that, would it work too?
Code:

[External compressor:bcm]
header    = 0
packcmd  = Res\Bcm compressor\bcm -9 $$arcdatafile$$.tmp $$arcpackedfile$$.tmp
unpackcmd = Res\Bcm -decompressor\bcm -d $$arcpackedfile$$.tmp $$arcdatafile$$.tmp


BLACKFIRE69 14-09-2020 01:48

Quote:

Originally Posted by Cesar82 (Post 487938)
Thank you!
But if the path was something like that, would it work too?
Code:

[External compressor:bcm]
header    = 0
packcmd  = Res\Bcm compressor\bcm -9 $$arcdatafile$$.tmp $$arcpackedfile$$.tmp
unpackcmd = Res\Bcm -decompressor\bcm -d $$arcpackedfile$$.tmp $$arcdatafile$$.tmp



yup, of course ;).
those characters must be valid characters.


but this is wrong.
Code:

packcmd  = Res\Bcm compressor\bcm -9 $$arcdatafile$$.tmp $$arcpackedfile$$.tmp

for cls-mtx:

[External compressor:bcm]
header    = 0
packcmd  = Res\Bcm compressor\{compressor} -9 $$arcdatafile$$.tmp $$arcpackedfile$$.tmp


Cesar82 14-09-2020 09:21

Quote:

Originally Posted by BLACKFIRE69 (Post 487937)
for cls-mtx:

[External compressor:bcm]
header = 0
packcmd = Res\Bcm compressor\{compressor} -9 $$arcdatafile$$.tmp $$arcpackedfile$$.tmp[/CODE]

I understand what you said, but it would be useful to be able to use it as used in arc.ini for other compressors that do not use CLS-MTX.dll.

Currently in CIU it uses this configuration mode that allows the user to inform the command in more than one way.
Code:

[External compressor:rz,RZ,razor,RAZOR]
header    = 0
packcmd  = "RAZOR\RZ_x64" a -y -d {option} $stdio$ <stdin> <stdout>
unpackcmd = "RAZOR\RZ_x64" e -y $stdio$ <stdin> <stdout>

For 32-bit version the executables are "RZ_x86.exe"

If possible, it would be very useful to be able to configure this way (in the next update of CLS-MTX.dll).
It also needed to allow the use of compressors without the CLS-MTX, such as using for mtx: [External compressor: mtxrz, mtxrazor, mtx_razor, mtx_rz]
and for RAZOR norml to use [External compressor:rz,RZ,razor,RAZOR]
This same name variation would be used for other executables like mpzapi and perhaps some others.

BLACKFIRE69 14-09-2020 10:04

Quote:

Originally Posted by Cesar82 (Post 487942)
I understand what you said, but it would be useful to be able to use it as used in arc.ini for other compressors that do not use CLS-MTX.dll.

Currently in CIU it uses this configuration mode that allows the user to inform the command in more than one way.
Code:

[External compressor:rz,RZ,razor,RAZOR]
header    = 0
packcmd  = "RAZOR\RZ_x64" a -y -d {option} $stdio$ <stdin> <stdout>
unpackcmd = "RAZOR\RZ_x64" e -y $stdio$ <stdin> <stdout>

For 32-bit version the executables are "RZ_x86.exe"

If possible, it would be very useful to be able to configure this way (in the next update of CLS-MTX.dll).
It also needed to allow the use of compressors without the CLS-MTX, such as using for mtx: [External compressor: mtxrz, mtxrazor, mtx_razor, mtx_rz]
and for RAZOR norml to use [External compressor:rz,RZ,razor,RAZOR]
This same name variation would be used for other executables like mpzapi and perhaps some others.


all right then. i'm working on it. :D

(i've a few exams in the coming days. so it may not be quick. :o)

BLACKFIRE69 14-09-2020 16:38

cls- mtx Update
 
cls- mtx Update v2.0.0.5




New update for "cls-mtx".




What's New:
  • "{Compressor}" is no longer required.
  • Can use more than one name.
  • Known issues have been resolved.
  • Please use (") for directories with spaces.


New Arc.ini (or any config.ini):

Code:

[External compressor:mtx_rz, mtx_razor, mtxrz]
header    = 0
packcmd  = "Res\Rz Compressor\rz64.exe" a -d 128m $$arcpackedfile$$.tmp $$arcdatafile$$.tmp
unpackcmd = "Res\Rz Compressor\rz64.exe" e -y $$arcpackedfile$$.tmp $$arcdatafile$$.tmp


Inputs: (that supports)
Code:

1. $$arcdatafile$$.tmp
2. <stdin>


Outputs: (that supports)
Code:

1. $$arcpackedfile$$.tmp
2. <stdout>


Masquerade 15-09-2020 10:34

@BLACKFIRE69

I have messaged you my setup, I copied the line from your SetIniString example but it does not work.

Maybe a second pair of eyes to look could really help.

It's on line 1950

BLACKFIRE69 15-09-2020 13:03

Quote:

Originally Posted by Masquerade (Post 487959)
@BLACKFIRE69

I have messaged you my setup, I copied the line from your SetIniString example but it does not work.

Maybe a second pair of eyes to look could really help.

It's on line 1950

ok, check the inbox. :p

BLACKFIRE69 16-09-2020 06:43

cls-mtx New Update
 
cls-mtx New Update v2.0.0.6




What's New:
  • Some improvements.
  • Minor issues fixed.
  • Not case sensitive as before. :p



and i was able to reduce the final size from "191 kb" to "100 kb". :D


_

Masquerade 16-09-2020 13:01

@BLACKFIRE69

Thank you for the update, however a huge bug has been introduced. Nothing has changed in my arc.ini since I added the new version to my compressor:

Code:

Compressed 119 files, 13,245,186,961 => 1,672 bytes. Ratio 0.00%
Compression time: cpu 14.33 sec/real 483.57 sec = 3%. Speed 27.39 mB/s
All OK

Using method: mtx:c64m:t16:rz

The folder being compressed is ~700MB and sometimes it says all 700MB becomes 1kb, other times like the above it only recognises some of the data.

BLACKFIRE69 16-09-2020 14:20

2 Attachment(s)
Quote:

Originally Posted by Masquerade (Post 487971)
@BLACKFIRE69

Thank you for the update, however a huge bug has been introduced. Nothing has changed in my arc.ini since I added the new version to my compressor:

Code:

Compressed 119 files, 13,245,186,961 => 1,672 bytes. Ratio 0.00%
Compression time: cpu 14.33 sec/real 483.57 sec = 3%. Speed 27.39 mB/s
All OK

Using method: mtx:c64m:t16:rz

The folder being compressed is ~700MB and sometimes it says all 700MB becomes 1kb, other times like the above it only recognises some of the data.


no. it works without problems.
more details plz. what about my example compressor?
or send me related files.

Masquerade 17-09-2020 00:51

@BLACKFIRE69

Yes with your compressor it works, but I did not change a single config between last time I used MTX and this time.

Perhaps I should fully remake my compressor and tidy things up? I'll get back to you after I try sort it.

Sorry for wasting your time...

Edit: I have mailed you an example compressor, I tried rewriting 3 times but it keeps returning <1KB files :(

BLACKFIRE69 17-09-2020 06:55

Quote:

Originally Posted by Masquerade (Post 487979)
@BLACKFIRE69

Yes with your compressor it works, but I did not change a single config between last time I used MTX and this time.

Perhaps I should fully remake my compressor and tidy things up? I'll get back to you after I try sort it.

Sorry for wasting your time...

Edit: I have mailed you an example compressor, I tried rewriting 3 times but it keeps returning <1KB files :(


ok, check my answer i solved your problem. ;)

and guys, since v2.0.0.5, the keyword "{compressor}" is no longer supported on arc.ini. please see the example.

BLACKFIRE69 27-09-2020 10:47

Update



What's new:
  • Bringing back "{compressor}".
    - Added support for "{compressor}" as before.



* cls-mtx supports two methods.

Code:

1: The simple way

[External compressor:precomp, mtxprecomp, mtx_precomp]
header    = 0
packcmd  = "Res\Precomp\precomp.exe" -cn -intense0 -o$$arcpackedfile$$.tmp $$arcdatafile$$.tmp
unpackcmd = "Res\Precomp\precomp.exe" -r -o$$arcdatafile$$.tmp $$arcpackedfile$$.tmp


Code:

2: Alternative method

[External compressor:precomp, mtxprecomp, mtx_precomp]
header    = 0
packcmd  = "Res\Precomp\{compressor}" -cn -intense0 -o$$arcpackedfile$$.tmp $$arcdatafile$$.tmp
unpackcmd = "Res\Precomp\{compressor}" -r -o$$arcdatafile$$.tmp $$arcpackedfile$$.tmp


and the exe name must be "precomp.exe" (similar to the first one in section names.)


dixen 30-09-2020 07:14

Test

Left 4 dead 2 2.2.0.1

*.WAV (srep+mtxrz)

Quote:

Tested 47,599 files, 4,218,328,066 => 9,937,777,119 bytes. Ratio 42.45%
Testing time: cpu 8.50 sec/real 82.11 sec = 10%. Speed 121.03 mB/s
All OK

BLACKFIRE69 02-10-2020 06:49

cls-mtx October Update
 
cls-mtx October Update v2.0.0.7




What's new:
  • Fixed a minor issue..
    - Fixed an issue that related to the working directory.

kj911 12-07-2022 09:57

Any members tested the accelerator, using DLZ compressor in multi-core PC's?? (x86 or x64 and more CPU cores 2/4 to 8-16)

Masquerade 12-07-2022 10:02

Quote:

Originally Posted by kj911 (Post 497594)
Any members tested the accelerator, using DLZ compressor in multi-core PC's?? (x86 or x64 and more CPU cores 2/4 to 8-16)

Don't use DLZ. LOLZ is superior + has built in mulithreading.

kj911 12-07-2022 14:44

I know lolz is better. For testing, you should do this to see if it can be better with MTX, the speed of (de)compression. Lolz, however, you can't pack on old X86 machines. (The unpacking only, we leave it now.) While with DLZ yes. DLZ is more faster compared (data dependent case) to FreeArc internal lzma codec. Up to 2x speed.* (Without cu2 or cu3 and cm40/43 switches.) The compression rate is often better (1-2% to few percentage), even for smooth data. (DDS files has in up to 5-15%) This cm10 or cm00 no effecting or minimally in decompression speed. For the most extreme settings, the unpacking is slow, true. Compared to OGGRE, even 2* is still more faster.

This range from DDS files compression:

1. LOLZ (its probably best, without MSC!)
2. DLZ (no MSC)
3. MSC + FA's lzma or use "FA's lzma" compression replacement use this lzma part from DLZ
4. FA's lzma or any lzma1/2 compressor

*Note: This DDS/DXT datafiles decompression speed comparable the FA's internal LZMA compression. (uses lzma's only switches.) Minimally slower. This "DATA"-typed compressed data (This DLZ printed type to out from CMD window) comparable or barely faster than FA's lzma algo. More tests req. from old PC from comparison. (Using and find ~0.5-1GB test data.)**

**More DDS samples, any games resources, text, sounds/videos, exe/dll binaries or any more.

Extra questions: Original DLZ Package has been release originally in UPX'ed files??


All times are GMT -7. The time now is 14:06.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions Inc.
FileForums @ https://fileforums.com