Expression map helper

Hi all,
I’ve begun to create a couple of Expression maps and, looking at the generated “dorico” file, it turns out it is a plain xml.
For the libraries I’m working with (EW Holllywood Choir and EW Sounds of Empire)
the process is:

  1. create an “endpoint” with Opus
  2. load inside it all possible voices (Ah, Ah-legato, Ooo, etc…),
  3. assign to each of them a different keyswitch (C-2, C#-2, etc…)
  4. create an extension map
  5. for each voice/keyswitch defined in the endpoint, manually create an entry, matching the same keyswitch.

I’m a developer, and I realized that, if it would be possible to simply “read” the endpoint create at 2) (saved as vstpreset) points 4) and 5) could be done by a software, at least as “stub”.

So, is it possible (and eventually how) to “read” the “vstpreset” file to get information about the voice and the keyswitch associated to it ? I do not know almost nothing about VST and I’m sure the question may sound really noobish, anyway…

Many thanks


Unfortunately I don’t think this is possible in general. The .vstpreset file is just a binary dump of the plugin’s internal data, and each manufacturer can store this however they like. I think there is a defined format for the vstpreset ‘container’ (see the VST3 SDK: VST 3 SDK: vstpresetfile.h File Reference), so if you are lucky, the EW plugin may store its own data chunk as XML and you may be able to extract some useful information. If it stores the preset data in a binary format then this won’t be possible.

Hi @PaulWalmsley
many thanks for the explanation… I’ll keep going the long way :smile: