jeremymuller / Sha-Bang-Modules

A collection of modules for VCV Rack
GNU General Public License v3.0
32 stars 2 forks source link

StochSeq4 feedback & feature request #29

Closed firolightfog closed 2 years ago

firolightfog commented 3 years ago

Dear Jeremy,

Your StochSeq4 is the best sequencer in the VCV world. It's as simple as that. There are prettier ones but its functionality, efficiency, and practicality is unmatched.

But if you ever decide to re-visit the code I'd like to ask you to consider a few changes

With or without these changes your sequencer remains absolutely brilliant. Thank you for this wonderful module!

Best regards, Andras

jeremymuller commented 3 years ago

Hi Andras, thank you for your comments. I'm so glad you like this module. And since I am interested in a visual aesthetic I would be curious about how I could make it more appealing in terms of its interface. Do you have some examples of beautiful modules in mind?

Also, I like all these features you mentioned. I value good input like this so I can improve these modules. I'll definitely try to implement them in the next update. I was working on a new version of ShaBang modules but have been busy in the past few months so I've been unable to work on it. I'll try and get to it soon.

firolightfog commented 3 years ago

Hi Jeremy,

I'm afraid my input is not much of a help from visual point of view. But in general I'm in favour of the clean scientific design (like Doepfer or Impromptu, Count Modula). I do appreciate big buttons and multiple available skin options (dark/light) always having something bright as my default. My absolute favourite module design is SuperCell with it's huge faceplace, logical arrangement and big spaces around the most used knobs. (To be fair it's not among my most used modules otherwise.)

The real challenging design part in case of StochSeq4 is the set of sliders. I think it's wonderfully implemented as is. Easy to work with them and they give a good visual feedback what can be expected. Another good example of this concept is CodeFN42 CCstepper: https://www.codefn42.com/ccstepper/ It is a MIDI CC generation VST module but the slider width is dynamically changing in line with the pattern length. But Voxglitch Digital Sequencer for VCV is also nice.

Feeling encouraged by your words I'd like to draw you attention to the extension modules. I think StochSeq4 could also benefit from them. This proposal would incorporate the previously suggested keyboard features (shift & increase) in a more traditional way. Additionally it could have 32 GATE outputs (as seen in StochSeq1). Please note the track knob that allows selection only one of the four tracks of StochSeq4.

StochSeq4 extension proposal A

I'm also thinking about a live performance related expansion. What is the direction of your work on new versions? Is it linked somehow to any of your coming live performances?

Best regards, Andras

jeremymuller commented 3 years ago

Thanks, Andras. This gives me a lot to consider. I won't be able to really work on it for a while since I'm preparing for some upcoming performances at the moment.

I had started working on a new module several months ago. Once I have time to work on it again I'll definitely try to implement the ideas you mentioned here.

firolightfog commented 3 years ago

Dear Jeremy,

Please let me share a possible implementation for one of the requests above:

StochSeq4 PATT knobs could loop through respective tracks of 'Factory presets' of the context menu. These are regular .vcvm files saved in a default folder (like ..\Documents\Rack\plugins-v1\Sha-Bang-Modules\presets\StochSeq4 ).

Working example if factoryA.vcvm, factoryB.vcvm, factoryC.vcvm are save in the default folder:

Something like that. I'm not aware of the technical challenges this solution might bring but I find it a very nice and flexible way of using the default VCV features.

Best regards, Andras

jeremymuller commented 3 years ago

Ok, I have seen some other modules store preset .vcvm files as well. I'll think about how to implement this. As for now, there are factory presets built into the module (not as separate files, though). And it will save whatever slider values you currently have...if you want to copy them you can duplicate the module and the same slider values will be loaded.

jeremymuller commented 3 years ago

@S0210 there's a new update coming with Sha#Bang! and I've implemented some keyboard shortcuts and variable width sliders. I also have NOT gates, INV, and OR/XOR. In StochSeq4 you can cycle through each pattern with CTRL+Enter and even copy/paste patterns and their lengths into other ones with CTRL+C or CTRL+V. After I migrate to Rack v2 I'll work on an expander for StochSeq4 and the pattern presets stored as JSON.

firolightfog commented 3 years ago

First reaction: Ctrl-Enter is extremely useful. Keyboard shortcuts are very handy in general. Relocation of sockets (inc. INV, NOT) works unexpectedly well. Having a single glance I see all the options I can play with. It's strange what a great difference it makes. I see that you also managed to redraw the sliders according to the LEN settings. Wow, it is a first class update indeed! I'll spend some more time with it later. Congrats!

firolightfog commented 3 years ago

I managed to set the probability to -1 with mouse somehow. Minor issue. No crash or anything... image image

A closeup: image

firolightfog commented 3 years ago

Is the gate PW independent from the incoming clock signal? Is it fixed? image

At a moderately high clock speed I see that 'pulses touch each other'. image

jeremymuller commented 3 years ago

I managed to set the probability to -1 with mouse somehow. Minor issue. No crash or anything...

image

image

A closeup:

image

Yeah the negative numbers have been there for a while...it's just a minor UI bug that I haven't fixed yet.

jeremymuller commented 3 years ago

Is the gate PW independent from the incoming clock signal? Is it fixed?

image

At a moderately high clock speed I see that 'pulses touch each other'.

image

The pulse width is fixed to 0.1 seconds. The VCV Seq3 is set to half the gate length but that has the advantage of its own internal clock. So in this case I just fixed it to a specific time, also like JW-Module sequencers. Does this work ok for you?

firolightfog commented 3 years ago

Is the gate PW independent from the incoming clock signal? Is it fixed?

The pulse width is fixed to 0.1 seconds. The VCV Seq3 is set to half the gate length but that has the advantage of its own internal clock. So in this case I just fixed it to a specific time, also like JW-Module sequencers. Does this work ok for you?

Well, it does work as expected in this case. :)

But I definitely would like to work with shorter PW occasionally. Some basic drum fills (hihat, snare) can't be prepared with a 100ms PW. May I ask you to consider a Context Menu option for Default Gate Length (100ms / 10ms / 2ms)?

It's always easier to make a longer PW (with this or this) from a trigger than the other way around.

Regards, Andras

jeremymuller commented 3 years ago

I originally had the pulse fixed to 0.001 seconds. I can put it back to that, but using an envelope or something like the Vult Trummor for drum sounds I haven't had any issues with staccato notes using the 0.1 seconds gate.

firolightfog commented 3 years ago

I feel really embarrassed to ask; StochSeq4 offers already so much! But having PW at ca. 60ms (0.06s) would add one more neat trick to its menu imho.

jeremymuller commented 3 years ago

I see what you mean about how the gate doesn't retrigger drums if it goes too fast. I'll just set it back to 0.001 seconds like I had before. That was never really an issue and is the Rack protocol for pulses.

If you like these modules please consider sending a donation through paypal or sponsoring this project through github sponsors. Or sharing it with friends that may be able to offer some support. I'd appreciate any help and could dedicate more time and work on Sha#Bang! modules.

jeremymuller commented 3 years ago

Thank you for your support! 🙏

firolightfog commented 3 years ago

Thank you for your support! 🙏

I never used this GitHub feature before. But what better way to start then supporting the best VCV sequencer? ;)

jeremymuller commented 3 years ago

I fixed the gates backed to 1 ms and fixed the UI issue of having negative probabilities. It'll be in the next update soon. I could possibly add gate length options, for future updates...if you have any examples of something in mind? I like to try and keep with VCV standards or common practices.

jeremymuller commented 2 years ago

@S0210 do you have twitter or instagram, etc? I want to give a shout out to you for supporting my work!

firolightfog commented 2 years ago

Much appreciated but no social page to be shared. If you're about to refer to me anywhere please use my real name (Andras Szabo) instead of the S0210 nick.

Cheers, Andras

P.S.: @jeremymuller, I'm watching https://www.youtube.com/watch?v=PHfhiiwywws right now. It was high time! StochSeq4 is a unique module.

jeremymuller commented 2 years ago

I wanted to mention that in Rack v2 there is a new feature to allow user presets (and factory ones) for all modules. So the feature of having presets as JSON files will be taken care of in v2. I'll go ahead and mark that feature as complete.

jeremymuller commented 2 years ago

Good news! The v2 update is on its way and I included an expander module for StochSeq4 in this commit #39. I think you'll be pleased with it. Rack2 isn't officially released yet but you can find the beta version on the VCV community forum, but you'll need to compile and add any modules you want on your own.

firolightfog commented 2 years ago

The expander works very well. I am even more confident putting StochSeq4 into my patch knowing the option for individual step outputs if needed. Sometimes I leave it there, sometimes I remove it. It's a great addition.

Thank you Jeremy!

image