Audiobus: Use your music apps together.
What is Audiobus? — Audiobus is an award-winning music app for iPhone and iPad which lets you use your other music apps together. Chain effects on your favourite synth, run the output of apps or Audio Units into an app like GarageBand or Loopy, or select a different audio interface output for each app. Route MIDI between apps — drive a synth from a MIDI sequencer, or add an arpeggiator to your MIDI keyboard — or sync with your external MIDI gear. And control your entire setup from a MIDI controller.
Download on the App StoreAudiobus is the app that makes the rest of your setup better.
Comments
@dobbs said:
I don’t see in the Mononoke manual that the input notes are C-0, C#-0, etc.
The User Interface let’s you set a note per pad and the AUTOFILL button pops up a menu to select from a table of
Scales. (Chromatic, Major, Miinor, etc). For Orbas the Bass mode sends a C Major scale starting on C3. Lead sends
C Pentatonic Major starting on C3. Drums matches some Drum Machine standard… probably 808, not sure.
The Chords mode sends C, F and G chords with inversions. Could be interesting aimed at Mononoke.
This works:
Obra’s are pressure sensitive and will send Velocity in relation to pad hit.
It will send pitch bend for side to side motion.
It will send CC=1 (Mod Wheel) with a sidewards tilt of the device.
CC=2 with slide from center towards edge on a pad.
And some custom stuff for shake or tap.
Thanks for your input. I got it working now. Had to use midibyte1 instead of midicommand because else the notes were all in channel 1, which MPE doesn't use for notes
hehe I know, sounds weird at first, but try it out and you'll see![;) ;)](https://forum.audiob.us/resources/emoji/wink.png)
Yes. I had that wrong… MIDICommand just carries 128 for NOTE ON and 144 for NOTE OFF so the channel was getting defaulted to a ZERO which for programmers is MIDI Channel 1. With MPE, MIDIChannel 1 is ignored completely.
if you don't mind we could upload it to patchstorage too?
hehe i really learned something tonight, awesome stuff![:) :)](https://forum.audiob.us/resources/emoji/smile.png)
Love to see it up on Patchstorage
I will put it up on patchstorage to join the 2 other Orba scripts I hacked up last week.
I wish Mononoke did more with CC’s but it’s still pretty cool to create beautiful morphing pad sound while holding an Orba or better yet. Passing it to a non-musician to have the feeling of connecting touch to glorious sounds.
If anyone has clues about CC’s Mononoke might respond to… the miracle of MPE is the use of pitch bend to make notes glide under your keyboard control like the ROLI hardware or touch 2D keyboard apps. Does Mononoke react to those gestures? Orba doesn’t have that feature but a script might convert tilt to pitchbends and produce some truly worth downloading. Must experiment with GeoShred or KB-1 or Velocity Keyboard and see what happens.
Clues appreciated.
One more CC that mononoke directly reacts to is channel pressure/"area of contact of your finger with the orba pad", that will influence the shape LFO
hm, the pitch bend range that the orba sends is not very broad but even with the orba you can hear the pitch bend a little bit, or what do you mean?
Orba sends tilt as CC1 on channel 1, so we could just forward that to channels 2-9 and filter out the individual pitch bends that Orba sends for each pressed key, that way we get the pitch bend only from one source -> tilt is now global pitch bend?
could it kind of look like this?
edit: cleaned it up a bit
You can add the channel to the command to get the firstByte.
FirstByte = midiCommand + midiChannel
I added the keys of C minor as well. Some bass patches are in minor, but they should map correctly too now. And added a button to switch between normal pey pitch shift and pitch shift via tilt:
(sadly doesn't run properly yet)
@OnLoad
LabelPad 0, {TiltPitch OFF}
TiltPitch_enable = FALSE
@End
@OnPadDown
if LastPad = 0
if tiltpitch_enable = FALSE
Tiltpitch_enable = TRUE
LabelPad 0, {TiltPitch ON}
else
TiltPitch_enable = FALSE
LabelPad 0, {TiltPitch OFF}
endif
endif
@End
@OnMidiCC
if TiltPitch_enable = TRUE
if LastMidiChannel = 1 and MidiByte2 = 1
counterx = 1
for counterx = 1 to 8
SendMidiCC (MidiByte1 + counterx), MidiByte2, MidiByte3
endfor
elseif LastMidiChannel >=2 AND LastMidiChannel <=9 AND Midibyte2 = 1
\block the pressure CC messages from the keys
else
SendMidiThru
endif
else
SendMidiThru
endif
@end
@OnMIDInote
// I’ll use the Bass Mode which sends C Major Scale (48,50,52,53,55,57,59,60)
if MIDIByte1
If MIDIByte2 = 48
SendMIDIOut MIDIByte1, 60, MIDIByte3
Endif
If MIDIByte2 = 50
SendMIDIOut MIDIByte1, 61, MIDIByte3
Endif
If MIDIByte2 = 51
SendMIDIOut MIDIByte1, 62, MIDIByte3
Endif
If MIDIByte2 = 52
SendMIDIOut MIDIByte1, 62, MIDIByte3
Endif
If MIDIByte2 = 53
SendMIDIOut MIDIByte1, 63, MIDIByte3
Endif
If MIDIByte2 = 55
SendMIDIOut MIDIByte1, 64, MIDIByte3
Endif
If MIDIByte2 = 56
SendMIDIOut MIDIByte1, 65, MIDIByte3
Endif
If MIDIByte2 = 57
SendMIDIOut MIDIByte1, 65, MIDIByte3
Endif
If MIDIByte2 = 58
SendMIDIOut MIDIByte1, 66, MIDIByte3
Endif
If MIDIByte2 = 59
SendMIDIOut MIDIByte1, 66, MIDIByte3
Endif
If MIDIByte2 = 60
SendMIDIOut MIDIByte1, 67, MIDIByte3
Endif
@end
Fwiw, channel
Pressure and aftertouch are not CC’s. They are each their own type of message and distinct from CCs.
oh no, thats good to know...![:D :D](https://forum.audiob.us/resources/emoji/lol.png)
Do you know what the right @ would be then?
so to catch the channel pressure messages, would I have to use
@OnMidiInput
if MIDICommand = 0xD0
.....
(and 0xE0 for pitch bend)
(channel pressure and (poly) aftertouch are the same thing, arn't they?!)
It’s hard to use MIDI learn with Orba because it blasts out a lot of data all at once so a script feature to block all midi and then send relevant MIDI to register MIDI learn targets would be helpful for targets that expect you to map button to CC’s. Some work on CC2 and pressure which I suspect could be after touch in some contexts. I wish @Brambos documented a bit more about his midi implementation. I don’t see any learn features.
I am in California and just starting my day.
Good Morning
It's already pitch black again here
I managed to bind the device tilt to the mononoke pitch shift. One problem with that is that the tilt angle is unidirectional and pitch shift is bidirectional...
Right now it covers the whole range. Next I'll add modes where neutral tilt means neutral pitch, and tilt is either pitch up or down, plus a sensitivity knob.
The Orba manual (same one for both 1 and 2) shows what MIDI comes out of the Orba’s:
https://cdn.shopify.com/s/files/1/0229/7157/files/Orba_2_Manual_v2.0.2.pdf
Need to see how the largest setting for Pitch Shift functions for “gliding” and if Mononoke responds:
I wonder how “Spin” and “Move” gestures are coded? I think I’ll need to hack the Orba “MIDI Filter” to see those outputs in the torrent of MIDI coming out of the device. Just expanding the OnMidiCC code block and logging based on CC number should do it for CC’s:
74 = Radiate (distance of touch from center) *this seems of get mapped to volume by @Brambos
112 = Spin
113 = Move the Orba
Tilt gives CC1/mod wheel values from 0 to 127, with 0 being flat on the ground, and 127 when turned vertical. If you turn it further, or even upside down, the value stays at 127
Spin gives values from 63 (rest) to 127 (turn fast) on CC112 (showing you the angular acceleration), but it cant discern if you rotate clockwise or not
Move gives values from 0 -to 127 corresponding to linear acceleration on CC113 but it's like slow movement is filtered out...
on CC2 you also get the move values but it's a little more sensitive. on CC113 you only see strong movement, here you also see slower movement. But slow movement is recognized by neither.
Pitch bend gives values of approx. +/-45. But I hardly get a reaction in Mononoke. But with the script I wrote to bind tilt to the pitch shift, you can pitch shift over the whole range.
The "MIDI check" app worked well to check this, it lets you filter out messages and channels.
Thanks for the leg work… I went chasing a free piano where the 2 zip files won’t uncompress.
ok I've finished something:
https://patchstorage.com/orbmonohelper/
You can use tilt to pitch bend either up, down or both ways, and you can set the pitch bend range with a knob
What an elegant solution to mapping the pitch bend using the X-Y gui for visual feedback.
I created an AUM Rig to help people set up and use the script. I have been told that downloading the AUM Project also gets you the script. Please let us know if that’s false. I would recommend saving the script after running it so you do have your local copy in the Mozaic file storage.
https://patchstorage.com/orba-mononoke-helper-script-demo/
Here’s a video of the rig in action. I also mapped the Mononoke track volumes to the Orba Tilt for extra weirdness.
The only MIDI input comes from an Orba 1 (2 will work the same in MPE mode).
what I'm still wondering is why pitch bend barely works when using the Orba's native pitch bend. and pressure is supposed to change the shape LFO rate but that's also barely noticeable, I got it working nicely with one mononoke preset but couldn't really reproduce it. So maybe when I have time over the next days I'll add another knob to increase the influence of orba's pressure and pitch shift to noticeable amounts.
wow I wouldn't have thought tinkering around with mozaic is actually fun, and I learned a lot about MIDI this week![:D :D](https://forum.audiob.us/resources/emoji/lol.png)
I had a little crack at @Gavinski ‘s request last night, a simple thing that just maps the 16 pads to a range of pitch bend commands set by two knobs and then linked directly to the objeq pitch parameter in aum - it’s not 12tet by a long chalk but I might make it into two sets, one lower and one higher corresponding to the two rows of pads and stick it up on patchstorage as an aum preset…
https://patchstorage.com/gavspitchwonder/
Hmm, you mentioned 2 mozaic instances? When I open the project there's only the instance, the one with the pads split into two rows. But other than that, it works![:) :)](https://forum.audiob.us/resources/emoji/smile.png)
Yes, I just tried with Kupra's project, the script is in the AUM project. But if you want to keep it you have to save it manually in Mozaic.
Oh that’s weird, maybe I’ll put the scripts up separately, though I think the 2x8 is slightly more useful anyway… the 1x16 might be better if I add a parameter to translate the scale as a curve instead of linearly as it is now; would it likely be more musical if it scaled more like notes do maybe ? Or am I getting my physics a bit wrong, actually I think I might be 😅
I couldn’t get a lot out of it. The Orba control app has a setup screen to set Pitch Bend to 100%. Have you done that?
and pressure is supposed to change the shape LFO rate but that's also barely noticeable, I got it working nicely with one mononoke preset but couldn't really reproduce it. So maybe when I have time over the next days I'll add another knob to increase the influence of orba's pressure and pitch shift to noticeable amounts.
Oh wait, it's the 16 pad version, not the other one. By the way, what was gavinskys challenge? :P
should be exponential, no? every octave the frequency doubles. But when I plot the frequencies over an octave from C4-C5, the increase looks almost... linear-ish, since we're not starting at zero, so you're not that far off at the moment :P
But we don't know what the start and end values of the objeq pitch slider is, so I guess it's not really possible to do it perfect anyway
yes and I see that it sends the pitch bend values in the "MIDI check" app. But they range from -45 to +45, is that normal? that might be the problem.
With my tilt-shift script I send pitchbend values from 0-127 and that works fine, and 64 seems to be equal to "no pitch shift" but it covers the entire multiple octaves, that would make it way too sensitive for when we want to use the orba's native pitchbend...
Also I wonder how the Orba can send pitchbend=0, and it results in the same pitch as when I send a pitchbend of 64 via the script
edit: found a bug in the script, the orba's pitch shift messages never even made it through![:D :D](https://forum.audiob.us/resources/emoji/lol.png)
@dobbs In my experiments I mapped tilt to AUM volume and it was the best use of the most dramatic control coming from the Orba and my AUM synth rigs. It’s not the best MPE controller IMHO. By it’s a fine MIDI controller.
I didn’t do any experiments with the 2 optional MIDI settings: Single Channel and Channel per Part.
Channel per part might be good if someone likes to create Beats using the Drum+Bass+Chord+Lead combo that the device was designed to provide for mobile creativity.
Roli has a new keyboard that might be fun to play around with.
@dobbs this was it; yeah exponential sounds right, and yeah too, I can’t find any reference in the objeq manual to actual pitches. I’ll do a version of the 16 later with a curve control, and I’ll see if I can get the 2x8 up there as well, odd that they’re not both in the aum file though…
yeah that or for example filter frequency probably works really well in general
I think the limitation with single channel and channel per part is that with these settings you don't have any poly-aftertouch etc.![:D :D](https://forum.audiob.us/resources/emoji/lol.png)
but yeah using it as a little 4 track midi sequencer is something I'm also looking forward to
slightly different price point though :P did you buy one?
maybe it would also be nice to remove the reverb plugin etc. and eject the file from the file player because I guess no other user will have the same .wav available, and so when I open the AUM session, half the icons show a "missing" warning![;) ;)](https://forum.audiob.us/resources/emoji/wink.png)