A tag is a piece of metadata that points to a specific sample in a stream.
Tagged streams operate on chunks of samples, using a certain tag to
determine the chunk length. Streams are simpler to deal with, unless you
need data chunked.

What kind of performance issues are you finding?

If you are implementing a block, and do not want tags passed through,
`set_tag_propagation_policy(TPP_DONT)`.

On Mon, Nov 23, 2020 at 3:55 PM Nicholas Long <[email protected]>
wrote:

> Hi, So I am not sure exactly how to ask this, but I have a few questions
> about tag best practices when creating OOT modules, apologies if this is
> answered elsewhere...
>
> What is the main source of performance issues with tag propagation: Is it
> primarily copying overhead? Are there contention issues? or is most of the
> overhead in the actual reading/setting of tags? I guess part of my question
> is how are tags passed between blocks, I understand the ring buffers, but
> tags are still somewhat a mystery to me.
>
> Are tagged stream blocks better than just a stream with tags? From my
> limited ability to parse tagged stream blocks seem to limit the number of
> calls to get_tags_in_range, but they still pass on all other tags on the
> input buffer to the output buffer regardless.
>
> Thanks,
> Nick
>

Reply via email to