Skip to content

"NotImplementedError: This meta file version of spikeglxis not implemented" error when running read_spikeglx() and get_neo_streams() on npx data #1431

@NDolensek

Description

@NDolensek

I'm trying to follow the "Analyse Neuropixels datasets" tutorial and am getting stuck at the first step when trying to analyze my own neuropixels data acquired with Neuropixel 1.0-NHP probes and SpikeGLX, with default settings. Data folder contains .imec0.ap.meta, .imec0.ap.bin, .imec0.lf.bin and .imec0.lf.meta files. Running either si.get_neo_streams or si.read_spikeglx() results in a "NotImplementedError: This meta file version of spikeglxis not implemented".

Does data need to be in a specific format for the spikeinterface to work?
FYI, binary files acquired with Open Ephys using the same probes work fine using si.read_openephys().

stream_names, stream_ids = si.get_neo_streams('spikeglx', path) stream_names

NotImplementedError                       Traceback (most recent call last)
Cell In[7], line 1
----> 1 stream_names, stream_ids = si.get_neo_streams('spikeglx', path)
      2 stream_names

File [c:\Users\ndolensek\mambaforge\envs\spikeinterface\lib\site-packages\spikeinterface\extractors\neoextractors\neo_utils.py:26](file:///C:/Users/ndolensek/mambaforge/envs/spikeinterface/lib/site-packages/spikeinterface/extractors/neoextractors/neo_utils.py:26), in get_neo_streams(extractor_name, *args, **kwargs)
      5 """Returns the NEO streams (stream names and stream ids) associated to a dataset.
      6 For multi-stream datasets, the `stream_id` or `stream_name` arguments can be used 
      7 to select which stream to read with the `read_**extractor_name**()` function.
   (...)
     23     List of NEO stream ids
     24 """
     25 neo_extractor = get_neo_extractor(extractor_name)
---> 26 return neo_extractor.get_streams(*args, **kwargs)

File [c:\Users\ndolensek\mambaforge\envs\spikeinterface\lib\site-packages\spikeinterface\extractors\neoextractors\neobaseextractor.py:142](file:///C:/Users/ndolensek/mambaforge/envs/spikeinterface/lib/site-packages/spikeinterface/extractors/neoextractors/neobaseextractor.py:142), in NeoBaseRecordingExtractor.get_streams(cls, *args, **kwargs)
    139 @classmethod
    140 def get_streams(cls, *args, **kwargs):
    141     neo_kwargs = cls.map_to_neo_kwargs(*args, **kwargs)
--> 142     neo_reader = get_reader(cls.NeoRawIOClass, **neo_kwargs)
    144     stream_channels = neo_reader.header['signal_streams']
    145     stream_names = list(stream_channels['name'])

File [c:\Users\ndolensek\mambaforge\envs\spikeinterface\lib\site-packages\spikeinterface\extractors\neoextractors\neobaseextractor.py:14](file:///C:/Users/ndolensek/mambaforge/envs/spikeinterface/lib/site-packages/spikeinterface/extractors/neoextractors/neobaseextractor.py:14), in get_reader(raw_class, **neo_kwargs)
...
    407                                   'is not implemented')
    408 else:
    409     stream_kind = ''

NotImplementedError: This meta file version of spikeglxis not implemented

Metadata

Metadata

Assignees

No one assigned

    Labels

    NEOProblem related to NEO IOextractorsRelated to extractors module

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions