FileForums

FileForums (https://fileforums.com/index.php)
-   Conversion Tutorials (https://fileforums.com/forumdisplay.php?f=55)
-   -   UltraARC for Inno Setup (Conversion Tool) (https://fileforums.com/showthread.php?t=96619)

KaktoR 16-12-2016 08:52

Not needed anymore with UltraARC R3, because of MASK feature!

How to speed up compression using UltraArc.

(The following is a feature that i love to see in possible future tools like UA)

Hi.

I want to share my own way for compression, especially for speed up compression using UltraArc with you.

All you need is base skills in math (+/-/dif), we all learned early in school i guess.

For my example i used "Deus Ex: Mankind Divided" (DEMD), which is a good example how to seperate file types.
But this example is applicable to all games that using seperate files/folders for eg. textures, sounds and videos.

Getting started:
1. Move all sound/video files (or other files, that are not compressable with standard compression) out of game folder to a other location with the same folder structure (make them manually).
For DEMD, go to {app}\runtime and search for *.pc_binkvid files and move them to the other location.
The same with {app}\DLC\runtime\*.pc_binkvid.

http://i.imgur.com/ccOZjHw.png
http://i.imgur.com/X7ueRFD.png

2. Start UltraArc, select {app} folder (NOT the backup folder with sound/video files) and output, set-up your settings and start.

3. When the first process finished, close UltraArc, open UltraArc.ini and search for FirstVolumeSize=.
Go to the last folder/dvd UltraArc previously created with the last data#.bin file.

Now the math... Calculate: Max DVD size (-) last data#.bin file (-) 10 MB (it's always a good thing to left some MB free on a DVD). In my case it's "FirstVolumeSize=910"
Back to UltraArc.ini, put your result in "FirstVolumeSize=" and choose different folder name in "VolumePrefixName=", eg. "VolumePrefixName=a"
This facilitates some things on the last step. Trust me :D

4. Start UltraArc again, now choose the backup folder with the not compressable files you previously moved out of game folder. Set-up UltraArc and choose no compression, then start and wait for finish.

5. When second process is done, go to "a1" folder, rename data1a.bin to data4a.bin.
Why data4a.bin? Because in the first process data3b.bin was the last .bin file.
Now move data4a.bin to DVD5 folder. Go to "a2" folder and rename data1b.bin to data4b.bin and move it to DVD6 folder.

Repeat this with all remaining data#.bin's until you reach last DVD folder.

6. Now the last part. Open both records.ini files. Left the original (first created), right the second (from "a1" folder).
In records.ini ("a1" folder), rename [Record1] to [Record11], [Record2] to [Record12], etc.
Also change Source, Output and Disk.

http://i.imgur.com/O3mP6vr.png
http://i.imgur.com/iF58YEd.png

If all are done, copy+paste all from "a1" records.ini to "original" records.ini

Here is what it looks like...

Code:

;;First process using srep+lzma
[Record1]
Type=Split
Source={src}\Data1a.bin
Output={tmp}\Data1.bin
Disk=1
[Record2]
Type=Split
Source={src}\Data1b.bin
Output={tmp}\Data1.bin
Disk=2
[Record3]
Type=Freearc_Split
Source={tmp}\Data1.bin
Output={app}
Disk=2
[Record4]
Type=Split
Source={src}\Data2a.bin
Output={tmp}\Data2.bin
Disk=2
[Record5]
Type=Split
Source={src}\Data2b.bin
Output={tmp}\Data2.bin
Disk=3
[Record6]
Type=Split
Source={src}\Data2c.bin
Output={tmp}\Data2.bin
Disk=4
[Record7]
Type=Freearc_Split
Source={tmp}\Data2.bin
Output={app}
Disk=4
[Record8]
Type=Split
Source={src}\Data3a.bin
Output={tmp}\Data3.bin
Disk=4
[Record9]
Type=Split
Source={src}\Data3b.bin
Output={tmp}\Data3.bin
Disk=5
[Record10]
Type=Freearc_Split
Source={tmp}\Data3.bin
Output={app}
Disk=5

;;Second process using none compression

[Record11]
Type=Split
Source={src}\Data4a.bin
Output={tmp}\Data4.bin
Disk=5
[Record12]
Type=Split
Source={src}\Data4b.bin
Output={tmp}\Data4.bin
Disk=6
[Record13]
Type=Freearc_Split
Source={tmp}\Data4.bin
Output={app}
Disk=6
[Record14]
Type=Split
Source={src}\Data5a.bin
Output={tmp}\Data5.bin
Disk=6
[Record15]
Type=Split
Source={src}\Data5b.bin
Output={tmp}\Data5.bin
Disk=7
[Record16]
Type=Freearc_Split
Source={tmp}\Data5.bin
Output={app}
Disk=7
[Record17]
Type=Freearc_Original
Source={src}\Data6.bin
Output={app}
Disk=7
[Record18]
Type=Freearc_Original
Source={src}\Data7.bin
Output={app}
Disk=7

For "Deus Ex: Mankind Divided" the compression time is way lower, minimum 1 hour, because you don't compress all sound/video files (~10GB) with srep+lzma, but just with no compression.

But remember, not always sound files are not compressable, i thinking of "Skyrim Special Edition", where "Sounds.bsa" are super good compressable with just lzma. Just test some files out with manual freearc and m1/m2 compression. If it's not much rewarding, just go with m0, if it's rewarding, i suggest go with lzma only.

I guess it is obvious what way to go with other game. Just logical thinking. :D

pakrat2k2 16-12-2016 09:37

Very Nice work, been added to Conversion Tutorial Index.

Realtech_Redux 16-12-2016 10:19

UA_3030
http://i.imgur.com/uJ5bpha.png

Razor12911 16-12-2016 17:40

1 Attachment(s)
Quote:

Originally Posted by Realtech_Redux (Post 454540)

Try running under Windows 7 compatibility.

Razor12911 18-12-2016 15:16

UltraARC reflate partial support added in v2.5 from v2.4.

Changes

MSC out, reflate in.

Edit: I don't know about you guys but since y'all are used to precomp I guess there should be nothing wrong with the speed reflate gives, it's slightly better than precomp when compressing, don't know about decompression, I haven't tested decompression yet but it should roughly be the same.

Droppo 18-12-2016 15:38

Great to see you're releasing a new version... I have a question about this, does this new version use CLS-PrecompMT? if not, is it possible to add it?

Thnxs for this new version... will start testing reflate now

Razor12911 18-12-2016 15:58

Nah, not really. I haven't released anything new because it's the same v2.4, I just used reshacker to edit my program, very easy, replaced msc with reflate.

elbubi 19-12-2016 00:36

Hi Razor, and thanks for new reflate addition.

One tiny and probably silly question: How can I prevent sleep from triggering when UltraARC is running? May be I'm missing something, but I can't make pc stay awake when ultraarc is running and sleep time has been reached.

BTW: I'm using Win10x64, and now that I think of, not in compatibility mode.

Kind Regards and thanks in advance!

pakrat2k2 19-12-2016 08:23

Quote:

Originally Posted by Razor12911 (Post 454606)
Nah, not really. I haven't released anything new because it's the same v2.4, I just used reshacker to edit my program, very easy, replaced msc with reflate.

Tested using MSC on new conversion working on, & compresses ok, but every time I go to start the install process it caused the program has stopped responding. Redoing compression without msc & see if it was the issue.

Razor12911 19-12-2016 08:33

Quote:

Originally Posted by elbubi (Post 454614)
Hi Razor, and thanks for new reflate addition.

One tiny and probably silly question: How can I prevent sleep from triggering when UltraARC is running? May be I'm missing something, but I can't make pc stay awake when ultraarc is running and sleep time has been reached.

BTW: I'm using Win10x64, and now that I think of, not in compatibility mode.

Kind Regards and thanks in advance!

click on start button, search for 'power options', change preferred plan to high performance to prevent pc from sleeping.

Droppo 19-12-2016 09:00

Quote:

Originally Posted by pakrat2k2 (Post 454617)
Tested using MSC on new conversion working on, & compresses ok, but every time I go to start the install process it caused the program has stopped responding. Redoing compression without msc & see if it was the issue.

same problem here... tested without msc and works... looks like there is an issue when using msc (reflate)

pakrat2k2 19-12-2016 09:44

Quote:

Originally Posted by Droppo (Post 454619)
same problem here... tested without msc and works... looks like there is an issue when using msc (reflate)

tested on 2 separate conversions & definitely issue when using MSC-reflate.
works fine as usual when not choosing msc.

Razor12911 19-12-2016 10:49

guys, did you add files in include folder and script? Those must be included.

Droppo 19-12-2016 11:42

Quote:

Originally Posted by Razor12911 (Post 454623)
guys, did you add files in include folder and script? Those must be included.

Well looks like I missed one file, added to UltraArc.iss and seems to be working now (I'm using "Rina_Installer_FreeArc" on tests)

elbubi 19-12-2016 17:29

Quote:

Originally Posted by Razor12911 (Post 454618)
click on start button, search for 'power options', change preferred plan to high performance to prevent pc from sleeping.

Thanks for your fast and kind reply.

I misexplained myself. What I intended to ask is not how to prevent pc form sleeping at all, but how to configure UltraARC to tell the system that it is working and it must not go onto sleep mode until it finishes and inactivity time has passed.

What I usually do is leave other app which does prevent sleeping (i.e: uTorrent) running in background ir order to let UltraArc working all night long (my sleep schedule is 1 hour), but sometimes I forget to leave another app running just to find in the morning that pc worked only 1 hour and compression job still must be done.

Cheers and thanks once again for your support!


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

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