The one way I was able to come up with that works requires a double click on the Onscreen control bar button you designate for each song in the playlist. One press loads the indexed file into the media player play slot and stops the media player and the next press starts the media player. After that it will toggle Play and Stop. This example shows 3 buttons on the left bottom all set to momentary type with different CC numbers. Above you see 3 groups of 3 bindings each. The first binding detects the button press. The second is triggered by the first and loads the file by index (indexed means by numbered list, the playlist is numbered top to bottom with 0 as song 1 in the list and then increments by 1 for each song added to the list). You can see that the different triggers relate to different index file numbers in those bindings. The 3rd binding is also triggered by the first binding in the group and is for the Media player Play/Stop toggling.
A more complex approach can allow the media player to load the song file you want and start the player with one button press on the Control bar. To do it you add an embedded rack to your Song and put a media player in it with the playlist loaded up and then add some bindings and create a rack state for each song in the play list using the add rack state function. In the example it would look like this
inside the embedded media player rack Routes page you see the media player loaded with songs and the rack states in the left panel
inside the embedded media player rack Bindings page you see a binding to start play upon loading any given state and a play/stop toggle with it’s own cc number
again there are 3 bindings per song selection and the first one in the group of 3 is to trigger the second one which selects the rack state for the media player 1 embedded rack that was created. The third in the group converts the Control button cc numbers to a different cc number for controlling the toggle of the media player after it is initially loaded. A bit more complex but also more sophisticated.
I’ve made a little tweak for the next build that will let you bind a index value binding source to a command target which lets you simplify this down to two bindings:
Nice modification @brad, much cleaner and easier, but can the second binding target also be available as a Play/Stop toggle that plays when first invoked and toggles after? The one you show says play only and you stopped using the main transport buttons in the video so I was just trying to clarify. Thanks mate!
P.S. It’s nice to see I’m not the only one getting teased by family
If you click the same button for the song that’s already playing the first binding is a no-op and leaves the player playing, so the second binding will stop it.
If you click a button for a different song, the first binding will stop the player and load the new song and then the second binding will start it playing.
On a related matter I set up a binding group that plays a play list in a single player one after another automatically using the Media Player 1 ‘Next File’ as targets. It works well but when it finishes the last song it loops back and starts the first song again and keeps playing in a perpetual loop. Could we add a binding that would sense the last song in the playlist was finished playing to break the auto play loop?
Protect the settings file on your new setup because this will change other settings as well so you if this messes other stuff up you can restore the one you have now. When doing this you also are copying the Engine choices, the Audio and the MIDI port routings, the Control Bar settings, Tool Bar settings basically the Options area of Catabile.
for the control bar yes, requests have been made to improve this that are now part of a more user assignable control surface upgrade that Brad plans for down the road that would be Song specific from what I understand.