dzannotti / junox

An emulator of a Roland Juno 60
https://dzannotti.github.io/junox/
GNU General Public License v3.0
22 stars 6 forks source link

Gate behaves wrong for VCF #25

Closed pendragon-andyh closed 5 years ago

pendragon-andyh commented 5 years ago

In voice.js, we have const env = this.patch.vcaType === 'env' ? this.env.render() : 1 at line 48.

Gate is only supposed to apply to the VCA. This code appears to apply the gate to the filter also. The Juno patches often use the envelope to do "interesting" stuff with the VCF, while using the Gate as a "boring" envelope for the amplitude.

In a previous communication I said that the gate should be modelled as a second instance of envelope (short attack, high sustain, short release) so we will be paying the cost of two envelopes. If we ever implement a super-doopa-juno (with a ton of bass-boost) then consider explicitly exposing the second adsr on the UI.

dzannotti commented 5 years ago

I like the idea of the super juno and exposing the other to UI, but the gate is not applied to the vcf currently as env in your line is only used for patch calculation (perhaps this behaviour was changed in your latest push tho and this issue was preceeding that?)

dzannotti commented 5 years ago

@pendragon-andyh i believe you took care of this already in your code submitted yesterday (and therefore this can be closed), am i correct?