Orac 2.0 with MPE support!

Ah! Got it, thanks. :slight_smile:

it doesn’t jump to the end - it highlights/selects the current module…
(this gives the users ‘context’, and also allows module to be reloaded easily)

2 Likes

By default “Empty” is in the slots - perhaps “Empty” could be moved to the beginning?

its in alpha order - that cannot change.

the only thing I could do is always put the current module at the top, but I don’t like breaking the alpha order, its feels wrong.
there are certain things once you know, it becomes second nature - the issue is I dont think i showed selecting modules in any video (at least not clearly)

1 Like

perhaps rename “Empty” to “-”?

Beta 2 up, and a new getting started guide,

basically showing how to build a rack, I think this’ll make it much easier for beginners to get started.

4 Likes

Thanks for the nice easter present :slight_smile: Also good video, should definitely help with the entry experience!

2 Likes

Nice. What happens if you put two LFOs on the same bus? I’m guess not the complex modulation you might want?

currently nothing useful…
for this release, you could easily write create a complex oscillator/lfo ,in PD this is absolutely trivial… in fact, so that the LFO has ‘low cost’ for cpu, its actually a wavetable, I could easily load a waveform from a file :slight_smile:
I’ve a feeling, we might see a few modulator modules written by the community, as its easy - and ive left a lot of scope

honestly, for this release my main focus/interest in modulation was for CV, and the rest kind of came for free … with CV mixing is not needed so much as you do outside.

but for the next release, I’m going to revisit modulation entirely…
basically its going to move to a kind of mod matrix, where you can specify offsets and multipliers, and you will be able to have multiple source (and of course multiple targets) , and it will mix … it’ll also unify midi, cv and these modulators so you can mix them all.
I guess for mixing, I’ll try to allow both additive and multiplication (so use one modulation to attenuate a source) - normal kind of mod matrix stuff really.

but needs a new data structure (essential you can calculate new values easily when any of its constituents change), new UI and also format to be saved.
so its non-trivial, but its not particularly difficult either :wink:

4 Likes

OK. Must say the latest video was really good. I have a much better idea of what’s going on from watching that.

thanks, the problem I had before, was I really didn’t want to over-emphasise the editor/computer aspect - so kind of skipped over it, but of course, that let a bit of a hole on what was going on. (which wasn’t there on the Organelle due to the display)

I think perhaps one element left to emphasize is how easy it is to create your own modules… because Orac take care of all the parameter handling/presets/midi etc, and you can just write PD modules to do the DSP - and PD is really easy to do that kind of stuff.

talking of how easy it is to add/change modules :slight_smile:
@NothanUmber, ive added pitchbend range to all synth modules, and you’ll find a new t3dOSC module.

2 Likes

Finally have been setting up the Pi3B+ and pisound today. Linnstrument+Pi+Orac2 is great!
In one channel mode everything pretty much works out of the box, now with adjustable pitch bend range settings one can get this into playable shape within seconds!
What would be the best approach for voice per channel? Creating a new parallel router with 15 parallel chains and load the same synths with the same settings into all of them?
Or would there be a way to make one module react to several midi channel VpC style (or sync the parameters of the 15 instances so they can be tweaked together)?

Already supports MPE , just set chain midi channel to zero

1 Like

Thank you!
Not all modules seem to support channels 2-16, e.g. for Brds it seems to work with channels 2-5 - but then I can fully play this polyphonically with per finger pitch bend and all - great fun, it just works!

Could some parameters like e.g. pitch bend range become global? Could locally edit the default of each module, but that might be overwritten with future updates of the modules.

brds is only 2-5 because its only 4 voice polyphonic, has nothing to do with the mechanism,
this was due to the CPU load … its unlikely even with a rPI that it would be able to support 15 voices…
(though probably a bit more than 4)

that said, now I have committed to using PD 49, (rather than 46), I might revisit the poly architecture to use clone, so this makes adding more/less voices much easier.

all the synths have MPE supports,
the samplers do not, since its not just a matter of recalculating frequency with pitchbend, there are other modifications needed… not hard, but just not something I had time for.

no, it doesnt really make sense to put PB as global on a modular architecture… it needs to be per module. as has been said in many places here , MPE is a small subset of users…
on a normal keyboard, you usually want pitchbend to be specific to the sound generator
e.g. a piano often has zero, a wild synth might have a large range, and many synths have asymmetric PB ranges.

1 Like

ok, makes sense. Perhaps a “save as default” function per module could be an idea that saves the settings of the parameters and uses these as defaults for each new instance of that module, so you don’t have to edit e.g. pb range each time a module is loaded into a slot?

Some things that might come in handy:

  • a panic “notes off” option. Sometimes getting hanging notes, particularly when switching presets
  • midi unlearn (or is this already possible)?
  • ranges for midi learn / modulation

planning on adding notes-off support

midi unlearn already there - do same as midi learn, but just turn controller (CC) to zero

modulation ranges -as said above, this will happen when i get around to re-writing the modulation with a mod matrix

2 Likes

May I ask a noob question: is Orac 2.0 something like Axoloti?

From my limited experience: Kind of. The patching interface of Orac seems more tailored towards on-the-fly live patching without a computer attached - can e.g. directly be controlled from the Organelle, a Push, an attached iPad, anything that talks OSC, etc.
And for writing own modules it offers Pure Data as a graphical in-between layer, for really time critical stuff custom Pure Data modules could be written in C. In Axoloti the modules are written in C++ - but directly from the UI and automatically compiled when transferring it to the hardware.
Orac runs on various platforms like Organelle, Raspberry Pi (with a sound extension board like Pisound), Bela etc. - which are all more powerful than the Axoloti hardware. (Probably some of that extra CPU power might be eaten up by Pd though?)
Some really nice stuff is available for both platforms. E.g. the Mutable Instruments modules for Orac are fantastic.
Looking particularly forward to the live patching capabilities of Orac, could imagine we see some interesting customized controllers or instruments built around that…

For further in-depth questions best ask Mark, he is an expert for one and the master for the other :slight_smile:

2 Likes