Classic ZynAddSubFX VST version

Official support for: zynaddsubfx.sourceforge.net
User avatar
jackoo
KVRian
604 posts since 3 Jul, 2006

Post Thu Aug 15, 2019 10:00 am

I've never had them (since 480 or so, in years). Can you send a midi / preset causing this?
Also what DAW?

If not, there's no path I see to investigate any cause.

PS: I've not been working at this project for over ~10 years now :)

User avatar
per99
KVRist
161 posts since 5 Oct, 2017 from Närförort söder

Re: Classic ZynAddSubFX VST version

Post Fri Aug 16, 2019 1:33 am

Quercus wrote:
Thu Aug 15, 2019 9:47 am
Hi there,
still getting those loud spikes
(Win 10, ZynAddSubFX-VDX_VST-2.4.1.505beta)
What kind of spikes? I have W10, and this version of the classic zyn works perfect. I use Cubase as DAW, though (Essential 5, approx 10 years old).
To be is to do — Socrates.
To do is to be — Jean-Paul Sartre.
Do be do be do — Frank Sinatra.

User avatar
per99
KVRist
161 posts since 5 Oct, 2017 from Närförort söder

Re: Classic ZynAddSubFX VST version

Post Mon Sep 09, 2019 7:31 am

Hello

I try to build a new instrument using Zynaddsubfx now and then. Right now I'm finishing a new accordion. But:

I just discovered that I can't get any vibrato at all out of the ADsynths globas parameters, frequency LFO. Whatever settings I choose – no vibrato, no nothing. (And it's a little bit strange there are two settings for depth, even in the voices list there is a slider for vibrato depth.)

Anybody who has experienced the same, or who knows what the solution is? I'm using the .505 beta version of the classic zyn. Everything else seems to work, and it sounds great!

Cheers
To be is to do — Socrates.
To do is to be — Jean-Paul Sartre.
Do be do be do — Frank Sinatra.

User avatar
jackoo
KVRian
604 posts since 3 Jul, 2006

Re: Classic ZynAddSubFX VST version

Post Mon Sep 09, 2019 9:58 am

Hi Per,

Move the mod-wheel to half of its position.
Otherwise the Global frequency LFO is masked by this.

So in other words, the "depth" of the freq lfo is modulated by the modwheel position.
By default, in earlier versions, the default modwheel position was at midi value 64 (right in the middle).

But there was a change request on the forum to make it zero, so I did... And I didn't get to make this configurable in the cfg file.

Cheers
== VDX == One Man can make a difference!
My music is on http://soundcloud.com/vdxi

User avatar
per99
KVRist
161 posts since 5 Oct, 2017 from Närförort söder

Re: Classic ZynAddSubFX VST version

Post Wed Sep 11, 2019 10:44 am

Thanks jackoo, maybe I'll upload my accordion once it's finnished.
To be is to do — Socrates.
To do is to be — Jean-Paul Sartre.
Do be do be do — Frank Sinatra.

User avatar
folderol
KVRAF
4839 posts since 5 Aug, 2006 from UK - Here!

Re: Classic ZynAddSubFX VST version

Post Sun Sep 29, 2019 11:00 am

jackoo wrote:
Mon Sep 09, 2019 9:58 am
So in other words, the "depth" of the freq lfo is modulated by the modwheel position.
By default, in earlier versions, the default modwheel position was at midi value 64 (right in the middle).
This catches everyone out :lol:
It wasn't me! (well, actually, it probably was)

User avatar
per99
KVRist
161 posts since 5 Oct, 2017 from Närförort söder

Re: Classic ZynAddSubFX VST version

Post Tue Nov 05, 2019 10:19 am

I'm trying to create my own synth pad. After a lot of tweaking i found the sound I'm looking for. Now I would like to use the filter section in the padsynth in such a way that high frequencies are cut at low velocities. And of course it's possible to do that, BUT: I can't find a way to avoid that the high frequencies becomes audible only at real high velocities - let's say between 114-127. No one plays only ff or fff.

Anyone who knows how to achive what I'm after: a soft dark and damped sound when pressing keys with velocity 44 and then let the filter gradually be removed, to be fully removed with velocity let's say 104?
To be is to do — Socrates.
To do is to be — Jean-Paul Sartre.
Do be do be do — Frank Sinatra.

User avatar
per99
KVRist
161 posts since 5 Oct, 2017 from Närförort söder

Re: Classic ZynAddSubFX VST version

Post Tue Nov 05, 2019 11:47 am

Another thing: If I check the box for volume in the controllers window, so that I can controll volume by cc no. 7 - which knob or slider do I controll? Because none of them moves on the screen, although it works - the volume does get affected!
To be is to do — Socrates.
To do is to be — Jean-Paul Sartre.
Do be do be do — Frank Sinatra.

User avatar
per99
KVRist
161 posts since 5 Oct, 2017 from Närförort söder

Re: Classic ZynAddSubFX VST version

Post Tue Nov 05, 2019 12:01 pm

Just one more thing :) : the preset controll cc no. 11 is supposed to control expression, but what does this mean? It's easy to understand that the no. 74 controls filter cutoff, because that's what the manual says. But as far as I know there is no knob inside the Zyn labeled expression?
To be is to do — Socrates.
To do is to be — Jean-Paul Sartre.
Do be do be do — Frank Sinatra.

User avatar
jackoo
KVRian
604 posts since 3 Jul, 2006

Re: Classic ZynAddSubFX VST version

Post Tue Nov 05, 2019 2:22 pm

Regarding filter response to velocity:
What I see that if I move V.Sns to about 3 o'clock (or just a little lower) and V.SnsA at about 1 o'clock, i get roughly what you describe.

CC7 (Volume) seems to be affecting the Part's Volume (in a way very similar to the Volume knob near the Pan knob), but does not refresh the GUI. This is because it writes directly inside the synth. The Midi window where you can assign CCs has a mechanism which I wrote to update also the GUI (knob position).

CC11 (expression) is an internal parameter only. This means it has no representation on the GUI. It also controls Volume, but such that the volume at max CC11 is precisely the value set by the value of the Volume knob. This helps to control the volume, but not exceed a certain level. So min volume is zero, max volume is... well "Volume". I guess this helps to be able to play expressively but without ruining the mixing.


I recently noticed something I did not expect when I modified the Amplitude Envelopes. In the older envelopes the minimum value of the envelope was -40dB. This was sometimes audible and if there was nothing else playing in the mix, you could hear that when you release a note, it would decrease in volume and at a point suddenly stop.

The new envelopes go down to -100dB. Maybe I went too far with this value. Now if you use a relatively longer release time, the note doesn't die until the level reaches -100dB. So this means that you can get in trouble when you play a lot of notes and the patch has a long release. (This setting is BTW configurable in the .cfg file with 'min_envelope_db' and 'attack_start_db').

In v504 I hoped to fix this with increasing the internal polyphony from 64 to 128. This also came with more CPU usage, of course. But then I found that even the 128 maxes out quite quickly for some patches in case the newer notes are simply ignored.

What should be implemented is that the Zyn should kill the older notes when the polyphony queue is nearly full (notes that are already released; after note off event). Currently the polyphony limit affects only notes that are "pressed on" e.g. after note on event and before note off event.

If this pisses of more people I might try to fix this... :D but I don't have so much time on my hands.

In v505 I focused on fixing the panning, but I screwed up, because I fixed the panning for internal zyn sounds but broke the panning for external sounds... (so I never used 505 and reverted to 504). If I'm to fix all this I have to integrate both the polyphony fix and the panning fixes...
== VDX == One Man can make a difference!
My music is on http://soundcloud.com/vdxi

User avatar
per99
KVRist
161 posts since 5 Oct, 2017 from Närförort söder

Re: Classic ZynAddSubFX VST version

Post Wed Nov 06, 2019 1:41 am

Hello jackoo! :) Thanks for your detailed answers! You mention that the amplitude envelopes are configurable in the cfg. file. Does that apply for the polyphony settings as well? (I try to avoid too much CPU usage.) Or maybe, as long as you dont play too many notes at the same time, it doesn't matter whether the polyphony is 64 or 128? (When it comes to the CPU usage, I mean.)

And I don't understand this: " ... I fixed the panning for internal zyn sounds but broke the panning for external sounds ..." What does external sounds mean in this context?
Last edited by per99 on Wed Nov 06, 2019 2:30 am, edited 2 times in total.
To be is to do — Socrates.
To do is to be — Jean-Paul Sartre.
Do be do be do — Frank Sinatra.

User avatar
per99
KVRist
161 posts since 5 Oct, 2017 from Närförort söder

Re: Classic ZynAddSubFX VST version

Post Wed Nov 06, 2019 2:13 am

And by the way: in this case I would have liked to disable the whole filter envelope section, to turn it off, so to speak. But there is no way to do that. I guess if I just turn the knobs to their right positions, I will achive what I want, anyway. So what are the right positions? Right now the value-knobs are almost maximum, the A.dt almost zero and D. dt and R. dt 64 (and forced release checked). Does this make sense? (There is no way to compare with the filter envelope section totally turned off). (When I previously used 0- and 127-values, it caused loud glitches, but I don't remember the exact configuration.)
To be is to do — Socrates.
To do is to be — Jean-Paul Sartre.
Do be do be do — Frank Sinatra.

User avatar
jackoo
KVRian
604 posts since 3 Jul, 2006

Re: Classic ZynAddSubFX VST version

Post Wed Nov 06, 2019 7:22 am

per99 wrote:
Wed Nov 06, 2019 1:41 am
You mention that the amplitude envelopes are configurable in the cfg. file.
Does that apply for the polyphony settings as well? (I try to avoid too much CPU usage.)

The polyphony limit is not currently in the cfg file. It's hardcoded to 128 voices.
Maybe it could be added, maybe not, I'm not really sure at the moment.

The CPU usage is proportional to the number of voices.
If you don't play a lot of notes at the same time, or if the release time of the ADSR is not very long, then you won't have a lot of voices at the same time and no additional CPU usage is needed.
If polyphony was 64 instead of 128, when the limit is reached the new notes are simply ignored. With 128 they are not ignored, and if present add to the CPU usage.

What is causing increased CPU is that a voice has to wait longer before it dies, for the same audible release time. When you release a key, the volume goes down with a speed that depends on the release time of the ADSR. Actually the knob for R determines the speed of volume decrease, and not the time itself.

Now for the same R.dt, the note will have to reach a volume of -100dB before it is cleared from the CPU. Before it waited only for -40dB. The difference in time could be significant. So if notes don't die, even if you release the keys, they accumulate and you start loading the CPU a lot, until the polyphony limit is reached.

So it doesn't matter whether the polyphony is 64 or 128, but rather the value of R.dt (in ADSR) and the noise floor (-100dB or whatever setting you use).

Now, if I were to implement a system, where Zyn automatically kills old notes before the Polyphony queue becomes full, then configuring to 64 max polyphony would guarantee a lower CPU usage even if using a lot of notes, without the disadvantage of new notes being ignored.

per99 wrote:
Wed Nov 06, 2019 1:41 am
And I don't understand this: " ... I fixed the panning for internal zyn sounds but broke the panning for external sounds ..." What does external sounds mean in this context?
External sounds are referring to audio inputs. Zyn has 4 audio inputs where you can plug the output of other instruments so you can use its FX on them.
This is enabled by using Ext1, Ext2... Ext4 in the Mode dropdown list (along with Poly, Mono, Legato..)

per99 wrote:
Wed Nov 06, 2019 2:13 am
And by the way: in this case I would have liked to disable the whole filter envelope section, to turn it off, so to speak. But there is no way to do that. I guess if I just turn the knobs to their right positions, I will achieve what I want, anyway. So what are the right positions? Right now the value-knobs are almost maximum, the A.dt almost zero and D.dt and R.dt 64 (and forced release checked). Does this make sense? (There is no way to compare with the filter envelope section totally turned off). (When I previously used 0- and 127-values, it caused loud glitches, but I don't remember the exact configuration.)
Turning off the global ADSR is not a good idea because in the real world there's no such thing as zero delay (for example for attack).
Just put the A.dt at minimum, S.val to maximum (in this case D.dt will be ignored... but just to be sure leave it at 8 o'clock) and R.dt at 9 o'clock (value around 20, even lower, maybe).
There should not be any glitches with 0 and 127 values. If so, please feedback with a testcase.

Also I would avoid setting a really long time for R.dt (because the notes never die, then...).
== VDX == One Man can make a difference!
My music is on http://soundcloud.com/vdxi

User avatar
per99
KVRist
161 posts since 5 Oct, 2017 from Närförort söder

Re: Classic ZynAddSubFX VST version

Post Wed Nov 06, 2019 10:56 am

jackoo wrote:
Wed Nov 06, 2019 7:22 am
Turning off the global ADSR is not a good idea because in the real world there's no such thing as zero delay (for example for attack).
Just put the A.dt at minimum, S.val to maximum (in this case D.dt will be ignored... but just to be sure leave it at 8 o'clock) and R.dt at 9 o'clock (value around 20, even lower, maybe).
There should not be any glitches with 0 and 127 values. If so, please feedback with a testcase.

Also I would avoid setting a really long time for R.dt (because the notes never die, then...).
Just to be clear, I wasn't talking about the amplitude envelope, but the filter envelope. It's a little bit hard to understand that high R.dt values could cause notes to never die. But I guess your paragraph above is about the filter envelope. (In the Adsynth it's possible do disable the filter envelope in the voice parameters window (but not the global one).) The glitches have not come back. Don't know what caused them. One thing that is not mentioned in the documentation or manual, is the purpose of the record function. So I could record a file? But why would I do that?

P.S. If i put A.dt at minimum, nothing works. If all knobs are at maximum, except for stretch, it does work! But I changed R.dt to nine o'clock anyway, I didn't notice any changed behaviour, though.
To be is to do — Socrates.
To do is to be — Jean-Paul Sartre.
Do be do be do — Frank Sinatra.

User avatar
jackoo
KVRian
604 posts since 3 Jul, 2006

Re: Classic ZynAddSubFX VST version

Post Wed Nov 06, 2019 2:40 pm

Apologies, I thought you meant amplitude envelope.

For the filter envelope, well it doesn't do anything to the sound if it's shape is flat vs time, and you can see its shape by pressing the little E button.

As I see it, as default, when creating a new patch, the parameters of the filter envelope are in such a way that its shape is flat (and I expect that it doesn't affect the sound in any way, as if it was off).
A.val = 64; (12 o'clock)
A.dt = 40; (~10 o'clock)
D.val =64; (12 o'clock)
D.dt = 70; (~0.5 o'clock)
R.dt = 60; (~11.5 o'clock)
R.val = 64; (12 o'clock)
Stretch =0;
Force release = on

But actually, here only the val knobs matter and they don't do anything if they're in the middle (all values are equal). It doesn't matter what is the transition time between them, because you're not changing anything. And a val of 64 does not change the cutoff freq.

Maybe what you can do is make a new patch, press the C button to copy to clipboard and then pres the P button to paste back to your Filter Envelope... and you just copied and pasted an "empty" filter envelope.

The record button is a relic from the ancient past, when Zyn was a standalone and it could record to a wav file. I'm not even sure if it still works in the VSTi.
== VDX == One Man can make a difference!
My music is on http://soundcloud.com/vdxi

Return to “ZynAddSubFX”