Tool Others HTML Ren'Py YAC - Yet Another Cruncher (A Game Compactor) [V3.5]

What do you think?

  • Haven't tried it yet...

    Votes: 44 38.3%
  • It's great!

    Votes: 48 41.7%
  • Needs more features.

    Votes: 15 13.0%
  • Too hard to use.

    Votes: 4 3.5%
  • This thing ate my dog.

    Votes: 20 17.4%

  • Total voters
    115
  • Poll closed .

AdventAnyx

Active Member
Game Developer
Feb 2, 2020
728
2,711
I've updated YAC to version 2.0! The biggest change is MUCH faster video encode time. I've tried to improve speed without sacrificing quality too much so please let me know how I've done. ;)
Why are you doing me like that now? :HideThePain:
After I've spent ~30 hours crunching my game with the "ultra" preset.
Jk. I'll try it next time. Thank you for this mega-useful tool.
 
  • Haha
Reactions: hngg

DahliaRose

Member
Dec 22, 2018
275
240
Lol, there is a reason I haven't used Photoshop since version CS2 :p

On another note:
I've updated YAC to version 2.0! The biggest change is MUCH faster video encode time. I've tried to improve speed without sacrificing quality too much so please let me know how I've done. ;)
I'm very excited to try out the faster video encoding time :D I actually use BasCruncher to compress all my music and pictures that I have on my tablet to save space. But I've never done it with videos because it's always taken way to long. :)

Now just if I could figure out why the gif compressing isn't working, then I could shrink those too and save SO much space. I have A LOT of gifs.
 

hngg

Compress All The Things!
Modder
Game Compressor
Donor
May 26, 2019
574
2,461
I'm very excited to try out the faster video encoding time :D I actually use BasCruncher to compress all my music and pictures that I have on my tablet to save space. But I've never done it with videos because it's always taken way to long. :)

Now just if I could figure out why the gif compressing isn't working, then I could shrink those too and save SO much space. I have A LOT of gifs.
You may have to rename the crunched gif files from %filename.gif% to %filename.webm% to get them to play. If that doesn't work, please post a few of the troublesome gifs and I'll take a look.
 

DahliaRose

Member
Dec 22, 2018
275
240
You may have to rename the crunched gif files from %filename.gif% to %filename.webm% to get them to play. If that doesn't work, please post a few of the troublesome gifs and I'll take a look.
Weird, it's working fine now. Not sure why it wasn't before. -shrugs-

But yeah, I tested it on 4 of my gifs, at the ultra setting, and it shrunk them down from 7.70mb's to only 900kb's. So yay! :D
 
  • Haha
Reactions: hngg

AdventAnyx

Active Member
Game Developer
Feb 2, 2020
728
2,711
Not to banter, just a little bit of feedback. Full game of 500 pngs and 1630 webms (8121 MB):
Ryzen 3600 (YAC 1.6) - ~ 30 hours
Ryzen 5900 (YAC 2.0b) - ~ 2-7 hours (sorry, I left the house and came back when it was done)
So, here's my suggestion: can you add a timer or something? Like "start-time", "finish-time".
Also, I used "Ultra" both times, but the total size of folders is different: 4563 MB (1.6) vs 4955 MB (2.0b), so I guess the new Ryzen was trying to finish faster and then slack, this mf :KEK:
 

hngg

Compress All The Things!
Modder
Game Compressor
Donor
May 26, 2019
574
2,461
Not to banter, just a little bit of feedback. Full game of 500 pngs and 1630 webms:
Ryzen 3600 (YAC 1.6) - ~ 30 hours
Ryzen 5900 (YAC 2.0b) - ~ 2-7 hours (sorry, I left the house and came back when it was done)
So, here's my suggestion: can you add a timer or something? Like "start-time", "finish-time".
Also, I used "Ultra" both times, but the total size of folders is different: 4563 MB (1.6) vs 4955 MB (2.0b), so I guess the new Ryzen was trying to finish faster and then slack, this mf :KEK:
The timer is an interesting idea and it might not be too hard to implement. I'm gonna give that one a solid "maybe". :D

As far as the size discrepancy, v2.0 was actually spitting out files slightly smaller than v1.6 but I wasn't pleased with the quality at the lower preset levels. To compensate, I adjusted all of the presets up in bitrate target slightly. As a result, v2.0b may give slightly larger files (depending on content). I may have gone a bit too far on the ultra preset so I may dial it back a notch on the next release. Testing all of these presets with a wide variety of content is really time consuming on my 7 year old computer so I really appreciate the data.

On a side note, congrats on the 5900x; those are hard to find. I've been trying to justify building around a 5600x but the constant out of stocks and price gouging are leaving a bitter taste...It's pretty frustrating that my laptop has more cores and is faster than my overclocked desktop.
 

AdventAnyx

Active Member
Game Developer
Feb 2, 2020
728
2,711
On a side note, congrats on the 5900x; those are hard to find. I've been trying to justify building around a 5600x but the constant out of stocks and price gouging are leaving a bitter taste...It's pretty frustrating that my laptop has more cores and is faster than my overclocked desktop.
Don't be sad you can't get one right now. Had to deal with enough bullshit trying to make it run (double bios update until it could recognize the memory and stop the weird 3-cycle reboots), then configuring the mad fan (power spikes make it spin like crazy every 5 sec then cool off). Not to mention all the bullshit people are having to deal with right now. Once you stumble on a problem and start googling, it's a whole world of "why the fuck didn't I wait for another year".
Now it's working fine, but the nerves waisted in these last days...
 

Exoplast

Engaged Member
Nov 2, 2017
2,684
18,628
Don't be sad you can't get one right now. Had to deal with enough bullshit trying to make it run (double bios update until it could recognize the memory and stop the weird 3-cycle reboots), then configuring the mad fan (power spikes make it spin like crazy every 5 sec then cool off). Not to mention all the bullshit people are having to deal with right now. Once you stumble on a problem and start googling, it's a whole world of "why the fuck didn't I wait for another year".
Now it's working fine, but the nerves waisted in these last days...
Had the same issue with my Ryzen 3900x. I had change the Ram to Samsung B-Die, after i had try to stabilize the SK Hynix. Ryzen prefers Samsung B-Die alot. For the Mad fan Problem there are a few solution. At the beginning i have use the CTR Tool from 1usmus two undervolt my CPU (it save alot of Celsuis) and use also his powerplan. This was a good solution for the biginning, but there was also a few bugs with that. The better solution was to set the CPU to a 65W TDP with PBO. That's save around around 20°c and 44w powerdraw, with a lost of only 5% multi-thread perfomance and no lost in single-thread (same power and celsius saving cost me 11% performance with the undervolting (single and multi-thread).

I will also test the new version with a big game to see how the compression speed had improve.
 

AdventAnyx

Active Member
Game Developer
Feb 2, 2020
728
2,711
Had the same issue with my Ryzen 3900x. I had change the Ram to Samsung B-Die, after i had try to stabilize the SK Hynix. Ryzen prefers Samsung B-Die alot. For the Mad fan Problem there are a few solution. At the beginning i have use the CTR Tool from 1usmus two undervolt my CPU (it save alot of Celsuis) and use also his powerplan. This was a good solution for the biginning, but there was also a few bugs with that. The better solution was to set the CPU to a 65W TDP with PBO. That's save around around 20°c and 44w powerdraw, with a lost of only 5% multi-thread perfomance and no lost in single-thread (same power and celsius saving cost me 11% performance with the undervolting (single and multi-thread).

I will also test the new version with a big game to see how the compression speed had improve.
It's an offtopic, so I'm only gonna post once.
I solved this by doing a custom fan-curve for every system and CPU fan, like this:

You don't have permission to view the spoiler content. Log in or register now.

So, even if it spikes for a few seconds, temps are only jumping to like 60-65, then it goes back to normal and all the fans are spinning at a constant rate so they don't care. I like the consistency of noise levels.
But if it's getting hot in there (like when crunching), then the whole rig is becoming a turbine, but that's okay.
I'm not into overclocking much, lots of time wasted with little to no real-life application, but I did the auto-OC in this same Gigabyte's software. This also removed the voltage-adjusting thing and locked it to some static number, so the whole "let's fucking blow like crazy for 10 seconds then stop" thing is completely gone.
 
Last edited:

AdventAnyx

Active Member
Game Developer
Feb 2, 2020
728
2,711
You sneaky bastard!
Released 2.1 and wrote nothing. Did you think I won't check the thread manually?
:LUL:
Much appreciated. Gonna test it now for the upcoming public release.

shadow-edit!
It took 4 h 38 min to crunch 7.59 GB into 4.10 GB with the "Ultra" preset (1634 .webm, 650 .png)
It took 4 h 14 min to crunch 7.59 GB into 2.12 GB with the "High" preset (same)
 
Last edited:
  • Haha
Reactions: hngg

lewdgamerxxx

Active Member
Game Compressor
Sep 6, 2018
723
2,071
hngg Is it possible to add multiple cores support to make compression faster for multiple files in a future release?
BTW, great job making yac.
 
  • Like
Reactions: mantismerc

AdventAnyx

Active Member
Game Developer
Feb 2, 2020
728
2,711
hngg Is it possible to add multiple cores support to make compression faster for multiple files in a future release?
BTW, great job making yac.
As far as windows task manager shows, almost all cores are used during compression of bigger .webm files (Ryzen 5900x). It's not 1core-per-file with many files, it's all-cores-per-file then quickly the next one.
 

DarkWolf2055

"Acknowledge Me"
Respected User
Donor
Former Staff
Aug 3, 2017
3,484
35,771
You sneaky bastard!
Released 2.1 and wrote nothing. Did you think I won't check the thread manually?
:LUL:
Much appreciated. Gonna test it now for the upcoming public release.

shadow-edit!
It took 4 h 38 min to crunch 7.59 GB into 4.10 GB with the "Ultra" preset (1634 .webm, 650 .png)
It took 4 h 14 min to crunch 7.59 GB into 2.12 with the "High" preset
did you remove the images.rpa file?
 

lewdgamerxxx

Active Member
Game Compressor
Sep 6, 2018
723
2,071
As far as windows task manager shows, almost all cores are used during compression of bigger .webm files (Ryzen 5900x). It's not 1core-per-file with many files, it's all-cores-per-file then quickly the next one.
I was talking about images in specific.
For example xnconvert has an option to specify the number of cores to use during image compression.
 

AdventAnyx

Active Member
Game Developer
Feb 2, 2020
728
2,711
did you remove the images.rpa file?
I haven't tried .rpa. I have the original files. I only took the "images" folder from my game - there are .png and .webm files in there.
So the numbers are for the pure "images" folder from my game.
 

hngg

Compress All The Things!
Modder
Game Compressor
Donor
May 26, 2019
574
2,461
I was talking about images in specific.
For example xnconvert has an option to specify the number of cores to use during image compression.
Image compression is fast enough that it only needs one thread per image. Unfortunately, I haven't figured out a way to compress multiple images at a time while still keeping track of what has or hasn't been compressed yet. I have ideas but so far haven't been able to make the actual code. That seems to be the final roadblock to improving speed.
 

lewdgamerxxx

Active Member
Game Compressor
Sep 6, 2018
723
2,071
Image compression is fast enough that it only needs one thread per image. Unfortunately, I haven't figured out a way to compress multiple images at a time while still keeping track of what has or hasn't been compressed yet. I have ideas but so far haven't been able to make the actual code. That seems to be the final roadblock to improving speed.
If you'd achieve that, then yac will become lightening fast.
 

pk2000

Active Member
Aug 12, 2017
707
1,918
hngg Since some devs use it to crunch their games, you may want to:
- add -exact in lossy image compression too (at least for lossy quality 90% and higher)
- change the -m value from 5 to 6 (or allow the user to change the value)
- maybe add another lossy 100% quality preset.
- add an option to disable the filesize comparison (before replacing the original file) or disable it by default, for loseless and 100% lossy compressions.

ps. here you can find examples & summarized the most important webp compression options/settings... for those that want to finetune the compression of their images