New module "Circle", good for perfecting loops of audio (essentially helps one to live compose music quickly)

Hi everyone,

I figured I would announce my “Circle” module which I finished a working version of about two years ago. It is like a looper module but more, it let’s one add loops and also “change” particular loops (add fx to, add volume envelopes to, add more layers, replace parts of). It does this by containing a tree of audio inside it that one can add to and change parts of. This allows one to have a live creation workflow where you can also adjust/perfect what’s been created.

Here is a music demonstration video.

In the video I’m using an open-stage-control setup controlling an fx chain in vcv rack which routes into “Circle”, I’m also using a foot pedal and two buttons to control the parameters on my module ( you can see it on the left side of the screen).

In the video, you can see me using some of the features of the module, like adding loops, adding fx to loops, replacing parts of loops, and adding volume envelopes. (Note that the module clicks less now too).

Here is a link to the repository where you can get the module. Right now it isn’t in the VCV Library, you will have to install it manually.

Here is a link to the patch files and open-stage-control files for creating the same setup as in the Twitch video.

Using the “Circle” module along with a touch device running open-stage-control and a foot pedal and two buttons, I created a phenomenal setup for live music creation. I’ve yet to find a setup that is based around live looping and has a workflow for perfecting layers. Please enjoy it and I would also love it if you shared what you created with it.

I hope you can figure out how to use the module based on the parameter descriptions (mouse over the buttons) and experimentation, if not, maybe I’ll make a video explaining how it works better. Essentially,

Module Pointers
- engage the ‘Change’ knob to start capturing what is coming in on the ‘Band’ input into a new loop, and the more you twist the ‘Change’ knob, the more the new replaces what is currently being observed (what is being observed is shown on the top left screen on the module).
- Long press the right button to undo
- To apply fx, simply take the ‘Observed Song’ output and mix it so it goes to the start of your fx chain before the “Circle” module, now the 'Change" knob acts as a dry/wet mix knob because you are replacing what you are observing with what you are observing + fx (P.S it’s convenient to use the left button to ‘capture window recording’ in this mode).
- When the ‘Change’ knob is in the rest position you can use the left and right buttons to navigate the audio tree, long press the left button to ‘ascend’ the tree (get closer to the root to observe more of the song).
- You can use the ‘Solo’ knob to ‘Solo’ what you are observing, or what’s coming in on the ‘Band’ input.
- One thing that may not be obvious is that if you want a trigger for every beat in the module, use one of the phase output ports routed into ZZC’s Clock module.

Thanks, Michael

P.S.

There are a lot of features that could be added to Circle to make it a lot better. One basic one is for songs to be able to be saved and loaded, or to persist. I’m open to help and collaboration, but I have somewhat stepped away from coding since I’m doing pure meditation all the time nowadays and value my stillness time with God.

Another feature I dreamed of is to get the “Aion” expander working so to enable moving backward in the movements created (currently the right button supposedly moves one to the next movement, but there is no way of going back, so it is effectively a refresh capture button). They go together like this:

With the addition of movements, it would allow one to create multi-parted songs just like in the DAW.

I also imagine a phase in port be added to the Aion module so that one could use a phase source to scrub through the song in “Circle”.

One could create a ‘timeline’ module as well so that one could look into the loops and movements of ‘Circle’ and adjust things manually.

One could also create some expanders with buttons and sliders for various nodes in the tree so one could fade in sections and quickly switch to which group one is recording similar to one of those popular Boss-rc505 loops stations.

That’s all my ideas for now.

Hope you enjoy the module.

11 Likes

It refuses to build and no binaries are provided. It may be due to having absolute paths somewhere. “Makefile:30: /home/michael/Software/forks/Rack/plugin.mk: No such file or directory” Right at the top of the makefile…

# If RACK_DIR is not defined when calling the Makefile, default to two directories above
# RACK_DIR = ../..
# RACK_DIR = /home/zenbook/Program/Rack
RACK_DIR = /home/michael/Software/forks/Rack
# RACK_DIR ?= ../..
1 Like

I can’t build so I hope someone posts win binaries. Looks interesting

1 Like

Just comment out the lines in Makefile I mention above and it will build just fine.

Oops, I pushed my absolute paths didn’t I. I’ll comment that out next commit.

EDIT: Should be fixed now

I still can’t find any binary,
could you or someone else provide win binaries?
I would like to try the4 module, but can’t build myself on my actual pc.

There’s no binaries right now, I don’t have a windows computer too so maybe someone else could Io that.

Here are binaries for every platform. https://ydray.com/get/t/u17160802839739SAGOf7bc8ed60841Wn Download, unzip and manually install the one that’s right for you. The binaries will expire and be gone after 10 days, so get them while they’re hot!

Now, and this is important.

The way the build process works is that it copies anything it encounters in the “res” folder and its subfolders.

The images are lovely, yet, their sources are in the “res” folder. All those illustrator (.ai) and postscript (.eps) files, not needed by the plugin itself get copied along with it and stay in the plugins final installed folder. Having those useless (for end plugin purposes) files there just bloats the plugin distribution, sharing and wastes hard drive space and bandwidth.

Move them to another folder.

The binaries I present are free of that bloat.

Also, if some of the fonts, there are a lot as well, are not used (I didn’t check), please move them somewhere else as well, for the same reason.

5 Likes

Thanks for doing that @Bloodbat. I moved the misc svg out of the res folder in the latest push.

Great! Plugin should be smaller now, I didn’t check the svgs, just the obvious ones (.eps and .ai)! :smiley:

You can automatically build the binaries for your plugin using GitHub actions, take a look at this repo

and there are some threads on this forum about doing this too if you get stuck

2 Likes