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.
Sequencer - Hearing audio playing where there are no clips showing
Should the sequencer only ever play audio when the playhead is moving over a color block of audio in one of the rows? (ie: like any basic DAW one would be familiar with)?
I'm experiencing the sequencer playing audio at the beginning while the playhead is moving over entirely empty rows (nothing in 1 through 13, but hearing audio).
Thanks
Comments
Check the loops view. Loops will still play if enabled on the loop screen even if the sequencer is in control. This is to allow you to "jam" loops over an existing sequence. Play actions are also respected I believe. Sometimes those can be lurking where I forgot I put them.
If the sequencer transport is set to its default (long-press the play button up check) then stopping the transport should set tue play state of clips to what they are at the beginning of the sequence — follow actions or midi bindings might put clips into the play state.
As wim says, it is designed so that you can sequence and live loop at once.
Okay, thanks to you both. I've mentioned previously the benefits of a state-machine reset option and I think this is another case where it would come in handy. There are many times when one wants to "start fresh" from a state perspective
Thanks
Once I think I have a layout that works well, I immediately clear all the loops and sequence and save it as a template. From then in I always have a known state to start from.
If I find things that need fine tuning, I make a new project from the template, tweak it, and save it as a new version template. Once I’m comfortable enough that all is well I remove the older version template, but that is optional. Sometimes I keep them for some time.
@wim, good idea and appreciate your sharing that and I have some similar techniques for when I'm starting a new idea/project.
What I'm wondering about is the situation where you are in the middle of working on a complex project with multiple actions being triggered and those actions happen based on certain delays and/or having stopped things in the middle of the song...one often wants to reset the state machine to avoid things being in an unexpected or intermediate state.
Maybe I'm using Loopy Pro differently than most, but I'm creating structured songs (verse, chorus, etc) and once I'm done I'm triggering parts (typically play groups) in a certain order using a midi controller. Even after my song is done and I'm playing through it, if I stop in the middle for some reason and want to re-start from the beginning, I could use this state-machine reset in order to avoid actions happening after I hit pause (ie: based on delayed triggers).
Thanks
This is all very abstract… if you provide an actual example, we can help you. If you want to avoid delayed triggers when stopping there is an action that does that: Cancel Pending Actions.
Since there are many different ways one might set up a project…other than completely resetting by going back to the templates initial state, there isn’t a well-define meaning to “resetting the state machine” that would apply to all use-cases.
If creating a new project from your template or reverting to the initial save point is more of a reset than you want, I think it will be a matter of you setting up actions that create what you consider the clean state.
Good point @espiegel123. I agree it's abstract currently, but that's expected given that we've only had a few quick forum posts about it.
I appreciate your pointing out that "Cancel Pending Actions" action. Do you have guidance on how to setup a default for doing "Cancel Pending Actions" when play is paused / stopped
Thanks
I suggest creating a widget with the actions you need and trigger it from a stop clock follow action.
Will try that, thanks
@espiegel123, I couldn't figure out how to do this, any specific guidance appreciated
Which part couldn’t you figure out? Are you unsure what actions the widget needs or how to create a stop clock follow action?
For the former, I’d need to know about all the things you want to happen when the transport stops. To set the required follow action, go to Control Settings-> Project-Wide Follow Actions
Thanks @espiegel123, it was indeed the latter, thanks for the pointer.
Earlier in this thread you suggested:
_ If you want to avoid delayed triggers when stopping there is an action that does that: Cancel Pending Actions._
I believe you are suggesting that I create a stop clock follow action of 'Cancel Pending Actions' and set this up by going to Control Settings-> Project-Wide Follow Actions, which I'll try to do.
Thanks
I am suggesting that you create a button that contains all the actions to perform when the clock stops and to trigger the widget from the stop clock follow action. It is easier to test and refine the action sequence when it is in a widget than when you need to edit the follow action itself.
It won't be as simple as a single "Cancel Pending Actions" action @danm. You'll need to trigger whatever actions you need in order to reset things to a known state.
@danm - this may be of help for some things you might need to do:
https://wiki.loopypro.com/Save_And_Restore_Parameter_Actions
I'm trying to wrap my head around what a "state machine reset" would look like. The equivalent of Restore Save Point (as in the optional Save Points feature) is all that comes to mind. I have the feeling that isn't what you're after as a save point includes everything, including recorded loop state. But would something like that be close?
The idea is nebulous to me. How would you define what is included in a "state"? Loop contents? AUv3 parameters? Mixer levels? Midi routings? Tempo? Metronome? ... the list could go on forever and it seems like everyone could have a different idea of what they'd want reset or not.
No need to answer, since it's not available anyway. It's got my curiosity up though.
Appreciate it @wim ... I agree with you that I'm not entirely clear on what the requirements would be, as I haven't yet thought it through much and (probably more so) don't fully understand how some of these things work in LP yet.
Given how much more you and others know about Loopy Pro, it probably makes more sense to describe what the issue is and let you and others offer thoughts on potential solutions.
To give some context, the scope of what I'm talking about is related to working on setting up buttons to play each part of a song I'm working on (ie: Intro button, Verse button, Chorus button, etc). Each button typically includes several actions that turn clips off and on based on some delays.
The process to get the actions for each specific button set up correctly involves:
a. Modifying a button's config, as an example let's say I've completed working on the "Intro" button (to play the clips in the "Intro") and now am working on the "Verse" button, which triggers the audio clips of the clips in the "Verse"
b. Once I think I have things configured on the button that is a work-in-progress, I'll try to test the modifications I made to this button (Verse button in this case), by playing through the song from the beginning. So, I'll hit the Intro button, then at some point hit the Verse button.
When the Verse button starts to trigger actions and I realize that something is misconfigured in the verse button, then I hit pause, but often times, it's hard to figure out what state things are in at that point, because the delayed actions continue to be triggered even after I've paused playing ...
And if I try to click the "Intro" button again, things might not be in the state I expect (since I abandoned play through mid way)
Also sometimes when I go back to start from the beginning of the song and push the "Intro" button, there are clips that will play unexpectedly in other parts of the project (even tho I'd like those other clips to be off until I push their respective button) due to the fact that they were triggered and turned on in some way by a prior actions or delayed actions, during the aborted play through.
So, the "reset the state machine" idea is to basically be able to (at various points) tell LP to capture the current state of all the clips (and possibly other widgets) ie: are they on or off, etc... so that later I can tell LP to "reset the state machine" to this state and short-circuit/stop any delayed triggers that may be pending and have the state of the clips be reset to how I expect when I'm about to start playing the song from beginning.
Basically, it's a deterministic way to 'reset' back to how I want things to be when I hit the "Intro" button and start playing from the beginning again.
This idea is similar to save points, but it is much less resource intensive and is different because it doesn't have to do with specific content/audio of a clip, but rather the meta data/state of that clip. So, whether a row of clips in the section of a song has all the clips filled with audio at some point during the process or only one or two clips recorded at some other point, that isn't relevant in the 'resetting the state machine' behavior (but it would entirely change what gets captured in a save point, obviously).
I realize this may not be a clear enough description and/or may simply be too detailed for most people to want to read, but wanted to answer @wim and provide a bit more context.
Thanks
@danm : a few things:
“Resetting the state machine” as you are thinking of it, largely is going to be a matter of your setting up a widget that sets everything to your desired initial state.
From what you describe, it sounds like you are also encountering some unexpected results. I would suggest taking those one at a time and understanding why it is behaving as it is. There may be cases where you have found a bug that we need to address and in some cases it may be due to a misunderstanding.
If you’ve got a project not working as you expect, let’s take it one problem at a time — starting with the first problematic behavior. Sometimes later problems are the fruit of an earlier one.
Thanks @danm for taking the time to detail your use case.
Could you shed some light on why you're approaching playing a song using buttons and delayed actions rather than using the timeline? I'm sure you have reasons. Understanding them may help flush out some solutions.
My first hesitation is over using delayed actions. I would guess that you're setting this up to trigger clips to start playing at the time in the sequence of that song section that you need them to. That approach seems like a lot of work and could make a "state reset" really difficult. I wonder if setting follow actions on each clip might not be better. Clip A set to repeat six times, then on stop triggers Clip B ... that kind of thing. If there's a chain of events like that, rather than delayed actions, resetting state might be as simple as stopping all clips, then starting the first in the chain.
Also, if the order of clips is fixed, and I assume it must be if you're setting up buttons, then perhaps resampling them in the right play order to one long clip representing the song section might be another approach. Re structuring a song section could be as easy as doing one successful resample to overwrite the previous song section clip.
Just tossing ideas out there. As @espiegel123 mentioned, short of picking apart the problems methodically one-by-one, it's hard to hazard guesses at the best approach, and there is also always the possibility that a bug is complicating things.
@danm @wim I think we need to see the actual project and settings before speculating too much about solutions.
In any case, cancel pending actions and cancel count ins/outs are often valuable for stopping a queued set of actions…you may sometimes need multiple calls to these. I have a number of projects where they are used. I always put them in a widget for ease of testing and modifying.
I also often have a reset project button that puts things into the right state.
I think brainstorming possible different approaches and asking questions about why things are being done as they are is equally beneficial. Thanks for trying to keep the conversation focused though. I'll leave you to it.
Thanks @wim and @espiegel123. Appreciate all this discussion.
I think I'm going to try focusing more on follow actions than delays and see how that goes.
Also, I want to explore cancel pending actions and cancel count ins/outs more, what would you say is the best explanation of these (manual, wiki, discord, forum, youtube vid)? A couple specific pointers to what you think is most useful in explaining these things would help me focus my attention there.
Thanks again
For looking things up, I suggest looking in the manual first (it has a search field and you can search/find text as on any browser page) then the wiki then looking elsewhere.
It looks like Cancel Pending Actions isn’t in the manual (which I will address). It cancels any scheduled actions that haven’t been performed.
Cancel In/Outs is in the manual.
Thanks @espiegel123, that's why I was asking because after your initial (and subsequent) posts, I couldn't find anything about Cancel Pending Actions. Appreciate your adding that.
Yes, I usually check the manual first, then the forum, then the wiki.
Thanks
If you see that something isn’t in the manual, please let me know.
Think of the wiki as a companion of the manual. I’d check there before the forum.
@espiegel123, I will let you know if something isn't in the manual.
But what I'm expressing, above, is that I wasn't clear from your post if what you were referring to (Cancel Pending Actions) was a general idea, a specific feature that would be covered in the manual, or what...So that's why I did an exhaustive search and asked more followups and didn't just express "it's not in the manual"...because I wasn't clear exactly what "it" was yet :-)
Thanks
When I said "there is an action that does that: Cancel Pending Actions" I was trying to tell you that there is an action called Cancel Pending Actions. I've added it to the manual -- and in the process of doing that discovered that there are a handful of actions that aren't in the manual which I will fix over the coming weeks.
Type 'Can' in the search field of the actions list you get when adding actions to widgets and bindings to find it.