does it work if you dont have any synths etc in chains 1 and 2?
if could be you are clipping the audio - in which case you need to reduce the gain of the synths and fx in chains 1 and 2.
but I think you can tell the difference between digital distortion and cpu overload.
are you on an organelle-m?
cpu overload - it could be the cpu monitor is reporting ‘incorrectly’
the issue is all the current Pure Data patches (including Orac) are using a single core for the DSP, despite the fact that the Organelle-M has 4 cores. (it needs quite a bit of dev, to change this for orac esp to keep it compatible with Organelle-1)
so it could be that one DSP core is overloaded … so 1 core at 100%, = 25% cpu load overall.
(but the other cores are being used for ‘ancillary tasks’ e.g. OSC communication, so that pushes it to 30%… also a single core is more powerful than an organelle-1, so its is still more powerful, just not optimal)
in you go to the command line, and use ‘top’, you can get it to tell you load on individual cores - so this would tell you.
btw: you cannot get to 100% core utilisation for audio usage, at about 75-80% you will start getting audio gltiches.
I just tested it out and chain 3 does work fine when I dont have anything loaded in chains 1 and 2.
I am on an organelle m so it definitely could be that its reporting incorrectly. I’m very new to the organelle and pure data so still figuring out how to use it all but I really appreciate you responding! Gonna try and look at the individual cores.
if you have synths on all 3 chains, and you get ‘glitching’ when only one of them is playing a sound, then this is likely cpu. this is because synths/fx use CPU even when they are not sounding.
if it only glitches, when all 3 are playing, then it could be clipping the audio.
the easy test though, is go into the router module (S1) and turn down the gain output of each chain, significantly… because its most likely clipping at the final output stage, when all the chains are combined.
its very easy to end up clipping audio here… as it is in real modular,
the reason is everything is setup so that it sound ‘reasonable’ when only one synth is playing, but of course combine 3 of them an it clips… but if i defaulted to lowering all the synths volumes, then it would be too quiet when you only use one.
you could use a compressor, and organelle use to default to having one on it… but the problem is compressors then take the dynamics out of the audio.
probably what i should do is add a new compressor module, that could go into P2, which would have some control over the compressor, so you could dial it up n down, depending upon what you are playing.
(note: Ive hesitated doing this as I only have a passing familiarity with compressors and i know many have strong feelings about them )
I bought Organelle 1 a few days ago and this is just a bomb! Mostly because of this patch, I’m just thrilled, thanks for your work!
I found some nasty little thing, it is stably reproduced in any ORAC module: if you press a MIDI note on a keyboard in any module when switching between slots, this note will always be pressed and repeated endlessly. I did not find a way to stop this without changing the preset.
yeah this is a known ‘feature’ when using keys to the active module
it can actually be useful as a kind of sustain mode.
the issue is quite a simple one - the ‘active’ module gets all note events… to do with as it pleases, so basically noteoff goes to new active module.
that said, midi is different - as you can change this behaviour in the router.
rather than have a midi keyboard go to the active module - you can get it to go to the ‘chain’ - this is what I usually do…
so what I do, is have a midi channel ‘per chain’ , a bit like in a DAW you would send a midi channel to a particular track,
(actually, I thought this was the default behaviour… but Id have to reset my orac settings to check )
in the latest dev code base, I have all-notes-off working, but can’t remember if this is in the Organelle released version. (I thought it was, but I added it a bit later, so perhaps its not quite made it thru )
Thanks for your reply!
Perhaps this would be a useful feature if it could be canceled by clicking on a note a second time or on some button such as “MIDI Reset” (such are in VST plugins). I don’t know if it is possible to check if there is an incomplete note and switch the completion signal by force when switching the mode. I think this behavior should work adequately in all modes, not just the one you use.
I think it’s possible to achieve such a function by documenting adding the “Hold” option somewhere (in the router or some menu where you find it correct).
as you can change this behaviour in the router
I have not figured out how the router works, I’ll try
Thanks in advance for any suggestions to an issue I am having with Orac 2.0’s midi out clock.
When using orac.20 with my Organelle m I am experiencing issues with sending a consistent midi clock out to sync a looper pedal. This is happening when using a variety of configurations in orac.2 both in serial and parallel routing.
Midi clock out is working great and in sync when I use any standard patch that comes with the Organelle like Polybeats or jeraphy. It just seems to be an issue when using Orac.
Quick question regarding custom routers - if one wants four chains, is it still just a matter of connecting the wires differently or does something need to be added in order to make the new pages for the controls of the 4th chain (chain Gain, Pan, and MIDI)?
Apologies if this is covered somewhere, I searched but couldn’t find it
Hey just having some fun with these going out to my modular (via polyend poly 2) - I may be doing something wrong, but here’s what I’m seeing. I have a midi out module in chain a and chain b. Have and LFO in m1, and random sync in m2. What’s happening is, as soon as I modulation learn the random sync to a parameter in the chain b midi out, it’s affecting how the lfo in my chain a midi out is functioning. I made sure the lfo and the random sync were set to different modulation busses.
Ah hey! Thanks for the reply - I actually had a go at this and did exactly that. What I couldn’t figure out was in pd, I copied the chain 3 object and changed 3 to 4, but the inlets disappeared and I wasn’t able to get past that (sorry if this is a totally obvious answer). I think I had everything modified correctly on the .json though
I just installed Orac 2.0 today to potentially implement in a live setting. The idea for the patch would be a synth module running in Orac would be arrpegiated by my Moog Grandmother. The output of the synth module would be process through the external in of the Moog. The output of the Moog would then be ran through FX in Orac, and then be output through the Organelle. I can’t seem configure a routing that doesn’t result in feedback, but I was wondering if it is possible to route a synth module only to one of the outputs (L or R) and have the processed signal from the Moog + FX from Orac out of the other output? I feel like it is possible through the routing module, but I’m have trouble figuring out what parameters I need to adjust. Thank you for your help.
yes, you need to look in the router module.
in there you will find for each chain the ability to alter the input and output gain and pan for left and right independently.
pan is useful, since most fx are stereo, so you will want to ‘re-centre’ the input channels, similarly if you want independent output channels, you’ll need to pan them hard left/right, before the chains are combined/mixed.
with this you have have chain 1 handle the left input, and chain 2 handle right.
With some extra time recently I’ve been digging a bit into pd. Think with a much more solid handle on things, I’m close to getting the NK to mute midi coming out of orac chains. Here’s what I’ve got - it’s clearly wrong as it doesn’t work, but I wonder if maybe I’m close, and all I need is a hint or two:
edit: ok - got this working! added another spigot after inlet notes
I’m thinking about doing this for all 3 chains using the first 3 mute buttons of the NK, as it seems to be a popular controller for the organelle. I can post the modified patch, if @thetechnobear feel good about it, if I haven’t done something that will break things elsewhere of course.
This just seems very useful for anyone wishing to use the organelle as a main sequencer for other hardware (I had the need as it’s currently going to the polyend 2 in my eurorack). Also I still need to solve the “hanging notes” issue. I’ve spent quite a bit of time looking for how to solve this with no luck - if anyone can help, would totally appreciate
So I’ve just realized my above solution works for sending triggers but not gates - I’ve tried a bunch of different things to find a muting solution for sending gates i.e. will sustain the note length when not muted, but will cut the note short when the mute is engaged. I’m afraid I’m stuck
Also I’m sorry if this should be in patching, it just seemed directly related to orac, and as I’d like to post the modified router module/modules thought this was a good place for it.
sorry, back up a bit… what are you trying to achieve? whats a NK?
looking at your first screenshot , I’m confused at why you are doing [- 127] [- 127]
are you trying to to stop notes going out if CC 48 is > 0
if so all you need is:
this assume midi ch 1(change in ctrlin)
initial gate is open , so you need to send cc 48 > 0 to close it.
it does not track notes, so if you do it whilst notes are active it will hang notes… tracking notes requires more complexity… and something i try to avoid, since you have to assume poly count. (*)
I guess this is for a specific controller, so its not something Id want to add to Orac but for sure, it’d be great to share.
(*) i guess this is the issue you keep coming up against?
if so look at the poly object - its not a good general solution, but you can make it work for you.
Im not quite sure what how you are using the rest of orac, with this patch/polyend 2,
but it may be easier for you to create this as a module to solve the issue (a module could send out midi) rather than editing the underlying orac midi routing code.
this could then get quite specific to the ‘problem at hand’ i.e. be adapted for trigs/gates or whatever it is your doing
Thanks for this- it’s for the Korg NanoKontrol 2
I realize the hung notes would be an issue for more general use, but if I’m making a router module that’s specifically for modular, maybe it makes sense?
Is there an elegant way to make sure a note off gets sent after mute message is sent (i.e. after the spigot is closed)?
Specifically I’m just trying to make the mute buttons on the NanoKontrol work for various chains in orac, in the particular case of sending notes/gates to eurorack.