Stream Demux

From GNU Radio
Revision as of 20:44, 5 October 2020 by David-pi (talk | contribs) (Added a comment saying that tags are propagated)
Jump to navigation Jump to search

Stream demuxing block to demultiplex one stream into N output streams.

Demuxes a stream producing N outputs streams that contains n_0 items in the first stream, n_1 items in the second, etc., and repeats. Tags are propagated. The number of items in each output stream is specified using the lengths parameter like so [n_0, n_1, ..., n_N-1].

Example:
lengths = [2, 3, 4]

input stream = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, ...]
output_stream_0 = [0, 1, 9, 10, ...]
output_stream_1 = [2, 3, 4, 11, ...]
output_stream_2 = [5, 6, 7, 8, ...]

Parameters

Lengths
a vector (list/tuple) specifying the number of items to copy to each output stream.
Num outputs
Number of output streams.

Example Flowgraph

This flowgraph shows the Stream Demux block demuxing an input stream into three output streams with lengths = [2, 3, 4].

800x

Stream demux demo exec.png

Source Files

C++ files
[1]
Header files
[2]
Public header files
[3]
Block definition
[4]