Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to play back XDF file into outlet(s) #93

Closed
cboulay opened this issue Feb 24, 2016 · 2 comments
Closed

How to play back XDF file into outlet(s) #93

cboulay opened this issue Feb 24, 2016 · 2 comments

Comments

@cboulay
Copy link
Collaborator

cboulay commented Feb 24, 2016

I'd like to play back some old data files for testing my online signal processing pipeline. Before I create one from scratch, does anyone have an App to load an XDF file, create the appropriate outlets, then stream the data through the outlets?

I think currently this is only possible using Matlab (to load xdf data). I expect it will be difficult to get the timestamp intervals to match perfectly the intervals in the data file.

@chkothe Do you have XDF import in Python to share that you mentioned previously? I'd rather write this app in Python than Matlab because I'm more comfortable with Python's multi-processing and I'd like to use a separate process per stream.

@chkothe
Copy link
Contributor

chkothe commented Feb 24, 2016

Yes, I'm also not aware of an app that can exactly replicate the timings in the XDF file and that also supports multiple streams. The Python XDF loader isn't yet in any public repo, but I don't see a license issue with it (we could release it under MIT), so I will send it to you for testing.

By the way, one thing that goes some way towards what you need is the function play_eegset_lsl in BCILAB, which takes in a single-stream+markers EEGLAB dataset struct and which can simulate various types of jitter in the sizes/timings of the blocks and in the reported time stamps. This way you could test the limits of your online signal processing, but it won't scale well to a multi-stream setting. The most recent version is https://github.com/sccn/BCILAB/blob/devel/dependencies/play_eegset_lsl.m and if you go back a few commits you will find a version that does not depend on the argument system in case you want to reduce the dependency footprint (although the version that's included in vis_stream should fit the bill... at some point I really need to put this on the file exchange).

@cboulay cboulay closed this as completed Nov 27, 2018
@cboulay
Copy link
Collaborator Author

cboulay commented Nov 27, 2018

https://github.com/Yida-Lin/XDFStreamer

Yida-Lin is really responsive so even if XDFStreamer doesn't meet my/your needs, this should be a good place to build from.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants