rtspsrc2

rtspsrc2 is a from-scratch rewrite of the rtspsrc element to fix some fundamental architectural issues, with the aim of making the two functionally equivalent.

Implemented features:

  • RTSP 1.0 support
  • Lower transports: TCP, UDP, UDP-Multicast
  • RTCP SR and RTCP RR
  • RTCP-based A/V sync
  • Lower transport selection and priority (NEW!)
    • Also supports different lower transports for each SETUP
  • Credentials support
  • TLS/TCP support
  • HTTP tunnelling
  • Keep-alive
  • Support for stream selection at the start
  • Allow unlinked pads

Some missing features:

  • SET_PARAMETER/GET_PARAMETER messages
  • SRTP support
  • VOD support: PAUSE, seeking, etc
  • ONVIF backchannel and trick mode support
  • and more

Please see the README for a complete and up-to-date list.

Hierarchy

GObject
    ╰──GInitiallyUnowned
        ╰──GstObject
            ╰──GstElement
                ╰──GstBin
                    ╰──rtspsrc2

Implemented interfaces

Factory details

Authors: – Nirbheek Chauhan

Classification:Source/Network

Rank – none

Plugin – rsrtsp

Package – gst-plugin-rtsp

Pad Templates

stream_%u

application/x-rtp:

Presencesometimes

Directionsrc

Object typeGstPad


Action Signals

tls-client-auth

g_signal_emit_by_name (param_0, "tls-client-auth", &ret);
ret = param_0.emit ("tls-client-auth")
let ret = param_0.emit ("tls-client-auth");

Parameters:

param_0 (GstElement *)
No description available
Returns (GstStructure *)
No description available

Flags: Run Last / Action


Properties

certificate-file

“certificate-file” gchararray

Path to certificate chain for the private key file in PEM format

Flags : Read / Write

Default value : NULL


do-rtsp-keep-alive

“do-rtsp-keep-alive” gboolean

Send RTSP keep alive packets, disable for old incompatible server.

Flags : Read / Write

Default value : true


extra-http-request-headers

“extra-http-request-headers” GstStructure *

Extra HTTP headers to send with requests

Flags : Read / Write


location

“location” gchararray

RTSP server, credentials and media path, e.g. rtsp://user:p4ssw0rd@camera-5.local:8554/h264_1080p30

Flags : Read / Write

Default value : NULL


port-start

“port-start” guint

Port number to start allocating client ports for receiving RTP and RTCP data, eg. 3000 (0 = automatic selection)

Flags : Read / Write

Default value : 0


private-key-file

“private-key-file” gchararray

Path to a PKCS1, PKCS8 or SEC1 private key file in PEM format

Flags : Read / Write

Default value : NULL


protocols

“protocols” gchararray

Allowed lower transport protocols, in order of preference

Flags : Read / Write

Default value : udp-mcast,udp,tcp


receive-mtu

“receive-mtu” guint

Initial size of buffers to allocate in the buffer pool, will be increased if too small

Flags : Read / Write

Default value : 1508


timeout

“timeout” guint64

Timeout for network activity, in nanoseconds

Flags : Read / Write

Default value : 5000000000


The results of the search are