View Source Membrane.Sink (Membrane Core v1.1.0)
Module defining behaviour for sinks - elements consuming data.
Behaviours for sinks are specified, besides this place, in modules
Membrane.Element.Base
,
and Membrane.Element.WithInputPads
.
Sink elements can define only input pads. Job of a usual sink is to receive some
data on such pad and consume it (write to a soundcard, send through TCP etc.).
If the pad has the flow control set to :manual
, then element is also responsible
for requesting demands when it is able and willing to consume data (for more details,
see Membrane.Element.Action.demand/0
). Sinks, like all elements, can of course
have multiple pads if needed to provide more complex solutions.
List of available callbacks
Below there is a list of all the callbacks available in a module, that implements Membrane.Sink
behaviour.
We have put it for your convenience, as some of these callbacks aren't directly defined in that module and
their specification is available in different modules.
The callbacks available in Membrane.Sink
behaviour:
Membrane.Element.Base.__struct__/0
Membrane.Element.Base.__struct__/1
Membrane.Element.Base.handle_event/4
Membrane.Element.Base.handle_info/3
Membrane.Element.Base.handle_init/2
Membrane.Element.Base.handle_pad_added/3
Membrane.Element.Base.handle_pad_removed/3
Membrane.Element.Base.handle_parent_notification/3
Membrane.Element.Base.handle_playing/2
Membrane.Element.Base.handle_setup/2
Membrane.Element.Base.handle_terminate_request/2
Membrane.Element.Base.handle_tick/3
Summary
Functions
Brings all the stuff necessary to implement a sink element.
Functions
Brings all the stuff necessary to implement a sink element.
Options:
:bring_pad?
- if true (default) requires and aliasesMembrane.Pad