liblsl icon indicating copy to clipboard operation
liblsl copied to clipboard

lsl_continuous_resolver failing to find streams that resolve_streams could find.

Open cboulay opened this issue 5 years ago • 4 comments

After debugging an issue in Slack with users of LSL4Unity, we figured out that the lsl_continuous_resolver was failing to find a marker stream that was easily found with resolve_streams. This only happened when the resolver was trying to find a stream from a different computer on the network and there was no issue when everything was on a local computer.

cboulay avatar Jul 16 '19 17:07 cboulay

Edit - After further testing, here's a summary of the findings.

Outlets:

  • Macbook running python -m pylsl.examples.SendData
  • Win64 running python -m pylsl.examples.SendData , modified to change stream name, type, and id.
  • Win64 game in Unity editor - stream out object position
  • or Win64 game build

Results:

  • Win Python can resolve all outlets whether using resolve_stream() or ContinuousResolver
  • Mac Python results are very strange. It always finds the mac-originating stream.
    • resolve_stream()
      • Finds the win python stream, but only if game is running in build (running via Editor is blocking unrelated stream!?)
      • Finds the Unity stream only if it is running from the build
    • ContinuousResolver
      • Always sees the mac python and win python stream, even if game is running in Unity Editor (win python stream not blocked)
      • Finds the Unity stream only if it is running from the build
  • Game as inlet...
    • resolve_stream()
      • Finds the Win python stream always (Editor and build)
      • Finds the Mac python stream, but only in build, not from Editor
        • There's some weird interaction where the game will crash if ContinuousResolver isn't created, even if it is never used and ultimately the stream is found with resolve_stream. However, if the win python data stream is stopped first then ContinuousResolver isn't needed for resolve_stream to work. What?!
    • ContinuousResolver
      • Finds the Win python stream always (Editor and game build)
      • Never finds the Mac stream. Not in Editor, not in game build.

cboulay avatar Jul 29 '20 19:07 cboulay

Hello! Im trying to run the LSL tutorial with the cube but when im writting the LSLInput script im getting this error: Assets\LSLInput.cs(22,27): error CS0234: The type or namespace name 'resolve_stream' does not exist in the namespace 'LSL' (are you missing an assembly reference?). Am i missing something? Thanks in advance!

gprapas avatar Apr 19 '22 15:04 gprapas

Hi @gprapas , this is not the correct place. I assume you're referring to Unity? Please check https://github.com/labstreaminglayer/LSL4Unity

cboulay avatar Apr 19 '22 17:04 cboulay

@gprapas I just realized that I still haven't merged my pull request. Please check the branch: https://github.com/labstreaminglayer/LSL4Unity/tree/cboulay/cust_package

cboulay avatar Apr 20 '22 00:04 cboulay