Help programming VST using getVendorVersion

DSP, Plugin and Host development discussion.
RELATED
PRODUCTS

Post

I know I am reviving an old topic, but I have stumbled on it while looking for an answer to this same question, and because I have now worked it out by trial and error, I think it is worth to share my findings for posterity.

Basically, Cubase infers the various "dot parts" of the version number depending on the range of the value returned by getVendorVersion().

I believe it does so in an attempt to make sense of the various conventions used by plug-in developers over the years, because the documentation for getVendorVersion() did not provide an official way to encode them.

The table below summarizes it all:
Screen Shot 2017-08-24 at 17.25.07.png
Encoding A: when in the range [0, 9], the value is interpreted as a Major version number. All the following dot values are 0. value 1 corresponds to “1.0.0.0”, 2 to “2.0.0.0” and so on.

Encoding B: when in the range [10, 9999], each decimal digit of the value is treated as a dot component, meaning that the number 1234 is interpreted as “1.2.3.4”

Encoding C: when in the range [10000, 65535 (0xFFFF)], the four most significant decimal digits are treated as the dot components. The digit for the units, which is the fifth, is ignored.
12345 is shown as “1.2.3.4”

Encoding D: when in the range [0x100000 (65536), 0x64FFFF], the three bytes that compose the hexadecimal representation of the number are treated as the three most significant dot parts, leaving the fourth always at 0.
0x010203 corresponds to 1.2.3.0.
Note that 0x64 is 100, so the highest major version number for this representation is 100.

Encoding E: when in the range [0x650000, MAX_INT] the digits of the decimal representation of the number are treated as follows: MMMmmBBbbb, where MMM, mm, BB, bbb are the four dot components.

(I made up the letters for the different encodings, it’s not like they are documented anywhere at all)
You do not have the required permissions to view the files attached to this post.

Post Reply

Return to “DSP and Plugin Development”