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.

Flow - multi-track midi sequencer/looper for Mozaic - UPDATE w/CC automation, strumming & ratcheting

13

Comments

  • edited September 2019

    @espiegel123 said:

    @Peblin said:

    @espiegel123 said:
    Flow deserves a page over on the wiki -- with links to the great videos , the patch download and this discussion. I hope someone will consider adding it:

    https://wiki.audiob.us

    Good idea, I'll set one up tomorrow unless someone else beats me to it :smile:

    +1

    @wim had already started one, so I've now filled it out with some more details.
    https://wiki.audiob.us/mozaic_flow_tutorial [edited, now correct]

    Btw, all help in spreading the word on Flow is appreciated - I do think a lot of the community would have really good use for it if only 1) they knew about it and 2) got used to using Mozaic. :smiley:

  • Cool, need to re-try this with latest update. Used it once and super intuitive.

  • wimwim
    edited September 2019

    @Peblin said:

    @espiegel123 said:

    @Peblin said:

    @espiegel123 said:
    Flow deserves a page over on the wiki -- with links to the great videos , the patch download and this discussion. I hope someone will consider adding it:

    https://wiki.audiob.us

    Good idea, I'll set one up tomorrow unless someone else beats me to it :smile:

    +1

    @wim had already started one, so I've now filled it out with some more details.
    https://wiki.audiob.us/playground/mozaic_flow_tutorial
    [Edit] https://wiki.audiob.us/mozaic_flow_tutorial

    Btw, all help in spreading the word on Flow is appreciated - I do think a lot of the community would have really good use for it if only 1) they knew about it and 2) got used to using Mozaic. :smiley:

    Oh yeh! I forgot I did that. I didn't get very far with it. Feel free to totally take it over. We should move it out of the "Playground" though. I've done that - so the link is now:

    https://wiki.audiob.us/mozaic_flow_tutorial

    Sorry if that creates any confusion, but better to have it in the right place early. @Peblin, you might want to revise the URL in your post. Please feel free to wipe out anything I did earlier in that page.

    Thanks again for this truly fun and useful script.

  • The only thing I've noticed is without quantization, I'm always ahead of the beat. No matter what I do to try to land on the downbeat, following a metronome, I always end up in the cell before.

    It doesn't matter really because after that everything else ends up being off by the same amount, but does make step editing tricky. It's probably just me. Predictive hearing maybe! :D

  • edited September 2019

    @wim said:
    The only thing I've noticed is without quantization, I'm always ahead of the beat. No matter what I do to try to land on the downbeat, following a metronome, I always end up in the cell before.

    It doesn't matter really because after that everything else ends up being off by the same amount, but does make step editing tricky. It's probably just me. Predictive hearing maybe! :D

    Thanks for the feedback! So it wasn't just me :smile:

    I've the same experience. But, I've recorded in parallell to Flow and Atom - and I'm ahead in Atom as well, if only ever so slightly. I've only done the "double take" a couple of times though, so I don't know if I'm actually always a bit before the beat or if there's a bug somewhere. Would be great if you could do the same and see how it looks on your side.

    I did try "replacing" the metronome i AUM with XOX->Ruismaker hihat, and then I had no problem staying on beat which is kind of weird.

    I'll dig some more and see what I can do. Maybe "unquantized" actually should have just a tiiiiny bit of quantization between part 8 and next step to land exactly on beat. :wink:

    (and thanks for fixing the wiki link, I didn't notice the Playground thingy)

  • I'm using it in Audiobus with XOX > Ruismaker FM for the metronome. I will say that I tend to be a little bit before the first beat in almost any sequencer unless I work really hard at it, so it might not be Flow causing it. It's just more noticeable in Flow because of the looping nature of it.

    I sometimes put Atom or Xequence 2 after loops I've created in Flow, and capture the output there. It's pretty easy to fix up timing errors that way. So, it does get the job done. I think of Flow a little bit like Loopy. If you obsess about timing in Loopy, you're missing the main point of creating on the fly. Same with Flow. So I don't mind the slight offset since it's all relative.

    I'll try to do some more detailed testing though.

  • @wim said:
    I'm using it in Audiobus with XOX > Ruismaker FM for the metronome. I will say that I tend to be a little bit before the first beat in almost any sequencer unless I work really hard at it, so it might not be Flow causing it. It's just more noticeable in Flow because of the looping nature of it.

    I sometimes put Atom or Xequence 2 after loops I've created in Flow, and capture the output there. It's pretty easy to fix up timing errors that way. So, it does get the job done. I think of Flow a little bit like Loopy. If you obsess about timing in Loopy, you're missing the main point of creating on the fly. Same with Flow. So I don't mind the slight offset since it's all relative.

    I'll try to do some more detailed testing though.

    Yeah, I use Atom frequently after Flow as well, they're great companions :smile:

    When you test - do test by using a Flow pattern > Ruismaker as metronome, in the same instance as the one you're recording other things in. That guarantees (well...I'm pretty sure it does at least) that there are no latency/lag/missed timings - so if you're ahead of Flow when Flow IS the metronome, then it's you :smiley:

    On a side note, I have "buttons for nudge pattern +- 1 step" high up on the todo list to help mitigating if you're ahead of the beat consistently. Just need to figure out where to put them - thinking about a "long press on shift" thing. Or, if @brambos would grace us with an additional shift/menu/alt/command/diy-button that I could use for it :smile:

  • Wow, nudge pattern would nail it!

  • wimwim
    edited September 2019

    Here’s my FlowJam starting template for AudioBus in case it’s of use to anyone. It requires mfxStrip to function.

    Each lane is set up to use a different midi channel. There’s one lane for each Flow sequence. There’s a metronome that can be switched on and off by toggling the Rozeta XOX.

    I start by loading an AU in the first lane, and auditioning it in the first pattern while in the control view, with Rec unarmed. Then I start Audiobus’ transport and practice until I have a groove I want to record. Once I do, I arm record and flip back to the steps screen and play. If it didn’t come out well, I flip back to control to clear it, then try again.Then I repeat for as many apps / channels as I want to use.

    Note, there’s only one Mozaic/Flow instance here, even though it’s repeated across 7 lanes.

    Much fun.

    http://preset.audiob.us/ejB3pErz4O8P11l

  • @wim said:
    Here’s my FlowJam starting template for AudioBus in case it’s of use to anyone. It requires mfxStrip to function.

    Thanks for the template! I have a similar one for AUM that I will post some day :smile:

    Re: being ahead of the beat - I tested with step recording 4 bars @ 4/4 in Atom, and recorded Atom output in Flow. It seems to be exactly in sync with the beat, so I’d file it to you and me being a bit to ”trigger happy” for now.

    Not sure that just nudging will help though, when I think more about it. It would just make you end up after the beat with almost a whole part - if you’re within 10% if the beat when you’re ahead you’d be missing the beat with 90% of a part if you nudged it.

    I wonder how other similar recorders like OP-Z works - it has a ”live” mode as well but maybe it quantizes to parts under the hood, which is always an option in Flow anyway.

  • @Peblin said:
    I wonder how other similar recorders like OP-Z works - it has a ”live” mode as well but maybe it quantizes to parts under the hood, which is always an option in Flow anyway.

    yeh, probably I just need more practice. :D

    The only thing with quantize is I like to run longer patterns, with 1/4 or even 1/2 as the step time. Quantizing to steps isn't very usable then so I leave it off. If there was a separate quantize to 1/16 or 1/32 (and maybe 1/12 for triplets) or something, it would be a little more useful. Don't ask me where you would fit that into the interface though!

    Just a thought. I'm perfectly happy with it how it is - I just don't use quantize and it's all good.

  • @wim said:

    @Peblin said:
    I wonder how other similar recorders like OP-Z works - it has a ”live” mode as well but maybe it quantizes to parts under the hood, which is always an option in Flow anyway.

    yeh, probably I just need more practice. :D

    The only thing with quantize is I like to run longer patterns, with 1/4 or even 1/2 as the step time. Quantizing to steps isn't very usable then so I leave it off. If there was a separate quantize to 1/16 or 1/32 (and maybe 1/12 for triplets) or something, it would be a little more useful. Don't ask me where you would fit that into the interface though!

    Just a thought. I'm perfectly happy with it how it is - I just don't use quantize and it's all good.

    But if you set ”Quant: Part”, Flow quantizes to 1/8th of the step time - so at 1/2 you’re actually quantizing to 1/16 and at 1/4 to 1/32. Step = 8 parts in my naming convention (there are probably better names for ”sub-steps”).

    Still very interesting idea to have ”fixed” quantization settings regardless of step time... Might end up on the roadmap. Shouldn’t be too hard to implement since it’s basically just ”rounding off” the measured time from start of part to when the note came to the closest 1/32 for example.

  • @Peblin said:
    But if you set ”Quant: Part”, Flow quantizes to 1/8th of the step time - so at 1/2 you’re actually quantizing to 1/16 and at 1/4 to 1/32. Step = 8 parts in my naming convention (there are probably better names for ”sub-steps”).

    Oh cool. I misunderstood that function. It seems like the first time I tried it, it would only land on the part itself. That works fine then. I’ll give it a try.

  • @Peblin said:
    Not sure that just nudging will help though, when I think more about it. It would just make you end up after the beat with almost a whole part - if you’re within 10% if the beat when you’re ahead you’d be missing the beat with 90% of a part if you nudged it.

    I thought about this some more and think I may have mis-communicated. What I meant was more "pattern rotation," similar to the function in Rozeta Bassline. So, the whole pattern could be rotated forward or backward. So, let's say you came in early by a little, but the rest of the pattern is relatively in time. You could push the pattern so that the first beat landed on the 1, and all the rest of the pattern would shift by the same amount. This would also be useful for those beats or melodies that sometimes emerge but end up sounding like the beginning of the phrase starts a few bars in.

    Anyway ... not asking for this! Flow seems like it already has far more packed into it than Mozaic was ever contemplated to do. But I do love that pattern rotate feature in Rozeta, and use it all the time. So I wanted to make sure I hadn't miscommunicated.

  • @Peblin

    I got me Mozaic after a long search for a midi auv3 looper. I must say it's awesome, great work!!
    Now I'd like to assign some controls and figured out pretty much which button is doing what.
    But - is there a possibility to assign the shift button as well?

  • @Orne33e said:
    @Peblin

    I got me Mozaic after a long search for a midi auv3 looper. I must say it's awesome, great work!!
    Now I'd like to assign some controls and figured out pretty much which button is doing what.
    But - is there a possibility to assign the shift button as well?

    Cool - thanks :)
    I actually haven't implemented any support for midi-assignments in Flow so I think the only ones that will work are the ones that are mappable "out of the box" for Mozaic (if any - haven't checked).

  • @Orne33e

    I have a significantly updated version of Flow in the works, but haven't had time to finish it for a long while.

    It adds a lot of features, like:

    • Midi "routing" - listen for CCs and send out the values on other CCs. For example, listen for CC15, send CC73 to Zeeon track. So a controller can be mapped to send to Flow, then you can configure flow what that CC means for each track.
    • More recording modes - specifically "tap to add last used note", like the OP-Z sequencer when you tap steps.
    • "Performance" modes; tap to set playhead, or tap to play an individual pad. Useful for recording chords to the pads and using Flow as a chord player (with strumming!)
    • ... and other stuff I forgot about.

    It still has some bugs but if you want to test it it's available on GitHub:
    https://github.com/peblin/flow-sequencer

    Just copy & paste the contents of "flow-sequencer.script" into Mozaic and have fun.

  • Sweet! ❤️🙏☝️

  • @Peblin said:

    @wim said:
    Here’s my FlowJam starting template for AudioBus in case it’s of use to anyone. It requires mfxStrip to function.

    Thanks for the template! I have a similar one for AUM that I will post some day :smile:

    If you did then I missed it:)

  • It’s kinda hard to copy the mass of text in git, if you click raw, you can copy it all more easily

    Looking forward to trying it out

  • @Peblin said:
    @Orne33e

    I have a significantly updated version of Flow in the works, but haven't had time to finish it for a long while.

    It adds a lot of features, like:

    • Midi "routing" - listen for CCs and send out the values on other CCs. For example, listen for CC15, send CC73 to Zeeon track. So a controller can be mapped to send to Flow, then you can configure flow what that CC means for each track.
    • More recording modes - specifically "tap to add last used note", like the OP-Z sequencer when you tap steps.
    • "Performance" modes; tap to set playhead, or tap to play an individual pad. Useful for recording chords to the pads and using Flow as a chord player (with strumming!)
    • ... and other stuff I forgot about.

    It still has some bugs but if you want to test it it's available on GitHub:
    https://github.com/peblin/flow-sequencer

    Just copy & paste the contents of "flow-sequencer.script" into Mozaic and have fun.

    It's a beautifully executed looper. It's fun to run several and target multiple apps and build a sounding loop
    fast. It adds the MIDI input features that so many are praying for in AUM. Definitely worth spending time figuring it all out. I expect to see some great videos from the YouTube teachers as they get around to giving it a spin.

    The code is also extremely well put together and well commented for others to study for their own ideas.
    The GUI in Mozaic pushes the envelope for what a script can provide for ease of use with massive complexity behind the scenes.

    Thanks for the beta update test drive.

  • wish I could delete an individual voice. anyone know a way?

  • @McD said:
    I expect to see some great videos from the YouTube teachers as they get around to giving it a spin.

    Why do you expect this, the script has been available since July 2019 :)

    Must admit I've been slow to start using it, and other rather big scripts in Mozaic, but once you give it a go you realize it's actually very well executed and not so hard. It helps with the text that updates to tell you how to navigate, when that Shift button is being abused to do 10 different tasks!

  • @Peblin said:

    • "Performance" modes; tap to set playhead, or tap to play an individual pad. Useful for recording chords to the pads and using Flow as a chord player (with strumming!)

    Btw, it's really nice that you can record and play back different strum speeds for the chords on parts! Much more useful than just a global strum setting.

  • @crifytosp said:
    wish I could delete an individual voice. anyone know a way?

    tap SHIFT, then arm the voice/track you want to delete by tapping it. Then hold "Clear armed" for a short while... The long-press is to prevent accidental deletes.

  • @bleep said:

    @Peblin said:

    • "Performance" modes; tap to set playhead, or tap to play an individual pad. Useful for recording chords to the pads and using Flow as a chord player (with strumming!)

    Btw, it's really nice that you can record and play back different strum speeds for the chords on parts! Much more useful than just a global strum setting.

    Really glad you liked it. I've been on and off about it, sometimes I'd like to be able to change it globally but I think the current behaviour is more useful...

    And about those 10 different uses of the SHIFT button :joy: ... I'm still hoping mr @brambos adds some general-purpose buttons next to SHIFT that I could label as I want. It could make the experience quite a bit more streamlined.

  • @Peblin I understand that a double tap will delete a step or part. can’t quite grok removing a single voice from a chord.
    can it be done? I tried to follow ur instructions..
    cheers

  • edited March 2020

    i don’t know if i’m doing something wrong or if it does not sync with the host but i cannot get the timing right on live recording to match up with the metronome, i play a note as the metro clicks but it isn’t captured right.... and it appears the white pad that follows the step is playing /moving in time but the notes hit the wrong pad or off the beat . one loop that i did record as step input drifted way off beat as i was messing with the settings...i put a note on every 4 but it was way off time with the metronome after a few minutes

  • @crifytosp said:
    @Peblin I understand that a double tap will delete a step or part. can’t quite grok removing a single voice from a chord.
    can it be done? I tried to follow ur instructions..

    Sorry, I was confused... Flow doesn’t support removing a single voice :( I haven’t figured out how to put that feature into the UI. What I typically do is to set the voice all way down to C-1 using the part edit mode. C-1 is usually not audible in most synths/mixes :smile:
    Tap a step, then the part you want to change, then SHIFT to access the part editor.
    I might treat C-1 as ”don’t play voice”/deleted in the future unless people really really need that note.

    @reasOne said:
    i don’t know if i’m doing something wrong or if it does not sync with the host but i cannot get the timing right on live recording to match up with the metronome, i play a note as the metro clicks but it isn’t captured right.... and it appears the white pad that follows the step is playing /moving in time but the notes hit the wrong pad or off the beat . one loop that i did record as step input drifted way off beat as i was messing with the settings...i put a note on every 4 but it was way off time with the metronome after a few minutes

    I’ll check and see if I can reproduce the ”drift”. Does this only happen when you fiddle with settings at the same time?
    Flow is pretty naive/optimistic when it comes to timing and if there are UI events that cause it to miss a beat it will miss it forever since it doesn’t listen to events like OnNewBeat/OnNewBar. I’ll probably change that in the future so that internal timing is re-synced every bar with the host but if I remember correctly these events weren’t really reliable in the early days of Mozaic so I removed any attempts I did then from the code.

  • thanks. personally that would be a good option. I’m having much much fun so thanks again.

Sign In or Register to comment.