Go Back   FileForums > Game Backup > PC Games > PC Games - CD/DVD Conversions > Conversion Tutorials
Register FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 13-07-2022, 06:30
CR2032's Avatar
CR2032 CR2032 is offline
Registered User
 
Join Date: Feb 2020
Location: Russian
Posts: 8
Thanks: 8
Thanked 3 Times in 2 Posts
CR2032 is on a distinguished road
Quote:
Originally Posted by Razor12911 View Post
Update available

Changes

- added fast lzma2 compression for portable mode
- fixed issues with wav stream detection
- fixed minor issue with stream deduplication feature

Notes

I have added fast lzma2 compression for users who would want to use xtool without FA but still want to perform compression immediately after precompressing.

Example
Code:
xtool.exe precomp -mzlib -c32mb -t100p --dbase --dedup --compress=l10,t100p - -
Thank You So Much For Your Hard Work, Razor12911!
Reply With Quote
The Following User Says Thank You to CR2032 For This Useful Post:
Razor12911 (15-07-2022)
Sponsored Links
  #2  
Old 13-07-2022, 11:29
Cesar82's Avatar
Cesar82 Cesar82 is offline
Registered User
 
Join Date: May 2011
Location: Brazil
Posts: 1,074
Thanks: 1,814
Thanked 2,304 Times in 787 Posts
Cesar82 is on a distinguished road
Lightbulb

Quote:
Originally Posted by Razor12911 View Post
Code:
xtool.exe precomp -mzlib -c32mb -t100p --dbase --dedup --compress=l10,t100p - -
XTool is going independent, abandoning its helpers, lol.
Maybe in the future it will get its own final compression with high compression gain and higher performance than lolz... It would be great!
Reply With Quote
  #3  
Old 13-07-2022, 07:01
L33THAK0R's Avatar
L33THAK0R L33THAK0R is offline
Registered User
 
Join Date: Feb 2021
Location: Saudi Arabia
Posts: 406
Thanks: 137
Thanked 117 Times in 70 Posts
L33THAK0R is on a distinguished road
Are there any current situations/titles that could benefit from the fast lzma2 compression option? Not fully awake, apologies if this is a tad silly to ask, with the answer being plainly obvious.
Reply With Quote
  #4  
Old 13-07-2022, 12:14
Masquerade Masquerade is offline
Registered User
 
Join Date: Jan 2020
Location: Monte d'Or
Posts: 1,217
Thanks: 294
Thanked 1,404 Times in 637 Posts
Masquerade is on a distinguished road
Quote:
Originally Posted by L33THAK0R View Post
Are there any current situations/titles that could benefit from the fast lzma2 compression option? Not fully awake, apologies if this is a tad silly to ask, with the answer being plainly obvious.
No, it's just a final compresison option. A bit like how precomp has built in LZMA compressor

@Razor thanks for the continued updates!
Reply With Quote
The Following 2 Users Say Thank You to Masquerade For This Useful Post:
CR2032 (14-07-2022), Razor12911 (15-07-2022)
  #5  
Old 14-07-2022, 14:55
CR2032's Avatar
CR2032 CR2032 is offline
Registered User
 
Join Date: Feb 2020
Location: Russian
Posts: 8
Thanks: 8
Thanked 3 Times in 2 Posts
CR2032 is on a distinguished road
Quote:
Originally Posted by Masquerade View Post
No, it's just a final compresison option. A bit like how precomp has built in LZMA compressor

@Razor thanks for the continued updates!
Hello.
Exactly like that! Like a Precomp compression with the key -c.
Reply With Quote
  #6  
Old 14-07-2022, 14:45
CR2032's Avatar
CR2032 CR2032 is offline
Registered User
 
Join Date: Feb 2020
Location: Russian
Posts: 8
Thanks: 8
Thanked 3 Times in 2 Posts
CR2032 is on a distinguished road
Quote:
Originally Posted by L33THAK0R View Post
Are there any current situations/titles that could benefit from the fast lzma2 compression option? Not fully awake, apologies if this is a tad silly to ask, with the answer being plainly obvious.
Hello.
No. It's just a creative and really a gifted step, not more.

Last edited by CR2032; 14-07-2022 at 14:50.
Reply With Quote
  #7  
Old 13-07-2022, 08:06
:( Sad8669 :( Sad8669 is offline
Registered User
 
Join Date: Oct 2020
Location: -
Posts: 203
Thanks: 97
Thanked 188 Times in 101 Posts
:( Sad8669 is on a distinguished road
As far as i know, it was added to increase the portability of xtool.

Code:
Notes:
I have added fast lzma2 compression for users who would want to use xtool without FA but still want to perform compression immediately after precompressing.
Reply With Quote
The Following User Says Thank You to :( Sad8669 For This Useful Post:
Razor12911 (15-07-2022)
  #8  
Old 15-07-2022, 10:50
Razor12911's Avatar
Razor12911 Razor12911 is offline
Noob
 
Join Date: Jul 2012
Location: South Africa
Posts: 3,749
Thanks: 2,170
Thanked 11,206 Times in 2,307 Posts
Razor12911 is on a distinguished road
Update available

Changes

- added feature to inject libraries to main executable

Notes

You may notice that the libraries folder is getting filled with a lot of dll files which xtool uses so reduce this cumbersomeness you might want to embed all of these dlls within the main executable and placing the dlls near xtool.exe is no longer needed as they will become part of the executable.

This feature is added to promote portable mode where all you have is the files you want to process and xtool.exe with no libraries nearby.

Usage
Code:
xtool.exe inject dll_file
More notes

Only inject lz4, zstd and oodle when you are sure that your input will never need library swaps as these libraries depending on version determine precompression ratio. zlib, reflate and some other libraries do not as every version produces the same results.
Reply With Quote
The Following 10 Users Say Thank You to Razor12911 For This Useful Post:
Cesar82 (15-07-2022), CR2032 (15-07-2022), dixen (15-07-2022), Gehrman (15-07-2022), Grumpy (19-07-2022), KaktoR (15-07-2022), NERV (18-07-2022), Pantsi (15-07-2022), phantom4uk (29-07-2022), ScOOt3r (15-07-2022)
  #9  
Old 15-07-2022, 15:55
CR2032's Avatar
CR2032 CR2032 is offline
Registered User
 
Join Date: Feb 2020
Location: Russian
Posts: 8
Thanks: 8
Thanked 3 Times in 2 Posts
CR2032 is on a distinguished road
Quote:
Originally Posted by Razor12911 View Post
Update available

Changes

- added feature to inject libraries to main executable

Notes

You may notice that the libraries folder is getting filled with a lot of dll files which xtool uses so reduce this cumbersomeness you might want to embed all of these dlls within the main executable and placing the dlls near xtool.exe is no longer needed as they will become part of the executable.

This feature is added to promote portable mode where all you have is the files you want to process and xtool.exe with no libraries nearby.

Usage
Code:
xtool.exe inject dll_file
More notes

Only inject lz4, zstd and oodle when you are sure that your input will never need library swaps as these libraries depending on version determine precompression ratio. zlib, reflate and some other libraries do not as every version produces the same results.
Thank You So Much, Razor12911!
I think this is the really great solution.
Reply With Quote
  #10  
Old 15-07-2022, 11:57
Cesar82's Avatar
Cesar82 Cesar82 is offline
Registered User
 
Join Date: May 2011
Location: Brazil
Posts: 1,074
Thanks: 1,814
Thanked 2,304 Times in 787 Posts
Cesar82 is on a distinguished road
@Razor12911, thank you very much for the constant updates.

1) Is it possible to update the previously injected libraries?
2) XTool 0.3.21 has been removed from the main post... Will we have updates for the remaining plugins soon?
3) Is it necessary to include the "fast-lzma2.dll" library to use xtool's lzma2 internal method?
4) What xtool method is the library "xdelta3_dll.dll" from the _libraries folder used for?

Last edited by Cesar82; 15-07-2022 at 12:03.
Reply With Quote
  #11  
Old 15-07-2022, 16:19
CR2032's Avatar
CR2032 CR2032 is offline
Registered User
 
Join Date: Feb 2020
Location: Russian
Posts: 8
Thanks: 8
Thanked 3 Times in 2 Posts
CR2032 is on a distinguished road
Quote:
Originally Posted by Cesar82 View Post
@Razor12911, thank you very much for the constant updates.

1) Is it possible to update the previously injected libraries?
2) XTool 0.3.21 has been removed from the main post... Will we have updates for the remaining plugins soon?
3) Is it necessary to include the "fast-lzma2.dll" library to use xtool's lzma2 internal method?
4) What xtool method is the library "xdelta3_dll.dll" from the _libraries folder used for?
Hello.
1. Perhaps, just replace old to new.
For example:
If I have xtool.exe with integrated libraries:
xtool.exe inject _libraries\fast-lzma2.dll
xtool.exe inject _libraries\preflate_dll.dll
xtool.exe inject _libraries\zlibwapi.dll

And I want to replace only one a new version fast-lzma2.dll, then:
xtool.exe inject _libraries\fast-lzma2.dll

Or probably, every time there is a new version of xtool, you need to create a new integration.

3. Yes.

Last edited by CR2032; 15-07-2022 at 18:03.
Reply With Quote
The Following 2 Users Say Thank You to CR2032 For This Useful Post:
Cesar82 (15-07-2022), ScOOt3r (15-07-2022)
  #12  
Old 17-07-2022, 22:29
Razor12911's Avatar
Razor12911 Razor12911 is offline
Noob
 
Join Date: Jul 2012
Location: South Africa
Posts: 3,749
Thanks: 2,170
Thanked 11,206 Times in 2,307 Posts
Razor12911 is on a distinguished road
Quote:
Originally Posted by Cesar82 View Post
@Razor12911, thank you very much for the constant updates.

1) Is it possible to update the previously injected libraries?
2) XTool 0.3.21 has been removed from the main post... Will we have updates for the remaining plugins soon?
3) Is it necessary to include the "fast-lzma2.dll" library to use xtool's lzma2 internal method?
4) What xtool method is the library "xdelta3_dll.dll" from the _libraries folder used for?
1) yes
2) possibly, in the main post there is actually link to the older releases I just removed 0.3.21 to make people not ask what is the different between this version and the recent update.
3) yes
4) imperfect streams use xdelta for patching, this function initially came from a dll but I separated all dlls from the main executable and gave the options to the user to include such a feature.
Reply With Quote
The Following 2 Users Say Thank You to Razor12911 For This Useful Post:
Cesar82 (18-07-2022), ScOOt3r (18-07-2022)
  #13  
Old 17-07-2022, 18:15
elit elit is offline
Registered User
 
Join Date: Jun 2017
Location: sun
Posts: 265
Thanks: 190
Thanked 325 Times in 119 Posts
elit is on a distinguished road
I have found something that seem like a bug, and I am not sure if its FA or xtool, but likely an xtool issue.

Say you precomp a file with reflate, but you have an xtool.ini config that contain all kind of codecs, like xmemcompress, quickbms based and so on. But you only used reflate.

Now to decode successfully, you have to have all those exe files + untouched xtool.ini otherwise xtool will throw general error! Even if you don't need any of those for decompression.
That just happened to me. I had to copy all those pointless exe's and exact same xtool.ini for it to work. If for example I edited out those unneeded codecs from xtool.ini and/or deleted crilayla.exe or xmemcompress.exe, then xtool won't decode my reflate pack!

EDIT: No wonder it fails:
xtool.png
Why it have to save all those things if it's not needed?

Last edited by elit; 17-07-2022 at 18:38.
Reply With Quote
  #14  
Old 17-07-2022, 22:24
Razor12911's Avatar
Razor12911 Razor12911 is offline
Noob
 
Join Date: Jul 2012
Location: South Africa
Posts: 3,749
Thanks: 2,170
Thanked 11,206 Times in 2,307 Posts
Razor12911 is on a distinguished road
Quote:
Originally Posted by elit View Post
I have found something that seem like a bug, and I am not sure if its FA or xtool, but likely an xtool issue.

Say you precomp a file with reflate, but you have an xtool.ini config that contain all kind of codecs, like xmemcompress, quickbms based and so on. But you only used reflate.

Now to decode successfully, you have to have all those exe files + untouched xtool.ini otherwise xtool will throw general error! Even if you don't need any of those for decompression.
That just happened to me. I had to copy all those pointless exe's and exact same xtool.ini for it to work. If for example I edited out those unneeded codecs from xtool.ini and/or deleted crilayla.exe or xmemcompress.exe, then xtool won't decode my reflate pack!

EDIT: No wonder it fails:
Attachment 32214
Why it have to save all those things if it's not needed?
Xtool stores all possible methods because xtool itself doesn't know if are or will be used if all before even precompression begins.
Reply With Quote
The Following User Says Thank You to Razor12911 For This Useful Post:
elit (19-07-2022)
  #15  
Old 21-07-2022, 02:50
elit elit is offline
Registered User
 
Join Date: Jun 2017
Location: sun
Posts: 265
Thanks: 190
Thanked 325 Times in 119 Posts
elit is on a distinguished road
reflate issues: some more info

Greetings Razor.
Back on page 34 where I wrote about reflate problems, causing crc errors... This time I was able to catch in on console:

reflatebug.png

But the thing is, exact same run may pass successfully on second or more tries(and then maybe fail again, so random dice per run). I am starting to be cautious about HW issue possibility on my side, but then I had no such issues with zlib yet. Using -t8.

Looks like either thread race issue, or my HW memory. This is on xtool v0.5.3. I will investigate this further.

EDIT:
Latest v0.6.2 == same issue.
If xtool do not fail during compression(precomp), then it will always recompress successfully during unpacking - i.e. probably not HW issue after all.
Last stable version without this bug that I have is 0.3.21. Cannot replicate on it. I believe this one is stable.[Its not, later I found..] Unfortunately it miss a lot of streams that newer xtool-reflate can see.
EDIT2:
Forgot to add. Changing chunk size(or not using depth) can help sometimes, but on big enough data stream one chunk size may pass at one point and fail at different one(where again some other size could work and so on). Also, I started having these issues only recently which correspond with me upgrading to later xtool version than I was stuck with.
Also, I think this have way more likelihood of happening on files that do not contain(or very little) deflate chunks. When FA reported CRC fails it was pretty much files that happen to share same extension with those that do.
EDIT3:
Yup, not my HW. I just threw whole Halo Master Collection directory to xtool 0.3.21(without filter) and it completed successfully. Then I tried both v0.5.3 and v0.6.2 and it failed on address violation.
EDIT4:
I will further confirm it later here, but using -lm *may* work as a workaround for reflate. Not due to a memory shortage, but the way chunks/data and threads are handled. No, it didn't help. [ADD: neither did -t1]
EDIT5:
Preflate works without issues, so I had to settle with it. Final repack size is ~1gb bigger though. I do hope reflate get fixed in the future as I prefer it.

Last edited by elit; 22-07-2022 at 13:29.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
[Dev]XTool Razor12911 Conversion Tutorials 180 23-10-2020 06:26
Project Cars Digital Edition (3xDVD5) (srep+lzma) GTX590 PC Games - CD/DVD Conversions 10 28-08-2017 08:34
Project IGI Anthology 1xCD700 CIUV2 2039 mausschieber PC Games - CD/DVD Conversions 0 24-07-2017 15:12
Space Channel 5 Part 2 Translation Project Christuserloeser DC Games 0 21-06-2004 18:16



All times are GMT -7. The time now is 04:58.


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