Module ideas

Inspired by all the game stuff, FABRIKsound: Forward And Backward Reaching Inverse Kinematics (FABRIK) by Andreas Aristidou:

http://www.andreasaristidou.com/FABRIK.html

http://www.andreasaristidou.com/publications/papers/FABRIK.pdf

http://www.andreasaristidou.com/publications/papers/Extending_FABRIK_with_Model_Cοnstraints.pdf

Excellent code inspiration & guide & video:

https://developer.roblox.com/articles/Inverse-Kinematics-for-Animation#FABRIK

https://www.youtube.com/watch?v=UNoX65PRehA

Create “bots” and attach sensors to joints and extremities. Use V/oct to move extremities or use mouse, joystick ,touchpad/screen. The IK system calculates all the new / next positions of the bones and joints. Register their movements, turn them into sound. Depending on the way they are attached to each other the joints movements are more or less corolated.

Let’s dance,

Ingo

3 Likes

An extensive walk through on modeling a tube amp by Will Pirkle:

https://www.willpirkle.com/fx-book-bonus-material/chapter-19-addendum/

3 Likes

TS-309A - a performance-oriented trigger/gate sequencer: based on the capabilities of the Doepfer A-155/A-154 combo (and inspired by how Steevio uses them in live performances).

I have a hi-res UI mockup with some documentation available here (in PDF):

VCV Rack Module Designs - Google Drive

Rather than provide a whole lot of detail here, I ask that you view what I have up there and then I can answer questions here.

I’ve thought through the design and think what I have at this point is pretty close to having the functionality and playability I was after. I used to be an App designer/programmer but a) have no C++ experience (just a little Java) and, more importantly, b) am retired and not really up to slogging up the C++ learning curve… so, I’m basically looking for a developer to take this on and I’m happy to help in any way I can. I mainly just want to use this thing!

Particulars like its name (TS-309A), the module developer name (Dream On Modules) and the color scheme I’ve used in the mockup are all changeable, of course, to match the developer’s “look” and name, and I can provide SVG files accordingly.

5 Likes

You might want to have a look at “Dumbwaiter” by Holonic Systems, it has all the functionality (except the slew limiter) but with a sequence length of 8 steps.

Thanks. Yeah, I’m familiar with that one. It is not implemented to be used in a live setting, though. You cannot easily move the “active” steps of the sequence around in the way I would think should be easy/useful. It’s interesting that it cycles around if the length setting takes it past step 8 (does the A-155 do that, too?) but I find that more confusing than helpful. If, for example, you want to leave the last step at 7 but then quickly change the first step between, say, 1 and 3, you’ll see its limitations.

Also, the way the trigger switch is designed/implemented, you have to cycle through all three positions (0, 1, 2, 0, 1, 2, …) meaning, for example, going from 1 to 2 takes one click but from 2 to 1 takes two clicks. The module has no “one-shot mode”. It doesn’t send out gates. It can’t be manually stepped (or started or stopped or reset). …

A post was split to a new topic: Web app generating TouchOSC projects

https://forum.intellijel.com/t/concept-the-linn-planar2-style-thingy/1887

cv spirograph takes a pair of attenuated inputs and turns them into radius and angle of a polar graph. Outputs XX position real time. Great for audio timbre transformation and can also function as a vca. Inputs accept cv or audio, +/- 5v internally uses outputs as new inputs.

1 Like

Is there currently any way to have a plug-in for the rack and Ableton (or another DAW) that can port audio directly between a DAW and VCV?

I have a similar idea in my backlog. Convert cartesian inputs to polar outputs, and vice versa. I may get to it one of these days.

wow, that’s some good info.

There’s quite a bit of code in his downloads dir. Maybe Wickeramp covers the amp simulation, couldn’t figure it out and I don’t own the full book that all the code comes from. Not sure about the licence, it seems public domain but could not find a clear statement on that.

1 Like

Marvin Minsky and Edward Fredkin’s composer / sequencer The Muse.

Full details including javascript version at http://www.till.com/articles/muse/

The Amuse

Ah. Thanks

A FIR filter module that lets you move the individual bits of the impulse response up and down and hear what it sounds like. There would be presets for low and high-pass filters, and so on. Also, maybe there would be an input and output that you could plug into any filter and press a button to record its impulse response?

Basically it would be neat to interactively mess with the graphs in Figure 7-4 and 7-5 from this page.

1 Like

Would be neat to be able to see/adjust the coefficients in the s (analog) domain as well. Move a parameter in the analog “section”, and all the parameters in the digital section would be updated via the bilinear transform and vise-versa. Could also contain a pole/zero plot like

When each point is selected, you could specify the pole/zero order and toggle mirrored conjugate/negative points.

1 Like

Linear algebra: 16x16 matrix module with one poly input, one poly output, and 16x16 trimpots each with infinite ranges. The output is defined by output[i] = \sum_i knob[i][j] * input[j]. Look familiar? It’s just the linear transform of the input vector.

Because adjusting 256 knobs is no fun, the context menu would have several matrix operations to set the knob values.

  • Copy matrix (places a 2D JSON array in the clipboard)
  • Paste matrix
  • Identity: Sets knob[i][j] = (i == j) ? 1 : 0
  • Upper (lower resp.) diagonal: Sets knob[i][j] = (i >= j) ? 1 : 0
  • Upper (lower resp.) tridiagonal (not sure what to call this): Sets knob[i][j] = (i + 1 == j) ? 1 : 0
  • Transpose
  • Invert
  • Random
  • Square
  • Normalize
  • Multiply paste: Multiplies the current state by the clipboard matrix
  • probably several more you could think of

The number of output channels could be selected in the context menu or panel, which would effectively set the matrix height. The matrix width would be set by the number of input poly channels. (The knobs would still be there but perhaps an LED on the x/y axes would denote the matrix size.)

4 Likes

Do you mean: output[i] = <sum over all j>(knob[i][j]*input[j]) ?

Oh sorry yeah, that’s einstein tensor notation.

2 Likes

I would like to see something like the sonicstate freeze machines
as fx that can take any audio input and freeze it, or be a “frozen” soundgenerator
I’d call it: freeze-in