Architect beta for macOS, Windows, and Linux. 0.10.5 now available

Official support for: loomer.co.uk
Post Reply New Topic
RELATED
PRODUCTS

Post

woggle wrote: Fri Jan 04, 2019 10:02 am some amazing work there mannymang - and AZZIN of course. I am still very much at the struggling stage but luckily am in no hurry.
Thank you kindly woggle! Keep at it, it'll come together. I'm still a amateur at best. Always will be.

Post

I've attempted to implement AZZIN's Henon map code as an LUA script, seems much easier than attempting to do it with objects! I've never used LUA before so this is probably horribly done ha...

Just paste this into a new LUA object, add two data inlets and two data outlets.
-- First attempt at Henon map implementation
-- First data inlet ticks the algorithm on one step (I'm sending metronome to it at whatever rate is required for patch)
-- Second inlet resets algorithm to initial state (I'm sending a signal on playback start but you could explicitly reset this with a manual signal if required)

-- x output to data outlet 1, y output to data outlet 2

function arc.module.reset()
-- Reset x & y

x = 0.0
y = 0.0

end

function arc.module.setup()
-- Sets up initial variables when LUA object is created on graph/compiled

alpha = 1.4
beta = 0.3
x = 0.0
y = 0.0

end

function arc.module.receive(inlet, object)
-- Handle inputs when either of them receive a value or signal

if (inlet==1) then

Henon()

arc.module.outlets[1]:send(x)
arc.module.outlets[2]:send(y)

elseif (inlet==2) then
arc.module.reset()
end

end


function Henon()
-- self explanatory

tmp = 1.0 - alpha*(x*x) + y
y = beta * (x)
x = tmp

end
Last edited by Hez on Fri Jan 04, 2019 12:06 pm, edited 3 times in total.

Post

mannymang wrote: Fri Jan 04, 2019 10:08 am
woggle wrote: Fri Jan 04, 2019 10:02 am some amazing work there mannymang - and AZZIN of course. I am still very much at the struggling stage but luckily am in no hurry.
Thank you kindly woggle! Keep at it, it'll come together. I'm still a amateur at best. Always will be.
thanks - I will plod on, I dont understand the node based language at all but once I get the idea I will be fine. I'm very comfortable with the ideas of generative music algorithms. just not this implementation - yet! :)
what you don't know only makes you stronger

Post

Hearing the creations you've come up with, I feel like both a proud father, and also a little sad that algorithms make much better music than I ever will. Keep at it, guys.
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

Thanks for Architect Colin! :clap:

Post

Colin, I'm working on creating a metronome that takes tuples of (numerator,denominator) to set the meter and I'm wondering what the best way to make it 'tick' is. At the moment I'm using <On Every Tick> to call <Is Nth Tick> with input <Beat Ticks> with the numerator & denominator to check whether or not to send an output signal, but I'm worried that this is excessively CPU intensive (as mentioned in the <On Every Tick> info)? Is there a better way to do this?

Post

colin@loomer wrote: Fri Jan 04, 2019 10:32 am Hearing the creations you've come up with, I feel like both a proud father, and also a little sad that algorithms make much better music than I ever will. Keep at it, guys.
It's your tool that allows people to do these things!

I hope Architect will get more people into generative music in the future. With things like PD and Max, there has always been quite a big entry barrier, but I think Architect could change that. Provided with the right macros and examples, which will come over time, the whole generative thing could be much more "drag and drop" then ever before, allowing even less experienced users to experiment with this kind of stuff.

I think Architect is just really well designed, and you clearly seem interested in improving it even further.

Post

Hez wrote: Fri Jan 04, 2019 10:38 am I'm worried that this is excessively CPU intensive (as mentioned in the <On Every Tick> info)? Is there a better way to do this?
You should be fine. This type of thing - where you need to check something every single tick - is what that module is there for. The comment was more to dissuade people from doing `print` every tick or something.

Architect does some sneaky things with objects behind the scenes to ensure it can do things fast. For example, for common objects such as signal, true, false, number 0, etc, there is only ever one object created. if you send one of these, Arc doesn't actually create any new objects at all, just shares the global one.
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

colin@loomer wrote: Fri Jan 04, 2019 10:50 am
Hez wrote: Fri Jan 04, 2019 10:38 am I'm worried that this is excessively CPU intensive (as mentioned in the <On Every Tick> info)? Is there a better way to do this?
You should be fine. This type of thing - where you need to check something every single tick - is what that module is there for. The comment was more to dissuade people from doing `print` every tick or something.

Architect does some sneaky things with objects behind the scenes to ensure it can do things fast. For example, for common objects such as signal, true, false, number 0, etc, there is only ever one object created. if you send one of these, Arc doesn't actually create any new objects at all, just shares the global one.
Oh wow, that's very nifty!

I think I may have spotted a small bug in the <Is nth Tick> module here. I'm sending 3/8 as an interval to my 'new metronome' (obviously not really a normal timekeeping division but just as a test I guess...), which works out at 1440 ticks per beat after running (3,8) through <Beat Ticks>. However, running this into <Is nth Tick> is returning strange results - the first three trues are correct (true on 0, 1440 and 2880), but then it returns a true on 3840, which is the number of ticks in a whole bar, which doesn't coincide with 3/8. It then 'resets' its internal counter and does the same next bar - 3 correctly spaced 3/8 beats followed by a true hard reset at the start of the 3rd bar (this is assuming a 4/4 meter which is what my host DAW is set to).

In other words:
Image

Post

Hez wrote: Fri Jan 04, 2019 11:07 am I think I may have spotted a small bug in the <Is nth Tick> module here.

In other words:
Image
Ah right, yes, I think I know what's happening. I'll get this looked into when I tackle the transport bugs.
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

colin@loomer wrote: Fri Jan 04, 2019 11:18 am
Hez wrote: Fri Jan 04, 2019 11:07 am I think I may have spotted a small bug in the <Is nth Tick> module here.

In other words:
Image
Ah right, yes, I think I know what's happening. I'll get this looked into when I tackle the transport bugs.
Awesome, cheers!

Post

mannymang wrote: Fri Jan 04, 2019 10:01 am Sorry, can't help myself. :D Diggin AZZIN's algo rock. Tweaking live:
https://soundcloud.com/user-332831953/e ... chitect-15
That's exactly the idea... 😄 And as Colin says is sounds good!!
Last edited by AZZIN on Fri Jan 04, 2019 12:11 pm, edited 1 time in total.

Post

Hez wrote: Fri Jan 04, 2019 10:15 am I've attempted to implement AZZIN's Henon map code as an LUA script, seems much easier than attempting to do it with objects! I've never used LUA before so this is probably horribly done ha...
Great! Yes, I believe that this is way more compact than the graph=based algorithms.. I' ve to look at LUA, don't know it..

Post

Call me stupid but I like to see a gridsequencer with just one row in other words one pitch. This seems to me very useful for creating drumparts where each sound can have its own speed, swing, divide etc settings. Idea? Or just use the normal 8-grid sequencer and forget the other 7 rows?

Post

Someone already asked for more grid rows too, but yes, I can absolutely see the merit of a single row grid sequencer too. I have other sequencer types (that missed the beta) that kind of fit with what you are suggesting, so good chance I'll get this in at some point.
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post Reply

Return to “Loomer”