API References๐Ÿ”—

This is the reference for classes (CamelCase names) and functions (underscore_case names) of mne_lsl grouped thematically.

Most-used classes๐Ÿ”—

The main objects offer efficient communication with numerical streams.

Stream๐Ÿ”—

A Stream uses an MNE-like API to efficiently interacts with a numerical stream.

StreamLSL

Stream object representing a single LSL stream.

Player๐Ÿ”—

A Player can mock a real-time stream from any MNE readable file.

PlayerLSL

Class for creating a mock LSL stream.

LSL (low-level)๐Ÿ”—

If the high-level API is not sufficient, the low-level API interface directly with liblsl, with a similar API to pylsl.

Compared to pylsl, mne_lsl.lsl pulls a chunk of numerical data faster thanks to numpy. In numbers, pulling a 1024 samples chunk with 65 channels in double precision (float64) to python takes:

  • 4.33 ms ยฑ 37.5 ยตs with pylsl default behavior

  • 471 ns ยฑ 1.7 ns with pylsl using a ndarray as dest_obj to prevent memory re-allocation

  • 268 ns ยฑ 0.357 ns with mne_lsl.lsl which uses numpy.frombuffer() under the hood

More importantly, pylsl dewfault behavior pulls a chunk in linear time O(n), scalings with the number of values; while mne_lsl.lsl pulls a chunk in constant time O(1). Additional details on the differences with pylsl and mne_lsl can be found here.

StreamInfo

Base Stream information object, storing the declaration of a stream.

StreamInlet

An inlet to retrieve data and metadata on the network.

StreamOutlet

An outlet to share data and metadata on the network.

library_version

Version of the binary LSL library.

protocol_version

Version of the LSL protocol.

local_clock

Obtain a local system timestamp in seconds.

resolve_streams

Resolve streams on the network.

Utilities๐Ÿ”—

Logging utilities are available to interact with mne_lsl logger.

add_file_handler

Add a file handler to the logger.

set_log_level

Set the log level for the logger.

Development utilities are available to help debug a setup.

sys_info

Print the system information for debugging.

Legacy๐Ÿ”—

Legacy classes and functions will be replaced with backward incompatible equivalent in future versions.

StreamViewer

Class for visualizing the signals coming from an LSL stream.