View Source Membrane.VideoCompositor.Scene.Object.Layout (Membrane Video Compositor plugin v0.2.2)
Structure representing Layout objects.
Layouts can take multiple renderable objects as input and combine them into one frame. Fadings, Grids, Overlays, Transitions, etc. can be defined as Layouts.
Basically it's a multi-input, single-output node in processing graph.
Link to this section Summary
Types
Type of a map defining on how to map internal layout's ids to Scene objects
Defines how the output resolution of a layout texture can be specified.
Specify that Layouts
Link to this section Types
@type inputs() :: %{required(any()) => Membrane.VideoCompositor.Scene.Object.name()}
Type of a map defining on how to map internal layout's ids to Scene objects
@type output_resolution() :: Membrane.VideoCompositor.Scene.Resolution.t() | Membrane.VideoCompositor.Scene.Object.name()
Defines how the output resolution of a layout texture can be specified.
Texture resolution can be specified as:
- plain
Membrane.VideoCompositor.Resolution.t()
- resolution of another object
@type t() :: %{ :__struct__ => module(), :inputs => inputs(), :resolution => output_resolution(), optional(any()) => any() }
Specify that Layouts:
- should be defined as structs
- should have :inputs and :resolution fields
- can have custom fields