Skip to main content

alpha2_eval/
lib.rs

1//! Pure, deterministic timeline evaluation.
2
3mod animation;
4mod audio;
5mod composition;
6mod error;
7mod evaluate;
8mod frame;
9mod index;
10mod interval_tree;
11mod retime;
12#[cfg(test)]
13mod tests;
14
15pub use animation::{
16    EffectParamValue, sample_effect_param, sample_scalar, sample_vec2, sample_visual,
17};
18pub use audio::{
19    ActiveAudioClip, AudioSpan, AudioSpanDesc, AudioSpanScratch, evaluate_audio, evaluate_audio_in,
20};
21pub(crate) use composition::IndexedComposition;
22pub use composition::{
23    ActiveComposition, CompositionPlan, MAX_PLAN_BYTES, PlanError, Step, StepLayer, StepOp,
24    plan_composition, plan_source_composition,
25};
26pub use error::EvalError;
27pub(crate) use error::{IndexedCaptions, IndexedClip, IndexedTransition};
28pub(crate) use evaluate::ensure_index_matches;
29pub use evaluate::{evaluate, frame_needs};
30pub use frame::{
31    ActiveCaption, ActiveClip, ActiveEffect, ActiveTransition, EvaluatedVisual, FrameDesc,
32    FrameNeed,
33};
34pub use index::ActiveIndex;
35pub(crate) use interval_tree::{
36    IntervalNode, build_tree, collect_active, collect_overlapping, count_overlapping,
37};
38pub use retime::picture_source_time;
39pub(crate) use retime::{Mirror, map_source_time};