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
No, I’ll try later. Was just sitting down for a little play before I have to do some work. Haven’t noticed this before though, and I’ve been playing with Mozaic a lot in the last week. It seemed to come out of nowhere. Will reboot later and try again when I get a break.
@brambos , I hope you will also look at the presetmanager in Mozaic; see picture: after opening LOAD the presetbank is not selected (in this case User Patches) and the presets aren't sorted (it looks like alphabetically first and then the latest downloads....).
ps. I asked this before, but I hope you'll consider making (renaming and deleting) new userbanks possible...
I think I may have found the issue. Seems to have snuck into the latest update indeed
2.0 of my Chord Magic script now uploaded, along with deno/walkthrough:
https://patchstorage.com/chord-magic/
This is a major update, now allowing up to 16 sequenceable scenes, each with one chord sequence and 3 programmable patterns (following the chords). It now also takes advantage of the new pad labels, making it more intuitive than before (I hope)
Or have a SendMIDIThruMask call that takes a bitmask as one of its arguments.
That way you could predefine
MIDINOTE = 1
MIDICC = 2
MIDIPB = 4
MIDIPC = 8
etc.
Then to create a custom bitmask to specify what message types are passed through, the script writer could assign something like
midithrubitmask = MIDICC | MIDIPB
Anything not included is excluded.
Humm. > @Harro said:
I think the issue here is the sort is case-sensitive and should not be.
Not needed IMO. It only saves two lines:
@TheOriginalPaulB
Thought about a mask filter but it adds new code that we don’t really need
@wim
Yes at least no new code, but if there is a note on/off handler these 2 lines should’t even be there imo
My point is that a simple script with just a note on/off handler should still forward all other msg by default. I want my pitch bends, modulations,.. reach the destination synth, and if really I need to filter something I’ll add another plug that will take care off this.
Otherwise I will have to look at the source code and change the plugs behavior, not fun when you are not in that mood.
While it’s true that inexperienced script makers aren’t necessarily going to think of things like specifically passing things through, I think Bram was wise to default to not pass anything unless specifically allowed. I think there’s more potential for screwup if beginners need to remember to block things that shouldn’t go through.
Yeah.. this was a conscious decision right from the start. There are basically two approaches: either you block implicitly (and have to forward manually) or you forward implicitly (and have to block/filter manually). I chose the first approach because that's also the way most of my Rozeta plugins work.
Hmm, there is a difference, as an au host doesn't know if you are dealing with the events, while your interpreter knows it.
Anyway, no big deal for me as I only use
@OnMidiInput
so I'm not even concerned, just thinking about beginners. Less code is better ... lazyBtw, would a switch statement be so horrible to implement ?
That would be sweet!
New version of the Scale Compendium up on patchstorage.com I’ve added two blues scales,by request, and, @Jumpercollins, now the version number in the description is correct.
That’s a whole ‘nother universe of sound possibilities that I can’t claim to understand, in part because some of the math involved is above my pay grade. But it is something that interests me, so maybe at some point I’ll attempt something along those lines. For my own use, I can see myself using Just intonation or Pythagorean tuning. Apart from that I don’t know what i’m doing...the Audiokit synths have some nice microtonal stuff built in...that stuff’s open source, right? It might be possible to adapt that to Mozaic...just spitballing here....
I like this idea a lot. In fact this is the way I would have done it but I didn’t want to have to type in the hundreds of lines of code to implement it. Now if @brambos would give us string variables, I could do this with just a few lines of code.
Great stuff, thank you! I’ll be rewriting the midi handling stuff along these lines as soon as I get a chance.
Yeah, I hear what you’re saying. I guess I wouldn’t use this mode for live playing for just that reason. I mainly developed this script to use with generative processes where I want to make sure that the random notes generated fit within a given scale. In this use case the various quantitization “styles” I developed are intended to shape the incoming random data in different ways. Obviously if the incoming note happens to be in the scale, that’s great, but what to do with the out-of-scale notes? Each of the quantitization styles will sound slightly different being fed The same static sequence, or even if fed random notes with a constant probability distribution.
This is a cool idea. I don’t think it would be too hard to implement ascending and descending scales. I might try that in the future.
@Bryan, yes lot's of fun stuff to create, and with Mozaic it's fairly quick and simple
I'm wondering if the Audiokit guys will create a scripting au3 plug for audio, could be fun too.
They made playgrounds for iOS, but it's a bit limited .. we'll see.
I'm a bit lazy going deeper on swift and iOS/osx planet, but once Synth One is AU I will probably have a try with Xcode
music on iOS is really getting more and more fun
@brambos
I was wondering why you created your own interpreter, wasn't JavaScriptCore an option ?
Now I'm not sure you can add your own libraries.
That's what I did with mfxscript, just used the vbscript engine from windows, all I had to do was to implement the mfx midi functions, but the rest was already there, including string arrays and select case statement
Holy crap! This is amazing! What you have packed into this script is just mind boggling. Great job.
But that's the fun part! And besides, all the other options I investigated were not realtime safe so couldn't run inside the render call. You can't do mallocs and vectors and hold locks and all the other convenient things when you run inside the realtime thread so rolling my own was also the safest bet
Is there any way of changing an ipad file association?
With mozaic Files for me by default it says open in AudioLayer, so I have to scroll to Mozaic to open in that.
Hopefully ipadOS will make these kinds of things easier in the future.
Sure and a lot of headaches , but probably less than depending on third party, especially from apple.
I was wondering, can an AU plug host other AU plugs ? This is badly missing, my aum midi router looks like a spider’s web
Ah nice, was just going to post I was noticing some CPU spikes but I can see there's a fresh update already
And it's made a big difference...
Should also load and initialize much faster now (and take around 8Mb per instance less)
It would be nice it at > @brambos said:
Update solved my radical cpu spikes too.
Nope.
Too bad, but I still would like to see sub Aum’s in Aum or more matrix in ape. I got apematrix thinking you could add as many matrix you wanted, didn’t think a single second it was limited, my bad
If I'm not mistaken it should in theory be possible to 're-create' an app such as Cality using Mozaic?!
In theory yes. I don't know the detailed functionality of Cality, but from what I know the general concept should be possible.
@Samu
There are no limits !
And if needed we can always record some incomming events, and then do some manipulation which is limited or impossible in realtime, like shortening notes, pitch shifting, sliding,.. to the next note, auto chord and scale detection, ...
Is my ipad cpu a little high ?
log 0x0FFF7F7F
log 268402559
//both show 268402560
Reaching some limits ?
This is a demo of a preset I’m currently working on. If people would like me to share my perspective on how to approach creating patches for Mozaic, let me know and I can do a series of videos on the process from someone who is not a natural programmer.
That sounds cool. I'd be interested in those tutorials.