Import Spike2 .smrx

Loading the entire file for display or for importing to the database has the same effect: you don't have enough memory to have all the data fit in your memory (45Gb), therefore you get an out-of-memory error.

When opening the recordings (double-click on the "Link to raw file"), set a shorter duration in the page settings (tab Record), for instance 30s. Then scroll through your file by pages of 30s (the tutorials will teach you how to do this), this would load only the required portions of the files at once.

Maybe your file was much smaller than 45Gb and you wonder why does Matlab want to create such a gigantic matrix in memory. Two reasons:

  • the data in your file is maybe stored in int16 (16bit integers), but it's being converted to floating point double precision (64 bits) for processing and display => Size in memory multiplied by 4.
  • if you have signals with different sampling rates in the same file (eg. 60 channels at 1000Hz and 1 channel at 20000Hz), loading data in Brainstorm upsamples all the signals to highest sampling rate (1kHz=>20kHz = 20x more data for 60 channels) so that the data can be represented in one single flat matrix [Nchannels x Ntime]

The Brainstorm viewer for EEG/MEG is beeing adapted to electrophysiology data, but was not initially designed for it. So we probably still have many things that are not handled as well as in your Spike2 viewer. We'll try to improve this in the future.