Skip to main content

Module composition

Module composition 

Source
Expand description

Multi-track video composition and audio mixing.

This module provides MultiTrackComposer for compositing multiple video layers onto a solid-colour canvas, and MultiTrackAudioMixer for mixing multiple audio tracks into a single output stream.

Both types produce source-only FilterGraph instances — call FilterGraph::pull_video or FilterGraph::pull_audio in a loop to extract output frames.

Structs§

AudioConcatenator
Concatenates multiple audio inputs into a single seamless output stream.
AudioTrack
A single audio track in a MultiTrackAudioMixer mix.
CrossfadeJoiner
Joins two video inputs with a cross-dissolve transition.
LavfiSource
Generates video frames from an FFmpeg lavfi filtergraph string (e.g. color=s=1920x1080:c=black@0.0,drawtext=text='Title'), so a host such as the preview runner can feed a timeline-level generated overlay into a RealtimeComposer as pushed frames.
MultiTrackAudioMixer
Mixes multiple audio tracks into a single output stream.
MultiTrackComposer
Composes multiple video layers onto a solid-colour canvas.
ProxySource
A low-resolution proxy substitute for a VideoLayer’s source.
RealtimeComposer
Composites externally-decoded frames from several layers into one frame, reusing a single built filter graph across frames.
RealtimeLayer
One layer in a RealtimeComposer, composited bottom-up in Vec order (index 0 is the base; later layers blend on top).
RealtimeLayerDescriptor
The dimension-independent part of a RealtimeLayer: every field except width / height / pixel_format, which are only known once a frame has been decoded.
SolidSource
Generates a solid-color rgba frame stream.
TextSource
Renders a TextSpec into a source-only rgba frame stream.
VideoConcatenator
Concatenates multiple video inputs into a single seamless output stream.
VideoLayer
A single video layer in a MultiTrackComposer composition.

Enums§

LayerSource
The source of a composited VideoLayer’s frames.