Skip to main content

Module pipeline_context

Module pipeline_context 

Source
Expand description

Frame-level transcode context: decoder/filter-graph/encoder pipeline.

This module provides the TranscodeContext that wires together a FrameDecoder, a FilterGraph, and a FrameEncoder into a single execute-loop. The design is codec-agnostic: callers supply concrete implementations of the FrameDecoder and FrameEncoder traits.

§Example

use oximedia_transcode::pipeline_context::{
    TranscodeContext, FilterGraph, Frame,
};

// Supply your own decoder/encoder implementations.
let ctx = TranscodeContext::new(decoder, FilterGraph::new(), encoder);
let stats = ctx.execute()?;
println!("{} frames in, {} frames out", stats.pass.input_frames, stats.pass.output_frames);

Structs§

FilterGraph
A composable filter graph applied to frames between decode and encode.
Frame
A raw decoded frame flowing through the transcode pipeline.
HdrPassthroughConfig
High-level configuration for HDR metadata passthrough in the transcode pipeline.
HdrSeiInjector
Stores SMPTE ST 2086 and CTA-861.3 SEI payloads extracted from the input stream and optionally prepends them to output packet data.
PassStats
Per-pass statistics from a TranscodeContext::execute call.
TranscodeContext
Wires a FrameDecoder, FilterGraph, and FrameEncoder together into a single execute loop.
TranscodeStats
Statistics returned by TranscodeContext::execute.

Traits§

FrameDecoder
A frame-level decoder that produces raw Frame values.
FrameEncoder
A frame-level encoder that converts raw Frame values to encoded bytes.