Salvaging plugin parameters from Song.xml "<ParameterChunk>" tag

Hello everyone, i have a few songs where i used the VST called CarlaRack to embed a LV2 plugin (trusty old ZynAddSubFX before a decent VST was made) but after installing to a new computer these instruments load up as empty CarlaRack instances.

Unzipping and looking at the Song.xml file from a xrni, it seems like the plugin parameters are saved as garbled (base64?) strings of characters in a tag called “ParameterChunk” in the xml file.

What i’d like to do is extract the Zyn patches from the “ParameterChunk” tags and load them in the new VST version of Zyn so i don’t have to tweak them all over again. Is there any documentation on the format of this tag?

An example of such a ParameterChunk tag would start with:


and end with:


Not pasting an entire one here, because they’re about 50kb long or more.

Yes, a long base64 encoded string.

I would imagine the parameter format is up to the VST/LV2 plugin in question (ZynSubAdd in this case.) Sometimes (but not necessarily) a XML format for the parameters, binary or straight text.

Off the top of my head (not saying that this would work as I’ve never tried it) but I’d try a hack by saving a default xrns with ZynAddSubFX and carefully copy/replace over the parameter chunk tag(?) Might crash Renoise/ZynSubAdd if they have changed anything with ZynSubAdd in the meantime though.

Thanks for the info.

I’m presuming the VST parameter block for a CarlaRack instance containing a Zyn instance would have the Carla parameters (plugins used, connection layout etc) wrapped around the Zyn parameters (actual patches i’m trying to retrieve) …hopefully decoding this base64 string in the case of these 2 plugins - which i haven’t tried yet - will give me data in plain text, but if not i guess i still might manage to extract the patches from the raw data.

I really want those patches back, unfortunately many of them i never saved outside of renoise/carlarack and i really need them to sound exactly like they did before :confused: