I wanted to announce some new features that recently went live. In the Digital Sequencer module, I’ve added three shortcut keys:
f: Toggles “freeze mode”. This stops sequence playback and is useful for editing sequences. When frozen, you can immediately hear the output of the step that you’re editing. It’s a bit difficult to explain how it works, but give it a shot and it should be immediately apparent.
g: When frozen, sends out a gate signal.
esc: Clears the current sequence.
I’ve listed the quick keys in the context menu for quick reference:
Hey Bret, hope you’re well? Very happy the shift to V2 is a fact.
One thing about using the arrows to shift the sequencer bars, now in VCV2 those arrows shift all the modules left and right. So we can’t use this anymore to shift the bars inside the sequencer, even when you hover over it.
wavbank is an integral part of the dub machine, a generative sample player that makes infinite dub music. i havent published anything yet (waiting for rack 2) but if you come by my twitch stream i can show you. its quite the thing to see/hear in action.
currently i have to use a work around to get it to function how i want. if the signal to change samples comes in at the same time as a trigger to play a sample the sample wont play; this skips a loop in the composition as a result. i use a ml modules trigger delay on the absolute lowest possible delay time to make the trigger to play the sample a fraction of a second after the change sample signal. it would be nice if i didnt have to do this i suppose.
theres a couple features from cf player that would be nice to have in wavbank. in player the samples are changed by moving up and down the list of samples in the chosen folder/directory by sending a trigger to advance it. this can be nice if you have a specific progression of samples to play through. with wavbank i currently use sample and hold to choose the next sample, which is great as the next sample being random is a good strategy too. if i wanted to do a sequence its kind of a pain. it would be nice to have the option to do both.
the other feature from player i miss is the playback speed cv input. i use an lfo to speed up and slow down vocal samples as it modulates giving a trippy effect.
i started building the machine with cf player but switched to wavbank (mostly). when you change samples with player there are quite a few clicks and pops similar to a zero point crossing sound. i assume its because theres a buffer underrun at the moment you change the loaded sample. wavbank seems to load all the samples in the directory at once mitigating this problem. there is still the occasional zero point crossing issue but i think thats more because digital audio is inherently flawed (this kind if thing happens all the time across all forms of digital media). some programs like ableton and reaper get around this by putting fade ins and fade outs on the ends of samples automatically but its still doesnt solve the problem at times. maybe wavbank could have those tiny fades to similarly mitigate this inherent flaw.
thats all i got for now. if i think of something i’ll let you know.
edit: maybe the pitch input on wavbank is the playback speed input? just noticed it now. i’ll try it out.
Thanks for all of the feedback! I’ll respond inline below…
When you say that the sample won’t play, do you mean that there’s silence, or that the previous sample plays instead? I’m looking at the code and don’t see anything that jumps out to me, but I’ll solve this for you, I promise.
If I added a trigger input to step sequentially through the samples and another input to reset to the first sample, would that suffice? It would require a bit of preparation for the user to name the samples so that the samples are loaded in order. Adding a drag-and-drop interface for reording samples would be brutal. Ha ha ha.
Give the pitch inputs a shot! I think that might be exactly what you want.
Yep, that’s true. I had to choose one way or the other, and I decided to load all samples for seamless switching. The only drawback is memory consuption and initial load time. The module can crash if your computer runs out of memory. It’s on my to-do list to limit the sample size to something sane to prevent this, but nobody’s been adament about me fixing it, so I’ve been spending my time elsewhere.
The code does have a fade-in and fade-out mechanism, but maybe it’s not working very well. Granted, my testing suite consists mostly of whisky and luck. I’ll see what I can do.
[EDIT] Forget what I said about CTRL-C and CTRL-V to copy just 1 sequence as it works as expected on my Mac. I just confused the CMD and CTRL, Mac vs PC kinda thing.
The RESET skipping is explained in more detail in a new message below, including some example patches.
[EDIT, see msg below] One more thing, which might not be related to the sequencer, but the RESET start point will skip the first beat every time. No matter if I use the INSTANT or next CLOCK input function. I use the Impromptu Clock and set the reset start-stop and internal reset both on, but it just wants to always skip the first step of the sequencer. Please program a KICK on the gates and test if that’s the same for you.
when the trigger and change sample signals come in at the same time there is silence. i have also observed that when you change the attenuator knobs mid playback of a sample, essentially switching samples, the same silence occurs. i speculate that the changing of a sample causes the silence. after adding a trigger delay to the play sample trigger it seems to work fine. maybe the module is trying to change the samples right after or during the moment when it starts to play them?
i took a look at the pitch input. it could use an attenuator but thats true of a lot of inpurs also the voltage range is weird? at least i found those on the cf player much more usable. when i plugged a bog audio lfo into it it seemed to only go into the slower sample range. to get it to go faster than normal speed i had to offset the lfo up several volts. the cf player on the other hand does faster and slower within the lfos natural range.
as to the zero point crossing thing i could tell that the module had some kind of trick to work around them as it handles them much better than a lot of tools ive come across. its probably fine to be honest. i was just trying to say in my post that it handles them better than cf player and its a problem that cant really be solved completely.