add OTB (EMG) reader
This implements a Raw reader for OTB files (EMG data). There are 2 formats, OTB4 and OTB+; so far only OTB+ implemented. Based in part on a MATLAB reader, with permission to translate and relicense as BSD-3, granted here: https://github.com/OTBioelettronica/OTB-Python/issues/2#issuecomment-2979135882
- [ ] add support for OTB4 format
- [ ] decide whether this belongs in MNE-Python, MNE-BIDS, or a separate package. I don't have strong feelings here; I implemented in MNE-Python first because it was easiest, but I'm happy to migrate the code.
- [ ] add data files from https://github.com/OTBioelettronica/OTB-Python/issues/2#issuecomment-2986927125 to mne-testing-data
- [ ] add tests. May need help from someone with a MATLAB license, as I can't get the MATLAB-based reader to work in Octave. Would be great to have
.matfiles with source-of-truth for the signal values from the test data files. - [ ] handle annotations (marker files); in my example file they're empty.
cc @OTBioelettronica @klotz-t @pranavm19 @agramfort
decide whether this belongs in MNE-Python, MNE-BIDS, or a separate package. I don't have strong feelings here; I implemented in MNE-Python first because it was easiest, but I'm happy to migrate the code.
I think MNE-Python is better scope-wise than MNE-BIDS. Might make sense to add a MNE-EMG (or another package?) like we have MNE-NIRS if we expect a lot of EMG-specific functionality. In that case, the reader could live here or there. I think my vote is to start this MNE-EMG package with the hopes that EMG-specific functionality can grow there...
I think MNE-Python is better scope-wise than MNE-BIDS.
agreed
I think my vote is to start this MNE-EMG package with the hopes that EMG-specific functionality can grow there...
Yes, I think following what we have with mne-nirs would be good.
Pushing to 1.12