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!

1131416181973

Comments

  • The user and all related content has been deleted.
  • wimwim
    edited May 2019

    @TheOriginalPaulB said:
    How about being able to hide/reveal controls using a dropdown list? That way you could release a super template with overlapping controls all over the shop and users could just activate the ones that they want to use in the positions that suit them.

    Midi Designer Pro 2. I’m not convinced Mozaic needs to go into that territory. It’s already covered.

  • edited May 2019
    The user and all related content has been deleted.
  • wimwim
    edited May 2019

    There’s more flexibility than it might appear at first. For instance, there’s nothing to stop you from changing the function of knobs by toggling pads on or off, or the shift button, or other knobs. With some creativity, you can have more controls available in a single instance than you could possibly need.

  • edited May 2019
    The user and all related content has been deleted.
  • I would like to try to make a script that when triggered would automate a pitch bend from minimum (or maximum) to zero.

    I’d like to make a macro that had different durations so that I could quickly and easily test out ¼. ½, whole bar durations, etc and be triggered from a tap of a pad (which in turn could be triggered from a sequencer). Each pad would trigger a pitch bend over a different duration.

    Before I dive in (I need to purchase Mozaic first!) am I right in assuming this would be easily doable?

    I was trying to achieve the same thing with programming a pitch rise in a synth patch but doing it with pitch bend would be far more flexible and make it easy to audition/tweak sounds including using different auv3 plug ins to get it perfect and also perfectly in time.

    I don’t have a daw that I can just draw in pitch bend on my phone and thought this would be a fun experiment and intro into Mozaic too (and further my descent into iOS modular sequencing). I am guessing that this is exactly the kind of thing Mozaic is good at?

  • @wim said:

    @TheOriginalPaulB said:
    How about being able to hide/reveal controls using a dropdown list? That way you could release a super template with overlapping controls all over the shop and users could just activate the ones that they want to use in the positions that suit them.

    Midi Designer Pro 2. I’m not convinced Mozaic needs to go into that territory. It’s already covered.

    I don't like MDP2 at all and it's not an AU, I just don't use it :)

    For me Mozaic would get 5x more use if the gui was customizable. Multiple instances are a workaround yes but not good for workflow, it gets more confusing.

  • wimwim
    edited May 2019

    @Trueyorky said:
    @wim Not only are your creations useful but I learn so much by studying your coding. Top stuff 🙂

    Thanks. I don’t really know what I’m doing, but I keep futzing around until I figure things out. I’m probably not the best person to learn from. :D

    That last script was cool though. It took me less than 30 minutes and I still had time left over to feed the cat and eat a grilled cheese sandwich.

    Next up is a midi triggered envelope controller. I’ll admit though, it’s twisting my poor noggin up like a pretzel so far.

  • @EyeOhEss said:

    @wim said:

    @TheOriginalPaulB said:
    How about being able to hide/reveal controls using a dropdown list? That way you could release a super template with overlapping controls all over the shop and users could just activate the ones that they want to use in the positions that suit them.

    Midi Designer Pro 2. I’m not convinced Mozaic needs to go into that territory. It’s already covered.

    Does midi designer pro 2 offer same kind of ‘under the hood’ scripting etc as Mozaic? I always assumed it was just a ‘build your own midi controller environment’ thing?

    MDP2 does have StreamByter built in as a IAP. I know that but I never dived in that deeply with it.

  • Even something simple like layout blocks would be great.
    Eg defining blocks in rows. 10 rows in total. And you can define say 4 rows of knobs (8 knobs), 4 rows of buttons (8 buttons), 1 x/y (takes 2 rows).
    With fixed slightly changed size. + blank

  • The user and all related content has been deleted.
  • @EyeOhEss said:
    Who wants to have to route and flick between 3 x AU/windows when something could live entirely inside of one AU?

    Remember that in AUM you can open multiple Mozaic instances with the press of a single button (if you midi map the same note/CC to open these).

    Not saying that more UI flexibility wouldn't be great, but it's often so easy to ask for slightly improved workflows and equally easy to not realize the amount of work needed to get there (and maintain it!).

  • The user and all related content has been deleted.
  • @brambos is there a way to access the current scale as an enum, e.g. using a knob to control the scale, I think you can pass in an integer value to PresetScale, unless my ears are lying to me! but then to label the knob can we get the text name back from the int somehow?

  • @wim Thanks for CC Morpher script, how do I change/tweak a snapshot once I save it? Clicking on a snapshot clears it, so I'm not sure how to make fine adjustments after I've saved it.

  • @r1ch said:
    @brambos is there a way to access the current scale as an enum, e.g. using a knob to control the scale, I think you can pass in an integer value to PresetScale, unless my ears are lying to me! but then to label the knob can we get the text name back from the int somehow?

    Interesting thought (same could apply for rootnote). Shouldn't be really hard to do, but I'll need to see how to expose the functionality in an elegant way. I'm putting it on the list of nice-to-haves which I'm looking into after I have user defined procedures implemented.

  • are there any videos explaining this app? it sounds cool, but the coding aspect is scaring me away. my coding is very limited

  • I really want the pads to have labels. If I have to memorize what each of 16 pads does, I'm probably not going to use it much. If several Mozaic instances use similar layouts and things aren't labeled clearly that is not going to be fun

  • @eross said:
    are there any videos explaining this app? it sounds cool, but the coding aspect is scaring me away. my coding is very limited

    The programming guide talks you through writing your first working scripts in a non-scary way. :D

    I'm not sure if a video could do it more efficiently (I am personally of the school that believes written words and drawn images are infinitely faster to process and search than videos). B)

  • edited May 2019

    @brambos said:

    @r1ch said:
    @brambos is there a way to access the current scale as an enum, e.g. using a knob to control the scale, I think you can pass in an integer value to PresetScale, unless my ears are lying to me! but then to label the knob can we get the text name back from the int somehow?

    Interesting thought (same could apply for rootnote). Shouldn't be really hard to do, but I'll need to see how to expose the functionality in an elegant way. I'm putting it on the list of nice-to-haves which I'm looking into after I have user defined procedures implemented.

    @brambos said:

    @r1ch said:
    @brambos is there a way to access the current scale as an enum, e.g. using a knob to control the scale, I think you can pass in an integer value to PresetScale, unless my ears are lying to me! but then to label the knob can we get the text name back from the int somehow?

    Interesting thought (same could apply for rootnote). Shouldn't be really hard to do, but I'll need to see how to expose the functionality in an elegant way. I'm putting it on the list of nice-to-haves which I'm looking into after I have user defined procedures implemented.

    I think it would be much more useful (more generic) to have some sort of ”string array” construct:

    CreateStringArray rootNotes, [{C},{C#},.....]

    then you can access the indivual strings using for example
    rootNotes[1]

    I’ve often ended up polluting the code with numerous if statements when setting knob labels, which would easily be avoided with such an approach. One doesn’t exclude the other of course but accessing current scale/root as a string only solves one problem amongst many of a similar kind.

  • @brambos: I think your instinct to keep Mozaic streamlined is a good one.

    One thing to consider is a separate AU that is just a GUI toolkit with limited MIDI smarts. Just dumb knobs, switches and what-not that send/receive MIDI. Could be handy for puppet-stringing Mozaic or any MIDI processor. Sort of a Mozaic companion.

    MDP is powerful but its design tools are needlessly cumbersome to use. While it has a lot of power. 9 times out of 10, I just want to create a couple of rows of knobs or buttons that just send s midi value. And it is a nightmare to arrange them and move them. I don't need fancy graphics or layout switching.

  • @NoonienS said:

    @brambos said:

    @r1ch said:
    @brambos is there a way to access the current scale as an enum, e.g. using a knob to control the scale, I think you can pass in an integer value to PresetScale, unless my ears are lying to me! but then to label the knob can we get the text name back from the int somehow?

    Interesting thought (same could apply for rootnote). Shouldn't be really hard to do, but I'll need to see how to expose the functionality in an elegant way. I'm putting it on the list of nice-to-haves which I'm looking into after I have user defined procedures implemented.

    @brambos said:

    @r1ch said:
    @brambos is there a way to access the current scale as an enum, e.g. using a knob to control the scale, I think you can pass in an integer value to PresetScale, unless my ears are lying to me! but then to label the knob can we get the text name back from the int somehow?

    Interesting thought (same could apply for rootnote). Shouldn't be really hard to do, but I'll need to see how to expose the functionality in an elegant way. I'm putting it on the list of nice-to-haves which I'm looking into after I have user defined procedures implemented.

    I think it would be much more useful (more generic) to have some sort of ”string array” construct:

    CreateStringArray rootNotes, [{C},{C#},.....]

    then you can access the indivual strings using for example
    rootNotes[1]

    I’ve often ended up polluting the code with numerous if statements when setting knob labels, which would easily be avoided with such an approach. One doesn’t exclude the other of course but accessing current scale/root as a string only solves one problem amongst many of a similar kind.

    True, but I don't want to introduce string variables. Their use is extremely limited in Mozaic, and they would require lots and lots of manipulation functions to be added. Frankly I don't think their use case is strong enough to be worth it.

    So, I'm more thinking in the direction of letting you insert such constants in the Log/Label functions directly without needing to create a string variable for them first. This is on the list :)

  • How about giving people the ability to create a static array of strings.

    That what you could do:
    a[0] = "C"
    a[1] = "C#"

    and you'd have an efficient way to convert numbers to human readable strings, without having to worry about string manipulation functions.

    Incidentally I seem to have run into a bug with Nanostudio. I'm trying to pin it down further (and prove to myself it wasn't user error), but I ported a Streambyter script to Mozaic and it doesn't seem to work. I'm wondering if it's because I'm running multiple instances of the same script maybe? Currently my script works when there's just one of them, but as soon as I add multiple scripts things go to hell.

  • @brambos said:

    @NoonienS said:

    @brambos said:

    @r1ch said:
    @brambos is there a way to access the current scale as an enum, e.g. using a knob to control the scale, I think you can pass in an integer value to PresetScale, unless my ears are lying to me! but then to label the knob can we get the text name back from the int somehow?

    Interesting thought (same could apply for rootnote). Shouldn't be really hard to do, but I'll need to see how to expose the functionality in an elegant way. I'm putting it on the list of nice-to-haves which I'm looking into after I have user defined procedures implemented.

    @brambos said:

    @r1ch said:
    @brambos is there a way to access the current scale as an enum, e.g. using a knob to control the scale, I think you can pass in an integer value to PresetScale, unless my ears are lying to me! but then to label the knob can we get the text name back from the int somehow?

    Interesting thought (same could apply for rootnote). Shouldn't be really hard to do, but I'll need to see how to expose the functionality in an elegant way. I'm putting it on the list of nice-to-haves which I'm looking into after I have user defined procedures implemented.

    I think it would be much more useful (more generic) to have some sort of ”string array” construct:

    CreateStringArray rootNotes, [{C},{C#},.....]

    then you can access the indivual strings using for example
    rootNotes[1]

    I’ve often ended up polluting the code with numerous if statements when setting knob labels, which would easily be avoided with such an approach. One doesn’t exclude the other of course but accessing current scale/root as a string only solves one problem amongst many of a similar kind.

    True, but I don't want to introduce string variables. Their use is extremely limited in Mozaic, and they would require lots and lots of manipulation functions to be added. Frankly I don't think their use case is strong enough to be worth it.

    So, I'm more thinking in the direction of letting you insert such constants in the Log/Label functions directly without needing to create a string variable for them first. This is on the list :)

    My proposal was not about string variables (although they could be useful as well). The arrays I described in my post could be constants. I think it would be better to initialize them once, then use them in Log/Label functions (any number of times if so desired) as opposed to list all the strings within the functions. Much cleaner in my mind, and would allow these arrays to be reused.

  • @cian said:
    Incidentally I seem to have run into a bug with Nanostudio. I'm trying to pin it down further (and prove to myself it wasn't user error), but I ported a Streambyter script to Mozaic and it doesn't seem to work. I'm wondering if it's because I'm running multiple instances of the same script maybe? Currently my script works when there's just one of them, but as soon as I add multiple scripts things go to hell.

    Multi-instance should work without problems. Does it only happen in Nanostudio? Let me know if there is something I need to look into.

  • @brambos said:

    @cian said:
    Incidentally I seem to have run into a bug with Nanostudio. I'm trying to pin it down further (and prove to myself it wasn't user error), but I ported a Streambyter script to Mozaic and it doesn't seem to work. I'm wondering if it's because I'm running multiple instances of the same script maybe? Currently my script works when there's just one of them, but as soon as I add multiple scripts things go to hell.

    Multi-instance should work without problems. Does it only happen in Nanostudio? Let me know if there is something I need to look into.

    I will. Just need a bit of time to pin down that it is an error in Mozaic rather than my code, and that Nanostudio is the problem.

  • wimwim
    edited May 2019

    @nondes said:
    @wim Thanks for CC Morpher script, how do I change/tweak a snapshot once I save it? Clicking on a snapshot clears it, so I'm not sure how to make fine adjustments after I've saved it.

    Right now, you can just sweep to the far outside corner of of the XY pad for the snapshot you want to tweak, which is the same as recalling the snapshot. Then make your tweaks and clear/save again.

    It’s not ideal, and I have plans to improve the recall and save part. But I’m not sure when the competing new ideas in my head will leave me alone long enough to let me return return to it.

  • @cian said:
    How about giving people the ability to create a static array of strings.

    That what you could do:
    a[0] = "C"
    a[1] = "C#"

    and you'd have an efficient way to convert numbers to human readable strings, without having to worry about string manipulation functions.

    I like that idea.

  • https://appsliced.co/app?n=circuitry-15798&l=index

    For those who aren’t exactly math wizzes: Circuitry is an educational app/game that’s free today that’ll help you brush up on logic gates/boolean algebra/digital circuits , obviously very useful skills for Mozaic/SB scripting or modular synthesis.

  • @ZenEagle said:
    https://appsliced.co/app?n=circuitry-15798&l=index

    For those who aren’t exactly math wizzes: Circuitry is an educational app/game that’s free today that’ll help you brush up on logic gates/boolean algebra/digital circuits , obviously very useful skills for Mozaic/SB scripting or modular synthesis.

    Nice. I’d pay for this but I can’t even find it on the UK App Store.

Sign In or Register to comment.