View Source Membrane.Element.PadData (Membrane Core v1.2.3)

Struct describing current pad state.

The public fields are:

  • :availability - see Membrane.Pad.availability/0
  • :stream_format - the most recent Membrane.StreamFormat.t/0 that have been sent (output) or received (input) on the pad. May be nil if not yet set.
  • :direction - see Membrane.Pad.direction/0
  • :end_of_stream? - flag determining whether the stream processing via the pad has been finished
  • :flow_control - see Membrane.Pad.flow_control/0.
  • :name - see Membrane.Pad.name/0. Do not mistake with :ref
  • :options - options passed in Membrane.ParentSpec when linking pad
  • :ref - see Membrane.Pad.ref/0
  • :start_of_stream? - flag determining whether the stream processing via the pad has been started
  • auto_demand_paused? - flag determining if auto-demanding on the pad is paused or no
  • max_instances - specifies maximal possible number of instances of a dynamic pad that can exist within single element. Equals nil for pads with availability: :always.

Other fields in the struct ARE NOT PART OF THE PUBLIC API and should not be accessed or relied on.

Summary

Types

t()

Struct describing current pad state.

Types

private_field()

@type private_field() :: term()

t()

@type t() :: %Membrane.Element.PadData{
  atomic_demand: private_field(),
  auto_demand_paused?: boolean(),
  auto_demand_size: private_field(),
  auto_flow_queue: private_field(),
  availability: Membrane.Pad.availability(),
  demand: integer() | nil,
  demand_unit: private_field(),
  direction: Membrane.Pad.direction(),
  end_of_stream?: boolean(),
  flow_control: Membrane.Pad.flow_control(),
  incoming_demand: integer() | nil,
  input_queue: private_field(),
  manual_demand_size: private_field(),
  max_instances: Membrane.Pad.max_instances() | nil,
  name: Membrane.Pad.name(),
  options: %{optional(atom()) => any()},
  other_demand_unit: private_field(),
  other_effective_flow_control: private_field(),
  other_ref: private_field(),
  pid: private_field(),
  ref: Membrane.Pad.ref(),
  stalker_metrics: private_field(),
  start_of_stream?: boolean(),
  sticky_events: private_field(),
  sticky_messages: private_field(),
  stream_format: Membrane.StreamFormat.t() | nil,
  stream_format_validation_params: private_field()
}

Struct describing current pad state.

The public fields are:

  • :availability - see Membrane.Pad.availability/0
  • :stream_format - the most recent Membrane.StreamFormat.t/0 that have been sent (output) or received (input) on the pad. May be nil if not yet set.
  • :direction - see Membrane.Pad.direction/0
  • :end_of_stream? - flag determining whether the stream processing via the pad has been finished
  • :flow_control - see Membrane.Pad.flow_control/0.
  • :name - see Membrane.Pad.name/0. Do not mistake with :ref
  • :options - options passed in Membrane.ParentSpec when linking pad
  • :ref - see Membrane.Pad.ref/0
  • :start_of_stream? - flag determining whether the stream processing via the pad has been started
  • auto_demand_paused? - flag determining if auto-demanding on the pad is paused or no
  • max_instances - specifies maximal possible number of instances of a dynamic pad that can exist within single element. Equals nil for pads with availability: :always.

Other fields in the struct ARE NOT PART OF THE PUBLIC API and should not be accessed or relied on.