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!

16061636566102

Comments

  • Posted in thread :-)

    @_ki said:
    @topaz Could you please describe in more detail what you are looking for in the request new Mozaic scripts thread ?

    I don't quite get what you mean with:

    The nine knobs used for transposition, and the last as a scale lock.
    Like a super xl midi harmonizer/stacker

    the 'CC Automatable Transposer' script applies the same transpositiopn to all incoming notes and then applies Mozaics scale function if a scale was selected. The lower knobs are used to select the CCs for automation.

    The script itself is quite 'dated', nowadays i would suggest to use the knobs AU parameter directly for automation.

  • Hi @brambos, quick question hopefully...

    Is there a performance penalty for calling a custom event from inside a native event such as OnTimer vs. just running the same code directly in the event?

    It seems like I may be getting worse performance during heavy operation when jumping out with a call to a custom event, but it could just be coincidence or my imagination.

  • @wim said:

    @Tamir_Raz_Mataz said:
    Something like the chromatic mode on Simple Scaler patch but not only for white keys:
    https://patchstorage.com/simple-scaler/

    What would be done about the fact that there aren't enough white keys to play all notes?

    ///It’s intended to be played on 8 chromatic keys of launchpad. There’s “white and black” unseperatble

    Drop the bottom and/or top of the note range?

    ///whichever way. Maybe assignable or just editable.

    What would be the "root" note that starts the scale?

    /// can it be selectable by a knob?

    Would the keys shift according to root note setting?

    /// could be.

    Maybe something like "middle C" (Note 48? Note 60?) is the root and then just count up and down until you run out of white keys?

    /// sounds like a plan :)

    I probably don't want to modify simple scaler since it's intended as a functional equivalent of another app that isn't expected to go AU, but I might think about it if some of that was clarified. It wouldn't be a major effort to add, I don't think.

    ////I appreciate your will. So maybe another patch that turns launchpad to white keys only

  • Apologies for not reading back through this read: does mozaic have some sort of charts/browsing by genre system for scripts people have made? Some place they’re uploaded. I think something like gadget does for tracks made within it would be amazing - you can just go in and search for mozaic patches or whatever most popular downloads genres it would be cool. Again really sorry if this is the case I’m only just thinking of using it for the first time and haven’t investigated dthe app at all yet

  • _ki_ki
    edited January 2020

    @wingwizard You find a categorized list of scripts in the wiki. It‘s over 115 entries reference to PatchStorage, where can sort the scripts by download count, likes or modification date (but not by category)

  • @wingwizard said:
    Apologies for not reading back through this read: does mozaic have some sort of charts/browsing by genre system for scripts people have made? Some place they’re uploaded. I think something like gadget does for tracks made within it would be amazing - you can just go in and search for mozaic patches or whatever most popular downloads genres it would be cool. Again really sorry if this is the case I’m only just thinking of using it for the first time and haven’t investigated dthe app at all yet

    Go patchstorage yourself :)

    https://patchstorage.com/platform/mozaic/

  • @wim said:
    Hi @brambos, quick question hopefully...

    Is there a performance penalty for calling a custom event from inside a native event such as OnTimer vs. just running the same code directly in the event?

    It seems like I may be getting worse performance during heavy operation when jumping out with a call to a custom event, but it could just be coincidence or my imagination.

    Hi @brambos, sorry to pester you ... any thoughts on this?

    I'm just consolidating a small bit of redundant code into a custom event. But it seems like when I do this it may be causing a performance hit over keeping the code right in the event. This is an OnTimer event with a really low timer interval. It seems like it could be running less efficiently when I call the custom event rather than keeping the code inline, but I'm not sure.

  • @wim said:

    @wim said:
    Hi @brambos, quick question hopefully...

    Is there a performance penalty for calling a custom event from inside a native event such as OnTimer vs. just running the same code directly in the event?

    It seems like I may be getting worse performance during heavy operation when jumping out with a call to a custom event, but it could just be coincidence or my imagination.

    Hi @brambos, sorry to pester you ... any thoughts on this?

    I'm just consolidating a small bit of redundant code into a custom event. But it seems like when I do this it may be causing a performance hit over keeping the code right in the event. This is an OnTimer event with a really low timer interval. It seems like it could be running less efficiently when I call the custom event rather than keeping the code inline, but I'm not sure.

    There is a tiny bit of extra overhead internally when calling a custom event, but I doubt you'd notice it. Having a really low timer-interval is more likely to be the real cause of the issue.

    In other words: there are more gains to be had in reducing the number of OnTimer calls (even slightly) than in avoiding custom events :)

  • @brambos said:

    @wim said:

    @wim said: B)
    Hi @brambos, quick question hopefully...

    Is there a performance penalty for calling a custom event from inside a native event such as OnTimer vs. just running the same code directly in the event?

    It seems like I may be getting worse performance during heavy operation when jumping out with a call to a custom event, but it could just be coincidence or my imagination.

    Hi @brambos, sorry to pester you ... any thoughts on this?

    I'm just consolidating a small bit of redundant code into a custom event. But it seems like when I do this it may be causing a performance hit over keeping the code right in the event. This is an OnTimer event with a really low timer interval. It seems like it could be running less efficiently when I call the custom event rather than keeping the code inline, but I'm not sure.

    There is a tiny bit of extra overhead internally when calling a custom event, but I doubt you'd notice it. Having a really low timer-interval is more likely to be the real cause of the issue.

    In other words: there are more gains to be had in reducing the number of OnTimer calls (even slightly) than in avoiding custom events :)

    Thanks! That's what I needed to know. I would like to reduce that number of calls, but timing is critical in this one. The net savings is less than a two dozen lines of code, so I'll just keep it inline.

    I haven't experimented with higher timer intervals. Maybe I can get away with it. We'll see. So far I'm amazed at what I seem to be able to get away with in a 1ms OnTimer event!

  • I wish there was a way I could "obfuscate" my scripts. Not to protect my ideas but to
    avoid the embarrassment of how I actually assemble stuff. I often write huge block of in-line commands and use awful variable names like a1, xyzzy, buzz16. I'm a hack and if it runs I keep adding lines. Come back in a month and I can tell what things do. So, hide my mess...
    like locking your bedroom to avoid anyone seeing your dirty clothes and empty pizza boxes from November.

    I read @_Ki's code and I just want to quit. But what's the fun it that?

  • @McD said:
    I wish there was a way I could "obfuscate" my scripts. Not to protect my ideas but to
    avoid the embarrassment of how I actually assemble stuff. I often write huge block of in-line commands and use awful variable names like a1, xyzzy, buzz16. I'm a hack and if it runs I keep adding lines. Come back in a month and I can tell what things do. So, hide my mess...
    like locking your bedroom to avoid anyone seeing your dirty clothes and empty pizza boxes from November.

    I read @_Ki's code and I just want to quit. But what's the fun it that?

    LoL. Yeh, there's a period of time at the end of a project, or sometimes in the middle when I think, "Oh crap, people are going to see this mess." It's good though because that causes me to think about writing better code. WWKD? :D

  • @wim @McD no offence to Bram but Mozaic EXCELS at that sort of hackery. Embrace it and try to go faster without caring.

    For example, when I started playing with Novation Launchpad I first wrote a cell diffing algorithm that would store the entire launchpad state in an array, figure out the diff between two states and just update those cells.. turns out that code was massive and SUCKED, it was so slow. What worked was just on the fly in passing update launchpad cells directly with sending the midi wherever the state changes. And the code was way shorter.

  • @wim said:
    LoL. Yeh, there's a period of time at the end of a project, or sometimes in the middle when I think, "Oh crap, people are going to see this mess." It's good though because that causes me to think about writing better code. WWKD? :D

    No fear... I have done polls and there are only handful od coders and they write their own code. I do study your code if I'm trying to write something similar like using the scales Functions or Labeling Knobs.

  • I'm actually very, very glad I started off this last project as if someone was watching over my shoulder though. Because it has turned into a huge program (by my standards) and would be completely off the rails by now if it wasn't organized.

    Leveraging custom events to encapsulate stuff you know is working is a beautiful thing. Once tucked away in a custom event holder, you're less likely to screw it up. And you can move the done bits down to the bottom of the code, or wherever it's out of the way. I typically move the event or two I'm actually working on to the top of the code, which makes focusing much easier.

  • @Tamir_Raz_Mataz said:

    @wim said:

    @Tamir_Raz_Mataz said:
    Something like the chromatic mode on Simple Scaler patch but not only for white keys:
    https://patchstorage.com/simple-scaler/

    What would be done about the fact that there aren't enough white keys to play all notes?


    ///It’s intended to be played on 8 chromatic keys of launchpad. There’s “white and black” unseperatble

    Drop the bottom and/or top of the note range?

    ///whichever way. Maybe assignable or just editable.

    What would be the "root" note that starts the scale?

    /// can it be selectable by a knob?

    Would the keys shift according to root note setting?

    /// could be.

    Maybe something like "middle C" (Note 48? Note 60?) is the root and then just count up and down until you run out of white keys?

    /// sounds like a plan :)

    I probably don't want to modify simple scaler since it's intended as a functional equivalent of another app that isn't expected to go AU, but I might think about it if some of that was clarified. It wouldn't be a major effort to add, I don't think.

    ////I appreciate your will. So maybe another patch that turns launchpad to white keys only

    Help me to understand the incoming notes. Can you explain to me what notes are coming in from the Launchpad and what you want them to be translated to? I thought I understood, but when I went to write some quick code, I realized I didn’t understand really.

  • I just updated the Pad Manager (Include) to v3.0 which now includes single/double/hold handling for the shift button additional to the pad handling.
    That why its name changed to Pad & Shift Manager (Include) . There are also new instructions on how to add this include to your own script and how to only use one (pads or shift) of its features.

    .

    And i published a Smart Tunings script for Mononoke that extends Mononokes expression possibilities by offering 4 user defined tunings that are updated using a smart change strategy:

  • McDMcD
    edited January 2020

    I think we need a "Mozaic Script Reviews" thread. There are too many to choose from and
    Time = Money.

    Conversely, "We Don’t Buy Things with Money, We Buy Them with Hours from our Life"

    I need to use my remaining time wisely. So, reviews will do 2 things:

    1. Get more Mozaic Users in the conversation.
    2. Give Mozaic Scripters feedback on their work.

    And Allow Users to Submit "Bug and Enhancement Requests".

    Forget that. That should be off limits. Scripts are free.
    Don't look a gift horse... ya-da, ya-da.

  • edited January 2020

    @wim said:

    @Tamir_Raz_Mataz said:

    @wim said:

    @Tamir_Raz_Mataz said:
    Something like the chromatic mode on Simple Scaler patch but not only for white keys:
    https://patchstorage.com/simple-scaler/

    What would be done about the fact that there aren't enough white keys to play all notes?


    ///It’s intended to be played on 8 chromatic keys of launchpad. There’s “white and black” unseperatble

    Drop the bottom and/or top of the note range?

    ///whichever way. Maybe assignable or just editable.

    What would be the "root" note that starts the scale?

    /// can it be selectable by a knob?

    Would the keys shift according to root note setting?

    /// could be.

    Maybe something like "middle C" (Note 48? Note 60?) is the root and then just count up and down until you run out of white keys?

    /// sounds like a plan :)

    I probably don't want to modify simple scaler since it's intended as a functional equivalent of another app that isn't expected to go AU, but I might think about it if some of that was clarified. It wouldn't be a major effort to add, I don't think.

    ////I appreciate your will. So maybe another patch that turns launchpad to white keys only

    Help me to understand the incoming notes. Can you explain to me what notes are coming in from the Launchpad and what you want them to be translated to? I thought I understood, but when I went to write some quick code, I realized I didn’t understand really.

    Hi Wim.
    Launchpad notes are C2-C8
    Rows
    1. C-1-Ab2
    2. E1-C0
    3. Ab0-E1
    4. C2-Ab2
    5. E3-C4
    6. Ab4-E5
    7. C6-Ab6
    8. E7-C8

    Because I remmaped Launchpad to 8 different channels with Mozaic patch "Channel splitter v0.8" each vertical row is a different channel.
    (The scale on that Mozaic pitch is showing one octave above the actual)

    Here how I set it on the patch after transposition:

    1. C3-Ab3
    2. C4-Ab4
    3. Ab1-E0
    4. C1-Ab1
    5. E3-C4
    6. C4-Ab4
    7. C4-Ab4
    8. C2-Ab2

    On the patchstorage page of the patch, by the comments you could find links for the script and an Aum project:

    https://patchstorage.com/channel-splitter/

  • edited January 2020

    I want to use my Novation Peak as a hardware controller for various synths, in particular my Blofeld, and a few soft synths such as Synthmaster One.
    Is mapping the midi out from Peak to the other synths something which Mosaic would be a good tool to use for this? (I don't own Mosaic as of yet).

  • wimwim
    edited January 2020

    @mungbeans said:
    I want to use my Novation Peak as a hardware controller for various synths, in particular my Blofeld, and a few soft synths such as Synthmaster One (I know many things in SM1 have midi learn but in addition to these I'd like to be able to also use the Peak to control things like wavetable selection, LFO shape selection etc. which don't have midi learn).
    Is mapping the midi out from Peak to the other synths something which Mosaic would be a good tool to use for this? (I don't own Mosaic as of yet).

    Sorry, but if a synth doesn’t expose a parameter to external midi control, there’s nothing any other app can do to get around that limitation. It’s like trying to call someone that doesn’t have a telephone.

  • @wim said:

    @mungbeans said:
    I want to use my Novation Peak as a hardware controller for various synths, in particular my Blofeld, and a few soft synths such as Synthmaster One (I know many things in SM1 have midi learn but in addition to these I'd like to be able to also use the Peak to control things like wavetable selection, LFO shape selection etc. which don't have midi learn).
    Is mapping the midi out from Peak to the other synths something which Mosaic would be a good tool to use for this? (I don't own Mosaic as of yet).

    Sorry, but if a synth doesn’t expose a parameter to external midi control, there’s nothing any other app can do to get around that limitation. It’s like trying to call someone that doesn’t have a telephone.

    My main focus is Blofled, that does expose virtually all parameters, but I need to map the Peak's output to the blofeld's ccs for those, my question is if Mozaic will be suitable for that.

  • wimwim
    edited January 2020

    @mungbeans said:

    @wim said:

    @mungbeans said:
    I want to use my Novation Peak as a hardware controller for various synths, in particular my Blofeld, and a few soft synths such as Synthmaster One (I know many things in SM1 have midi learn but in addition to these I'd like to be able to also use the Peak to control things like wavetable selection, LFO shape selection etc. which don't have midi learn).
    Is mapping the midi out from Peak to the other synths something which Mosaic would be a good tool to use for this? (I don't own Mosaic as of yet).

    Sorry, but if a synth doesn’t expose a parameter to external midi control, there’s nothing any other app can do to get around that limitation. It’s like trying to call someone that doesn’t have a telephone.

    My main focus is Blofled, that does expose virtually all parameters, but I need to map the Peak's output to the blofeld's ccs for those, my question is if Mozaic will be suitable for that.

    Yes, Mozaic can do that. There are other ways that don’t require coding too. MfxConvert and MidiFlow are two apps that would work as well. For something like this, I would just use mfxConvert.

  • @mungbeans said:

    @wim said:

    @mungbeans said:
    I want to use my Novation Peak as a hardware controller for various synths, in particular my Blofeld, and a few soft synths such as Synthmaster One (I know many things in SM1 have midi learn but in addition to these I'd like to be able to also use the Peak to control things like wavetable selection, LFO shape selection etc. which don't have midi learn).
    Is mapping the midi out from Peak to the other synths something which Mosaic would be a good tool to use for this? (I don't own Mosaic as of yet).

    Sorry, but if a synth doesn’t expose a parameter to external midi control, there’s nothing any other app can do to get around that limitation. It’s like trying to call someone that doesn’t have a telephone.

    My main focus is Blofled, that does expose virtually all parameters, but I need to map the Peak's output to the blofeld's ccs for those, my question is if Mozaic will be suitable for that.

    Yes! There is and will be plenty.
    Look up on patchstorage.

    This cc bank would come handy:
    https://patchstorage.com/cc-banks/

    Channel splitter:
    https://patchstorage.com/channel-splitter

    And cc switcher:
    Only on wiki page:

    https://wiki.audiob.us/mozaic_plugin_engine

  • @Tamir_Raz_Mataz said:

    @wim said:

    @Tamir_Raz_Mataz said:

    @wim said:

    @Tamir_Raz_Mataz said:
    Something like the chromatic mode on Simple Scaler patch but not only for white keys:
    https://patchstorage.com/simple-scaler/

    What would be done about the fact that there aren't enough white keys to play all notes?


    ///It’s intended to be played on 8 chromatic keys of launchpad. There’s “white and black” unseperatble

    Drop the bottom and/or top of the note range?

    ///whichever way. Maybe assignable or just editable.

    What would be the "root" note that starts the scale?

    /// can it be selectable by a knob?

    Would the keys shift according to root note setting?

    /// could be.

    Maybe something like "middle C" (Note 48? Note 60?) is the root and then just count up and down until you run out of white keys?

    /// sounds like a plan :)

    I probably don't want to modify simple scaler since it's intended as a functional equivalent of another app that isn't expected to go AU, but I might think about it if some of that was clarified. It wouldn't be a major effort to add, I don't think.

    ////I appreciate your will. So maybe another patch that turns launchpad to white keys only

    Help me to understand the incoming notes. Can you explain to me what notes are coming in from the Launchpad and what you want them to be translated to? I thought I understood, but when I went to write some quick code, I realized I didn’t understand really.

    Hi Wim.
    Launchpad notes are C2-C8
    Rows
    1. C-1-Ab2
    2. E1-C0
    3. Ab0-E1
    4. C2-Ab2
    5. E3-C4
    6. Ab4-E5
    7. C6-Ab6
    8. E7-C8

    Because I remmaped Launchpad to 8 different channels with Mozaic patch "Channel splitter v0.8" each vertical row is a different channel.
    (The scale on that Mozaic pitch is showing one octave above the actual)

    Here how I set it on the patch after transposition:

    1. C3-Ab3
    2. C4-Ab4
    3. Ab1-E0
    4. C1-Ab1
    5. E3-C4
    6. C4-Ab4
    7. C4-Ab4
    8. C2-Ab2

    On the patchstorage page of the patch, by the comments you could find links for the script and an Aum project:

    https://patchstorage.com/channel-splitter/

    I'm so sorry, but I still can't make heads or tails out of what you're trying to do. I don't have a launchpad or maybe it would make more sense to me. Someone else might be better able to take this on. I just don't get it.

  • Yes, Mozaic can do that. There are other ways that don’t require coding too. MfxConvert and MidiFlow are two apps that would work as well. For something like this, I would just use mfxConvert.

    I have 10 years experience iOS development (but not music type apps), so scripting Mozaic isn't going to be a problem. Just trying to find the best tool. Given that information would you still recommend mfxConvert? (I'm wondering if there's going to be some more complex things to map from the Peak to the Blofeld other than just a simple knob twist, where it might be necessary utilize the programming flexibiity Mozaic will presumably offer. I haven't yet studied the Peak's outputs and and Blofeld inputs so I'm just speculating at the moment that this may be the case.)

  • wimwim
    edited January 2020

    @mungbeans said:

    Yes, Mozaic can do that. There are other ways that don’t require coding too. MfxConvert and MidiFlow are two apps that would work as well. For something like this, I would just use mfxConvert.

    I have 10 years experience iOS development (but not music type apps), so scripting Mozaic isn't going to be a problem. Just trying to find the best tool. Given that information would you still recommend mfxConvert? (I'm wondering if there's going to be some more complex things to map from the Peak to the Blofeld other than just a simple knob twist, where it might be necessary utilize the programming flexibiity Mozaic will presumably offer. I haven't yet studied the Peak's outputs and and Blofeld inputs so I'm just speculating at the moment that this may be the case.)

    If it requires more than just a straight mapping of one cc to another then mfxConvert won't do the job. But if it's straightforward mapping then personally, I would just use mfxConvert. I'm a fan of using the simplest tool to do a job, and mfxConvert lets you make changes on the fly with just taps, no coding. YMMV. B)

    On the other hand, even doing things that you don't need to in Mozaic is a good way to stimulate thinking about other things you could do with it. I've had many of my ideas come out of doing something completely different, as I think about how things work.

  • We need more customers for this wonderful tool. These would help:

    1) Demos of the best scripts to show you get benefits without writing any code.
    2) Updates to enable programmers to address requests like this:

    I have a bluetooth keyboard, (not midi, but for writing). I was wondering if there is way to use it to trigger notes, much like with Ableton. Any ideas or apps, that can accomplish this?

    Is there a tool for a "MIDI text keyboard" yet. If it exists we can just use it too.

    3) Better training content... people prefers video trying I suspect as a general practice. O know I do. I tend to dig into the manual as I create something and that's a tough way to learn the app. Reading the whole manual first often leaves the beginner confused and feeling like they are not up to the challenge.

    Any other ideas?

  • hello peeps.
    Any idea why there’s no toggle option for pads in Mozaic parameters in Aum?

    I’m trying to map nanoKontrol studio buttons to Mozaics pads and would like the toggle lights on off.

    Any workaround?

Sign In or Register to comment.