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.

Looking for an Arp app in AU3 that will output channel as it was input... Ideas

Most arp apps seem to want to spit out notes on only 1 channel... I need an arp that will work like this:

Input chord CEG, but c is on ch1, e is on ch2, and g is on ch 3

I need the arp to spit out the split chord notes on their input channel...

Ideas?

Comments

  • I don't know of any, but am curious: Is that for use with MPE input?

  • edited April 2021

    You could use multiple instances of StepPolyArp on multiple channels each triggering one note at the same time in AUM.

    StepPolyArp 1: Channel 1, Note C
    StepPolyArp 2: Channel 2, Note E
    StepPolyArp 3: Channel 3, Note G

  • In addition this idea sounds like a Mozaic plugin waiting to happen...

  • wimwim
    edited April 2021

    I don't think I'd want to try to implement an arp in Mozaic. The toolset there doesn't seem like it would lend itself very well to that. I think you could do it, but it would be complex as hell.

  • Hey guys. Thanks for suggestions, but none of these will work... multiple arp apps etc won’t work because I need to maintain the “order” or the sequence of the notes. Things like polythemis won’t work because it just splits and sends based on “order” and then sends out a “port” not a channel. Even routing those channels/ports tends to break the order.

    I do think this may be the thing that drags me to Mozaic if I can’t find a simple single arp app...

  • edited April 2021

    It could be done in StreamByter.

    You could use any arp app, then route it to a StreamByter instance with the following script, and don't forget to hit the Install Rules button on the lower left :

    Anything behind a hash # is comment.

    Let's say it's C3, E3 and G3.

    if MT < A0 # Note on and off events

    if M1 == $60  # C3
        if MT == 90
            ass M0 = 90  # modify Note on to Channel 1
        end
    
        if MT == 80
            ass M0 = 80  # modify Note off to Channel 1
        end
    end
    
    if M1 == $64  # E3
        if MT == 90
            ass M0 = 91  # modify Note on to Channel 2
        end
    
        if MT == 80
            ass M0 = 81  # modify Note off to Channel 2
        end
    end
    
    if M1 == $67  # G3
        if MT == 90
            ass M0 = 92  # modify Note on to Channel 3
        end
    
        if MT == 80
            ass M0 = 82  # modify Note off to Channel 3
        end
    end
    

    end

  • edited April 2021

    @cadetrim said:
    It could be done in StreamByter.

    You could use any arp app, then route it to a StreamByter instance with the following script, and don't forget to hit the Install Rules button on the lower left :

    Anything behind a hash # is comment.

    Let's say it's C3, E3 and G3.

    if MT < A0 # Note on and off events

    if M1 == $60 # C3
    if MT = 90
    ass M0 = 90 # modify Note on to Channel 1
    end

      if MT = 80
          ass M0 = 80  # modify Note off to Channel 1
      end
    

    end

    if M1 == $64 # E3
    if MT = 90
    ass M0 = 91 # modify Note on to Channel 2
    end

      if MT = 80
          ass M0 = 81  # modify Note off to Channel 2
      end
    

    end

    if M1 == $67 # G3
    if MT = 90
    ass M0 = 92 # modify Note on to Channel 3
    end

      if MT = 80
          ass M0 = 82  # modify Note off to Channel 3
      end
    

    end

    end

    Yeah! I think this could do the trick! But when I paste it in I’m getting #err... not sure where the syntax issue is... I think StreamByter knows I hate it... 🥴

    if MT < A0 # Note on and off events
    if M1 == $60 # C3

    ERR if MT = 90

      ass M0 = 90 # modify Note on to Channel 1
    end
    

    ERR if MT = 80

      ass M0 = 80 # modify Note off to Channel 1
    end
    

    end

    Etc...

  • @MonkeyDrummer said:

    @cadetrim said:
    It could be done in StreamByter.

    You could use any arp app, then route it to a StreamByter instance with the following script, and don't forget to hit the Install Rules button on the lower left :

    Anything behind a hash # is comment.

    Let's say it's C3, E3 and G3.

    if MT < A0 # Note on and off events

    if M1 == $60  # C3
        if MT = 90
            ass M0 = 90  # modify Note on to Channel 1
        end
    
        if MT = 80
            ass M0 = 80  # modify Note off to Channel 1
        end
    end
    
    if M1 == $64  # E3
        if MT = 90
            ass M0 = 91  # modify Note on to Channel 2
        end
    
        if MT = 80
            ass M0 = 81  # modify Note off to Channel 2
        end
    end
    
    if M1 == $67  # G3
        if MT = 90
            ass M0 = 92  # modify Note on to Channel 3
        end
    
        if MT = 80
            ass M0 = 82  # modify Note off to Channel 3
        end
    end
    

    end

    Yeah! I think this could do the trick! But when I paste it in I’m getting #err... not sure where the syntax issue is... I think StreamByter knows I hate it... 🥴

    if MT < A0 # Note on and off events
    if M1 == $60 # C3

    ERR if MT = 90

      ass M0 = 90 # modify Note on to Channel 1
    end
    

    ERR if MT = 80

      ass M0 = 80 # modify Note off to Channel 1
    end
    

    end

    Etc...

    my bad. It should be == instead of =.
    I've already amended them all.

  • @cadetrim said:
    It could be done in StreamByter.

    You could use any arp app, then route it to a StreamByter instance with the following script, and don't forget to hit the Install Rules button on the lower left :

    Anything behind a hash # is comment.

    Let's say it's C3, E3 and G3.

    if MT < A0 # Note on and off events

    if M1 == $60 # C3
    if MT == 90
    ass M0 = 90 # modify Note on to Channel 1
    end

      if MT == 80
          ass M0 = 80  # modify Note off to Channel 1
      end
    

    end

    if M1 == $64 # E3
    if MT == 90
    ass M0 = 91 # modify Note on to Channel 2
    end

      if MT == 80
          ass M0 = 81  # modify Note off to Channel 2
      end
    

    end

    if M1 == $67 # G3
    if MT == 90
    ass M0 = 92 # modify Note on to Channel 3
    end

      if MT == 80
          ass M0 = 82  # modify Note off to Channel 3
      end
    

    end

    end

    I figured out the obvious issue with the = vs == comparison op. Dear lord doing any text work on an iPad without a physical keyboard is PAINFUL!!

  • edited April 2021

    @cadetrim ha!! I think we’re turning this tread into a really laggy chat session!

    Thx a million for this script! It’s exactly what I need for now!

    Of course in the mean time I bought Mozaic... Anyone wanna give me an example of what this would look like in Mozaiceese?

  • edited April 2021

    @MonkeyDrummer said:
    @cadetrim ha!! I think we’re turning this tread into a really laggy chat session!

    Thx a million for this script! It’s exactly what I need for now!

    Bad coding skill. No can do about it. 😂
    Thanks for liking it.

  • _ki_ki
    edited April 2021

    My old In-Order-Arp Mozaic script supports MPE and expressions on the individual arped notes.

  • you need polythemus maybe

  • edited April 2021

    As a helpful hint, you can wrap code in triple backticks (```) to have it format correctly.

    # Anything behind a hash # is comment.
    # Let's say it's C3, E3 and G3.
    if MT < A0 # Note on and off events
    
    if M1 == $60  # C3
        if MT == 90
            ass M0 = 90  # modify Note on to Channel 1
        end
    
        if MT == 80
            ass M0 = 80  # modify Note off to Channel 1
        end
    end
    
    if M1 == $64  # E3
        if MT == 90
            ass M0 = 91  # modify Note on to Channel 2
        end
    
        if MT == 80
            ass M0 = 81  # modify Note off to Channel 2
        end
    end
    
    if M1 == $67  # G3
        if MT == 90
            ass M0 = 92  # modify Note on to Channel 3
        end
    
        if MT == 80
            ass M0 = 82  # modify Note off to Channel 3
        end
    end
    end
    
  • I did a little mozaic script the other day that sequences notes to midi channels, was easy enough, it’s on patchstorage if you want to have a poke about in its code...

  • @Krupa said:
    I did a little mozaic script the other day that sequences notes to midi channels, was easy enough, it’s on patchstorage if you want to have a poke about in its code...

    I did actually stumble across it yesterday. Close and cool, but not quite what I was looking for. Thanks!

  • @_ki said:
    My old In-Order-Arp Mozaic script supports MPE and expressions on the individual arped notes.

    Awesome! You “win” as it solves/combines what would have been 2 apps. Plus as I learn Mozaic I’ll be able to mangle the code. Awesome!

    You also win some of the prettiest code award! 😊

  • Tried this with Stepolyarp into Polythemus’ round robin. Works great.

  • @MonkeyDrummer Thanks for the compliments :)

    Regarding Mozaic tips, you find a lot of them on the Mozaic Scripting Tips & Tricks page on the wiki.

Sign In or Register to comment.