I want to propose another format of saving of Renoise song - just directory like MySong.xrns.d,
that will contain all stuff that xrns (zip) contains.
Please notice that most cases of saving the .xrns file is during some process of working on a piece
and you are saving unfinished song with intention to work on it later on.
So hundreds or thousands times when you press ctrl+s, resources are wasted to compress everything into .xrns file, while actually you need it only at the end of the song making process, one or maybe few times if you want to correct something. On each save, you don’t need to update all sample data which can be large, actually you need to update just changed components/files of a song project.
For songs with small amount of audio samples this does not make a difference,
but if song contains hundreds of megabytes of samples then it does, mainly for two reasons.
First is more obvious - saving time and unnecessary compressing all of the samples that
actually might be unchanged but take 99% of disk space in the song.
Second one is allowing incremental or differential backups, which I’m finding very important.
If everything is zipped into one file, backup tool will always see the whole file changed,
despite only valuable 1% of data inside has changed. In case of directory mode, backup system will see
for example that sample files are unchanged and will add to backup only small amount of some xml or metadata files.
So I believe that directory format should be default to work with songs, and currently used .xrns format
should be used only for exporting songs for publishing, sharing or archiving.
P.S. currently in Renoise saving a song is blocking whole UI without giving a clue what is going on - if Renoise system really needs this time? Or saving is finished and my system froze for some other reason? Would be nice to have some clearly visible indicator showing that saving is in progress.