Lag problems, possible optimisations on Android tablet

Hey there,
I’m having quite some delayed response in both sending and receiving values and the way it displays it.
I use a galaxy tab A (2016), tested with both Chrome and Firefox.
Tested a few things since my project was receiving tracks colors, vu-meter informations etc…
Turned the track colors and the vu-meters off, but still lagging quite a bit.
Then I have the main PC where the server is running, all is pretty smooth, as well as another MAC connected to the same network where all seems fine. The problem is more on the tablet.

Any recommended tweak to try ? I tried the ?framerate=30 thing, but didn’t really improve still.

Thanks

You can upload your session file here, I can take a quick look at it and see if there is a big optimization cuplprit. O-S-C tends to be heavy with big session and I’m afraid it’s not simply about optimizing the code but rather some design choices that are not likely to be changed anytime soon (not that I’m proud of that, it’s just to much work).

It’s very kind of you to make a review of my session to check that !
Doesn’t seem to be such a huge project to me though, but maybe what I’m requesting to the thing is a bit too hungry.
I was wondering also if there are some tweaks to do on the android tablet to enhance the reactivity, since it reacts very well on a second computer ?

I have 2 projects, one with 8 tracks and vu-meters, one with 24 tracks but just a few play buttons for each, the stop button and the bar counter you worked out for me.
No need to review both, was just to mention that I know this 24 tracks project has indeed… 24 tracks. But the 8 tracks one also got pretty lagging on the tablet.

Electrypnose Launch Controler 24channels.json (66.6 KB)
Electrypnose Launch Controler _ Custom 1.0.json (104.9 KB)

I think your strip template (“Clip_control”) could be optimized a lot by

  • using a vertical layout
  • using only 1 button widget per button (you can use the OSC{} syntax and the html / css properties to handle the extra content (playled, color, name, queued)

Also it’s nothing but you can put the tabs directly in the root container, you don’t need that “launchpad” panel.

Thanks for the help !

I’ve managed to get the clip color within the button, but I can’t figure out what I should do to set the color for the queued and playing status.

In the meantime I’ve tried a few different browsers and there is one called “Brave” that has a much more stable response. When I display only the counter it shows it very nicely in time.
When I display the complete launcher, there is a delay but at least it doesn’t jump values randomly like in chrome.

If I use a vertical layout would it improve performances actually ?

It won't do much by itself but I think it's a good practice to keep things simple and well organized.

I can’t figure out what I should do to set the color for the queued and playing status.

Here is an example of how to add two leds in a button that react to incoming message on arbitrary adresses.

html:

<div class="playing"></div>
<div class="queued"></div>

css:

.playing, .queued {
  position: absolute;
  right: 5rem;
  top: 5rem;
  width: 10rem;
  height: 10rem;
  border-radius: 100%;
}
.playing {
  background: lime;
  opacity: #{ OSC{/playingAddress} ? 1 : 0.2 };
}
.queued {
  right: 20rem;
  background: orange;
  opacity: #{ OSC{/queuedAddress} ? 1 : 0.2 };
}

This involves advanced syntaxes, html / css syntax and a bit of javascript.

Mille mercis pour votre aide… trop sympa !
It’s really nicely working. Still a bit of lagging but it seems something recurrent with Android tablets.
I can live with it though.

Here is the adjusted patch, if it does interest anyone.
Electrypnose Launch Controler 24channels 1.1 (without users buttons).json (45.5 KB)