Difference between revisions of "Tagged Stream Multiply Length Tag"

From GNU Radio
Jump to navigation Jump to search
 
(5 intermediate revisions by 3 users not shown)
Line 16: Line 16:
== Example Flowgraph ==
== Example Flowgraph ==


Insert description of flowgraph here, then show a screenshot of the flowgraph and the output if there is an interesting GUI. Currently we have no standard method of uploading the actual flowgraph to the wiki or git repo, unfortunately. The plan is to have an example flowgraph showing how the block might be used, for every block, and the flowgraphs will live in the git repo.
This flowgraph can be found at [https://github.com/gnuradio/gnuradio/blob/master/gr-digital/examples/packet/packet_tx.grc packet_tx.grc].
 
The Polyphase Arbitrary Resampler upsamples the stream by a factor of 2. Because of this, the packet length is also increased (becomes twice the original one). But this change of packet length is not propagated to the tags in the output stream of the PAR block. Tagged stream multiply length tag block is used to update the values of these tags. Length scalar is set to 2 to change the packet length to packet_len*2.
 
[[File:Packet_tx_fg.png|746px]]


== Source Files ==
== Source Files ==


; C++ files
; C++ files
: [https://github.com/gnuradio/gnuradio TODO]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/lib/tagged_stream_multiply_length_impl.cc tagged_stream_multiply_length_impl.cc]


; Header files
; Header files
: [https://github.com/gnuradio/gnuradio TODO]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/lib/tagged_stream_multiply_length_impl.h tagged_stream_multiply_length_impl.h]


; Public header files
; Public header files
: [https://github.com/gnuradio/gnuradio TODO]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/include/gnuradio/blocks/tagged_stream_multiply_length.h tagged_stream_multiply_length.h]


; Block definition
; Block definition
: [https://github.com/gnuradio/gnuradio TODO]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-blocks/grc/blocks_tagged_stream_multiply_length.block.yml blocks_tagged_stream_multiply_length.block.yml]

Latest revision as of 12:58, 26 January 2022

Allows scaling of a tagged stream length tag for constant rate change blocks in a tagged stream.

Searches for a specific tagged stream length tag and multiplies that length by a constant.

Parameters[edit]

(R): Run-time adjustable

Length tag names
Length tag key
Length scalar (R)
Value to scale length tag values by


Example Flowgraph[edit]

This flowgraph can be found at packet_tx.grc.

The Polyphase Arbitrary Resampler upsamples the stream by a factor of 2. Because of this, the packet length is also increased (becomes twice the original one). But this change of packet length is not propagated to the tags in the output stream of the PAR block. Tagged stream multiply length tag block is used to update the values of these tags. Length scalar is set to 2 to change the packet length to packet_len*2.

Packet tx fg.png

Source Files[edit]

C++ files
tagged_stream_multiply_length_impl.cc
Header files
tagged_stream_multiply_length_impl.h
Public header files
tagged_stream_multiply_length.h
Block definition
blocks_tagged_stream_multiply_length.block.yml