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!

15556586061102

Comments

  • _ki_ki
    edited December 2019

    @Jumpercollins I rename all scripts that i install and add icons as the first character. This allows to group them visually - my preset list is still quite long, but as i used icons with different colors, the navigation between 🈚️♓️🈵🈯️🈳 is easy. Some of these icons are sorted to the front before ‚a‘ and others the the end of the list after ‚z‘

    I also could have used the icons 🟥🟧🟨🟩🟦🟪🟫⬛️⬜️ or 🔴🟠🟡🟢🔵🟣 🟤 ⚫️⚪️ to get more colors and groups

  • @_ki Consider me interested. I’m a sucker for a new Mozaic scripts. Lol. Excited every time a new midi effect/sequencer/filter/generator goes up on patchstorage.com I use a lot of them, sure some more that’s others, but I still use a lot of different scripts on a regular basis.

  • @Jumpercollins I found that importing a zip with several scripts automaticaly creates a subfolder for you.

  • Ok guys thanks for the tips @_ki great ideas there cheers. Just a plain old star will do me for favourites.

  • @Skyblazer said:
    I've just released the first version of my microtonal script, Microtonal Maker. As requested by @palms. In the coming weeks, I'll create a tutorial video. @_ki if you have any suggestions to improve my script, please let me know; I've definitely appreciated your feedback and optimizations on my first two scripts.

    This version doesn't contain any presets, but it does allow you to create your own presets, export them to the "Log" as text, and store them in a bank of 36 presets. Hopefully a few people will share some presets! And I'll include them, along with the ones I create, in a future version of this script.

    https://patchstorage.com/microtonal-maker/

    wow, thank you for all your work on this! wonderful!
    I won't be able to test it just yet, but I'll let you know how it goes once I get a moment with it.

  • @_ki said:
    I‘m nearly finished with a new script [.....] that analyses the input for chords (including their inversions) and allows to force the output to the regular chord or any of its available inversions. There is also a ‚no-change‘ or ‚random selection‘ mode and the output-type can be automated via AU parameter.
    [...] use-case: A sequencer issues a repeated chord progression and this script (in random mode or via automation) changes which inversion is used for each chord issued. In my imagination, this generates small variations of the chords played, but keeps the main harmonics of the progression intakt as only inversions are used. Maybe it fluffens up the progression and makes it a bit less repetitive ?

    @McD , @LinearLineman or anyone knowing the answer
    Can you help me out with the musical term for on-the-fly ‚changing type of inversion‘ ? That would help a lot in writing the documentation and finding a fitting name. The WIP title is Chord-Re-Inverser which really sounds odd and wrong.

  • Guys, I need little help. I faced a problem when some scripts don't save parameters in AUM. Primarily it's my beloved Probability Gate from default Mozaic scripts and a bunch of Marbles ones from Tom Simmert. The first one doesn't save knobs position at all, in Marbles, something is saved, something is not. Am I doing something wrong or some scripts just didn't get state saving?

    P.S. @brambos I can't be grateful enough for this groundbreaking app and this supportive community for beautiful scripts. I sits in all my AUM templates now. Feels like having different eurorack tools in a suitcase.

  • @lazyass Thats probably a problem within the scripts - if not explicitly programmed (which is simple) the initialization will overwrite the stored variables. Also some devs don‘t think about positioning the knobs at the stored values on reload.

    Both should be simple to adapt. My approach to such enhancements is to propose these features (as working script samples) to the authors so they can publish the new version themselves and decide if they want to modify something - and not to release a modified version of the script.

  • edited December 2019

    @_ki thanks for help, I will add request

  • McDMcD
    edited December 2019

    @_ki said:
    @McD , @LinearLineman or anyone knowing the answer
    Can you help me out with the musical term for on-the-fly ‚changing type of inversion‘ ?

    I'd call it a "Chord Inverter" (Noun + Verb).

    If you want you could qualify the Noun or Verb further with "Rhythmic" or "Auto-" or brand your magic as a "Ki-verter".

    For trademark purposes "The _Ki Khord Ki-verter" would get excellent results with a Google search if you intend to add docs and videos to the script campaign. Oops... marketing says _KKK is a big no-no.

    Just brainstorming and I cause problems.

  • Missed it bummer 🤯

    @Poppadocrock said:
    Sweet.

    Also for all you coders... this app for python is usually $9.99 but it is free today.

    https://apps.apple.com/us/app/pyto-python-3-8/id1436650069

  • edited January 2020

    Hi everyone,

    Just wondering whether Mozaic could help me with my current MIDI problem :)

    I have a Novation Launchcontrol XL with has 16 buttons which I use to toggle the mute/unmute state of my channels in AUM. I would like the LEDs in these buttons to light up when the channel is active to provide me better feedback when I perform.

    In order to control these LEDs, the Launchcontrol requires some sysex feedback to tell the LED whether to be lit or unlit:
    "System Exclusive messages can be used to set the LED values for any button or pot in any
    template, regardless of which template is currently selected. This is done using the following
    message: Hex version F0h 00h 20h 29h 02h 11h 78h Template Index Value F7h
    Dec version 240 0 32 41 2 17 120 Template Index Value 247"
    https://d2xhy469pqj8rc.cloudfront.net/sites/default/files/novation/downloads/9922/launch-control-xl-programmers-reference-guide.pdf

    It seems that the MIDI CC which I send once I hit the button, needs to be "answered" by a SySex message immediately from the iPad, this "answer message" actually controls the LED. Then this control must be reversed when the the MIDI CC is toggled back.

    Is this something Mozaic can assist me with?
    Or, if anyone has any other ideas on how I can achieve this, I'd appreciate some guidance :)

  • _ki_ki
    edited January 2020

    @drewinnit I think this can be done. The script would need to read its midi from the Launchcontrol XL to also receive the mute messages and then send back the current state. I don‘t have a LaunchControl, so i can‘t test, but perhaps someone else has Mozaic and such a controller.

    After looking at the manual, i see that there are several open questions:

    • Are the buttons in toggle or momentary state - what is send for mute on, what is send for mute off for each of the buttons (thats what AUM reacts to and the script also needs to follow)
    • Which mode (factory/user) and template number is the controller in when sending the buttons
    • Should the buttons be lit when muted, or lit when playing ?

    The button mode and template number then define which of the sysex functions need to be used to toggle the lights of the buttons.

    .

    As GUI, the script could show the 16 pads reflecting the 16 launchpad buttons and also send the same midi mute messages (to AUM and LaunchControl) when pressed. In that way, one can either mute using the Mozaic plugin or the external controller and both would show the same info.

    For testing purpose, it would be nice the have an AUM session that is already setup to read its mutes from the launchcontrol. No further instrument or Fx setup needed in that session, just several channels that react to you mute/unmute messages. You probably already have such a template :)

    .

    Hmm, just tried around with muting in AUM using notes 60+ and ‚toggle‘ as AUM mute control setting fro a Mozaic script. On session recall the mute buttons are initialized by AUM and the pads latch state is restored by the script - (So don‘t re-send the mutes on script reload). This works well, but if one presses one of the AUM mute buttons directly, the script pad state and AUMs state are no longer in sync. But i assume the same happens when you use an external controller to mute AUMs chnnels.

  • edited January 2020

    @_ki
    thanks for your quick assistance! your suggested solution sounds ideal

    re: the open questions:

    • the buttons are currently set to toggle MIDI CC #3, from 0 to 100. this CC is assigned to the AUM channel's volume
    • i'm using User templates 1, 2 and 3 - the CC of the knobs and faders changes, but the 16 mute buttons are the same on each template, and ideally when switching between templates the LEDs will remain lit/unlit as per the current state of the mute
    • I'd like the buttons to be lit when the track is un-muted, and unlit when it is muted :)

    I'm currently at work so can't currently share an AUM project, but will do so ASAP

    thanks again

    • So the same button lit state has to be set for all three templates 1-3 if understand the manual correctly. Each template has its own button light state.

    • You are not controlling the mute of AUM, but instead the volume - i didn‘t yet try around with that. Why didn‘t you use the AUM mutes ? That would allow for different, manual adjustable fader values for each channel

    • Your controllers buttons ‚remember‘ their state, otherwise they wouldn‘t toggle between CC#3 value 0 or 127. BTW: this can lead to problems, as on session reload the script can have a different idea about the button states (as long as nothing was send from a controllers button) i don‘t know if it wouldn‘t be better to just use note cmds on the controller side and have the script remember the state - the leds would then also be initialized by the script. That way everything is stored in the hosts session.

    • Each button sends CC#3 on a different midi channel i suppose ? Or are there diffent CCs for each button ?

    • This whole setup does not seem to be a default setup for the Lauchpad XL controller, but a custom one. It would be a lot better, if a script works with the default settings of a controller. With your settings, other users not only have to setup AUM in the right way, but also all three user settings on the controller. I don‘t think that this is communicable, or would justify a general script.

    My idea would be to
    a) use what the controller buttons originally send in their default user 1-3 modes
    b) also use what AUMs volume faders listen to per default (CC7 on a specific channel) or better use channel mutes with notes 60 on the 16 channels.
    c) the lauchcontrol script would ‚bridge‘ between these two worlds and also send the button light states to the controller.
    That would be lot more general and easier for others to use than to instruct them on everything and also on how the script has to be connected... If there are other controllers, the script could be extended to support them in the same way.

    .

    I didn‘t say that i‘m going to write a script for this problem, i am just thing out loud. I would be glad if someone else picks this up as i have at least 4 scripts to be finished in my backlog.

    PS: Writing a custom Mozaic script for just your setup should be super easy - listen to launchcontrol‘s CC#3 on the channels and just issue the sysex to switch the lights to the same state. No GUI, no pads, no config. Just a simple OnMidiCC event with about 7 lines of code...

  • thanks @_ki , all your "thinking out loud" is very useful :)

    I'm changing volume levels rather than AUM's mute function because I also need to mute/un-mute some channels in Groove Rider GR-16, where you can't access the mute function via MIDI. this solution allows me to use one CC for all muting instances. I use Gain insert fx to balance the audio volumes. yes, every channel responds to a different MIDI channel. I'm not "married" to this set-up, but so far it seems to balance most of my needs.

    re: your 3rd point - you are totally correct, this is a bit unreliable and could lead to several of the LED states inverting themselves mid-performance. not ideal! you suggest using note commands, I did briefly try this but ended up triggering random synth notes when muting/un-muting. I will have another try with note commands.

    You have helped answer my original question - that Mozaic can help me and is worth my purchase :) I will devote some time to getting the LEDs working and update this thread with my progress

    Thanks!

  • @drewinnit Here is what i came up with for your special Launchcontrol XL setup using CC#3 with 0 or 100 on 16 midi channels:

    @OnLoad
      SetShortName {LPLEDS} 
      ShowLayout 2
      LabelPads {Update Launchpad XL LEDs from CC#3  v0.1}
      LabelKnobs { }
      for knob = 0 to 3
        SetKnobValue knob, 0  
        LabelKnob knob, { }
      endfor  
    
      // LED Sysex for buttons in 'toggle' mode
      //       F0h    00h  20h  29h  02h  11h  7Bh Tmpl Idx  Val   F7h  
      sysButton[] = [0x00,0x20,0x29,0x02,0x11,0x7B,0x00,0x00,0x00]
    @End
    
    @OnMidiCC
      if MIDIByte2 = 3
        LatchPad MIDIChannel, (MIDIByte3 = 0)
        if MIDIByte3 = 0
          LabelPad MIDIChannel, {Muted}
        else
          LabelPad MIDIChannel, { }  
        endif      
    
        for template = 0 to 2
          sysButton[6] = template
          sysButton[7] = MIDIChannel  // Button index
          if MIDIByte3 = 0
            sysButton[8] = 127        // LED on
          else
            sysButton[8] = 0          // LED off
          endif      
          SendSysex sysButton, 9
        endfor
      endif
    @End 
    

    This script should receive its midi input from LauchControl and also send its midi output to LauchControl XL. It updates its pad state when CC#3 is received from the controller and sends back a sysex to toggle the leds.

    As i don‘t have a LaunchPad, i can’t test and hope it works. For testing i used another script that sends CC#3 with either 0 or 100 on the 16 channels depending on the pad pressed. Two things can happen:
    a) the pads in this script don‘t reflect your channel mutes - then i didn‘t understand correctly what you are sending from LaunchControl
    b) the LEDs don‘t change on the controller - then the sysex isn‘t correct yet.

  • Wow, that’s very kind of you to do! I really appreciate you taking the time to help me out with this

    I’m brand new to Mozaic so may be doing something wrong.
    I have Mozaic loaded in a midi channel in AUM. Using aum’s midi routing I have made sure this channel is both receiving and sending to the launch control.
    I have pasted your code into the Code text field, making sure to remove the previous code header and footer. I uploaded the code and returned to the GUI.

    What happens: the channels now don‘t react to the 0 value, but if I override the volume by pulling a fader down then another press of the respective channels button will push the fader back up. No LEDs at all, unfortunately.

    I noticed one potential code issue, with sysButton[8] = 127
    Should this instead be 100? I tried replacing it with 100 but had the same result described above

    Like I said, literally just downloaded mozaic and have only very modest programming experience so very likely all this is user error. I’m going to play around now some more with it and see if I can figure it out.

  • @drewinnit said:
    Hex version F0h 00h 20h 29h 02h 11h 78h Template Index Value F7h

    @_ki said:
    // LED Sysex for buttons in 'toggle' mode
    // F0h 00h 20h 29h 02h 11h 7Bh Tmpl Idx Val F7h
    sysButton[] = [0x00,0x20,0x29,0x02,0x11,0x7B,0x00,0x00,0x00]

    Is the first "F0" hex value missing in @_Ki's code sample?
    Should it be?

    sysButton[] = [0xF0,0x00,0x20,0x29,0x02,0x11,0x7B,0x00]
    and then put "0xF7"(or 247 decimal) in sysButton[8]

    Just trying to keep things moving since @_Ki commits to solving anything he cab and always has a full dance card.

  • edited January 2020

    Thanks for your input @McD :)
    I’ll try this now

    Edit: by adding the 0xF0, the faders now respond to each part of the toggle (yay!)
    Sadly still no LED action....

    Not sure about the second part of your comment, should I add a line of code like this:
    sysButton[8] =[0xF7]

    Below this line :
    sysButton[] = [0xF0,0x00,0x20,0x29,0x02,0x11,0x7B,0x00]
    ?

  • McDMcD
    edited January 2020

    @drewinnit said:
    Thanks for your input @McD :)
    I’ll try this now

    Edit: by adding the 0xF0, the faders now respond to each part of the toggle (yay!)
    Sadly still no LED action....

    Not sure about the second part of your comment, should I add a line of code like this:
    sysButton[8] =[0xF7]

    Below this line :
    sysButton[] = [0xF0,0x00,0x20,0x29,0x02,0x11,0x7B,0x00]
    ?

    No, I think I read that part wrong. The manual suggests:

    Set LEDs

    System Exclusive messages can be used to set the LED values for any button or pot in any template, regardless of which template is currently selected. This is done using the following message:

    Hex version F0h 00h 20h 29h 02h 11h 78h Template Index Value F7h
    Dec version 240 0 32 41 2 17 120 Template Index Value 247

    Where Template is 00h-07h (0-7) for the 8 user templates,
    and 08h-0Fh (8-15) for the 8 factory templates;

    Index is the index of the button or pot (see below);
    Value is the velocity byte that defines the brightness values of both the red and green LEDs.

    I think sysButton[9] is the critical "Value" that sets the LED brightness so set that to 127 for an ON and 0 for OFF. So, change @_Ki's code from:

    for template = 0 to 2
      sysButton[6] = template
      sysButton[7] = MIDIChannel  // Button index
      if MIDIByte3 = 0
        sysButton[8] = 127        // LED on
      else
        sysButton[8] = 0          // LED off
      endif      
      SendSysex sysButton, 9
    endfor
    

    To:

    for template = 0 to 2
      sysButton[7] = template
      sysButton[8] = MIDIChannel  // Button index
      if MIDIByte3 = 0
        sysButton[9] = 127        // LED on
      else
        sysButton[9] = 0          // LED off
      endif      
      SendSysex sysButton, 10
    endfor
    

    That missing byte in @_Ki's code threw his indexes off by 1 in this section of code.

  • _ki_ki
    edited January 2020

    @McD and @drewinnit
    Regarding the sysex:

    From the Moziac Manual v1.3 sysex send example on page 40 and 41, i understood that the SendSysex automatically will add the 0xF0 header and 0xF7 trailer of a sysex message and that the count only contains the 'inner' data bytes.

    For example, to set the filter cutoff on a vintage Juno 106 to 64, you'd send the following Sysex message:
    0xF0 0x41 0x32 0x00 0x05 0x40 0xF7
    ...
    value = GetKnobValue 0
    data = [0x41, 0x32, 0x00, 0x05, value]
    SendSysex data, 5
    

    so for your LaunchControl XL which needs

    F0h 00h 20h 29h 02h 11h 78h Template Index Value F7h
      or
    0xF0 0x00 0x20 0x29 0x02 0x11 0x78 <TempIdx> <Index> <Value> 0xF7
    

    that would start with the 0x00 i specified and end with the value excluding the 0xF7 as in my initial code.

    No idea why adding 0xF0 changes anything on your side, as this should not work at all, since neither the indices nor the length of the message were adapted. The script also is not intended to send to AUMs faders.

    I just re-checked my code using a Midi Monitor. My initial code sends out the sysex message when CC#0 val 0 is received on channel 0 - which should be the message for button 0 mute on

    F0 00 20 29 02 11 7B 00 00 7F F7
    F0 00 20 29 02 11 7B 01 00 7F F7
    F0 00 20 29 02 11 7B 02 00 7F F7
    

    That messages sets the LED for first button of the upper row to ON (value 7F) for templates 1-3 if the linked manual (page 7) is correct and your launchpad buttons are in toggle mode as you stated.

    .

    BTW what do you mean that the faders now react ? The script only should set the button LEDs of the launchcontrol, nothing else, it should not interfere with AUMs faders.

    Setup instructions
    Starting from your regular setup, where the volume mutes work (controller buttons send CC#3 on various channels, launchcontrol is routed to AUMs midi control, each of AUMs channel volumes is automated by the CC#3 of a specific channel) - pressing a launchcontrol should mute/unmute the volume as before.

    Now add Mozaic, load the initial script from above and additionally route the launchcontrol to the script using the midi matrix and also route the scripts output back to launchcontrol. The scripts output is not routed to midi control, only to the launchcontrol.

  • McDMcD
    edited January 2020

    @_ki said:
    From the Moziac Manual v1.3 sysex send example on page 40 and 41, i understood that the SendSysex automatically will add the 0xF0 header and 0xF7 trailer of a sysex message and that the count only contains the 'inner' data bytes.

    Aha! Never mind then. My mangling of @_ki's sysex message might have stumped on another sysex message related to the reported fader change.
    Sending malformed Sysex messages is probably not a great idea.

  • Thank you both for your code and assistance

    I’ve loaded the original script as suggested in the most recent post. The faders stop responding to the midi cc once mozaic is routed back to the launchcontrol. no LED action at all.

    Seems such a simple concept but it just isn’t working.

    For some strange reason, changing the sysex slightly as suggested by McD, enabled the faders to work on just user template 2 still without LEDs but i had the visual feedback of the mozaic pads saying muted when they were. Perhaps this is the best solution for now, unless this “malformed” sysex might be harmful?

  • I had a quick look at _ki’s script and it looks correct to me. I can’t test because I don’t have the hardware, but the Sysex handling does It’s thing as expected

  • edited January 2020

    thanks for taking a look and confirming, and thank you also for your incredible apps - I'm not exaggerating when I say that your drum machines, synths and Rozetta were very much the reason I originally invested in an iPad :)

    I'm going to spend time this weekend trying to troubleshoot, as well as just getting myself familiar with Mozaic and the script language. It's all been a bit rushed, and that's how silly user errors enter into the equation ;)

    I really appreciate the help from you all. I'll report back when I've had a deeper dive

  • _ki_ki
    edited January 2020

    @drewinnit I carefully re-read the launchpad xl manual and found where i misunderstood.

    My sysex toggled the state of the buttons (and not its lights) and therefore probably did resets the press action and the launchcontrol immediately send a mute-off when you pressed a mute button - thats why it didn‘t seem to work :)

    .

    Here a corrected version, including the needed index offset to address the buttons and color defines.

    @OnLoad
      SetShortName {LPLEDS} 
      ShowLayout 2
      LabelPads {Update Launchpad XL LEDs from CC#3  v0.2}
      LabelKnobs { }
      for knob = 0 to 3
        SetKnobValue knob, 0  
        LabelKnob knob, { }
      endfor  
    
      // LED Sysex 
      //       F0h    00h  20h  29h  02h  11h  78h Tmpl Idx  Val   F7h  
      sysButton[] = [0x00,0x20,0x29,0x02,0x11,0x78,0x00,0x00,0x00]
    
      // LED Color constants (see Launchcontrol XL Midi manual, top of page 4)
      LED_OFF = 12
      LED_ON  = 62   // YELLOW FULL  
    @End
    
    @OnMidiCC
      if MIDIByte2 = 3
        LatchPad MIDIChannel, (MIDIByte3 = 0)
        if MIDIByte3 = 0
          LabelPad MIDIChannel,{Muted}
        else
          LabelPad MIDIChannel, { } 
        endif      
    
        for template = 0 to 2
          sysButton[6] = template
          sysButton[7] = 16 + MIDIChannel // Button index with offset
          if MIDIByte3 = 0
            sysButton[8] = LED_ON
          else
            sysButton[8] = LED_OFF
          endif      
          SendSysex sysButton, 9
        endfor
      endif
    @End  
    

    I hope that the lower button row corresponds to channel 0-7, and the upper row to 8-15. Otherwise the script will light the button of the wrong row. I then can add some code to fix this.

    For debugging i implemented another script posing as fake LaunchControl XL, sending out the CC3 to the main script and now also receiving the sysex from the main script to toggle its pad lighting B)

  • edited January 2020

    @_ki you're a gentleman and a scholar. I really appreciate the time you've taken to help me.

    Your latest code was 99% there, I made two small changes - I inverted the led on and off values, so that the button is lit when it is unmuted, and I also shifted the index value up by 16 - like you mentioned it was affecting the wrong row of buttons. Full code pasted below as reference

    My only remaining question is whether you have a Paypal? I’d love to buy you some beer/coffee to show my appreciation. you've saved me hours of head scratching!

    @OnLoad
      SetShortName {LPLEDS} 
      ShowLayout 2
      LabelPads {Update Launchpad XL LEDs from CC#3  v1}
      LabelKnobs { }
      for knob = 0 to 3
        SetKnobValue knob, 0  
        LabelKnob knob, { }
      endfor  
    
      // LED Sysex 
      //       F0h    00h  20h  29h  02h  11h  78h Tmpl Idx  Val   F7h  
      sysButton[] = [0x00,0x20,0x29,0x02,0x11,0x78,0x00,0x00,0x00]
    
      // LED Color constants (see Launchcontrol XL Midi manual, top of page 4)
      LED_OFF = 62
      LED_ON  = 12   // YELLOW FULL  
    @End
    
    @OnMidiCC
      if MIDIByte2 = 3
        LatchPad MIDIChannel, (MIDIByte3 = 0)
        if MIDIByte3 = 0
          LabelPad MIDIChannel,{Muted}
        else
          LabelPad MIDIChannel, { } 
        endif      
    
        for template = 0 to 2
          sysButton[6] = template
          sysButton[7] = 24 + MIDIChannel // Button index with offset
          if MIDIByte3 = 0
            sysButton[8] = LED_ON
          else
            sysButton[8] = LED_OFF
          endif      
          SendSysex sysButton, 9
        endfor
      endif
    @End
    
  • _ki_ki
    edited January 2020

    @drewinnit Cool that it‘s working now :) Also thanks for offering a coffee. I don't want any compensation, I enjoy puzzling around such topics and so far I haven't had anything that uses sysex in Mozaic - this task was a short diversion from the larger scripts I'm still struggling to finish.

    .

    Could you edit your posting and put three ` backward slanted apostrophes infront of the @OnLoad without spaces inbetween them and also three of them after the last @End - the forum will then use a code style for everything in between and make it easier to read and copy and it will correctly reproduce the indentations.
    Using my iPad onscreen keyboard, i have to change to symbols using the .?123 key. Then holding the forward slanted apostrophe (located where letter k normally is) will show a popup containing the needed backward slanted variant

    BTW: While you are editing ou message, you can also change the version number to v1.0 in the LabelPads command since the script now works and is out of beta B)

  • McDMcD
    edited January 2020

    The Novation Launch Control XL ($149 Sweetwater) looks like it might be a handy hardware extension for iPad users:

    I did see a Mosaic script for the Novation Launchpad (several models available):

    I'd imagine I would use knobs and sliders more than PADs and 16 PADS would be enough for me.

    It might me nice to make a library of scripts to use these devices with our iPads via Mosaic.

    They would also make interesting HUI's for Mosaic scripting in general since i find on screen knob tweaking to be frustrating for live/recording uses. Having a physical knob that you can adjust slowly would insure a better result.

    On another note: has anyone connected a better App for on-screen "knobs/sliders" into Mosaic? Any recommendations?

Sign In or Register to comment.