Faster Project Saving

To combat data loss, some time ago I enabled auto-save. Unfortunately, on some of my bigger projects, this means that every 10 minutes or so, I’m waiting for up to 30 seconds with the UI frozen for the save to complete. This is often disruptive to whatever I happen to be doing at the time, and it would be great if saving wasn’t a “stop the world” type operation.

From a technical standpoint: I know that saving plugin state has to happen on the main/UI thread (differs from plug to plug but generally a safe assumption), but the slow parts of an .xrns save (judging by the status bar messages) seem to be compressing native sampler instruments, saving IRs from the convolvers, etc. All Renoise-internal modules. Seems like it could be possible to push that off onto a background thread.

1 Like

If you use a lot of samples, you can reduce saving time by left-clicking in the instrument selector, and hit the “delete unused instruments”. I’m terrible with choice, so I always have plenty to free up, which helps significantly.

Hope this can help you a bit.

Even with diligent deleting of unused samples, I still end up with pretty hefty projects. Long field recordings, vocals, other live instruments… it all adds up.

1 Like

But what if you initiate a save, and then edit a sample that hasn’t been saved yet?

Really depends on the specific implementation, but saving the session in whatever state it was in at the time of initiating the save seems reasonable to me.

Harder to handle what happens when a save is initiated and then a sample is immediately deleted.

In the Preferences > Files tab you can change the sample conversion when saving from .flac to .wav, which will speed things up when you have many/huge samples. The file size will be bigger of course, but you can just change it back and save again when you’ve finished a song.

1 Like

The best way to solve this, in my opinion, would be to give us the option of an uncompressed “project-style” save, where project would a directory containing separate WAV or FLAC samples and the XML-based project file, rather than all of these files combined into a ZIP.

In addition to being much faster to save (since no recompression would be required if you hadn’t actually edited any of the samples), this would be much more suitable for tracking changes to the project in a source control system like Git.

2 Likes

Yeah, having an un-bundled folder-style format for quick saves would also be a good solution.