A library to read, emulate, and forward Micromed data in standard formats
Project description
A library to read, emulate, and forward Micromed data in standard formats. See online doc.
Main features:
simulate online data from a trc file
push online tcp data to LSL server
convert trc to mne format
rename trc files to include the recording datetime
Install
$ pip install micromed-io
Convert a Micromed (.trc) file to MNE (.fif) format
from micromed_io.to_mne import create_mne_from_micromed_recording
mne_raw = create_mne_from_micromed_recording("path/to/file.TRC")
Emulate TRC to TCP & read/forward to LSL server
See details in next sections
Emulate Online Micromed TCP from .trc file
$ mmio_emulate_trc --file=../data/sample.TRC --address=localhost --port=5123
Emulate the online data stream of Micromed to test your real-time platform. See all the arguments and adapt them:
$ mmio_emulate_trc --help # to see all arguments
Read TCP and push to LSL Stream
$ mmio_tcp_to_lsl --address=localhost --port=5123
While receiving online data throug tcp, this command forward the data to 3 LSL stream outlets:
Micromed_EEG: the eeg data in float32 format [n_channels, n_samples]
Micromed_Markers: markers if any in int32 format [sample, marker] (2 channels)
Micromed_Notes: notes if any in string format [sample, note] (2 channels)
You can easily change the LSL parameters:
$ mmio_tcp_to_lsl --help # to see all arguments
Read TRC file
from micromed_io.trc import MicromedTRC
mmtrc = MicromedTRC("sample.TRC")
Then you have access to the trc data:
mmtrc.get_header()
mmtrc.get_markers()
mmtrc.get_data()
mmtrc.get_notes()
Read and parse Micromed TCP live data
Download tcp_to_lsl.py from the github repo in scripts/
$ python tcp_to_lsl.py --address=localhost --port=5123
Note: Micromed TCP behaves as a client. If you want to try the emulate/read TCP script, launch the reader first that acts as server, then the emulator.
Rename TRC files with recording datetime
$ mmio_rename_trc --dirpath=./ --format=%Y%m%d-%H%M%S
Rename the TRC files of the given folder to include the recording date in the filename. Output is : <filename>__<recording_date>.TRC. The format must be compliant with python strftime format codes
mmio_rename_trc --help # to see help
Local install
Download the repo and:
$ conda env create -f environment.yml
$ conda activate mmio
$ poetry install
Please feel free to reach me if you want to contribute.
Sponsor
This work has been supported by the Wyss Center.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for micromed_io-0.4.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | af1771a4f92e61a19f9eaf4db6b74e467fbb3ec9c5250fe21488fa18953d78a1 |
|
MD5 | 5f24d64280f36845c2211c8adf388b46 |
|
BLAKE2b-256 | 7a364d0342183c31ead6583d2daec72da0084e112779a596e618d7362ed5b338 |