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 Store

Audiobus is the app that makes the rest of your setup better.

MOZAIC - Create your own AU MIDI plugins - OUT NOW!

17879818384

Comments

  • @TheOriginalPaulB said:
    You could always use MIDI Designer Pro to make your own layouts and fire the CC control values at a Mozaic Script running in the background. That’s if you still need Mozaic once you’ve done the MIDI Designer Pro stuff.

    It's not AU though. Plus it just eliminates the potential all in one aspect of Mozaic.

    @brambos said:
    I would agree with your observation that more layouts or a way to roll your own would be expected. However, the prefab-GUIs are merely a secondary feature of the app. Its main purpose is to create highly specific or personalised MIDI handling utilities, and the prefab UIs are just there to allow quick and easy parameter settings for these scripts. :)

    A few more combos would be nice, and would expand the usefulness of the app greatly.

    Combo suggestions:
    -8 pads, with 2 X/Y controllers
    -8 pads, with 8 sliders (or knobs)
    -4 pads, with 3 X/Y controllers
    -4 X/Y controllers
    -2 X/Y controllers, with 8 sliders (or knobs)

    Even just these 5 additional ones would add a lot. :)

  • edited February 15

    @Dunamis said:

    @TheOriginalPaulB said:
    You could always use MIDI Designer Pro to make your own layouts and fire the CC control values at a Mozaic Script running in the background. That’s if you still need Mozaic once you’ve done the MIDI Designer Pro stuff.

    It's not AU though. Plus it just eliminates the potential all in one aspect of Mozaic.

    @brambos said:
    I would agree with your observation that more layouts or a way to roll your own would be expected. However, the prefab-GUIs are merely a secondary feature of the app. Its main purpose is to create highly specific or personalised MIDI handling utilities, and the prefab UIs are just there to allow quick and easy parameter settings for these scripts. :)

    A few more combos would be nice, and would expand the usefulness of the app greatly.

    Combo suggestions:
    -8 pads, with 2 X/Y controllers
    -8 pads, with 8 sliders (or knobs)
    -4 pads, with 3 X/Y controllers
    -4 X/Y controllers
    -2 X/Y controllers, with 8 sliders (or knobs)

    Even just these 5 additional ones would add a lot. :)

    In addition to layouts ideas. I found the panels and logos taking important real estate from screen when using few Mozaic instances. If they could be joined like a puzzle or minimize then there would probably be less clutter on my Aum jams.

  • A question for those of you who have delved in to optimizing Mozaic code for time critical applications.

    I have noticed that running in AUM and Audiobus, I am seeing jitter on the firing of the OnNewBar event with new bars being off by varying amounts from -4 ms to +4 ms from the expected duration.

    In a lot of applications this would make no difference, but I am using it to puppet string recorders and the result is discontinuities that I am trying to avoid.

    In Auria Pro, there is no jitter at all (though the duration of a bar is a tad less than predicted.

    Anyway, I am wondering if others have run into this. I wrote a minimal test program to make sure it wasn't an artifact of the coding in a more complex program where I first noticed the anomalies.

    @brambos : any thoughts

  • edited February 21

    @McD said:

    I think loading Moziac into Drambo might offer some interesting possibilities worth creating a tutorial for... probably a small audience but still a motivated one.

    Yes, love to see a tutorial or an example of Moziac script that shows how to send cc back to an external MIDI controller. If such video or script already exists, please post a link.

    TIA

  • @cozido said:

    @McD said:

    I think loading Moziac into Drambo might offer some interesting possibilities worth creating a tutorial for... probably a small audience but still a motivated one.

    Yes, love to see a tutorial or an example of Moziac script that shows how to send cc back to an external MIDI controller. If such video or script already exists, please post a link.

    TIA

    That’s very vague. I wouldn’t know where to begin.

  • edited February 21

    I think there’s a script for turning on/off the LEDs on the LaunchPad/Key, but a tutorial showing how to adapt it for other controllers such as the Behringer BCR2000 (LED rings), Akai APC40, etc. would be great. Another example might be how to toggle the LEDs, so only one stays lite among a group of 4 or 8 pads or whatever - to mimic what is shown on Drambo’s display.

  • @espiegel123 In my timing tests, Mozaic/AUM proved pretty stable. I had been reporting timing problems for the initial versions of Mozaic, but Bram fixed these. If you want to, you can pm me the source(s) and i‘ll take a look. Maybe things running in the other events take too long and screw up the OnNewBar timing.

    Also other stuff running in the host or in the backsground could screw up the timing. To help with that, more info is needed.

  • @_ki said:
    @espiegel123 In my timing tests, Mozaic/AUM proved pretty stable. I had been reporting timing problems for the initial versions of Mozaic, but Bram fixed these. If you want to, you can pm me the source(s) and i‘ll take a look. Maybe things running in the other events take too long and screw up the OnNewBar timing.

    Also other stuff running in the host or in the backsground could screw up the timing. To help with that, more info is needed.

    I will pm you my test script. I initially assumed that I was seeing something related to inefficient coding in my part...which is when I built a test script that had nothing complicated and simply records the time between sets of bars. And to make sure that other plugins weren’t complicating, I ran it by itself. There could be an error in my part, I will be curious what you find.

  • wimwim
    edited February 21

    @cozido said:
    I think there’s a script for turning on/off the LEDs on the LaunchPad/Key, but a tutorial showing how to adapt it for other controllers such as the Behringer BCR2000 (LED rings), Akai APC40, etc. would be great. Another example might be how to toggle the LEDs, so only one stays lite among a group of 4 or 8 pads or whatever - to mimic what is shown on Drambo’s display.

    That’s a tall order. Every controller is very different in significant ways. Also, Drambo doesn’t just send out midi showing the state of its controls, so even doing that for just one controller would involve quite a script and a complicated Drambo setup as well. I’m sorry to say it, but I don’t think a tutorial such as that is feasible.

  • edited February 21

    I see, so the issue basically lies in the fact that Drambo doesn't send out the state of its controls, but I thought there might be a way to work around it... oh well.

    Thanks!

  • wimwim
    edited February 21

    @cozido said:
    I see, I thought I ask anyway...
    Thanks!

    Yep! Never hurts to ask. Many of the best scripts put there have come from ideas like that. Some things that seem like they should be easy are hard, and some that seem hard turn out to be easy. You never know until you ask.

  • edited February 21

    Sorry I edited the post while you were responding... Anyway, the script shown here simply sends a MIDI cc to the controller for visual feedback, right?

  • @cozido said:
    Sorry I edited the post while you were responding... Anyway, the script shown here simply sends a MIDI cc to the controller for visual feedback, right?

    Yes. It's specific to the Launchpad Mini MK3. There's a more advanced (and debugged) version here: https://www.dropbox.com/s/bi4obn222y359yl/LaunchKey MK3 Utility v1.0.mozaic?dl=0

    Notice how the commands needed to light up pads are specific to that model (and only one mode of that model). I tried to make the script as easy as possible to modify for other controllers. But some controllers respond to different messages altogether, so I don't know of any way to explain in a generic way how to adapt to other controllers.

    One approach to the problem of apps not sending out their control state to feed back to controllers is to use the script itself to keep track of where things should be. For instance, if a rotary encoder with a LED ring is sending out incremental values, as long as the controller, Drambo, and the script start at the same value, the script can keep track of where everything is. In theory, this can kind-of work, but as soon as you change something directly in Drambo it all goes off the rails.

    This is true for all but a few apps. Most don't send out MIDI indicating their control positions. Animoog does, and others that I forget, but they're the minority. So, unfortunately, two-way coordination is difficult, and how to manage it is specific to both the app and the hardware.

    I know ... it just seems like something that should be so easy. It's unfortunate. :|

  • edited February 23

    @wim Thanks for the detailed reply, I was just trying to learn the most basic functions, so the short example that you gave was a good start. However, I could not get an output on the MIDI monitor app much less the controller - I could only see the MIDI notes coming in when I pressed the buttons on the controller, but that's it.

    Here is the test setup:

    • CNTRL-R controller, MIDI channel 1, buttons sending MIDI notes 0-15
    • Mozaic hosted in AUM running your script, with some changes to the MIDI channel and the notes
    • MIDI Monitor in AUM watching both CNTRL-R and Mozaic outputs

    Here are the changes made to your script:
    oncolor[0] = [30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]
    offcolor[0] = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
    colorchannel[0] = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
    if MIDIChannel = 0 and MIDINote >= 0 and MIDINote <= 15

    Did I mess something up?

  • @cozido said:
    @wim Thanks for the detailed reply, I was just trying to learn the most basic functions, so the short example that you gave was a good start. However, I could not get an output on the MIDI monitor app much less the controller - I could only see the MIDI notes coming in when I pressed the buttons on the controller, but that's it.

    Here is the test setup:

    • CNTRL-R controller, MIDI channel 1, buttons sending MIDI notes 0-15
    • Mozaic hosted in AUM running your script, with some changes to the MIDI channel and the notes
    • MIDI Monitor in AUM watching both CNTRL-R and Mozaic outputs

    Here are the changes made to your script:
    oncolor[0] = [30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]
    offcolor[0] = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
    colorchannel[0] = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
    if MIDIChannel = 0 and MIDINote >= 0 and MIDINote <= 15

    Did I mess something up?

    It might be helpful if you posted a picture of the MIDI Routing matrix in AUM to make sure you have everything routed correctly

  • Here you go:

  • With Mozaic (hosted in AUM) I can use AUM’s Midi Control to map a knob on a controller to update a knob in Mozaic.

    Is there any way to achieve the same inside the @OnMidiCC handler instead of using Midi Control?

    ie: Inside @OnMidiCC I can use SetKnobValue but this doesnt trigger @OnKnobChange.

    @McD said:

    @SoundForMore said:
    I agree, happy to do a tutorial if required.

    @Brambos made the decision to allow Moziac to run as a standalone for "file editing" purposes but it doesn't send any MIDI out or even run the scripts created. It must be loaded into a Host for MIDI configuration to external apps and hardware.

    I think loading Moziac into Drambo might offer some interesting possibilities worth creating a tutorial for... probably a small audience but still a motivated one.

    LK in Drambo also seems like an interesting combination to consider since it might create some interoperability with Ableton and Drambo for Live performances.

    Now that Apple's MacBook's are going to support some level of Mac and IOS interoperability
    we might see some interesting workflows coming out of those possibilities too. The "out of the box experience" videos are showing up on YouTube and the performance is amazing
    or a laptop without a fan. 2021 will make me buy some new hardware, for sure and it probably won't be an iPad. I just need someone to go first and test some of my favorite apps
    for me. I know the developer gets to decide if an app should indicate support for the MacBook user. But for a brief moment in time... there are ways to import IOS apps from
    backups. By the time I'm in, I expect that will be stopped.

    @McD I tried loading some Mozaic scripts I made into Drambo. A couple of things seemed to hamper usage.
    1. Any midi sent into Mozaic is received in the AU as midi on CH1 regardless of channel sent.
    2. No ability (yet) to route midi from (Mozaic on) one track to another (as far as I can tell)

    I am having much greater success hosting Mozaic and Drambo in AUM, where I'm using Mozaic for midi control of instruments, note generation, automation and Drambo for instruments and effects.

    More on the lost midi channel here:
    https://forum.beepstreet.com/discussion/1166/midi-channel-lost-when-passing-midi-from-one-au-midi-processor-to-another-same-track#latest

  • @soundtemple said:
    With Mozaic (hosted in AUM) I can use AUM’s Midi Control to map a knob on a controller to update a knob in Mozaic.

    Is there any way to achieve the same inside the @OnMidiCC handler instead of using Midi Control?

    ie: Inside @OnMidiCC I can use SetKnobValue but this doesnt trigger @OnKnobChange.

    Nope. @OnKnobChange is only triggered by physically moving the knob with your finger. However, you can always update a knob position using @SetKnobPosition from within @OnMidiCC. For instance:

    @OnMidiCC
      if MIDIByte2 = 20
        SetKnobValue 0,MIDIByte3
      endif
    @End
    

    @McD I tried loading some Mozaic scripts I made into Drambo. A couple of things seemed to hamper usage.
    1. Any midi sent into Mozaic is received in the AU as midi on CH1 regardless of channel sent.

    This is a current limitation of Drambo. It forces all output from MIDI AUs to midi channel 1. I think that one is going to be addressed eventually.

    1. No ability (yet) to route midi from (Mozaic on) one track to another (as far as I can tell)

    You should be able to do this. Go to the thing you want to control and tap the midi input, then navigate back to the mozaic track and tap it's midi output icon.

    I am having much greater success hosting Mozaic and Drambo in AUM, where I'm using Mozaic for midi control of instruments, note generation, automation and Drambo for instruments and effects.

    Yes, this is a better way to go for now.

  • edited February 24

    @wim oh right will try - didnt even think about that! Thanks for the tip.
    Bug 1 is a limitation for me at present so sticking with hosting in AUM for the moment

  • wimwim
    edited February 25

    @soundtemple said:
    @wim oh right will try - didnt even think about that! Thanks for the tip.
    Bug 1 is a limitation for me at present so sticking with hosting in AUM for the moment

    Just to be clear, that's a Drambo bug, not Mozaic. I think you know that but making it's clear for others.

    Actually it's a Drambo design limitation, not really a bug. ;)

  • I think there was a script for kind of “auto divisi “ midi notes. I.e. for 4 channels the incoming chord will be spread between 4 different MIDI channels just like the poly to n-channel scripts, but in this case, with one midi note input it will send the same note to the 4 output channels simultaneously , with 2 notes input will send one note to 2 channels and the other note to the other two output channels and so on... Ithink it’s the same kind of note assignment used in paraphonic synths.

    Can’t find it, maybe was just a dream?? Any clue?? Thanks!!!

  • @Synthi said:
    I think there was a script for kind of “auto divisi “ midi notes. I.e. for 4 channels the incoming chord will be spread between 4 different MIDI channels just like the poly to n-channel scripts, but in this case, with one midi note input it will send the same note to the 4 output channels simultaneously , with 2 notes input will send one note to 2 channels and the other note to the other two output channels and so on... Ithink it’s the same kind of note assignment used in paraphonic synths.

    Can’t find it, maybe was just a dream?? Any clue?? Thanks!!!

    There's an app called Polythemus AU that does this.

    One of these scripts might be the one you were looking for:

  • I created a Mozaic script that kind of turns Loopy into a looper that endlessly cycles through a series of loops kind of like a flight recorder and can also be used as a take recorder. It could probably be repurposed to do the same with AU loops -- I'd like to adapt it to Koala sampler -- but right now Koala is a couple of tweaks away from being able to do this.

    I posted the patch over on patchstorage. More info at:
    https://forum.audiob.us/discussion/comment/919302/#Comment_919302

    Anyway, mentioning it here in case anyone wants to adapt it to other loopers.

  • @wim said:

    @Synthi said:
    I think there was a script for kind of “auto divisi “ midi notes. I.e. for 4 channels the incoming chord will be spread between 4 different MIDI channels just like the poly to n-channel scripts, but in this case, with one midi note input it will send the same note to the 4 output channels simultaneously , with 2 notes input will send one note to 2 channels and the other note to the other two output channels and so on... Ithink it’s the same kind of note assignment used in paraphonic synths.

    Can’t find it, maybe was just a dream?? Any clue?? Thanks!!!

    There's an app called Polythemus AU that does this.

    One of these scripts might be the one you were looking for:

    Thanks @wim, will try the scripts later at home, but I think neither will do what I ask for.... polythemus AU can´t AFAIK: what I look for is bit different because if you select 4 notes (4 midi channels, 4 different synths or sounds) all 4 will be playing always regardles of the number of input notes... I you play one note then the 4 synths will play in unison... If 2 notes, then two play one note in unison and the other two the other note in unison. If you play 3 notes then one synth for one voice, other synth for the other voice and two other synths in unison for the third voice, if you play four, then will be as the "usual" voice allocation.
    This is really usuefull for playing lot of styles, but a good example will be a string quartet played from the keyboard.
    Coulbe an add-on for the current scripts (if don´t have the option, still need to try it at home!) as these kontakt script: https://vi-control.net/community/threads/multi-script-tools-free-divisi-scripts.59985/

  • @Synthi said:
    This is really usuefull for playing lot of styles, but a good example will be a string quartet played from the keyboard.
    Coulbe an add-on for the current scripts (if don´t have the option, still need to try it at home!) as these kontakt script: https://vi-control.net/community/threads/multi-script-tools-free-divisi-scripts.59985/

    If you are more interested in something similar to VoiceSplitter from the page you have referenced here, you may want to check out https://patchstorage.com/channel-splitter/ which maps to different channels just by filtering on (possibly overlapping) pitch and/or volume.

  • @Tim6502 said:

    @Synthi said:
    This is really usuefull for playing lot of styles, but a good example will be a string quartet played from the keyboard.
    Coulbe an add-on for the current scripts (if don´t have the option, still need to try it at home!) as these kontakt script: https://vi-control.net/community/threads/multi-script-tools-free-divisi-scripts.59985/

    If you are more interested in something similar to VoiceSplitter from the page you have referenced here, you may want to check out https://patchstorage.com/channel-splitter/ which maps to different channels just by filtering on (possibly overlapping) pitch and/or volume.

    Thanks @Tim6502 , I actually use you channel splitter script too mainly for triggering fifferent drums with velocities :)
    But I`m looking for something in the lines of the multi-divisi script

  • Can we get a ‘Transpose’ control added to this gem... It will come in so handy... (-/+12 semitones)..

    Thanks.

  • wimwim
    edited March 3

    @RajahP said:

    Can we get a ‘Transpose’ control added to this gem... It will come in so handy... (-/+12 semitones)..

    Thanks.

    Humm ... If I'm honest, I'm not crazy about the idea, but it wouldn't be too hard to add. I like the simplicity of the interface now, and AUM already has the ability built-in. I guess it could be useful for other hosts though.

    Trying to think how to fit that into the interface. I guess tapping SHIFT could take you to a view with more knobs?

  • @wim said:

    @RajahP said:

    Can we get a ‘Transpose’ control added to this gem... It will come in so handy... (-/+12 semitones)..

    Thanks.

    Humm ... If I'm honest, I'm not crazy about the idea, but it wouldn't be too hard to add. I like the simplicity of the interface now, and AUM already has the ability built-in. I guess it could be useful for other hosts though.

    Trying to think how to fit that into the interface. I guess tapping SHIFT could take you to a view with more knobs?

    Thanks .. it can be handy for recording.. A slider knob below the other knobs won’t cluster it..

    Thanks...

  • wimwim
    edited March 3

    @RajahP said:
    Thanks .. it can be handy for recording.. A slider knob below the other knobs won’t cluster it..

    That's not possible. The layouts in Mozaic are fixed. You can't add controls to them.

Sign In or Register to comment.