Clarification on streams vs channels
gmabey opened this issue · 1 comments
Before I go off submitting a PR for this, I'd like to hear whether there's some aspect to this issue that I'm missing.
I see that a recording can have multiple channels, that's good! I think that "collections" are a relatively recent addition to the whole SigMF spec thing, and I wonder what the intended differences are between the "streams" of a collection and the "channels" of a recording. (did I get all of the terminology right?)
As I see it, the samples of channels are required to be interleaved with each other, whereas the samples of streams are each in their own (data) file. Furthermore, channels have intrinsically the same datatype as well as all other metadata, whereas with streams, there is no guarantee that they have those things in common.
I think I do like it this way, and that these differences should be elaborated on in the spec itself (I'm willing to create a PR to that effect). In the past, I have been a strong advocate for the "channels" approach, but with collections, if you don't have exactly the same time stamp, you can still represent that in an archive. This is an especially important point for the case of phased-array samples, where the samples are downsampled before leaving the receiver.
Also, I would love to see someone comment on #208 (recently updated) as it somewhat relates to this question as well.
You have a good handle on the difference between multichannel datasets vs collections, though its probably worth noting that there are many cases where either format would be acceptable. Our objective is to enable generally useful unambiguous interpretation of data, not to prescribe exact use cases so this has not been elaborated on somewhat intentionally.
If there are specific points of clarification you would like to see please open a PR for them and we can discuss, but as I think you have a good understanding of all this I will close the issue here.