Open h-mayorquin opened 2 years ago
This machinery shouldn't be necessary any more, as I recall it was a limitation of the old extractor that it had to know which channels to load ahead of time, which was a source of some annoyance.
Since SpikeInterface loads them all naturally, if any subsetting of channels is desired in a given specific conversion project, they can modify the recording_extractor
of the interface in whatever way they wish after it's initialized.
Relevant to this is the discussion in catalystneuro/neuroconv#8.
PR catalystneuro/nwb-conversion-tools#582 introduced the following change:
@bendichter would like to see the feature re-implemented. Getting all the channels as a class method and provide functionality to load only those.
A solution: Looking at the implementation in the old
spikeextractors
I think we can just copy their old method (as it relies onsonpy
) as the new class method and usespikeinterface
channel slice machinery to confine the recording extractor to those channels.We can have
smrx_channel_ids = None
to load all the channels and make that default behavior.This however does not seem to improve IO efficiency in any way as the file has to be opened twice (as it was with
spikeextractors
).What do you guys think?