Skip to main content

Module pipeline

Module pipeline 

Source
Expand description

Unified feed pipeline — stages with an optional shared batch point.

FeedPipeline is the public model for defining a feed’s processing pipeline. It presents a single linear pipeline where an optional batch point can be inserted between per-feed stages:

[pre-batch stages] → [batch point] → [post-batch stages]
                          │
                   SharedBatchProcessor (frames from multiple feeds)

A pipeline without a batch point is simply all stages executed in order on the feed thread — identical to the original per-feed model.

A pipeline with a batch point splits into:

  • Pre-batch stages — per-feed, on the feed thread (e.g., preprocessing)
  • Batch point — frame submitted to a shared BatchHandle, results merged into the artifact accumulator
  • Post-batch stages — per-feed, on the feed thread (e.g., tracking, temporal analysis)

This keeps batching as a natural part of the pipeline instead of a separate subsystem.

§Example

use nv_runtime::pipeline::FeedPipeline;

let pipeline = FeedPipeline::builder()
    .add_stage(Preprocessor)        // pre-batch
    .batch(batch_handle)?            // shared batch point
    .add_stage(Tracker)              // post-batch
    .build();

Structs§

FeedPipeline
A feed processing pipeline with an optional shared batch point.
FeedPipelineBuilder
Builder for FeedPipeline.

Enums§

PipelineError
Errors from pipeline construction.