Before posting, please read: When to use this forum, when to submit a help ticket

Song-specific Song Selection Actions

Started by Ahiru, July 21, 2017, 05:28:11 PM

Previous topic - Next topic

Ahiru

I'm looking for advice on whether the following combination of Song Selection Actions could be accomplished within a set.  Assume all songs incorporate a recorded backing track and some MIDI setup.

A. For some songs, when it appears in the set list I'd it to show the lyrics and notes before it starts playing (so players can 'get ready').  A manual selection then starts play.  For this the 'Trigger on Second Selection' works great.

B. For other small groups of several consecutive songs, I'd like to automatically start the next song when the previous song ends, without requiring a manual selection.  (I.e., a few back-to-back non-stop songs in groups.)  This would work fine with 'Trigger on Second Selection' deselected.

So, I'm wondering is there is some clever way to get both behaviors in the same set (layout), given the Song Selection Actions seem to be global to the layout and cannot be overridden on a per song basis?

I don't think adding a bunch of Pauses helps in this case, since that would violate the desire to see notes/lyrics before song starts in scenario A.

(BTW, a nice to have: even if 'Trigger on Second Selection' is enabled, allow some actions to be triggered on the first selection, such as sending MIDI setup.  It's always a warm fuzzy to see the right patches on guitar and keys selected before hitting 'go' ;-)

arlo

Triggering some actions on the first selection (send MIDI) and others on the second (play recordings) is on my to do list and I can let you know when that's available.

But using the Trigger On Second Selection option in conjunction with the auto-play setup ... hmm. I wonder if everything should be triggered on the first selection when a song is auto-selected. Actually the way that works now is that after a song is auto-selected (from a song completion action), some actions are triggered immediately and some aren't triggered until after the Time Between Songs that you've set for the show. You can turn off Trigger On Second Selection to see how that works.

I can't think of any reason you'd want the Trigger On Second Selection functionality to be active when auto-selecting through your songs, but I'll give that some more thought before changing it.

Ahiru

QuoteI can't think of any reason you'd want the Trigger On Second Selection functionality to be active when auto-selecting through your songs

Maybe as a newbie I'm misunderstanding / abusing some Song Selection/Completion Actions...
To clarify my use case: my main challenge is wanting both of these behaviors within the same set:

(a) some songs to automatically 'queue up' (with displayed notes and lyrics) as soon as the previous song is completed, but require an additional tap to get them playing (i.e. start playback of the associated recording).  (This allows time for players to mentally get ready for opening notes, banter with the audience, etc. for an arbitrary and variable time duration before starting to play the song.) For this behavior, enabling Play Recording, Auto-Scroll, Trigger on Second Selection, and Select Next Song (after completion) seems to works well.

(b) other songs to 'play immediately' as soon as the previous song is completed, without requiring an additional tap.  (These songs are part of a series of back-to-back songs that keep up the momentum of the set.)  For this behavior, same settings as (a) work, except Trigger on Second Select needs to be disabled.

I can see how to do all songs in a set with (a), or all songs in a set with (b), but I don't see how to do a mix of both behaviors within the same set.  So I think what I'm wanting is something like Trigger on Second Selection for (a) songs, but just auto-selecting through songs (without Trigger on Second Selection) for (b) songs, in a mix within the same set.

If this is not possible, I'd just set up everything for (a) and just live with needing the additional 'tap' to start each song, even for (b) songs.  Not a big deal.

(I probably should have posted the request for spit song selection actions (MIDI on first select, play recordings / automation on second select) as a different post, since it is somewhat independent of the question above.)

And kudos for a fantastic app and system!

arlo

The app already has functionality to stop the song completion action to select the next song when it encounters a pause or break. So I think the only thing we need is to ignore the Trigger On Second Selection setting when a song has been selected from a song completion action. Then you can place pauses in your set list to determine whether each song triggers some actions and waits for a second manual selection, or triggers all actions immediately.

This would be better than configuring the behavior within each song because it would automatically work regardless of how you sequenced the set list.

Ahiru

QuoteThe app already has functionality to stop the song completion action to select the next song when it encounters a pause or break.
Understood, but Pause shows a 'Pause' screen rather than the desired behavior of automatically displaying the next song's lyrics, notes (and perhaps some day sending initial MIDI); so I don't anticipate inserting Pauses for this purpose.

Now, if there was a 'Pause at Next Song' that would mean display and queue up the next song but don't actually start playing until tapped, that would work!

An alternative would be a per-song override to disable Trigger on Second Selection.  However, I agree with your point that this behavioral control belongs at the set level rather than as a song attribute, and therefore some Pause variant makes most sense.

But all that said, I'll just adapt to the way it already works since I'm too new a user to be driving code changes.  :)

Papa John

I'd like to be able to do the same thing.

arlo

After thinking about this more, ignoring the Trigger On Second Selection setting when selecting a song from a song completion action wouldn't be a good idea. That would take away the ability to auto-select the next song, but wait for a manual second selection to trigger its actions. So by adding the auto-play function to your "b" songs, you'd lose them on your "a" songs.

I think the crux of your problem is not how any of the existing functions work, but wanting to have two different behaviors within your set list. Specifically, the app is designed to support auto-play with some pauses, but not to have a few songs auto-playing with a pause as the default. I don't see a good, built-in solution for that.

But the next version will let you assign different actions to the first song selection and the second song selection, instead of an all-or-nothing Trigger On Second Selection setting. So in that version, you could...

- Trigger Send MIDI and Play Automation on the first song selection.
- Trigger Play Recording on the second song selection.
- Trigger Select Next Song on the song completion.
- For songs you want to auto-play, record a simple automation track that plays the recording.

Then by default the app will select the next song and wait for your second selection to play the recording. Except on songs where you added the automation track: then it will play the recording automatically.

Ahiru

QuoteI think the crux of your problem is not how any of the existing functions work, but wanting to have two different behaviors within your set list.
Yes, I completely agree.  As you pointed out earlier, this flexibility really belongs as a behavioral attribute of the set list, not the song.

Quotethe next version will let you assign different actions to the first song selection and the second song selection
That will be very nice, particularly for setting 'initial patches' for guitar / keys / effects while musicians are getting ready.

QuoteThen by default the app will select the next song and wait for your second selection to play the recording. Except on songs where you added the automation track: then it will play the recording automatically.
Indeed that can work in most cases.  It's not perfect, since it still assigns a 'set behavior attribute' at the song level, so the auto-playing becomes an attribute of the song even in sets where you might want that song to get started manually with the second selection.  However, in my band's case, we're pretty consistent in lumping the same small groups of songs together for auto-play every gig.  (Moreover, you could always define two versions of songs: auto-play vs manual start, and pick whichever you need for a given set.)

Maybe a bigger issue for me will occur when we use automation to dynamically change patches during the song, meaning the MIDI event automation for these songs has to be synced with the recording playback.  If Play Automation on First Select is global for the set list, then I think that would mean songs with 'dynamic patch automation' could only be 'auto-played'.

So... unfortunately (for my use cases) it still seems to point back to assigning these first/second selection play behaviors as set list attributes independently for each song in the list; not as a global set list attribute nor as an attribute of the 'song object'.  (Technically, it wants to be an attribute of the set list song record entry.)  But I understand you don't currently support such data structures & UI for anything like this, so no problem if it is not practical.  (The program is so great in all other respects that an extra selection to play every song is not a big deal!)

Thanks for thinking about this Arlo!

arlo

Quote from: Ahiru on August 26, 2017, 05:58:42 PM
Maybe a bigger issue for me will occur when we use automation to dynamically change patches during the song, meaning the MIDI event automation for these songs has to be synced with the recording playback.  If Play Automation on First Select is global for the set list, then I think that would mean songs with 'dynamic patch automation' could only be 'auto-played'.

Ah yes, if you are using automation tracks for other things, then you wouldn't be able to use them to override the auto-play behavior.

Ahiru

To summarize this thread, it evolved to a wish-list request, and this would nicely satisfy my OP use case:


Allow the Trigger on Song Selection value to be independently set for each song within a given set list (overriding the default value for the set list layout).



To be clear, this would be a parameter associated with the song as it appears in a given set list, not something that's associated with the song in every set list.

I understand there is currently no place in the program to set a parameter associated with a song within a given set list, so this is not an easy change. (Perhaps the closest would be the edit song icon (pencil) in the lower left of active playlist displays, but that edits song data, not 'song within this set list' data, so if added there it would be a challenge to clarify it is not a global attribute of the song.)

arlo


JerryK

#11
It sounds to me like you need set list entry options (per song) with a default at project level, then set list level and lastly for the set list entry, for this and possibly other behaviours.  So the song will remain the same but can work differently in different scenarios.  Nice.
That paves the way for an existing song in a different project/set list to be in a different key for a different vocalist (etc).  Or tempo....
Sorry, I'm expanding the seed already planted

arlo

Quote from: Ahiru on July 21, 2017, 05:28:11 PM
(BTW, a nice to have: even if 'Trigger on Second Selection' is enabled, allow some actions to be triggered on the first selection, such as sending MIDI setup.  It's always a warm fuzzy to see the right patches on guitar and keys selected before hitting 'go' ;-)

The new app version today supports this. You can go to the Edit Details page for a layout, and assign some actions to Song Selection and others to Song Second Selection:

http://forum.arlomedia.com/index.php/topic,1785.0.html

Ahiru

QuoteBTW, a nice to have: even if 'Trigger on Second Selection' is enabled, allow some actions to be triggered on the first selection...
QuoteThe new app version today supports this.

Yes, just saw that...  excellent, and thanks!

Ahiru

A question about the new 'Send MIDI' behaviors in Layout Actions:

Let's say I have a set of different MIDI guitar patches that I send at different times while a song is playing using Automation (sync'ed with backing track).  Therefore all these different patches are associated with the song.  (FYI I start automation with Song Second Selection.)

However, I'd like to use Send MIDI = Song Selection so that the first guitar patch I need will be sent on the first song selection, e.g. while I'm 'getting ready'.

Is there a way to do this?  If I read correctly, Send MIDI sends every MIDI patch associated with the song at the selected time.  So unless I misunderstand, maybe what I'd like to do is not possible?