Orac : module developers guide


#84

@thetechnobear - quick question:

In your module.json thing for setting up the parameters - is there any support for text based parameters? ie choose from a list of short text strings?

I’m guessing not - but just checking

also I presume that the module.json you use in the likes of rngs is similar to the one in orac (I’m making my grid thing standalone to start with so I don’t need to worry about multiple midi channels :slight_smile: - one step at a time)


#85

No support for text yet (well there is but not exposed ;))
The reason is this needs to be enumerated types , to allow for remote control.

you will see I ‘get around’ this currently in some patches, by sending text to the aux line, which shows what the number means - but this is just a workaround.

Module.json is same format, and the interaction is very similar.

to use outside of Orac you (currently) have two choices:

  • copy orac, and use its structure, and delete the extra module slots, and put in fixed routing.
  • copy one of the Kontrol Series patches (including Kontrol externals etc)

this is because in Orac 1.0, Kontrol requires module slots, as it sends data to paramid-$1 (in 1.1 theres an option to turn this off)

id go for option 1, as its more compatible for when you want to move to a module

what do you mean by this?
are you saying, you need to send multiple midi channels?

what I personally would do is make the grid a module (or possibly just a router module) , and send to the active module… you can see how you can do that in one of the router modules , look for actmodule.pd ? basically this is where the organelles ‘r notes’ gets converted to s notes-$1.
its actually very simple, in fact, I suspect this will take you less time (once you figure it out) than writing a pd patch.

also, what nice in orac, is you (in the future :wink: ) move to full control orac from your ‘grid’ which special key combos (e.g. switch active module) … and of course, this will really help you if you want to run this on another platform e.g. rPI/Onda


#86

ah cool

I’m kind of porting the patch from the standalone 1/2 written version I made - and now I need some infrastructure using the organelle stuff rather than writing it myself

I’d kind of started on moving it to a thing based on rings but it sounds like I’d be better doing a bit more figuring out and going the whole hog in to orac (which is where it was intended to go anyway).

More tomorrow though - I’ve spent the whole day in a baking hot field at a tap dance competition my daughter was in - a long, painful and excruciatingly boring day and now my brain is goo - good job I love her so much…


#87

Hi all! Since Orac’s been released, I’ve been mainly using my Organelle for fun and in projects. It’s basically the best thing that happened to mobile music making for me. Thanks again @thetechnobear!

To thank Mark and also contribute, I’ve made my own chord making module as well as ported two popular Organelle patches: bpach’s RE-150 Tape Echo patch and callmesam’s Space Kittens…

https://github.com/markijzerman/mij.orac

You can find my patches here. Still haven’t gotten around to making a .zop. Is there a quick way to do this on my mac @thetechnobear?

I hope you guys can use this in your music making, let me know/send me videos!

All the best!


#88

Hey that chorder module is so good! Thanks for sharing.
The conversions are really great too.


#89

It seems good, but I wondered if you could explain it a little bit. Is there a way to sequence it in order to alter the rhythm?


#90

or if i chose a different module set-up (like, 3x3+1) could it then be used in addition to the polybeats sequencer, for example?


#91

Right now, there’s no way to sequence it in order to alter the rhythm. It’s clock is synched to the master-bpm, so yes, you can use it together with Polybeats. I want it to be able to use different rhythms though. Will look into it later, or fork it and do your own alterations! :slight_smile:
It’s also lots of fun if you put an arpeggiator after it!


#92

i see. actually, i’m guessing it wouldn’t sync with polybeats. they would just run separately.

i’d love it if there was a way to change the rhythm, or just if it could accept input from a sequencer!


#93

Aha, I thought you meant running at the same BPM…

Anyway, I’ll see when I get to it. Otherwise, you’re free to make any change you want!


#94

F-buffershufflr.zip (1.9 KB)
can anyone tell me how i screwed up this adaptation of an old shreeswifty upload?
Displaying fine… just ‘no sound’ :weary:
think it may be an issue with the contents of the subpatches? they are the objects bufferfx1s and pd lfo1
it’s an effects module for mangling input sound n it’s rate good.


#95

Not able to test atm, but what happened to me when I was porting over patches is that there was a lot of send/receive-combinations in abstractions that used a “$0-” in the name. As far as I understand this does not work with Orac (better check with @thetechnobear…).

I took them out and gave them normal names (using a text editor and some regexp actually, as it was in there quite deep).

I think this is actually NOT the right way as now they’re global variables, so one is only able to use one RE-501 module at a time. I hope Mark can shine some light on this!


#96

Nope $0 can be left as-is , $0 means they get a unique name per subpatch which actually is what we want.

Sorry, I’ve been busy with other things , once I get time I will take a look , as it’s possible I’ve missed a ‘gotcha’ that your hitting.

Unfortunately with pd is pretty bad at ‘namespaces’ , and sometimes fixing is rather dependent on what the patch is doing.
But honestly without looking at the patch, then working out what it’s doing - it’s impossible to say.


#97

Cheers, I’ll continue experimenting and hopefully i discover the solution and share. If anyone does get a chance to have a look in the meantime - i’d be very pleased.
I’ll have a go at a different conversion too i think, maybe the new c&g one!

I had an idea today - a sidechaining function for dipping one chain/module signal for anothers. Obviously though, beyond my ability!


#98

Can you imagine the sonic goodness for vocals by combining CA Filter and DUST?!?


#99

well… I couldn’t get the Tape Echo to work when keeping the $0’s… Will look into it later.

… The problem is that the $1 (also for the parameter knobs) does not work in abstraction patches (so in a sample-voice.pd for example). So I have to use global send/receives…!


#100

$1 does work in abstractions, you have to send it in, i usually find it easier to add to the end, so it might not be $1, but $5…
(we need to be careful here, this is ‘standard pd’, so everything thats possible in pd is still possible)

i suggest you look at the 50 odd modules i already did, i think you’ll find i had to cover most situations :wink:


#101

OK. I’ll have to go over the global send/receives I made later then.

For now, I added the tape synth (originally by @Fuurthur, made it polyphonic! sounds great!), lo-fi piano (by @seanearl which uses @Henrik’s samples) and warbly ukelele (by @seanearl).

The Chorder module now also accepts note input to advance to the next chord.

https://github.com/markijzerman/mij.orac


#102

Amazing contributions! Do know if it’d be possible to re-mono the tape synth module for another version? I love the voice stealing/glide sound on this track and immediately thought of tape synth when i heard it - but i couldn’t ever figure out how to make it the ‘right’ kind of mono to get the sound.


#103

I have a question, where does the note input come from? External midi?