Skip to main content

Global Device Descriptions: Advanced Primer

Posted

Hey all,

 

so heres my take on creating Global Device Descriptions from VSTi Instruments

where Synfire is able to exctract the programs automatically but fails to change to the

next bank, thus giving you just max. 128 programs to work with of potentially thousands.

(And it seems at first that it worked, but in reality it did not. And because some of you are too lazy to check, there are GDDs in the Repository that just are completely useless... Image removed.)

 

First of all a small explanation:

A few  Device Descriptions in the Online Repository right now are completely useless.

Why? A lot of them have only the first bank extracted, when in reality

there are way more banks available on the synth. 

 

Potential problem: With a lot of VSTi Synths Synfires Auto-Extract feature can read out the

active bank, but VSTi Synths like Rob Papen Predator, AIR Stuff like Hybrid 

 or the popular LennarDigital Sylenth One use a combo of MSB/LSB and Plugin Presets.

because they have just too many banks available for the "usual" approach.

 

There's a solution. This is how it will work for you:

(if you are willing to take a dive into good old midi bank selection stuff, that is... Image removed.)

 

1 - Extract your DD from the VSTi in the usual way.

2 - Manually change to the next bank of your VSTi

3 - Extract your DD from the VSTi again.

(You will see the new set of program names extracted from the new active bank,

reflecting that you have done it the right way and didn't extract the same bank again.)

 

4 - Now you will have two device descriptions of the same VSTi.

    Copy the new extracted bank 2 into the first extracted one, delete this second DD,

    keep the original one. (The original one will be filled up with all additional banks)

 

5 - Repeat step 3 and 4 until you have all banks from your VSTi extracted and copied 

       into the original first Device Description.

 

Thanks to Andres input below, the extraction into

different banks can be done faster and easier:

Like Andre mentioned, you can also extract mutiple

banks into the same DD this way:

  1. Add a new bank manually into the original DD.
  2. Enter its MSB/LSB number and method of bank selection
  3. Right-click on the bank list and Extract From Plug-in

Now the more technical part: 

Change Method of Selection to MSB/LSB  or to Program (MSB) + Program.

(This depends on how the VSTi in question handles the Bank change.)

 

As an example:  Rob Papen Predator, because thats the most tricky one I came across yet.

Bank 1 is unique in the aspect that it is the Introduction Bank.

It responds to MSB 1 LSB 0

Bank 2 is MSB0 LSB1, Bank3 is MSB 1 LSB2, Bank4 is MSB1 LSB3, Bank5 is MSB1 LSB4

and upwards from there you have your pattern. Finding the pattern is the only thing that you need

to figure out. From there its just rinse and repeat.

 

On a sidenote: I just leave the plugin window open and check if the preset name

on the VSTi is equal to the program name in the program list of the bank.

That way I can see pretty quickly if I am doing it right and when (or how) a VSTi

responds to a MSB/LSB message.

(Also keep in mind: You have to click through the program list for the MSB LSB messages

to be send to the plugin. Just changing the number and hitting enter does nothing.

Also when you want to do your testing do not forget to load the original full loaded DD into the VSTi on the Global Rack again, or you will think it doesn't work... Image removed. Also some plugin GUIs respond a little slow to theese messages, (around a second or two) so dont click around too fast.)

 

I know its a bit complicated because its often a case-by-case scenario, but that way you really can extract from synths that have thousands of sounds in dozens of banks , which is quite common with modern electronic music orientated VSTis. Otherwise you're stuck with the first couple of presets. 

 

Also I am not too good in writing (or doing) tutorials but I hope this is at least somehow understandable for people that have worked with hardware/analog Midi Synths back in the days... :)

 

And remeber: You have them DDs once, you have them practically forever... Image removed.

 

Best,

tL.

 

 

 (I will also upload some DDs at some point but it seems I just picked the ones that are just endless in presets and banks.. lol.. So this might take a while.  This is also why I have opened a feature request regarding a search field in the programs tab, because this would also help immensely when dealing with program/banks that large.)

Attachments

Sun, 2015-12-27 - 12:51 Permalink

Thanks so much for taking the time to write a tutorial and sharing it with us!

You can also extract mutiple banks into the same DD this way:

  1. Add a new bank
  2. Enter its MSB/LSB number and method of bank selection
  3. Right-click on the bank list and Extract From Plug-in

 

Sun, 2015-12-27 - 13:04 Permalink

Right-click on the bank list and Extract From Plug-in

Awesome! I thought that this must be possible somehow already, I just didn't see it in the right click menu of the bank-list.

Probably was way, way too tired already... :) 

I will update the original post later...

 

 

Thanks,

tL.

 

Tue, 2015-12-29 - 19:16 Permalink

If someone already has created the DD for Sylenth, it would be great if he/she would share it / put it to the online repos!

I tried the above description, but with no success. Problem is that always all 512 presets are extracted, but 3/4 of them have program 128 assigned.

Tue, 2015-12-29 - 20:15 Permalink

Ha, yeah, Sylenth has a *new* very specific problem.... I ran into that as well.

Found a solution also, but this time quite complicated...

 

I am already on it, but I have to name the last bank manually.

Right now I am just too lazy to do that and I have some stuff to finish up in another app.

 

But I will upload the finished Sylenth DD when I am done with that. Might take a little while though.

 

Best,

tL.

 

Wed, 2015-12-30 - 14:01 Permalink

I think it's the way synfire extracts the presets, as the vsti Sylenth hasn't changed for years.

Maybe synfire could automate this process: An option like "Split extracted presets into banks", where a new bank would be created each 128 presets. Then even the MSB LSB settings could be set automatically.