Architect: Show your projects here

Official support for: loomer.co.uk
RELATED
PRODUCTS

Post

Hi Jiri, glad to see that you tried Musinum and the a-chaos library! Hope you have fun and that you can start building stuff yourself.. Yes, perhaps Musinum is more immediate and everything is ready to be connected to a vst. Concerning a-linmap there is a post explaining it in detail here:

viewtopic.php?p=7296014#p7296014

It is used to remap the output of the numerical algorithms to a more useful midi note ranges.
For example if an algorithm outputs number between [0-1] setting a-linmap with parameter [0 1 1 127 x], where x is the current algorithm output number (between 0-1) the map enlarges this value between 1 and 127. The fifth value, x, "bangs out" the result. Hope that it makes sense.
"PS: Reset, INIT, step - are Signal modules, right?"
Yes.
more indices how to connect fragments to final midi output.
You're right, what is written in the pdf is probably not very clear in terms of final usage. Note that there is a certain freedom for the usage of the chaotic objects: for example they can be used as LFO, volume envelopes, pitch mapping. Attached is a very basic example, a non-repeating sequence based on Henon algorith. Unzip it, put the .xml in the preset directory of Architect, attach a VST to the architect midi output and start the transport, the music should flow..

Alberto
You do not have the required permissions to view the files attached to this post.

Post

AZZIN wrote: Sun Sep 26, 2021 3:19 pm Hi Jiri, glad to see that you tried Musinum and the a-chaos library! Hope you have fun and that you can start building stuff yourself.. Yes, perhaps Musinum is more immediate and everything is ready to be connected to a vst. Concerning a-linmap there is a post explaining it in detail here:

viewtopic.php?p=7296014#p7296014

It is used to remap the output of the numerical algorithms to a more useful midi note ranges.
For example if an algorithm outputs number between [0-1] setting a-linmap with parameter [0 1 1 127 x], where x is the current algorithm output number (between 0-1) the map enlarges this value between 1 and 127. The fifth value, x, "bangs out" the result. Hope that it makes sense.
"PS: Reset, INIT, step - are Signal modules, right?"
Yes.
more indices how to connect fragments to final midi output.
You're right, what is written in the pdf is probably not very clear in terms of final usage. Note that there is a certain freedom for the usage of the chaotic objects: for example they can be used as LFO, volume envelopes, pitch mapping. Attached is a very basic example, a non-repeating sequence based on Henon algorith. Unzip it, put the .xml in the preset directory of Architect, attach a VST to the architect midi output and start the transport, the music should flow..

Alberto
Thanx!!!

I am also getting thru here (KVR) available "A" devices to get better feel how it works so it will take me some time to grasp... :wink:


Damn - am already late to work but instead am ....
But your patch for hapalong is really awesome!!!! I was thinking that this will be just interesting, did not expect that mathish stuff can be so musical...
Thanx, thanx!!!!!!

Sounds amazing on synth! Also damn cool (as usual) is how keys are switch to drones if play stops (but I see for a while "A" still send midi)...


As I said it will take me some time to fully grasp (this is obviously heavy category)) :phones:

Cheers..

Edit (20 min latter - yep, I am still not at work)): modulating Metronome and leaving it fall to drones sounds really very nice.

Post

I'm only a week in and quite a beginner at this kind of thing - so here's something really simple. Maybe should have been posted in the Macros thread!

I'm really interested in creating generative stuff that responds to what you play in, so to get started I made a MIDI-multi-delay.
Stretchy MIDI Delay.xml.zip
You do not have the required permissions to view the files attached to this post.

Post

Okay, here's something a little bit more interesting than my previous effort, now that I've had a few weeks to find my feet.

Hopefully the interface is pretty self explanatory... Turn the Architect click on, start the transport, and start playing MIDI in. The more pattern based and more notes the better! Then press PLAY to hear what you played in reinterpreted using Markov Chains. If you don't like what you hear, press RESET and start again! You can get some interesting effects by moving the transport back and forth to play over previously recorded material. Also, you can get different effects by changing the quantize and nGram length settings. These can be done after recording to hear the effect on the same raw material. I wasn't quite sure what to do about note velocities, so just added an output velocity knob - I'm open to suggestions for a musical way to deal with the velocities!
MIDI Markoviser.xml.zip
You do not have the required permissions to view the files attached to this post.

Post

I updated my MIDI Markoviser. I added a few bits and pieces, but the main change is getting it to sync with the host transport, either in Architect or as a plugin.

Here's a video of it in action:


Some pics to follow...
Last edited by Bob Broadley on Thu Apr 07, 2022 10:10 pm, edited 1 time in total.

Post

Here's the panel:
Markoviser Panel.png
Here's the top level (a real mess...):
Markoviser top level.png
Here's where the raw array of notes is quantized:
Markoviser quantizing.png
This is where everything is "markovised" I had to cheat and use Lua script here, I couldn't get it to work with modules:
Markoviser markoviser.png
Here's where events are scheduled:
Markoviser event scheduling.png
And here's event playback:
Markoviser event playback.png
You do not have the required permissions to view the files attached to this post.

Post

And here's the Architect file if anyone fancies taking a look - I'd love some feedback, especially about how to prevent CPU spikes when doing long loops on data in Lua Script...
MIDI Markoviser v2.xml.zip
You do not have the required permissions to view the files attached to this post.

Post

Very cool!! Will definitely give this a try - thanks for posting it :).

Post

bharris22 wrote: Fri Apr 08, 2022 5:15 pm Very cool!! Will definitely give this a try - thanks for posting it :).
Thanks! Like I say, I'm a bit of a novice with this stuff, so please feel free to offer advice...

Post

Some very clever stuff posted here - impressive! I've been busy putting together a script/s that together with a Launchpad Mini Mk3 gives some hands on control over the sequencers (mono-sequencers to begin with). I intend to expand the script to work with the poly seq's too but one step at a time. So far the project consists of 16 tracks with control over most of the transport and row parameters like - begin/end, direction, duration, multiply/divide, speed, swing, pitch, velocity, gate etc... Each of the 16 tracks consists of one 32 step note sequencer and another 8 32 step CC sequencers giving a total of 144 (16x9) sequencers on the graph. Track mutes and rotating the triggers left/right by 1 or 2 steps at a time are working. Editing a step or multiple steps is achieved by pressing one of the 8 top row buttons of the Launchpad, and once in 'note-select-mode' any step (active or not) can be pressed and then any row parameter can be adjusted - either on the Launchpad or using another midi knob. I've been testing it with an MFB Tanzbar drum machine and the timing and stability have been spot on! Next feature to implement is for each note/cc lane to have 8 patterns that can be switched on the fly - possibly even a copy/save function if i'm able to make quick variations. Architect is what I've been dreaming of and even in it's beta state it's solid and formidable. It's taught me a lot about being efficient with midi messages and sysex to ensure that even at ridiculous tempos (maxed out divide + speed + duration + bpm) it still holds up and is able to update the Launchpad LEDs without a hitch. I've just splurged on 2 more Launchpad mini's and am looking forwards to what that might allow beyond x3 of the current mono setup. Perhaps using 2 linked together to make a drum sequencer that shows 8x16 steps at once or a poly sequencer for driving some synths. I always wanted to try/buy a Cirklon and now I have the chance to make something like a budget Cirklon for a fraction of the price/time and best of all - you can make it do what you want. I wonder if I could even get some kind of song mode done too but that may be a challenge to far - for me at least :P Thank you Colin for the work of wonder that is Architect <3

Post

Hi there. 8)
I was buying Arch license at Covid time – probably as one of former user and then tried also Plugdata and Max for Live.
Still, this group went imho furthest in algos and keeping it open (which is essential for particular algo style music).

6 months ago I started w/ JavaScript in M4L Codebox and month ago I tried Python and do everything from scratch.
This sound like a good idea, cause Js in M4L has a lot of its own quirks, which LLMs struggle w/, not to mention that particular lingo is struggle itself and it is not much better in Gen~ (I would say it is worse).

I am sharing here 4 steps sequencer, that yesterday managed to clocking in audio-rate (I reduce it to 40kHz, but it should not be difficult to keep it in 44.1kHz) – it uses some tricks like phase-locked loop (PLL) in sleeping, perf_counter(), deque, NumPy chunking..to do so, and I am not sure - which is main Q here - whether these trick not compromise audio fluency (cause audio is now sounding broken)? Is Gen~ speed w/ superior to V8Codebox data and graphic in Python just a dream?

I’ve also shared some init codes on https://sigsaly.xf.cz/py-bl – speed-up clocks are there.

Since Py libs are half of what makes Python so ease in use, it also requires user to install them and since version can mismatch, it is workable only in some sort of virtual environment – venv (or Anaconda) in VS Code etc.

My point here is, that Max for Live will be hesitant to accommodate AIs and Python, cause it is serious cannibalization of their knowhow (not to mention it was mostly oriented to make rather simpler close devices), so this may be chance for new start – use Python and LLMs on more complex musical themes and share some codes and use tokens to keep some revenue.

Note to sequencer: What sequencer can do, is jam the length on the fly and also display amp envelope – which can be also jammed and display it original shape.

ADDIT (8. 10.): It took only month, after deep study of various concurrency/ serialization techniques like "producer-consumer pattern with a ring buffer", that:
def counter_loop(self):
update_interval = 0.05
samples_per_update = int(self.sample_rate * update_interval)

while not self.stop_counter:
for _ in range(samples_per_update): # ← This is the problem!
if self.stop_counter:
break
self.counter_value += 1 # ← Manual increment
self.sample_count += 1 # ← Manual increment
Meanwhile, in your audio_callback(), you're also incrementing the same counters:

def audio_callback(self, outdata, frames, time_info, status):
# ... audio processing ...
self.counter_value += frames # ← Also incrementing!
self.sample_count += frames # ← Also incrementing!

---
Also storing final guiding-line in 40kHz, is like a making 10 kg panzer teaspoon, 20Hz is pretty fine for this.
---

Point is: Yea, ordinary electronic musician w/ LLM mate/ co-author can imho make lightyears superior to V8Codebox algos, w/ Gen~ speed in Python. It is not a dream, Python delivers. 8)
It would tough massively help have some oversight of some experience programmer and also team-work - not doing everything from absolute scratch.
Also, sequencer is not changing time - note duration (I did not manage to do this, it is not that easy as it look like), it fakes time - so one can use velocity (first derivate) and acceleration (second derivate) in shape curving, to further modulate..


Happy coding. 8)
You do not have the required permissions to view the files attached to this post.

Post Reply

Return to “Loomer”