(the product formerly known as) Epoch

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

Post

Maybe a stupid question as I have very little experience with tools like this, but will there be a way to set up a generative 'patch' and then very quickly save/extract the result as a MIDI clip/file? Drag and drop functionality would be the absolute icing on the cake, I'm kind of envisioning something like:

1. Create your 'patch'
2. Drag 32 bars of this patch immediately 'out' of non-Epoch and onto a new lane in your DAW (or to a folder to save for later)
3. Slightly alter the generative patch
4. Drag another 32 bars out to the DAW
5. Etc...

Key thing being that I wouldn't want to wait for the MIDI to record in real-time, it would be awesome to be able to see the results of some small changes to the patch immediately and in the context of the overall DAW project. I realise that you could probably just route a load of non-Epoch's outputs to various tracks and handle most of the editing/modification within non-Epoch, but I tend to prefer editing and messing with MIDI actually in the context of my DAW rather than external plugins due to familiarity, transferability etc.

I'm kind of envisioning the way Image Line's Edison handles drag and drop for this - there's an export icon you can click & drag and then you're holding an actual WAV file that you can either drag out to your file system and save in a folder somewhere, or drag onto a DAW or whatever - the actual behaviour within the DAW obviously depends on how that DAW handles a MIDI file/WAV being dragged and dropped on it of course.

No idea whether this is a really dumb "of course it'll do that!" or a "that'll be 8 more years in development mate..." kind of request, apologies on either account! Sounds like a super exciting project regardless :)

Post

MIDI export has always been planned for a 1.n release; it's one of those things that sounds incredible trivial on paper, but is actually rather tricky. Because there is no 'in-memory' model of the MIDI output - it's all generated on the fly - I'd either need to either "freeze" the MIDI generation to export it, or create a duplicate modular graph and run that offline. Either is very do-able, by the way, although thinking about it, I suspect the first way is better because that way your Lua state, variables, and everything else will be exactly as they would be at the end of the render. This seems more correct to me, but I'd need to try it and see.

So, to cut a long story short, it's a super idea - and by the way, your suggestion of drag n drop a la Edison is a winner - but it won't make the first release. Perhaps the second though?! (And if not, nag me until I do implement it.)
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

I am super excited - I've been making generative music for about 30 years, write some of my own scripts for manipulating midi (in MATLAB), tried lots of software but found none that matches simple + powerful + flexible in the way that I think this (was but is no longer Epoch) will.

Post

In the meantime "Epoch" would be actually very fitting again for such an epochal work :-)

Can't wait to see where this has gone in the meantime.
I found Reaktor a pain for Midi, many other generative tools too much focused on specific usecases, but from everything I hear about non-Epoch, it sounds like my dream come true. I guess I have to finally brush up on lua now, just when I got comfortable in JavaScript and the Bitwig Controller API...

Where do I apply for betatesting ;-) :D

Cheers, :tu:

Tom
"Out beyond the ideas of wrongdoing and rightdoing, there is a field. I’ll meet you there." - Rumi
ScreenDream Instagram Mastodon

Post

Lua's actually a simple language to learn. The canonical learning textbook - Programming In Lua - is a pamphlet of a book, and it covers the main language in about a hundred pages. That said, you certainly don't need to know Lua to use Epoch; Lua modules act just like any other modules, albeit ones you can peek inside and change.

In fact, I think the only place you are forced to use Lua is when it comes to sysex processing. Alas, I did have a great number of individual MIDI sysex building modules, but it got massively unwieldy trying to build sysex strings in this convoluted fashion. Where-as, in a Lua module, it's just a case of writing:

Code: Select all

output.messages[1] = { type = "sysex", data = {1, 2, 3, 4, 5, 6} }
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

Oh, I guess I was unclear: I love to script and look forward to put things that get unwieldy with atomic nodes into some clear lines of code. That is one problem with Reaktor IMO - nodes DO get silly at one point. ;-)

Thanks for the pointer, I'll check the book out.

All the best for your work!!!

Cheers,

Tom
"Out beyond the ideas of wrongdoing and rightdoing, there is a field. I’ll meet you there." - Rumi
ScreenDream Instagram Mastodon

Post

re Lua- I find the beta distribution the most useful distribution for generative music as using just two parameters you can approximate more or less the shape of any other distribution. (eg see the first two plots here http://reference.wolfram.com/language/r ... ution.html)
Programming the beta distribution should be okay (maybe via http://www.scilua.org/) but will
I be able to make a little add-on for 'Epoch' that lets me see the shape of the distribution as I change the parameters? That would be unbelievably awesome if I could

Post

Thanks for the link: I wasn't aware of the beta distribution. It looks like something one could whip up in either lua, or indeed with raw modules; if I get a chance before release, I'll see if I can get it included in the library in some form or another.
will I be able to make a little add-on for 'Epoch' that lets me see the shape of the distribution as I change the parameters?
No need to write anything: you can just stream the output of the beta distribution function to a triggered CV scope if you want to see it.
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

colin@loomer wrote:Thanks for the link: I wasn't aware of the beta distribution. It looks like something one could whip up in either lua, or indeed with raw modules; if I get a chance before release, I'll see if I can get it included in the library in some form or another.
will I be able to make a little add-on for 'Epoch' that lets me see the shape of the distribution as I change the parameters?
No need to write anything: you can just stream the output of the beta distribution function to a triggered CV scope if you want to see it.
I am so happy :)

re beta distrib - yeah it is surprisingly underused given how flexible it is

Post

I'll definitely have to take a look into adding more random distribution modules and/or scripts post release.

Today, I used Epoch to build an 8-bit binary adding machine. A few Logic gates into a half-adder macro, two of which I then combined into a full-adder macro, which I then cascaded to build a full 8-bit adding machine. Inputs are set using toggle buttons, and logic level display meters to display the result. I think this qualifies as the least musical use of a music app, ever.
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

colin@loomer wrote:I'll definitely have to take a look into adding more random distribution modules and/or scripts post release.

Today, I used Epoch to build an 8-bit binary adding machine. A few Logic gates into a half-adder macro, two of which I then combined into a full-adder macro, which I then cascaded to build a full 8-bit adding machine. Inputs are set using toggle buttons, and logic level display meters to display the result. I think this qualifies as the least musical use of a music app, ever.
that's how it starts - next will be a spacewars clone, or using the scope for tennis - https://www.youtube.com/watch?v=s2E9iSQfGdg

Post

It's sounding so mouthwateringly capable that I reckon it'll be Turing-complete by version 1.2 and develop a rudimentary consciousness by version 1.4. I'm expecting something like a cross between Deep Thought and Beethoven for v2, though I appreciate this may take a little while to code. We can wait! Meanwhile we can satisfy ourselves with the delicious luau in version 1 :tu: (Did I get that right?)
Textur for ACE
After Hours for Lounge Lizard EP-4
Prism Sticks for Chromaphone 2

Post

colin@loomer wrote:I'll definitely have to take a look into adding more random distribution modules and/or scripts post release.

Today, I used Epoch to build an 8-bit binary adding machine. A few Logic gates into a half-adder macro, two of which I then combined into a full-adder macro, which I then cascaded to build a full 8-bit adding machine. Inputs are set using toggle buttons, and logic level display meters to display the result. I think this qualifies as the least musical use of a music app, ever.
Dodge's Computer Music http://www.amazon.com/Charles-Dodge/e/B000APLQZS lists a bunch of distributions with pseudo code (although they'll all come in sciLua I imagine). I can't believe how expensive that book is now! Now where is my copy...

Post

Good reference, thanks. I do have a copy, although it's a while since I've looked through it. Looks like that's my weekend sorted then!
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Post

That awkward moment when you release that your clever swing algorithm and your MIDI beat clock generator do not play nicely together. Which meant, unfortunately, back to the drawing board on the swing; but to be honest, it works so much the better now. Previously, we only had a single global swing - a glaring oversight really, although there are per sequencer step groove settings to take one off the rigid metre - whereas now each sequencer can have it's own swing. Metric bass + slightly swung drums = huge funk.

... and the to-do list grows shorter every day.
Architect, the modular MIDI toolkit, beta now available for macOS, Windows, and Linux.

Locked

Return to “Loomer”