Skip to content

bursty stream fragmentation and reassembly blocks #31

@guruofquality

Description

@guruofquality

Consider a bursty stream that uses start of frame labels (optional) and end of frame labels to designate the boundaries of a burst.

  • The burst fragmenter block is responsible for slicing the stream into MTU sized packets and appending a header that specifies the packet index (within the burst), start of burst an end of burst markers. The first element in a start of burst packet is the element with the start of frame label. The last element in an end of burst packet is the element with the end of frame label. This block is data type agnostic.
  • The burst reassembler block is responsible for converting between these formatted packets back into a labelled stream of bursts. This block takes the desired output data type as an input parameter.

Immediate use case: The burst fragmenter will accept bursts from a level detector that is fed by an audio source. This will enable the transmission of useful audio data over a link. The burst reassembler will feed the bursts to an audio sink which will use the end of frame label to stop the audio device and avoid underflow: pothosware/PothosAudio#2

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions