PATTERN HOLD toggle button on the Pattern Set Screen

Suggest and discuss new features here.
Folkdisco
Posts: 39
Joined: Tue Dec 12, 2017 4:04 pm

PATTERN HOLD toggle button on the Pattern Set Screen

Postby Folkdisco » Mon Feb 12, 2018 1:34 am

Firstly, unlike midi import, I don't think anyone else has, or will ever request this! :-O
But I do believe once they have played with it, lots of people would use it, and possibly even love it.
Especially people with midi controllers, or users wanting to alter the whole sound of a song live and direct, or people wanting to create a new remix of a song, or people used to using a classic DAW, rather than a funky groovebox.
I *think* it would be a *relatively* small change for the increased possibilities, and new options of how to work and play with your wonderful app.
Anyway, here goes…!

THE PROBLEM
If you change any Sampler, Beast and Mixer (SBM) settings, they only stay live until the pattern ends.
When a new pattern begins, all your live SBM settings via screen or midi controller or are saved in the previous pattern, but lost in the continuing song.
Also, if you wish to change a sound across different patterns, you have to manually edit or copy all the relevant data across to the relevant patterns, which isn't so musical.
If you have a 12 or 16 bar loop in a song or chain, all changed settings made within the current pattern jump back twice every loop, every time you start a new pattern.

SOLUTION
A PATTERN HOLD (HOLD for short) toggle button on the pattern set screen.
If HOLD is toggled on, no initial settings for SBM are applied at pattern end/start.
All SBM settings remain from the pattern currently selected when PATTERN HOLD was toggled on.
Also, all new changes to SBM are applied to the HOLD PATTERN, not to the current pattern.
It would probably require some kind of visual marker on an active HOLD PATTERN.
Obviously, the current pattern has sequence data and can have automation, which all works as normal. :-D
Ideally, recording automation would still work, and would put new automation data in the currently playing pattern.
Also *ideally*, presses of PATTERN HOLD could be recorded in automation too.

This would allow you to make ongoing radical changes to the mix, which would carry on through different patterns, rather than the mix being reset with each new pattern, even as the song, chain, or manual pattern select moves through different patterns.
This behaviour would continue until the HOLD button is toggled off.
Nothing would initially change, until a new pattern begins, setting SBM as usual.

This would also allow you to preset one of several different soundscapes and remixes for the same song, before pressing PATTERN HOLD and playing the song.

Every song requires an initial sound bootup, so PATTERN HOLD should be automatically toggled off as a new song is loaded, to set up SBM with the fresh song data.

PATTERN HOLD sort of works as a name, but I am not totally sure what to call this!
Alternative names for this could be HOLD PATTERN, HOLD SETTINGS, BASE PATTERN, INHERIT, or SETTINGS PERSIST.

From my limited understanding, I think this idea conforms to how GSS internals work, but there will definitely be complications I am unaware of!
Eg. There are definitely things in the Timing & Measure screen which relate to sequence data, and other things like BPM which would *probably* be HOLD PATTERN settings.

As always, I am sure there are a lot of things on your to-do list!
Keep up the good stuff, and is there any chance I could join your beta programme, if you have one?
User avatar
planet-h
Posts: 1067
Joined: Wed Jun 19, 2013 4:46 pm
Contact:

Re: PATTERN HOLD toggle button on the Pattern Set Screen

Postby planet-h » Mon Feb 12, 2018 7:23 am

Thanks for your message, Folkdisco.
What you're looking for is a "Lock Everything" feature, similar to the "Lock Master" in the master section.
Or in other words, the set of parameters, sounds and everything should be switchable between pattern (the normal behavior) and pattern set.

Theoretically this would be possible, but not with being locked to a specific pattern.
Please check out the "Lock Master" feature, then you'll see how it could work.

If locked, the master screen remains as it is until you turn it off again.
FYI, Automation curves are not working in the master while locked, for some serious reasons.
While locked, you can do any changes you want, but these will only exist as long as the "Lock Master" switch is enabled.
If you turn it off again, all the changes you did in between will be gone.

And, yes, I absolutely see the benefit of such a "Lock" feature.
To be honest, I've missed exactly that feature during the tests of the MIDI importer;)
Folkdisco
Posts: 39
Joined: Tue Dec 12, 2017 4:04 pm

Re: PATTERN HOLD toggle button on the Pattern Set Screen

Postby Folkdisco » Wed Feb 14, 2018 3:51 am

D'oh! "LOCK" is a better term than HOLD or any of my others!
And yes, Lock Master is very relevant here. It's one of those things, where I was thinking "I wish GSS did this", and it already does. :-)

planet-h: "Theoretically this would be possible, but not with being locked to a specific pattern."
The reason for my suggestion of locking settings to a pattern, was because I thought this would fit easier into how *I think* GSS currently works... Always taking settings from a single active pattern?.
If it is possible, or even easier, to press LOCK, and settings not be saved, and abandoned at the end of the lock, then I would be more than happy.
I think this would probably be the behaviour expected by most users.

I do think switching out of LOCK at the next pattern end/start would almost always be more musical than switching back immediately.

planet-h: "FYI, Automation curves are not working in the master while locked, for some serious reasons."
I can see that I may originally have automated parameter 3 of a delay, which under lock, is now parameter 3 of an overdrive or eq, etc.
Obviously, there might be a whole load of other serious reasons automation doesn't work for master, and maybe can't work for a general LOCK feature.
IMHO, this would be a shame, as I really like the idea of being able to automate under LOCK conditions, even if things get a bit random sometimes.
I do quite like a bit of random!
Usually!

planet-h: "And, yes, I absolutely see the benefit of such a "Lock" feature.
To be honest, I've missed exactly that feature during the tests of the MIDI importer;)"
It's good to know I'm not completely barking up my own tree here! :-D

Also, I'm going to quote Riche, who might be interested in locking his patterns.
riche wrote:Is there a - no edit - just play mode when using pattern sets.
User avatar
planet-h
Posts: 1067
Joined: Wed Jun 19, 2013 4:46 pm
Contact:

Re: PATTERN HOLD toggle button on the Pattern Set Screen

Postby planet-h » Wed Feb 14, 2018 7:48 am

Thanks a lot for the detailed explanation, Folkdisco.
It looks like you have thought deeper about it than I did;)

Folkdisco wrote:The reason for my suggestion of locking settings to a pattern, was because I thought this would fit easier into how *I think* GSS currently works... Always taking settings from a single active pattern?.

100% agree, yes.
Having an un-bound pattern (a pattern that is not part of the pattern set) could easily do the job.
Such a pattern could be copied from the currently running in the moment you hit the "lock" switch and then just be switched at the end of the next pattern cycle.

Folkdisco wrote:If it is possible, or even easier, to press LOCK, and settings not be saved, and abandoned at the end of the lock, then I would be more than happy.
I think this would probably be the behaviour expected by most users.

That would definitely the easiest way to handle it.

Folkdisco wrote:I do think switching out of LOCK at the next pattern end/start would almost always be more musical than switching back immediately.

Also here, fully agree.
That could be handled easily, as the logic is already there. When you load a new pattern from storage, it behaves exactly that way.

Folkdisco wrote:I can see that I may originally have automated parameter 3 of a delay, which under lock, is now parameter 3 of an overdrive or eq, etc.
Obviously, there might be a whole load of other serious reasons automation doesn't work for master, and maybe can't work for a general LOCK feature.
IMHO, this would be a shame, as I really like the idea of being able to automate under LOCK conditions, even if things get a bit random sometimes.

I have to correct my answer here.
Automation would work (the only exception: the master section, when master is locked while you would have a pattern locked).

Folkdisco wrote:Also, I'm going to quote Riche, who might be interested in locking his patterns.
riche wrote:Is there a - no edit - just play mode when using pattern sets.

This case is a bit more complicated. Technically, it's not a big thing, but I have my doubts that many devices can handle the additional load.
To keep the original pattern while a pattern is selected in the pattern set and then changed during runtime would required to copy the pattern (instead of just using it) when you hit the pattern slot. What holds me off doing this is the fact that the pattern copy process is quite expensive (CPU, Memory). It takes too much time to do it in real-time.
In a live situation, G-Stomper cannot know what pattern slot you hit next, and when you hit it. When you press the new slot at the last bar, and at the last step, then the time won't be enough to create a working copy of the next pattern.

However, I'll surely re-consider it, as it would fit well together with a general "lock" feature.

Thanks again, Folkdisco. Great idea, and well thought out.
User avatar
planet-h
Posts: 1067
Joined: Wed Jun 19, 2013 4:46 pm
Contact:

Re: PATTERN HOLD toggle button on the Pattern Set Screen

Postby planet-h » Wed Feb 14, 2018 8:38 am

After thinking a bit deeper about it, I'd say two new modes (instead of just the lock) would be the most suitable solution.

1: Lock Pattern, or it could also be called "Live Jam" or whatever.
This would be what we discussed before, a single locked pattern with which you can do whatever you're up to as long as it is locked.
Switching to another pattern in the set would automatically turn the lock mode off.
"Lock Pattern" would also cover riche's request in form of some extended switch, which would force into locked mode again after switching to another pattern.
That way you'd be able to tweak every pattern in every way you want, and all changes would be dropped as soon as you switch to another pattern.

2: Lock Everything with exception of the sequences. I don't know a suitable name yet.
This would just lock all parameters (sounds, mixer, master, just everything except the sequences).
In this situation you'd be able to switch patterns in the set as usual, but always keeping the sounds and all other settings.

What you think?
Folkdisco
Posts: 39
Joined: Tue Dec 12, 2017 4:04 pm

Re: PATTERN HOLD toggle button on the Pattern Set Screen

Postby Folkdisco » Fri Feb 16, 2018 3:16 am

The name... How about LOCK ALL, or LOCK ALL SETTINGS, or LOCK SOUNDS.
Today, I would probably choose LOCK SOUNDS.

"To keep the original pattern while a pattern is selected in the pattern set and then changed during runtime would required to copy the pattern (instead of just using it) when you hit the pattern slot. What holds me off doing this is the fact that the pattern copy process is quite expensive (CPU, Memory)."
Yes, I was thinking exactly this, that if the function requires the app to copy all data to a *near mythical* pattern65, that could be quite intensive.
This is what I was trying to avoid by utilising the current playing pattern as a single lock pattern for settings, even as the song moves on to sequence and automation data from other patterns.
I was thinking GSS could set a couple of flags and variables and visually light the lock button near instantaneously, but copying all data to a pattern65 and then using this as a lock pattern would require more CPU and memory time.
I do know that when I perform copy pattern1>pattern2 function on everything but sequence and automation, this takes a small but noticeable amount of time, but that the song continues playing fine in the background.

I think if you press a button, and GSS gets busy (and possibly unresponsive) while it does the work, that's one thing. If it gets busy and unresponsive every time you change patterns, as in Riche's general no-edit mode, that may (or may not) be more problematic.
And like you said there might be problems with Riche's general no-edit mode when someone presses the button very close to the end of a pattern which is about to change. By the time the data is copied, the pattern might be over anyway, but you never know what the user is going to press next.

I can't talk for Riche, but if he can evolve a track by messing up mutes, mixer, sampler and Beast settings, over ongoing patterns, with no current pattern losing its settings, then drop back into the original song at the push of a button....
I suspect this might be a lot more to his liking than the no-edit mode he originally requested!

I don't want to get in the way of you as the developer. I do think it would be useful to be able to keep settings over multiple patterns, and it seems like you were thinking the same thing!
I requested what I think is a low intensity way of implementing this. But as I said before, editing and saving data to a LOCK pattern would be a bit quirky - most users might expect to lose settings when the lock is turned off and the current pattern ends.
It's up to you!

My preference, would be to be able to record a LOCK button press in automation, and for the LOCK to affect song audio export, but I'm probably just getting greedy.
Basically, whatever you said, yes please!
User avatar
planet-h
Posts: 1067
Joined: Wed Jun 19, 2013 4:46 pm
Contact:

Re: PATTERN HOLD toggle button on the Pattern Set Screen

Postby planet-h » Fri Feb 16, 2018 8:06 am

Folkdisco wrote:The name... How about LOCK ALL, or LOCK ALL SETTINGS, or LOCK SOUNDS.
Today, I would probably choose LOCK SOUNDS.

That's to be considered. But genrally, Lock Sounds would surely reflect the behavior of mode 2.

Folkdisco wrote:Yes, I was thinking exactly this, that if the function requires the app to copy all data to a *near mythical* pattern65, that could be quite intensive.
This is what I was trying to avoid by utilising the current playing pattern as a single lock pattern for settings, even as the song moves on to sequence and automation data from other patterns.
I was thinking GSS could set a couple of flags and variables and visually light the lock button near instantaneously, but copying all data to a pattern65 and then using this as a lock pattern would require more CPU and memory time.
I do know that when I perform copy pattern1>pattern2 function on everything but sequence and automation, this takes a small but noticeable amount of time, but that the song continues playing fine in the background.

I already found a solution for that problem.
It's not required to copy everything. It's working by just copying the currently running pattern, right after the switch, but in a second, low priority process. That will spare a lot of cpu power.

Folkdisco wrote:I think if you press a button, and GSS gets busy (and possibly unresponsive) while it does the work, that's one thing. If it gets busy and unresponsive every time you change patterns, as in Riche's general no-edit mode, that may (or may not) be more problematic.
And like you said there might be problems with Riche's general no-edit mode when someone presses the button very close to the end of a pattern which is about to change. By the time the data is copied, the pattern might be over anyway, but you never know what the user is going to press next.

Also here, I already found a solution;)

Folkdisco wrote:I can't talk for Riche, but if he can evolve a track by messing up mutes, mixer, sampler and Beast settings, over ongoing patterns, with no current pattern losing its settings, then drop back into the original song at the push of a button....
I suspect this might be a lot more to his liking than the no-edit mode he originally requested!

As there will be an extended mode, which will be able to automatically re-lock after a pattern switch, I'm sure riche's needs will be covered as well.

Folkdisco wrote:I don't want to get in the way of you as the developer. I do think it would be useful to be able to keep settings over multiple patterns, and it seems like you were thinking the same thing!
I requested what I think is a low intensity way of implementing this. But as I said before, editing and saving data to a LOCK pattern would be a bit quirky - most users might expect to lose settings when the lock is turned off and the current pattern ends.
It's up to you!

It's two different things. Lock pattern is definitely useful, and Lock Settings/sounds is useful, too.
Import a MIDI song and you'll see what I'm talking about.
After the import you'd be able to assign sounds and mixer settings at one point, and have them available in the complete song, instead of applying the sounds and then copy them to all patterns.

Folkdisco wrote:My preference, would be to be able to record a LOCK button press in automation, and for the LOCK to affect song audio export, but I'm probably just getting greedy.
Basically, whatever you said, yes please!

That is unfortunately not possible, as the lock pattern feature will live in another context, outside of the patterns, and as you remember, all automations are in the patterns.
But you can easily achieve what you're looking for using the Audio Session Recorder (long press record).
Enable the Recorder, then play your song, lock a pattern in the middle, jam around, unlock again, let the song finish and then stop the recorder... et voilà.
Folkdisco
Posts: 39
Joined: Tue Dec 12, 2017 4:04 pm

Re: PATTERN HOLD toggle button on the Pattern Set Screen

Postby Folkdisco » Sun Feb 18, 2018 12:00 am

Names... I think LOCK PATTERN and LOCK SOUNDS. I'm not so interested in LP, but I think LS would allow you to do all sorts of things in a different way. Not just midi import, but it could be really useful there too. And being able to switch between locked and unlocked could be really powerful in a performance or recording.
planet-h wrote:(On automating a lock press) That is unfortunately not possible, as the lock pattern feature will live in another context, outside of the patterns, and as you remember, all automations are in the patterns.
But you can easily achieve what you're looking for using the Audio Session Recorder (long press record).

Yes, from what you have said before, it should have been obvious that any LOCK on/off automation, like all automations, would exist in patterns, not on any other timeline.
I would be perfectly happy with that, but I know what you're saying! ;-)
I do know about Audio Sessions, but it's another thing I haven't actually done yet.

And if copying to pattern65 and then working on that isn't a problem, then that's fine and dandy. It would definitely be less quirky, and if things behave in the way that a majority of users expect them to behave, that's usually a good thing.
Your version is definitely less quirky than my original suggestion. I don't mind a bit of quirk, so long as the quirks don't get in the way of workflow.
It sounds like this feature is quietly progressing, which is a wonderful surprise. I thought I was asking for something obscure and quite difficult to explain, and that people wouldn't know they wanted it until they had it.
By the way, midi import.... Brilliant stuff! Not done much testing yet, but so far, it just works.
User avatar
planet-h
Posts: 1067
Joined: Wed Jun 19, 2013 4:46 pm
Contact:

Re: PATTERN HOLD toggle button on the Pattern Set Screen

Postby planet-h » Mon Feb 19, 2018 10:30 am

Folkdisco wrote:I do know about Audio Sessions, but it's another thing I haven't actually done yet.

Just long press RECORD, then Start the audio session recorder and then start playing whatever you're up to.
The audio output will be streamed into a wav file of your choice, it's like a real time audio exporter.
And even if you run into audio glitches at some point due to too much CPU drain, no worries, these won't be in the streamed file.
To stop the recorder again, just long press STOP, and then choose stop audio session recorder from the menu.

Folkdisco wrote:And if copying to pattern65 and then working on that isn't a problem, then that's fine and dandy. It would definitely be less quirky, and if things behave in the way that a majority of users expect them to behave, that's usually a good thing.
Your version is definitely less quirky than my original suggestion. I don't mind a bit of quirk, so long as the quirks don't get in the way of workflow.
It sounds like this feature is quietly progressing, which is a wonderful surprise. I thought I was asking for something obscure and quite difficult to explain, and that people wouldn't know they wanted it until they had it.

You're right, it is definitely on the task list for one of the next updates. It's great to discuss new features that way. You gave me a new point of view, which made me change my mind and re-consider;)

Folkdisco wrote:By the way, midi import.... Brilliant stuff! Not done much testing yet, but so far, it just works.

Thanks a lot:)

Return to “Feature Requests”

Who is online

Users browsing this forum: No registered users and 1 guest