GNURadio is a versatile code for creating signal flow graphs from real world or synthetic sources. In gnuradio units of data are the following:
- item: one entity can be anything, like samples, numbers floats etc.. but also vectors of these
- sample: one data sample
- stream: a continuous sequential group of samples
- vector: a parallel group of samples for simultaneous processing, such as FFT, etc. A stream can be converted to a vector by a converter.
Examples:
The stream to vector can also have a certain data type.
- It chops the input samples with the given size in number of items, e.g. every 1024 samples one chop
- Its output is then set using vector length, 1 means one item of type vector which has 1024 samples in it. 2 means two items of type vector each with 1024 samples inside and so on.
The interleave block can have a data type, which can be set.
- by default it interleaves single items (samples) from two different inputs, one from this, another from the other.
- if you assign a vector size, e.g. 1024, then it interleaves 1024 items from one input then 1024 from the other.
- if you additionally assign a block size, e.g. 10, it will pass 10 vectors of each 1024 items (samples) from the first input, then the same from the second input and so on.