sccn / liblsl

C++ lsl library for multi-modal time-synched data transmission over the local network

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Stream issues on the network (Android)

StevanDabizljevic opened this issue · comments

Hi everyone,
we were also having some issues with streams coming from the Android phones, some related to the issues 204 and 207, and some not, and we managed to resolve some of those, and discovered new ones.

  1. Only one stream visible when you're not connected to WIFI
    When it comes to this issue, we tried the WifiManager.MulticastLock, but the issue is still present. We were performing tests on physical devices, including Samsung S22, S23 and S24, all running latest update of the Android 14. Many thanks to @pmaanen, as he managed to identify the commit that is causing this issue, we downgraded the liblsl version to 15.0.0, and resolved the issue.
  2. Unstable streams
    For quite some times, we are having issues with stability of streams that come from Android phones. With LabRecorder, using one PC,a dedicated router (TP-Link Archer C80) and one Android phone, it is manageable, although some tweaks were needed (we followed lsl_api.cfg guide from the official documentation). Adding the second phone to the network makes all streams completely unstable, they disappear and comeback at random with each update of the streams. If you manage to start the recording (which is next to impossible with more then couple of streams), the streams become fairly stable in 50% of the time. This is also the case when trying to record streams from one Android phone on another phone.
    By mere accident, we discovered that if you open an inlet, for each stream that you are streaming to the network (on the Android phone), the streams are perfectly stable. Even with couple of phones on the network, everything works perfectly, and we can start the recording in two clicks every time (2-3 phones with 10 different streams each).
    Using Wireshark, we figured out that when streams are consumed, even locally in the same app, UDP traffic on the network is much higher, and our best guess is that is what has aided to the increased stream stability.

I can provide you with more setup details if needed, MRE or anything else you need. Hope this helps!