Membrane.UDP.Source (Membrane UDP plugin v0.14.1)
View SourceElement that reads packets from a UDP socket and sends their payloads through the output pad.
By receiving a :close_socket notification this element will close the socket and send
end_of_stream to it's output pad.
Element options
Passed via struct Membrane.UDP.Source.t/0
local_port_nopos_integer()Default value:
5000
A UDP port number used when opening a receiving socket.local_address:inet.socket_address()Default value:
:any
An IP Address on which the socket will listen. It allows to choose which network interface to use if there's more than one.recv_buffer_sizepos_integer()Default value:
1048576
Size of the receive buffer. Packages of size greater than this buffer will be truncatedpierce_nat_ctx%{uri: URI.t(), address: :inet.ip_address(), port: pos_integer()} | nilDefault value:
nil
Context necessary to make an attempt to create client-side NAT binding by sending an empty datagram from theMembrane.UDP.Sourceto an arbitrary host.- If left as
nil, no attempt will ever be made. - If filled in, whenever the pipeline switches playback to
:playing, one datagram (with an empty payload) will be sent from the opened socket to the:portat:addressprovided via this option. If:addressis not present, it will be parsed from:uri.
Disclaimer: This is a potential vulnerability. Use with caution.
- If left as
Pads
:output
Accepted formats:
%RemoteStream{type: :packetized}| Direction: | :output |
| Availability: | :always |
| Flow control: | :push |
Summary
Types
Struct containing options for Membrane.UDP.Source
Types
@type t() :: %Membrane.UDP.Source{ local_address: :inet.socket_address(), local_port_no: pos_integer(), pierce_nat_ctx: %{uri: URI.t(), address: :inet.ip_address(), port: pos_integer()} | nil, recv_buffer_size: pos_integer() }
Struct containing options for Membrane.UDP.Source
Functions
@spec options() :: keyword()
Returns description of options available for this module