You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Description
I’m running a minimal script to demonstrate that pylsl 1.17.6 on macOS 15.1.1 (24B91) with Python 3.11 fails to transmit the <channels> metadata. On the sender side, info.as_xml() shows the expected <desc><channels>...<channel><label>Fz</label> etc. But on the receiver side, the same stream’s info.as_xml() prints <desc />, and get_channel_labels() returns None.
Environment
OS: macOS 15.1.1 (24B91)
Python: 3.11 (fresh conda environment)
pylsl: 1.17.6 (installed via pip install pylsl==1.17.6)
Nominal SRate: 0.0 (also tested non-zero; same result)
Sorry, this is an unintuitive and not well documented aspect, but the info objects returned by the resolver are incomplete. You need to use them to create an inlet first, then you can ask the inlet for the full info. Maybe they should be different classes or there should be a flag on the info object to indicate it is partial only.
Maybe we can at least make it so the getters raise an error with a useful message when attempting to retrieve metadata that is known to be absent in the partial info. What do you think?
Thank you so much for the quick response! I confirmed that calling inlet.info() provides the full metadata, and I can now retrieve my channel labels as expected.
A flag or short note in the documentation to indicate that resolve_streams() returns only a partial StreamInfo would be really helpful, and throwing a more descriptive error when accessing the missing metadata might be even more user-friendly, but either approach would solve the confusion. Again, thanks for the quick help!
Description
I’m running a minimal script to demonstrate that pylsl 1.17.6 on macOS 15.1.1 (24B91) with Python 3.11 fails to transmit the
<channels>
metadata. On the sender side,info.as_xml()
shows the expected<desc><channels>...<channel><label>Fz</label>
etc. But on the receiver side, the same stream’sinfo.as_xml()
prints<desc />
, andget_channel_labels()
returnsNone
.Environment
pip install pylsl==1.17.6
)Steps to Reproduce
Console Output Excerpts
Expected Behavior
The receiver's
info.as_xml()
should contain<desc><channels>
with<channel>
child elements, andget_channel_labels()
should return["MyFz", "MyCz"]
.Actual Behavior
<desc />
is empty on the reciever side, andinfo.get_channel_labels()
isNone
The text was updated successfully, but these errors were encountered: