-
Notifications
You must be signed in to change notification settings - Fork 76
Open
Description
Hello, another edge-case issue discovered through the Python API that is probably a bug in the C++ lib since the methods involved are one-line wrappers around the C++ functions.
import time
from pylsl import StreamInlet, StreamInfo, StreamOutlet
sinfo = StreamInfo("test", "Markers", 2, 0.)
outlet = StreamOutlet(sinfo)
inlet = StreamInlet(sinfo)
inlet.open_stream()
time.sleep(0.5) # https://github.com/sccn/liblsl/issues/176
outlet.push_sample([1, 2])
time.sleep(0.2)
assert inlet.samples_available() == 1
inlet.close_stream()
time.sleep(0.2)
assert not outlet.have_consumers()
inlet.open_stream()
time.sleep(0.5) # https://github.com/sccn/liblsl/issues/176
assert inlet.samples_available() == 1
assert outlet.have_consumers()
outlet.push_sample([1, 2])
time.sleep(0.2)
assert inlet.samples_available() == 2 # fails, still one sample, no matter the number of push
After re-opening a stream, new pushes on the outlet do not yield any new samples at the inlet.
This issue is present on all 3 OS, with version 1.16 of the lib.
Metadata
Metadata
Assignees
Labels
No labels