Skip to main content

Module analysis

Module analysis 

Source
Expand description

The analysis module surfaces the results of FFmpeg detector/measurement filters (blackdetect, silencedetect, scdet, cropdetect, ebur128) as typed Rust events and a folded report, instead of only FFmpeg logs. Detection / measurement result surfacing.

FFmpeg’s detector filters (blackdetect, silencedetect, scdet, cropdetect, ebur128) produce their value as data — attached to frames as lavfi.* metadata. This module reads that metadata off the frame pipeline and surfaces it as typed [MetadataEvent]s (via a [MetadataEventFilter] streamed to a user [EventSink]) or as a folded [AnalysisReport] from the one-shot [Analysis] runner.

Only per-frame metadata is covered; end-of-run log summaries such as loudnorm print_format=json are out of scope (use ebur128 metadata for loudness instead).

Re-exports§

pub use event::*;
pub use detector::*;
pub use filter::*;
pub use report::*;
pub use runner::*;

Modules§

detector
Detector definitions and their FFmpeg filter_desc string generation.
event
Typed detection/measurement events and the lavfi.* metadata parser.
filter
The reusable MetadataEventFilter and its event-sink plumbing.
report
Folded analysis report and the pure event-folding function.
runner
The one-shot Analysis builder: configure detectors, run to completion, and get a folded AnalysisReport.