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

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

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

Link to this section Summary

Types

t()

Struct describing current pad state.

Link to this section Types

@type private_field() :: term()
@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(),
  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

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