multiudpsink

multiudpsink is a network sink that sends UDP packets to multiple clients. It can be combined with rtp payload encoders to implement RTP streaming.

Hierarchy

GObject
    ╰──GInitiallyUnowned
        ╰──GstObject
            ╰──GstElement
                ╰──GstBaseSink
                    ╰──GstMultiUDPSink

Factory details

Authors: – Wim Taymans

Classification:Sink/Network

Rank – none

Plugin – udp

Package – GStreamer Good Plug-ins

Pad Templates

sink

ANY

Presencealways

Directionsink

Object typeGstPad


Signals

client-added

client_added_callback (GstElement * gstmultiudpsink,
                       gchararray host,
                       gint port,
                       gpointer udata)
def client_added_callback (gstmultiudpsink, host, port, udata):
    #python callback for the 'client-added' signal
function client_added_callback(gstmultiudpsink: GstElement * gstmultiudpsink, host: gchararray host, port: gint port, udata: gpointer udata): {
    // javascript callback for the 'client-added' signal
}

Signal emitted when a new client is added to the list of clients.

Parameters:

gstmultiudpsink

the sink emitting the signal

host

the hostname/IP address of the added client

port

the port of the added client

udata
No description available

Flags: Run Last


client-removed

client_removed_callback (GstElement * gstmultiudpsink,
                         gchararray host,
                         gint port,
                         gpointer udata)
def client_removed_callback (gstmultiudpsink, host, port, udata):
    #python callback for the 'client-removed' signal
function client_removed_callback(gstmultiudpsink: GstElement * gstmultiudpsink, host: gchararray host, port: gint port, udata: gpointer udata): {
    // javascript callback for the 'client-removed' signal
}

Signal emitted when a client is removed from the list of clients.

Parameters:

gstmultiudpsink

the sink emitting the signal

host

the hostname/IP address of the removed client

port

the port of the removed client

udata
No description available

Flags: Run Last


Action Signals

add

g_signal_emit_by_name (gstmultiudpsink, "add", host, port);
ret = gstmultiudpsink.emit ("add", host, port)
let ret = gstmultiudpsink.emit ("add", host, port);

Add a client with destination host and port to the list of clients. When the same host/port pair is added multiple times, the send-duplicates property defines if the packets are sent multiple times to the same host/port pair or not.

When a host/port pair is added multiple times, an equal amount of remove calls must be performed to actually remove the host/port pair from the list of destinations.

Parameters:

gstmultiudpsink (GstElement *)

the sink on which the signal is emitted

host (gchararray)

the hostname/IP address of the client to add

port (gint)

the port of the client to add

Flags: Run Last / Action


clear

g_signal_emit_by_name (gstmultiudpsink, "clear");
ret = gstmultiudpsink.emit ("clear")
let ret = gstmultiudpsink.emit ("clear");

Clear the list of clients.

Parameters:

gstmultiudpsink (GstElement *)

the sink on which the signal is emitted

Flags: Run Last / Action


get-stats

g_signal_emit_by_name (gstmultiudpsink, "get-stats", host, port, &ret);
ret = gstmultiudpsink.emit ("get-stats", host, port)
let ret = gstmultiudpsink.emit ("get-stats", host, port);

Get the statistics of the client with destination host and port.

Parameters:

gstmultiudpsink (GstElement *)

the sink on which the signal is emitted

host (gchararray)

the hostname/IP address of the client to get stats on

port (gint)

the port of the client to get stats on

Returns (GstStructure *)

a GstStructure: bytes_sent, packets_sent, connect_time (in epoch nanoseconds), disconnect_time (in epoch nanoseconds)

Flags: Run Last / Action


remove

g_signal_emit_by_name (gstmultiudpsink, "remove", host, port);
ret = gstmultiudpsink.emit ("remove", host, port)
let ret = gstmultiudpsink.emit ("remove", host, port);

Remove the client with destination host and port from the list of clients.

Parameters:

gstmultiudpsink (GstElement *)

the sink on which the signal is emitted

host (gchararray)

the hostname/IP address of the client to remove

port (gint)

the port of the client to remove

Flags: Run Last / Action


Properties

auto-multicast

“auto-multicast” gboolean

Automatically join/leave the multicast groups, FALSE means user has to do it himself

Flags : Read / Write

Default value : true


bind-address

“bind-address” gchararray

Address to bind the socket to

Flags : Read / Write

Default value : NULL


bind-port

“bind-port” gint

Port to bind the socket to

Flags : Read / Write

Default value : 0


buffer-size

“buffer-size” gint

Size of the kernel send buffer in bytes, 0=default

Flags : Read / Write

Default value : 0


bytes-served

“bytes-served” guint64

Total number of bytes sent to all clients

Flags : Read

Default value : 0


bytes-to-serve

“bytes-to-serve” guint64

Number of bytes received to serve to clients

Flags : Read

Default value : 0


clients

“clients” gchararray

A comma separated list of host:port pairs with destinations

Flags : Read / Write


close-socket

“close-socket” gboolean

Close socket if passed as property on state change

Flags : Read / Write

Default value : true


force-ipv4

“force-ipv4” gboolean

Forcing the use of an IPv4 socket (DEPRECATED, has no effect anymore)

Flags : Read / Write

Default value : false


loop

“loop” gboolean

Used for setting the multicast loop parameter. TRUE = enable, FALSE = disable

Flags : Read / Write

Default value : true


multicast-iface

“multicast-iface” gchararray

The network interface on which to join the multicast group

Flags : Read / Write

Default value : NULL


qos-dscp

“qos-dscp” gint

Quality of Service, differentiated services code point (-1 default)

Flags : Read / Write

Default value : -1


send-duplicates

“send-duplicates” gboolean

When a destination/port pair is added multiple times, send packets multiple times as well

Flags : Read / Write

Default value : true


socket

“socket” GSocket *

Socket to use for UDP sending. (NULL == allocate)

Flags : Read / Write


socket-v6

“socket-v6” GSocket *

Socket to use for UDPv6 sending. (NULL == allocate)

Flags : Read / Write


ttl

“ttl” gint

Used for setting the unicast TTL parameter

Flags : Read / Write

Default value : 64


ttl-mc

“ttl-mc” gint

Used for setting the multicast TTL parameter

Flags : Read / Write

Default value : 1


used-socket

“used-socket” GSocket *

Socket currently in use for UDP sending. (NULL == no socket)

Flags : Read


used-socket-v6

“used-socket-v6” GSocket *

Socket currently in use for UDPv6 sending. (NULL == no socket)

Flags : Read


The results of the search are