Skip to content

1.0.0

Compare
Choose a tag to compare
@mscheltienne mscheltienne released this 16 Oct 09:19
· 215 commits to main since this release

Initial release of mne-lsl for Python 3.9 to 3.12. MNE-LSL integrates tightly LSL streams with MNE-Python. It replaces the LSLClient in mne_realtime with 2 main objects:

  • mne_lsl.stream.StreamLSL: connects to an LSL stream and acts as a Raw object which underlying data array is a ringbuffer continuously updated.
  • mne_lsl.player.PlayerLSL: create a fake LSL stream from any MNE-readable file.
player = mne_lsl.player.PlayerLSL(...)
player.start()
stream = mne_lsl.stream.StreamLSL(...)
stream.connect()
stream.pick("eeg")
stream.set_eeg_reference("average")
data, ts = stream.get_data()
stream.disconnect()
player.stop()

Additionally, the low-level mne_lsl.lsl module re-implements a faster version of pylsl with convenience methods to set and retrieve metadata, for instance from an mne.Info object.

sinfo = mne_lsl.lsl.StreamInfo(...)
sinfo.set_channel_info(info)
info = sinfo.get_channel_info()

Please report encountered issues on the tracker.