midilab / jc303

A Free Roland TB-303 Plugin for Windows, MacOS and Linux: VST2, VST3, LV2, CLAP and AU. A Juce port of Open303 engine.
https://midilab.co/jc303
GNU General Public License v3.0
114 stars 3 forks source link

The "decay" knob is doing nothing #7

Closed dddux closed 6 months ago

dddux commented 6 months ago

The "envelope decay" knob in v091 and v092 is doing nothing. Or more precisely it is stuck at one value internally and turning the GUI knob does nothing. I am puzzled that nobody has noticed it yet. Maybe it's just a Linux build issue? I tried both VST3 and LV2 versions, same thing. I am using Debian 12. Everything else works normally. I used to own this toy synth back in the day. ;)

Thank you!

Loom-child commented 6 months ago

Hi,

I can confirm the issue on the latest (v092) build for Windows.

J

midilab commented 6 months ago

The "envelope decay" knob in v091 and v092 is doing nothing. Or more precisely it is stuck at one value internally and turning the GUI knob does nothing. I am puzzled that nobody has noticed it yet. Maybe it's just a Linux build issue? I tried both VST3 and LV2 versions, same thing. I am using Debian 12. Everything else works normally. I used to own this toy synth back in the day. ;)

Strange, i've using since 091 with no problems, mostly doing via midi controller CCs on Linux and Mac. But i will investigate asap!

thanks for the reporting back and tests.

midilab commented 6 months ago

hi @dddux ,

can you please inform the glibc version of debian 12 you're using?

$ ldd --version

dddux commented 6 months ago

Using Debian 12 Stable with GLIBC v2.36 and Reaper 6.83. I have just tested JC303 in Reaper for any "default" CCs, but there isn't any, so I tried automating all of the controls and only Env Decay is not responsive. The GUI knob is moving though, but no changes in the ENV Decay.

Thank you for doing this! It's cool and cute. Totally CC. ;) Cheers!

dddux commented 6 months ago

Whoa... hold your horses everybody. I have just compiled the VST2 plugin from https://github.com/lesnoh/open303/tree/master and it has the same bug! It sounds nice, has multiple choice of filters, but ENV Decay button is not working! Call me completely puzzled. :/

midilab commented 6 months ago

So after some debug i couldn't reproduce the reported problem, the decay knob is working as expected(at least from JC303 perspective).

The decay chages are subtle, you need sometimes the rigth sequence to perceive the differences in decay time, the code allows you to apply the devilfish mod that extend the range(maybe its turns it more expressive?). One of the tasks on roadmap is to bring those internal changes to user interface so anyone could make MODs changes to sounds as it wishes. Inside the code there are some notes about the decay also:

/** Sets the main envelope's decay time for non-accented notes (in milliseconds). 
Devil Fish provides range of 30...3000 ms for this parameter. On the normal 303, this 
parameter had a range of 200...2000 ms.  */
void setDecay(double newDecay) { normalDecay = newDecay; }

Whoa... hold your horses everybody. I have just compiled the VST2 plugin from https://github.com/lesnoh/open303/tree/master and it has the same bug! It sounds nice, has multiple choice of filters, but ENV Decay button is not working! Call me completely puzzled. :/

This is a fork of original Open303 engine writed by Robin Schmidt`s, there are a lot of forks like that around, JC303 makes use of Open303 engine too, so should sounds like others out there. JC303 project comes out with the focus to make it avaliable in different formats and different platforms via JUCE framework and CMake for linux, windows and mac environment for compilation.

If you still think decay is doing nothing, maybe you need to bring this discussion into the developers forum of Open303, this forums discussion about the engine is running for long 10 years now, lots of 303 owners and developers discussing the emulation sound and internal code/parameters

dddux commented 6 months ago

OK, I have managed to refine the definition of this bug, which is in every open303 source code on github I managed to compile. Shame I haven't been lucky so far with Scheffle's VST3 port as it looks really good! (check it if you like: https://github.com/scheffle/open303). I compiled Autostatic's, Michon's, Lesnoh's, yours... and it doesn't matter lv2, vst2, vst3, which is pretty logical as this bug is most probably in Robin Schmidt's code, or whomever ported it to Linux first, but Loom-child said it happens in Windows, too, so the bug is most probably in Robin Schmidt's code. I will try and compile his source.

The bug is: the envelope decay is not working when the velocity of the note is bigger than 99. That is, when the "accent" comes into play. It's more of a bug with the "accent" parameter. If you play Open303 lightly (vel <100), everything will sound fine until you hit a note beyond velocity 99 which triggers accented note even when the accent is 00%. Accented notes in itself sound a bit strange, probably due to this bug and decay set to 200ms (the shortest), but I noticed "decay" does something to the sound, just not what it should do. It is a shame, since accent plays a big part in the 303s sound. Also the cutoff and decay should be able to go a little lower... like 200Hz for cutoff and 100ms for decay, but that's IMHO.

I hope all this is helpful. d= ;)

I just read your last reply. I will join the Open303 developers forum and see what they have to say. ;) I didn't know RS's Open303 is supposed to emulate DevilFish MODed 303! That's utterly cool. You should mention some of this stuff on your Github. Pretty cool.

Cheers!

midilab commented 6 months ago

Sorry i cant help much on this since i never own a tb303 to make a point. Also JC303 project is not focus on Open303, it only ports it to JUCE to make it avaliable cross platform and cross formats.

Please bring your points into the open303 developers discussion and see what happens, i think there are valuable knowloedge of yours since you had owned one 303 to sum up with this 10 years project, im there too discussing patterning 303 with Robin as you will see. https://www.kvraudio.com/forum/viewtopic.php?t=262829&sid=2f3fcf7d117ed86e9b32b174c9004c56&start=1125

dddux commented 6 months ago

I'm already keeping an eye on that KVR thread. I must have posted something already. ;)

I'm glad people are interested in this. Maybe I should post a link to Scheffle's port as it has got a sequencer. I am going to try to compile it again at some point.

I used to throw around my 303 as a "one trick pony", "roland toy" etc. I was puzzled how it was called the Bass Line when the last thing I would use it for was Bass. :) Had much better synths for that like SH-101 and Jupiter-4. However, this version is usable for at least a dozen tricks, now that I have played with it for hours. "accent", when you know how it works, makes sequencing it more interesting and special.

It seems like the "issue" is "resolved" then? d=;) Cheers!

midilab commented 6 months ago

I used to throw around my 303 as a "one trick pony", "roland toy" etc. I was puzzled how it was called the Bass Line when the last thing I would use it for was Bass. :) Had much better synths for that like SH-101 and Jupiter-4. However, this version is usable for at least a dozen tricks, now that I have played with it for hours. "accent", when you know how it works, makes sequencing it more interesting and special.

great toys you had!

if you are interested in 303 and clones there is also another project of mine that is a 303/808 hardware sequencer clone with some features for live performance and pattern grid system like ableton scene: https://github.com/midilab/aciduino Soon i will try to integrate the Open303 dsp code into a ESP32 for a U$10 303 hardware clone.

It seems like the "issue" is "resolved" then? d=;) Cheers!

At least from JC303 side i guess, but im glad you bring it to the table, Open303 is one of the best software emulation i had use so far, and people like your self are the reason why it sound so good, over those 10 years so many 303 lovers interacting and contributing to make it sound like the real deal.

midilab commented 5 months ago

i think it worth mentioning that after working on mod inspired in devil fish i notice that when i reset the values(do the amp and filter calculus) for normal 303, the decay start working differently, so i guess it was some sort of missing initialize correctly the amp for decay to proprely work.

Im just guessing, but im curious, if you could test the new 0.10.1 version, with mod turn off and see if decay sounds near as expected.

Also the mod gives you some freedom over decay control, you may find some interesting point.. pleas let me know!