View Source Membrane.TCP.Sink (Membrane TCP plugin v0.6.0)
Element that sends buffers received on the input pad over a TCP socket.
Element options
Passed via struct Membrane.TCP.Sink.t/0
connection_side
:server | :client | {:client, server_address :: :inet.ip_address(), server_port_no :: :inet.port_number()}
Required
Determines whether this element will operate like a server or a client when establishing TCP connection. In case of client-side connection server address and port number are required, unlesslocal_socket
is provided.local_address
:inet.socket_address()
Default value:
:any
An IP Address from which the socket will connect or will listen on. It allows to choose which network interface to use if there's more than one.local_port_no
:inet.port_number()
Default value:
0
A TCP port number used when connecting to a listening socket or starting a listening socket. If not specified any free port is chosen.local_socket
:gen_tcp.socket() | nil
Default value:
nil
Already connected TCP socket, if provided it will be used instead of creating and connecting a new one.close_on_eos
boolean()
Default value:
true
Automatically close connection on end-of-stream.on_connection_closed
:raise_error | :drop_buffers
Default value:
:raise_error
Defines behavior for handling buffers if connection is unexpectedly closed::raise_error
- Raise an error when writing to a closed socket.:drop_buffers
- Drop buffers if socket is closed.
Pads
:input
Accepted formats:
_any
Direction: | :input |
Availability: | :always |
Flow control: | :auto |
Summary
Types
Struct containing options for Membrane.TCP.Sink
Types
@type t() :: %Membrane.TCP.Sink{ close_on_eos: boolean(), connection_side: :server | :client | {:client, server_address :: :inet.ip_address(), server_port_no :: :inet.port_number()}, local_address: :inet.socket_address(), local_port_no: :inet.port_number(), local_socket: :gen_tcp.socket() | nil, on_connection_closed: :raise_error | :drop_buffers }
Struct containing options for Membrane.TCP.Sink
Functions
@spec options() :: keyword()
Returns description of options available for this module