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.

StepBud AUv3 MIDI Sequencer - Available

145791018

Comments

  • @ecamburn said:

    I totally agree about design, but these features I mention make a big difference to workflow and they are in part a reason why Modstep and Quantum have such longevity as sequencers. A nudge for example, if you have 64 steps or more on the go and you want to change the start position to sync with another source, you're not going to be able to draw the steps again the same way. Even more so on a phone.

    Step skipping also isn't the same as deleting steps, you're enabling them again as well, just adds a lot of extra control and creativity for a minimum of extra gui space imo :)

  • @Carnbot said:

    @ecamburn said:

    I totally agree about design, but these features I mention make a big difference to workflow and they are in part a reason why Modstep and Quantum have such longevity as sequencers. A nudge for example, if you have 64 steps or more on the go and you want to change the start position to sync with another source, you're not going to be able to draw the steps again the same way. Even more so on a phone.

    Step skipping also isn't the same as deleting steps, you're enabling them again as well, just adds a lot of extra control and creativity for a minimum of extra gui space imo :)

    A thousand votes for the power of the nudge! I am forever coming up with a brilliant thing by accident that starts half way etc etc :)

  • @Carnbot I get it. I think your suggestions and others have been great and have really led to improvements in this app.

  • ⚠️ New update alert ⚠️
    I added the "skip step" feature today! Here you have your new "skip" buttons under the lock button of each step.
    Also, added the "show/hide lock button" and "show/hide skip button" toggles to the settings bar as well.
    New version will be released later today.

  • Great work, thanks @cem_olcay looking forward to that :)

  • Is 'Swing' on the todo list? Hadn't seen it mentioned.

    For now you can use Cality to add swing but it would be good to have it available natively within StepBud.

  • @jonmoore said:
    Is 'Swing' on the todo list? Hadn't seen it mentioned.

    For now you can use Cality to add swing but it would be good to have it available natively within StepBud.

    Yepp! A 'Built-In' swing would be nice in StepBud and well, it could come in handy in Atom as well :)

  • @Samu said:

    @jonmoore said:
    Is 'Swing' on the todo list? Hadn't seen it mentioned.

    For now you can use Cality to add swing but it would be good to have it available natively within StepBud.

    Yepp! A 'Built-In' swing would be nice in StepBud and well, it could come in handy in Atom as well :)

    Agreed. :)

  • Another vote for swing here, too. I also love @Samu idea about allowing incoming note transpose, although I recognize that it's probably not an easy thing to just throw in there... Still, it would be awesome to have a setting along the bottom for "MIDI transpose" that the user could control easily.

    Speaking of controlling easily, this app is essential for iPhone users. I use it on the iPad and it still works great, but the design is so efficient and easy that it's just a joy to use on the iPhone. Really enjoying this one, @cem_olcay.

  • @lukesleepwalker said:
    Another vote for swing here, too. I also love @Samu idea about allowing incoming note transpose, although I recognize that it's probably not an easy thing to just throw in there... Still, it would be awesome to have a setting along the bottom for "MIDI transpose" that the user could control easily.

    It can't be that hard to implement ;)

    Look at StepPolyArp Unit and Rozeta Suite as examples.

    It's easy to chain multiple Rozeta Cells together and control them with Atom, StepBud or Photon to overcome the step-duration 'limits' of the Rozeta Plug-Ins (4 bars per step or something like that or maybe it was 16 don't remember).

    StepPolyArp Unit even has an option to substitute notes if more than one note is held down.
    (Ie. first, second, third finger etc). In 'Sequence' mode it can chain multiple sequences together with repeat options.

    For StepBud it would be enough with one note to control the transpose.
    (Chaining multiple StepBud's would make it easier to make long sequences).

    For extremely long sequences StepBud could increase the maximum step-duration something longer(4-16 bars?).

  • @lukesleepwalker thanks!

    I have some good news as well as some bad ones. I started to work on probability and swing features right away.
    In fact, implementing the probability took about 10 mins, I don't know why I didn't add that one before 😅
    For the bad news, after that update, you need to update your custom MIDI CC assignments because they will be screwed.
    Although, I fixed the bug so further mode additions would not affect the custom MIDI CCs anymore in the future.

    OK, about the swing, I need some advice. As far as I know, traditionally swing feature in the step sequencers affecting every step equally. But as you know, StepBud's approach is setting each step individually. Also, the way swing work is, slightly modifying the start position of every other step. So, possibly in the StepBud, you may swing each step instead of every other one. Please correct me if I'm wrong, I'm so confused at this point 😅

    Another thing I couldn't figure out in the algorithm is what's the actual limits of modifying the start points. For example, if I have a quarter note on the first beat with 100% swing, should it start on the 1/8th beat position? If that step also 50% gated, then should it last 1/16 long?

    I need to figure this out for calculating the beat durations and their gated lengths.

  • @cem_olcay : typically swing is not applied to notes that happen on the beat.

    Hopefully, someone will give you a more detailed rundown -- such as differences in how it is applied with eighth notes and sixteenths, etc.

  • BOFFINS ASSEMBLE!

  • @cem_olcay said:

    Another thing I couldn't figure out in the algorithm is what's the actual limits of modifying the start points. For example, if I have a quarter note on the first beat with 100% swing, should it start on the 1/8th beat position? If that step also 50% gated, then should it last 1/16 long?

    You could take this to the extreme and somewhat copy what Elektron does?
    Meaning each 'step' can be 'shifted in time' by +/- 'ticks'.

    So for example if the internal resolution is 384PPQN the 'shift-value' could be +/-192 (So the step could either trigger 'before' the scheduled time or 'after'). The step duration is not affected.

    In this case it would be up to the user to crate the 'swing' since it's not applied globally but per step.

  • @espiegel123 said:
    @cem_olcay : typically swing is not applied to notes that happen on the beat.

    Hopefully, someone will give you a more detailed rundown -- such as differences in how it is applied with eighth notes and sixteenths, etc.

    As it happens I'm in the middle of writing a guide on swing (in my spare time) as it applies to computational music. But the main takeout is that when using Linn Drum style swing as the canonical reference (which is the most useful reference), swing is only applied to the even pulses. Most electronic music is based on a 16th grid but 8th grid swing is available too in many instances and can be especially useful at slower tempos (drum machines and sequencers).

    There's a little more to it that that, but I should have the guide written later today and will post it no later than tomorrow (I'm in the UK). I drop a note in this thread when I've posted it.

  • Yeah, been reading that one as well :)

    So, there are two approaches. As @Samu mentioned, I can modify the start position of a swung step, after or before its quantized position. Meaning, +100% swung step will play on the next step's time (assuming next step's swing value is 0%), negative 100% swung step will play with on the time one step before. So they will be tied and play together in both cases.

    Another approach is modifying start position positively along the grid, the maximum of half amount of the step's rate (note value).

    In my opinion, the first approach is more interesting. Why? Technically you can already do something similar like the second approach by either setting every other step's rate something tripled note value and playing with the gate lengths.

    @jonmoore, that's awesome news, "perfect timing" (haha engineer humor) :smiley:

  • @cem_olcay said:

    In my opinion, the first approach is more interesting. Why? Technically you can already do something similar like the second approach by either setting every other step's rate something tripled note value and playing with the gate lengths.

    It is interesting yes but it can create a mayhem when using repeats :)

    Theoretically each 'step' could be treated as a 'package of events' and the hole package is shifted +/-.
    For example for CC's there is no need to 're-send' the CC value for each repeat as it will remain the same for the entire duration of the 'package'.

    One of my favourite trackers has a pretty nice 'groove' setting. It works on 'per line/step' basis.
    https://tutorials.renoise.com/wiki/Groove_Settings

    For me I'd be happy to have as many options as applicable.

    For the 'other' option it could be a 'built-in macro' that modifies the steps in the sequence?
    This way we'd have 100% control over the timing per step and also an easy to add 'swing' to the entire sequence?

    It's too hot today to think clearly :D

  • It would be very nice to be able to do 8th note swing, as well as 16th. 8th note is how Jazz does swing, but it's also a really good way to make a melody sound more interesting. For example - try playing a scale with an 8th note swing. A lot of 'humanization' is simply musicians swinging the 8th notes.

    I agree that being able to vary it on every note would be useful, but 95% of the time you're going to want to be able to set swing globally. It could be interesting to have both 'swing', and the ability to add delays to notes on top of that. But that could also result in a really complex interface :neutral:

  • @cem_olcay said:

    Yeah, been reading that one as well :)

    So, there are two approaches. As @Samu mentioned, I can modify the start position of a swung step, after or before its quantized position. Meaning, +100% swung step will play on the next step's time (assuming next step's swing value is 0%), negative 100% swung step will play with on the time one step before. So they will be tied and play together in both cases.

    Another approach is modifying start position positively along the grid, the maximum of half amount of the step's rate (note value).

    In my opinion, the first approach is more interesting. Why? Technically you can already do something similar like the second approach by either setting every other step's rate something tripled note value and playing with the gate lengths.

    @jonmoore, that's awesome news, "perfect timing" (haha engineer humor) :smiley:

    To be honest I was simply editing out the fluff from that Attack Magazine article adding a few other bits so that the content was suitable for the AudioBus Wiki. You'll have learnt all you need to learn from the Attack article alone.

    Because the Linn Drum approach was the first I encountered I have a preference for swing to be set in values from 50 to 75. It also has the advantage of matching the MPC family of drum machines, which Roger Linn was originally responsible for too. These swing values are added to both 8th and 16th grid pulses.

    The modern approach is simply to provide swing values that range 0-99 where 0 is the equivalent of the MPC's 50.

    I recently asked the developer of Cality to make his swing act on either odd or even pulses (this is an option you'll occasionally see in the modular world and it's an option that's available in Quantum on iOS too). Swing on even pulses is very useful with drum rhythms because you want the downbeat to solid and regular but instrument parts needn't be restricted to that fixed downbeat.

  • @cem_olcay : at the very least, supporting the canonical swing @jonmoore described is desirable even if it seems like you could (laboriously) simulate it (but not quite) already.

    If you also want the other mode you mention, I'd suggest having a preference for the swing mode that determines which swing algorithm to use.

  • Guys, I think I nailed it. Uploaded a quick video, what are your thoughts?

  • @cem_olcay said:
    Guys, I think I nailed it. Uploaded a quick video, what are your thoughts?

    Looking good!!! :)
    Did you also nail the issues with massive load of note-offs on stop?
    (And well, check the CC's when using repeat on a step, ie. send CC only once per step regardless of repeat value set).

    Looking forward to the release...

    And well you already hinted about ArpBud in another thread so looking forward to that as well ;)
    Note Repeat is a must for easy 80s bass-lines together with a 'step on/off' toggle.
    Dum,-,Da,Da,Dum,-,Da,Da...

  • @cem_olcay said:
    Guys, I think I nailed it. Uploaded a quick video, what are your thoughts?

    Yo, that is fantastic! You made short work of that, eh?

  • @Samu said:
    Did you also nail the issues with massive load of note-offs on stop?

    You mean the 127 note-off messages I'm sending on the transport stop event?
    I don't want to remove that piece just in case :sweat_smile:

    @Samu said:
    (And well, check the CC's when using repeat on a step, ie. send CC only once per step regardless of repeat value set).

    Yes, sir, nailed it :sunglasses:

    @lukesleepwalker said:

    @cem_olcay said:
    Guys, I think I nailed it. Uploaded a quick video, what are your thoughts?

    Yo, that is fantastic! You made short work of that, eh?

    Thanks! Yeah, just a couple of hours amount of work :smiley:

  • edited April 2019

    @cem_olcay said:

    @Samu said:
    Did you also nail the issues with massive load of note-offs on stop?

    You mean the 127 note-off messages I'm sending on the transport stop event?
    I don't want to remove that piece just in case :sweat_smile:

    What about using Midi CC#123(all notes off) as an option?

    Some synths still 'crash' when using StepBud with ApeMatrix or AUM(but they do work with AudioBuss).
    I'll see if StepBud makes the offending synths crash when used with Cubasis...

    Well, well, pressing 'STOP' when using StepBud with Cubasis makes the CPU meter go to 100% and cause crackling noises regardless of synth being used...
    (This is on an iPad Air 2).

    Also If I 'loop' in Cubasis StepBud stops sending notes after the first loop?
    If I disable 'loop' StepBud continues to play...

    Please check StepBud functionality with Cubasis if you can.

    Does StepBud send any 'midi time-stamps' with the events?
    (Everything apart from the first note is 'off the grid' when I record StepBud in Cubasis).

    So I guess there's still some work to do until StepBud is 'done'.

    Atom, Photon and StepPolyArpUnit do not have these issues so I know it can be fixed :)

  • @cem_olcay The swing is looking very interesting.. I do like the option of it being adjustable for each step.. happy accidents just waiting to happen. :) Keep up the good work!

  • @royor said:
    @cem_olcay The swing is looking very interesting.. I do like the option of it being adjustable for each step.. happy accidents just waiting to happen. :) Keep up the good work!

    Yeah, you may do that. In the video, I swung every other step on purpuse, for demonstraing the "real" swing effect :)

  • @cem_olcay I mentioned this in another thread but thought it worth reiterating here. The way you've interacted with your customers has elevated what was a simple step sequencer to something very impressive in a very short period of time. Some developers are afraid that customer feedback can lead to a loss of design intent and uncontrollable feature-creep. And whilst this is very true if the feedback is acted upon in a thoughtless manner, I'm pretty certain that isn't the case here.

    Really enjoying watching this one evolve into something great.

Sign In or Register to comment.