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

Recent posts

#11
Repertoire Help / Re: Starting an automation tra...
Last post by arlo - January 09, 2025, 10:35:58 PM
And you want to play the recordings from Gig Performer rather than from BandHelper because those are different than the recordings you have set up in BandHelper?

In that case, you're right, you can't jump around in a song and keep Gig Performer's recordings and BandHelper's lyrics selections in sync with sub-second accuracy. I can add a new app control action for that to my wish list.

#12
Repertoire Help / Re: Starting an automation tra...
Last post by garysn - January 09, 2025, 05:18:54 PM
OK, I can see you're not going to give up  ;)

With a resolution of 1/128 of the song length, this means that I can reach a song position every 2.34 seconds for a song that is 5 minutes long.

That's not really interesting for the beginning of a song, you're right.

Unfortunately, there are also the click track and backing tracks that are triggered and played by GigPerformer.

Let's say I jump to section 'C', which starts exactly at 01:00:000. Then the GigPerformer's position pointer for the click track and the backing tracks will be exactly at this point.

With the 'Seek Automation' command, the best I can get is (25 * 2.34 =) 00:58:500. This means that the BandHelper automation runs 1.5 seconds behind my click- and backing tracks throughout the entire song.

In the lyrics display, this no longer looks really synchronised. Our experience is that with an offset of 300ms the whole thing already looks a bit asynchronous, 1.5 seconds is really too much.

What's more, in the lyrics display we don't just show the lyrics, we also show all the chord changes. Everything has to be pretty synchronised, otherwise no one will want to use this solution.  :(
#13
Repertoire Help / Re: Starting an automation tra...
Last post by arlo - January 09, 2025, 03:43:58 PM
QuoteThe whole thing can only really work if you can tell the automation by (MIDI) command that it has to move to a certain position.

You can do that by sending a MIDI control message to trigger the Seek Automation action. As you said, the resolution is only 1/128 of the duration of the song, but that should be fine in a rehearsal context.

Jumping to a different position in an automation track will not automatically select the lyrics line that the automation track would have selected if it were playing up to that time. I could add that. Meanwhile, you could send a second MIDI message after the Seek Automation message that selects the line of lyrics that would be selected if you had played to that position. Or you can simply jump to a position a little earlier so you catch the previous Select Lyrics Line event.
#14
Repertoire Help / Re: Starting an automation tra...
Last post by garysn - January 09, 2025, 02:51:52 PM
Yes, that's right.

My automation tracks always have exactly this format:

"automation": "
0.00|highlightLyricsLine|1,
0.01|playRecording|,
0.62|highlightLyricsLine|2,
1.13|highlightLyricsLine|3,
1.63|highlightLyricsLine|4,
2.20|highlightLyricsLine|8,
6.39|highlightLyricsLine|9,
...
289.00|highlightLyricsLine|198,
289.25|end|"


Select the first line of lyrics
Start the corresponding audio file
Time-correct selection of the current line ...
... until the song is finished.

This means you can use exactly the same data when practicing on your tablet at home as when you rehearse together.

At home, you need to tap the "Automation" icon on your tablets screen to start the automation.

In rehearsal, the automation is started by a MIDI event from GigPerformer. That is the only difference.

And everything works perfectly except for the missing option,
to start the automation track at specific times.

I don't think that it makes sense to send a MIDI command to move the line number while the automation is running.

The displayed line would change briefly, but the automation would immediately select the next line in its processing queue when processing its next command.

The whole thing can only really work if you can tell the automation by (MIDI) command that it has to move to a certain position.

But if there is no such command, then I have to solve the problem in a different way.

I'll write a converter that converts the JSON format of the BandHelper automation info into a MIDI file, which then simply selects the lines at the right time via GigPerformer using a MIDI command.

This is not quite as elegant as a "BandHelper internal solution", but it should work somehow.

Anyway, thanks for all the great ideas and the time you spent on my problem.

Kind regards
  garysn
#15
Repertoire Help / Re: Starting an automation tra...
Last post by arlo - January 09, 2025, 11:13:54 AM
You are using the automation track to position the lyrics throughout the song? Depending on how you're doing that, the lyrics will go to the desired position when you change the automation track position. If they don't, you could send the MIDI message to change the lyrics position after you send the MIDI message to change the automation track position.
#16
Repertoire Help / Re: Starting an automation tra...
Last post by garysn - January 09, 2025, 10:13:50 AM
No, unfortunately not.

I just tried the following to verify the approach of using Markers:

- I added a marker for each section of my BandHelper lyrics.
- In the BandHelper app setup, I assigned the MIDI 'Programme Change' command to the 'Page/Marker Number' command.
- Now, when sending MIDI "programm change" commands from GigPerformer, the correct marker is found and displayed in the BandHelper lyrics display.

So far, so good.

Now to the real test scenario.

I want to start my song from position 'C' and not from the beginning.

- I select the song in GigPerformer. It then sends a MIDI 'Song Select' command. BandHelper displays the song.

- I click on the 'C' button in GigPerformer to start playing the song from that position. GigPerformer then sends the appropriate MIDI 'Programme Change' command to BandHelper and the correct position is selected and displayed in BandHelpers lyrics view.

- I click 'Start' to play the song. GigPerformer sends the 'Start/Stop Automation' MIDI command to BandHelper and starts playback of his own (backing, click, info, ...) tracks.

- BandHelper receives the 'Start/Stop Automation' command and starts playback. However, as the automation track is still at the beginning and not at position 'C', the first line of lyrics of the song will be selected and not the first line of section 'C' as desired.
#17
Repertoire Help / Re: Mixing Station App
Last post by arlo - January 09, 2025, 09:23:59 AM
Okay, it looks like this works for some apps but not others due to recent security changes on Android. I don't know why it only stopped working for some apps. I have to apply for permission with Google to make it work for all apps again, and will do that with the next app update.
#18
Repertoire Help / Re: Starting an automation tra...
Last post by arlo - January 09, 2025, 08:51:56 AM
You're welcome! Are you still asking how to do something in BandHelper, or did you determine that "It should be enough to set some markers..." is the solution?
#19
Repertoire Help / Re: Mixing Station App
Last post by Mikeys - January 09, 2025, 06:59:24 AM
Yes, this is the app - and yes - I have exact this entered.
But if I press the button nothing happens (the app is downloaded on the Tablet too!
#20
Repertoire Help / Re: Starting an automation tra...
Last post by garysn - January 09, 2025, 04:17:05 AM
Hi Arlo,

The current resolution of the Seek Automation function is sufficient to skip the piano intro.

I was a step ahead in my thinking and thought of another scenario.

I have BandHelper configured in a way that each band member can hear their version of a song by starting an automation (i.e. the drummer hears all instruments without drums, the keyboardist hears all instruments without keyboard, etc.), and everyone also sees the lyrics if they are at home.

In other words, I use automation to ensure that the audio files on the tablet are always in sync with the lyrics display.

When we are all together in rehearsal or at a gig, I use GigPerformer to control the playback of the backing tracks and other audio tracks.

I also use GigPerformer to send the MIDI commands to synchronize the tablets, i.e. automatically select the right song and start the lyrics display.

So that I don't have to send all the lyric line information again via MIDI from GigPerformer, I simply start the local automations on all tablets with a MIDI command.

The audio track still runs on the tablets, but we turn it down so it doesn't interfere.

This works really well so far.

Now we sometimes want to rehearse certain parts of a song more often. That's why I programmed a special multi-track playback function in GigPerformer that allows us to set up to 26 markers (A - Z) in each song, which can then be played directly.

To be able to use the local automation there, I thought I would have to set the entire automation to the correct start position via MIDI. That's where the idea came from.

But I don't really need to do that, because the local audio files are not used during rehearsal, so they don't need to be synchronized.

It should be enough to set some markers at the right places in the automation and then jump to them via GigPerformer.

Sometimes I really do think too complicated.

In such moments it's really helpful to have someone asking you the right questions.

Thanks again for that.

Kind regards
  garysn