rtpsend
RTP session management (sender).
Environment variables
The underlying Runtime can be fine-tuned process-wide using the following env vars:
- 'GST_RTPBIN2_RT_WORKER_THREADS': number of worker threads the Runtime will use (default: 1) 0 => number of cores available on the system.
- 'GST_RTPBIN2_RT_MAX_BLOCKING_THREADS': limit for the number of threads in the blocking pool (default: 512). When they push buffers, downstream events or handle downstream queries, rtpbin2 elements spawn a thread from the blocking pool. This is to avoid blocking the worker thread which is shared with other elements running on the same runtime.
- 'GST_RTPBIN2_RT_THREAD_KEEP_ALIVE': timeout for a thread in the blocking pool in ms (default: 10s).
Example pipeline
gst-launch-1.0 \
audiotestsrc is-live=true ! opusenc ! rtpopuspay2 ! queue max-size-buffers=0 max-size-bytes=0 max-size-time=100000000 \
! rtpsend name=send rtp-id=example-rtp-id \
send.rtp_src_0 ! udpsink port=5004 host=127.0.0.1 \
send.rtcp_src_0 ! udpsink port=5005 host=127.0.0.1 async=false \
rtprecv name=recv rtp-id=example-rtp-id \
udpsrc port=5007 caps='application/x-rtcp' ! recv.rtcp_sink_0
This will produce an Opus encoded audio stream and send it as RTP packets with RTCP over UDP ports 5004 & 5005. The pipeline expects RTCP to be sent back on UDP port 5007. See rtprecv for an example of how to process such packets.
Hierarchy
GObject ╰──GInitiallyUnowned ╰──GstObject ╰──GstElement ╰──rtpsend
Factory details
Authors: – Matthew Waters
Classification: – Network/RTP/Filter
Rank – none
Plugin – rsrtp
Package – gst-plugin-rtp
Pad Templates
Action Signals
get-session
g_signal_emit_by_name (param_0, "get-session", arg0, &ret);
ret = param_0.emit ("get-session", arg0)
let ret = param_0.emit ("get-session", arg0);
Parameters:
Properties
min-rtcp-interval
“min-rtcp-interval” guint
Minimum time (in ms) between RTCP reports
Flags : Read / Write
Default value : 5000
reduced-size-rtcp
“reduced-size-rtcp” gboolean
Use reduced size RTCP. Only has an effect if rtp-profile=avpf
Flags : Read / Write
Default value : false
rtp-id
“rtp-id” gchararray
A connection ID shared with a rtprecv element for implementing both sending and receiving using the same RTP context
Flags : Read / Write
Default value : rtp-id
rtp-profile
“rtp-profile” Rtp-send-profile *
RTP Profile to use
Flags : Read / Write
Default value : avp (0)
Named constants
Rtp-send-profile
Members
avp
(0) – AVP profile as specified in RFC 3550
avpf
(1) – AVPF profile as specified in RFC 4585
The results of the search are