Recovering old RNS files

the situation:
the last version that is able to load .rns files without the message “there was an error while trying to load the effect “*Instr. Automation”!” seems to be 2.7.
so i usually pick up that version to load .rns and save to .xrns in order to recover the songs for further use in the current renoise version.
so far so good.

the problem:
i am a long term user of the waves plugin series.
through-out all the years and different waveshell updates, the plugin identifiers changed. only waves knows why they did this.
the result is however, that for example, even if you have the Waves Q10 EQ installed, it can’t be found since the identifier changed from “Waves Q10-Paragraphic EQ” to “Q10 Stereo”.
to solve the problem i extract the song.xml from the .xrns files, open them in ultraedit, batch rename all the respective identifiers, write the updated song.xml back to the .xrns and am able to load the song without errors again.

the actual problem:
now the actual problem is, that when the above problem arises with a .rns file and i open and save it in v2.7 for later use in v2.8, all the plugins that failed to open in 2.7 will be deleted from the version saved as .xrns.
so i can’t do that renaming “trick” inside the song.xml anymore, because the plugin information gets lost in translation, so to speak.

the question:
is there a way to change the plugin identifiers inside an .rns file with some editor?
i only would have to rename the text information so renoise finds the plugins again…

anyone ever encountered a similar problem ?

Perhaps a “lost and found” feature might be in place in these situations. Renoise offers you to select a plugin that you can use instead or the plugin that is actually the plugin that supposed to be loaded.
Be it that this should come with a warning that bound parameters and parameter settings get lost because there is no guarantee they work exactly the same as in the original plugin. Well perhaps if the plugin would be temporary sandboxed, it might prevent a complete crash and in that case sending the parameters to the plugin can be attempted, but still no warranty that the outcome still sounds the same.

the feature you describe would be pure luxury of course.
but considering the low amount of users that would probably find that useful, i doubt it will ever find its way into a final version.
and even if it will happen, nobody knows when. it could be years actually.

and i guess your answer also implies, that there is no actual way to edit the song data of an .RNS file, right?

Not that i know of, you might however try and edit the CachedVsts_x86.db or the *x64.db in the renoise preferences folder using SQL-lite database browser and see if you can change the plugin Identity in there, that might work better and faster instead of editing each RNS file. (Try and add a record next to the existing one referring to the same file but the required old DocumentIdentifier, the old files will be read and recognised and i suspect the new files will be written with the new identifier)
At least if the saving still goes with the wrong identifier, you will have at least an xrnx that you can then edit again.

editing the database file is exactly what i used to do in the past, but it get’s pretty tedious as the manual “corrections” get overwritten each and everytime the waves plugins are being updated.

but i think i’ll do it one more time in order to convert everything .rns to .xrns once and for all.

thanks for your input.

The plugin’s state is maintained, even when a plugin could not be found or opened and the song gets (re)saved.

So you can simply:

  • Open it up in Renoise 2.7 or 2.8 and ignore the missing plugins
  • save the song to a XRNS
  • hack around in the Song.xml
  • load into 2.7 or 2.8 again

Assuming that the old waves plugin data is compatible with the new waves plugins. This is completely up to the plugin to deal with.

the missing plugin message, when loading the original, old .RNS file:

the missing plugin message, when loading the converted, .XRNS file:

as you can see, the waves plugins are no longer being missed and that is not because renoise was able to find them.
the plugin data simply got lost during the conversion process. investigating the song.xml of the converted .xrns also proves that there are no waves plugins associated with the song anymore.

for some reason that missing VB_ffx4 plugin (non-waves) is still there. maybe there’s something special about waves plugins, so that only they get lost?