SynthMaker

Problem with Poly

Archive · 2011 9 old posts

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

lesobrod ·

Now I'm working with bell sound model. For produce realistic decay, some Code block must work after NoteOff. But when I use Poly connectors to Code, all the input and output dissapear after key release. The problem in fact begins from "MIDI to Poly": for correct decay process, Frequency value must be used after NoteOff, but it turns to zero..

adamszabo ·

Yeah it sucks. Thats why you cant make free running oscillators as well, because everything resets to 0...

infuzion ·

Just need a higher Sustain & long Release. Perhaps connecting your Code to the Envelope Control would help.

lesobrod ·

Thanx to all, I've just dismembered brutally ADSR primitive 😈 😈 and found out that Envelope Control is a greate trick for such purposes. OK Bell sound will be posted soon 😀

Neptune ·

lesobrod wrote: Thanx to all, I've just dismembered brutally ADSR primitive 😈 😈 and found out that Envelope Control is a greate trick for such purposes. OK Bell sound will be posted soon 😀

Where is the iLike button 🙂

trogluddite ·

lesobrod wrote: brutally

He he, yes that's the way - you have to show SM who's boss!

adamszabo wrote: Thats why you cant make free running oscillators

Not impossible - you just have to design your own voice manager, and accept a few limitations - e.g. More restricted poly (never bothered Prophet 5 players), and higher CPU (mono4 'voices' use the same CPU as poly, but they do not turn off CPU when silent - but no big problems for a modern CPU). Here's the one I knocked together a while ago - a 4 voice poly like an old Oberheim - crappy sound, but it demonstrates the principle - all osc's free-running and even polyphonic portamento... Grren Voice Manager ...when I've finished my current project, I'm going to make an 8-voice version of this - it's about time I used SynthMaker to actually make a synth!

I always found free-running osc's more useful in mono synths anyway, in which case you can use mono4 to make a synth that uses less CPU than an SM poly one (when playing) - my 'Guitar Synth' design uses this approach, 4 envelopes/LFO's/Filters etc. for the price of one!

As lesobrod says - use SM 'brutally' - it's a programming environment, if the built in modules don't do what you want, then get out a big stick and beat it into shape with a bit of lateral thinking - there's no rule that says you have to use the built in voice manager. 😈

rl ·

idea (not tested): you could have a simple monostream reference-phase counter that always counts (even when voice is shut down) and when a new poly-voice starts initialize the phase according to the actual value of the reference counter. That won't use too much CPU since only the phase is advanced without any waveform calculation.

But don't use stage(0) do detect voice start but use the Envelope Control module instead (Stage ==1 : new voice)

adamszabo ·

rl wrote: idea (not tested): you could have a simple monostream reference-phase counter that always counts (even when voice is shut down) and when a new poly-voice starts initialize the phase according to the actual value of the reference counter. That won't use too much CPU since only the phase is advanced without any waveform calculation.

But don't use stage(0) do detect voice start but use the Envelope Control module instead (Stage ==1 : new voice)

Yeah I already tried that, but how would you assign that phase to each individual poly voice? In the poly data you cannot separate the voices 🙁

trogluddite ·

rl wrote: idea (not tested):

Idea tested...Free Running Osc ...and it does work up to a point.

There has to be a 'jump' in phase every once in a while because you can't make a counter that counts indefinitely - you run out of numbers (or precision) eventually. Though I never found it to be noticable - maybe resetting the counter using the VST 'Is Playing' module would help - so that a counter reset would be less likely within the duration of a song.

Also, the counter maths will only simulate the effect of an oscillator per 'note number' (phase = time / wavelength) - i.e. the oscillator phase will be different if you change from one note to another, it doesn't flow through note changes (even if the note uses the same voice). Never found a way to do that using this method as you would need to remember which notes were played by which voice (i.e. poly counters that would reset when voice went silent)

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.