SynthMaker

synth too slow in VST, solutions?

Archive · 2006 10 old posts

From the original SynthMaker forum (2004–2014), with its members’ names and dates.

luisi ·

I have this synth, a prototype of a commercial VSTi:

OSC: Wave Draw + 4 ramps ENV: AD pitch env + 2 x ADSR amp env

also octave and pitch controls and state variable filter with ADSR and Step LFO

about 30 parameters not counting Wave Draw and Step LFO which are about 256 + 19, right?

well this synth exported to VSTi DLL takes more that 10 seconds to load and more than 5 seconds to switch to one presets to another,

not acceptable for a commercial VSTi,

is there a way to make that faster?

thanks

stefan ·

Maybe you have redraws etc that aren't necessary? Those usually slow things down quite a lot. For instance you only want to redraw the "wave draw" osc display when using mouse to change a sample or after an entire preset has loaded (not when the preset is changing each samples value in the waveform).

Look for such things and let us know if you find any!

luisi ·

thanks for the quick reply Stefan,

I'll check for redraws, anyway I don't see how they could affect preset change when the GUI is closed, since it takes more that 5 seconds to change program even with editor closed,

possibly the 300+ parameters are slowly passed one by one instead of using chunks of data (?)

sambean ·

Are you using any controls with presets to draw the wave, I think AM and oddson had problems with their synth and the wavedraw module..

Sam

luisi ·

sambean wrote: Are you using any controls with presets to draw the wave, I think AM and oddson had problems with their synth and the wavedraw module..

Sam

no. I've found that by default the Wave Draw module has the "create" input of the Table cmt wired to the float array, so updating 256 times,

now I changed that by using the AfterChange of the VST array as trigger for update, and that saved about 3 seconds on preset change!

so from 5 seconds I was able to reduce the hang to 2 seconds, anyway I hope that the Wave Table cmt could still be optimized by the Devs

Also, if I didn't miss any reason for the 256 updates, the default Wave Draw module should be changed

stefan ·

luisi wrote: sambean wrote: Are you using any controls with presets to draw the wave, I think AM and oddson had problems with their synth and the wavedraw module..

Sam

no. I've found that by default the Wave Draw module has the "create" input of the Table cmt wired to the float array, so updating 256 times,

now I changed that by using the AfterChange of the VST array as trigger for update, and that saved about 3 seconds on preset change!

so from 5 seconds I was able to reduce the hang to 2 seconds, anyway I hope that the Wave Table cmt could still be optimized by the Devs

Also, if I didn't miss any reason for the 256 updates, the default Wave Draw module should be changed

You probably want it to be updated for each changed sample in the waveform when actually drawing a waveform though... Might be possible to extend the module to have some kind of boolean changingPreset input or so.

luisi ·

You probably want it to be updated for each changed sample in the waveform when actually drawing a waveform though...

that is anyway, since the VST Array cmt sends an "After Change" trigger for any single value changed, so it's updating while drawing

at least so it seems now, <grin>

stefan ·

Ah ok, my bad then 🙂 Good 🙂

malc ·

If you've still got trouble feel free to send the schematic my way and I'll take a look for you.

luisi ·

malc wrote: If you've still got trouble feel free to send the schematic my way and I'll take a look for you.

thanks so much malc, I will surely use your help at some point for this synth

Wrote something here? To have a post removed or your name hidden, write to [email protected].

Before your first post

A few rules keep this a friendly place. You agree to them once.

Shown next to what you post, here and in the app. It doesn’t have to be your real name: 3–24 lower-case letters, digits or _ (capitals become lower case, spaces become _).

    Then your post goes up straight away.

    Delete this reply?

    Open it in SynthMaker?

    It goes on the track you’re editing there, in place of that track’s sound, and into My sounds. Your other tracks stay as they are.

    Want to keep that track’s sound? Start a new song in SynthMaker first (Song › New song), then open this.

    Report this reply?

    Only the developer reads reports. The person isn’t told who reported them.

    What’s wrong with it?

    Block this person?

    You won’t see their posts and replies here any more. They aren’t told, and you can unblock them at any time.

    People you’ve blocked

    Their posts and replies are hidden from you. Unblock someone to see them again.

    The community rules

    A few rules keep this a friendly place. Everyone agrees to them once, before their first post.