Loopy Pro: Create music, your way.
What is Loopy Pro? — Loopy Pro is a powerful, flexible, and intuitive live looper, sampler, clip launcher and DAW for iPhone and iPad. At its core, it allows you to record and layer sounds in real-time to create complex musical arrangements. But it doesn’t stop there—Loopy Pro offers advanced tools to customize your workflow, build dynamic performance setups, and create a seamless connection between instruments, effects, and external gear.
Use it for live looping, sequencing, arranging, mixing, and much more. Whether you're a live performer, a producer, or just experimenting with sound, Loopy Pro helps you take control of your creative process.
Download on the App StoreLoopy Pro is your all-in-one musical toolkit. Try it for free today.
Comments
Does it have to be a knob? This seems like a better job for a pad:
Use translatescale
A pad would totally be better for this, but the 4 pads in the layout I'm using are for controlling the record, erase, rewind, and pause buttons of all 8 loopers at once. Then there are knobs for all 8 loopers at once for: loop decay, loop length, warble, speed, snap speed. I want the bottom 5 knobs to then be for snapping to -1, -.5, .125, .5, 1. I've got it pretty much working, I think, but sometimes the bottom 5 snap knobs don't work after to many changes. I think it's an issue with Gauss, though.
@espiegel123 Thanks!
An alternative might be something like:
Awesome. I'll toy around with that. I'm getting the hand of some of the more simple stuff. Thanks!
And instead of fleshing out all the 'etc.'s could do something like below. Easier to make changes when you write it this way, e.g., if you decided you wanted to send value of 3 instead of 2 you have to edit only 1 line instead of 8 lines.
Oh man. That changes everything. My current code is so long cause there’s an entry for each individual knob. Haha. Thank you!
Also, I have an idea that I don’t know if it’s possible. Basically, I want to control 8 different knobs with the XY pad, but only one at a time. What I envision is that the Y axis chooses the CC# to send out on, and the X axis is the value. So, for example, between Y axis values 0-15, the X axis will send out values on CC 11, between Y axis values 16-31, the X axis will send out values on CC 12, etc. I want to control 8 different Pan knobs at once in a fluid control scheme.
I think the easiest way to do that is to send out the CC messages directly from the
@OnXYChange
event, then to also update the knob positions from there too. But you'll also want to update the XY pad when you move knobs, so something like:Could this be done without the knobs? I’d be using the sliders on the template for volume. Could I just use the inequality symbols the same way you did?
Sure, you don't need the knobs at all if you're using the XY pad. I only wrote out that part of the code because you had said you wanted to control knobs, which I assumed were Mozaic knobs.
Ah. No, I meant the balance knobs in AUM itself. Thank you so much for your help.
Update: Holy crap it worked like a friggin' charm. You rock. Once I'm done these things, I'll share them.
@wim @espiegel123
Thanks to you two, I was able to make my scripts and they worked! You can check them out here: https://patchstorage.com/gauss-8-track/
The code is probably longer than it needs to be, but it works. There are a few things I want to figure out how to do, but for now, this thing works swimmingly!
Thank you!
This looks great, I’ll give it a go when I can, well done diving in there!
Let me know how it works for you. I'm trying to quell my itch for a multitrack tape machine and this seemed to be the best way to do it!
Edit: @Krupa I just updated the ZIP as I forgot to map Inertia and needed to add an erase module.
Sweet, it's likely to be tomorrow now as the day's mostly escaped me so far, I'll let you know for sure
Fastest onboarding ever for someone starting from zero with Mozaic. Nice job!
Thanks! I just updated to v1. 4 of the scripts as I was using it and making edits and such. Now to figure out how to do coloring, default values on load, and linking certain ones together!
Great work!
Nice job. I'm curious how this is integrated to your looping. I haven't really figured out looping or Gauss very well. Is this intended to be tweaked while playing-in a loop, or quickly tweaked between playing-in one loop and playing-in the next? Or do you play-in some loops with an instrument, and then stop and tweak things on Mozaic for some "live tweaking" loops with no instrument-playing? I assume the latter, but maybe I misunderstand things and my questions don't even make sense?
How do you assign the SendPitchBend to a knob to get it to work right?
When I use it to send the signal to Korg Gadget it just gives me a range of 0 to about 2. In other words the resulting automation line is all the way at the bottom, with a small bump up.
When I use the X/Y example in the manual it works fine, so apparently for whatever reason it’s just the value when using a knob.
I’ve tried the * 128 like it has for the X/Y example, and without, and neither works giving what I mentioned above.
So apparently the X/Y pad’s values are -64 to 64, while the range for knobs is 0-127.
So I guess the question to ask is: How do you change the value range of a knob to -64 to 64?
@slicetwo I’ve only had a wee play with my guitar but already works really damn nice 👍
Sorry, but that's incorrect. X and Y go from 0 to 127 just like knobs do.
But I don't think that's the solution to your problem. Something else is wrong. Can you post the snippet of code where you're trying to use a knob to send pitch-bend? I see no reason why the code below shouldn't work.
I would also round the result
bend = Round ( (GetKnobValue 0) * 128 )
. The XY example doesn't do this, but pitch-bend should never send decimal values.Thanks! Parenthesis did it.
value = (GetKnobValue 0) * 128
SendMIDIPitchBend 1, value
I had it without, like the XY example in the manual, which doesn’t have the “0” to specify which XY like the knobs do.
And yes I am a newbie at this.
In case anyone was wondering, most (if not all) Gadgets in Korg Gadget have pitch bend, so this can be used to fine tune Gadgets that don’t already have a fine tune knob (there’s a few that do). Though you can just draw in the automation as well.
That's a good question and I have no real endgame on this! Haha. I just wanted to make something where I could use Gauss' freeform looping and tape FX to make whatever. Some may use it for live stuff, some for sound design. Maybe take one note of a pad and make a slowly evolving pattern with all 8 at different speeds. Who knows!?
@Krupa Excellent to hear! I'm working on adding a few more modules. This would be so much easier with something like Lemur or MDP2, but Lemur is basically abandoned and MDP2 is to expensive for how ugly it is, haha.
Yeh, I had to learn that the hard way too. Basically, every time you're "nesting" a function inside another and that function has spaces or commas, you need to surround the sub-function in parenthesis. 👍🏼
Great stuff, though I’m not sure how much more functionality it needs, one thing I did think when I just went back to it now was that when you’re doing something like engaging overdub or record, it’d be great to have the pads indicate what’s going on with colour changes - I know when I was breaking my mind making a Dixie sequencer last year with it, colouring stuff really helped a lot as I could see what was happening visually.
I agree. I want to color a lot of stuff, buuuuuuuut I don't know how to do it. Haha. If you wanted to add color to that module and share the code, I could apply it to all the others! 😉
I've just looked at my script and I'm using the ColorPad function - [ColorPad x, c] where x is the pad you want to change and c is the colour (there's a list in the manual from memory) so that bit's quite easy. It's keeping track of what's what that always gets me, but generally if you do the colouring at the same time as you do the change, it shouldn't be too bad, and (sensibly) you've split functionality between scripts so you don't have to redo it as much as my sequencer had to (it had several pages, and keeping track of stuff was what broke my mind)
Looking at yours, for instance the RecDub script, I'd say put it in the bit where you're doing the [if LastPad / sendMIDICC] bits... I'm not sure how you're checking the current state of those things though so I've managed to add a colour change but not to toggle them
So I did this and it worked, but now I can't figure how to get it to go back to white when I toggle it off. Guess I'll have to see how that works. Thanks!