rtspclientsink
rtspclientsink
(from GStreamer RTSP Server Library git)Send data over the network via RTSP RECORD(RFC 2326)
Hierarchy
GObject ╰──GInitiallyUnowned ╰──GstObject ╰──GstElement ╰──GstBin ╰──rtspclientsink
Factory details
Authors: – Jan Schmidt
Classification: – Sink/Network
Rank – none
Plugin – libgstrtspclientsink.so
Package – GStreamer RTSP Server Library git
Pad Templates
sink_%u
ANY
Presence – request
Direction – sink
stream_%u
ANY
Presence – request
Direction – sink
Signals
accept-certificate
gboolean accept_certificate_callback (GstElement * rtsp_client_sink, GTlsConnection * peer_cert, GTlsCertificate * errors, GTlsCertificateFlags * user_data, gpointer udata)
def accept_certificate_callback (rtsp_client_sink, peer_cert, errors, user_data, udata):
#python callback for the 'accept-certificate' signal
function accept_certificate_callback(rtsp_client_sink: GstElement * rtsp_client_sink, peer_cert: GTlsConnection * peer_cert, errors: GTlsCertificate * errors, user_data: GTlsCertificateFlags * user_data, udata: gpointer udata): {
// javascript callback for the 'accept-certificate' signal
}
This will directly map to GTlsConnection 's "accept-certificate" signal and be performed after the default checks of GstRTSPConnection (checking against the GTlsDatabase with the given GTlsCertificateFlags) have failed. If no GTlsDatabase is set on this connection, only this signal will be emitted.
Parameters:
rtsp_client_sink
–
peer_cert
–
the peer's GTlsCertificate
errors
–
the problems with peer_cert
user_data
–
user data set when the signal handler was connected.
udata
–
Since : 1.14
handle-request
handle_request_callback (GstElement * rtsp_client_sink, gpointer request, gpointer response, gpointer udata)
def handle_request_callback (rtsp_client_sink, request, response, udata):
#python callback for the 'handle-request' signal
function handle_request_callback(rtsp_client_sink: GstElement * rtsp_client_sink, request: gpointer request, response: gpointer response, udata: gpointer udata): {
// javascript callback for the 'handle-request' signal
}
Handle a server request in request and prepare response.
This signal is called from the streaming thread, you should therefore not do any state changes on rtsp_client_sink because this might deadlock. If you want to modify the state as a result of this signal, post a GST_MESSAGE_REQUEST_STATE message on the bus or signal the main thread in some other way.
Parameters:
rtsp_client_sink
–
request
–
response
–
udata
–
new-manager
new_manager_callback (GstElement * rtsp_client_sink, GstElement * manager, gpointer udata)
def new_manager_callback (rtsp_client_sink, manager, udata):
#python callback for the 'new-manager' signal
function new_manager_callback(rtsp_client_sink: GstElement * rtsp_client_sink, manager: GstElement * manager, udata: gpointer udata): {
// javascript callback for the 'new-manager' signal
}
Emitted after a new manager (like rtpbin) was created and the default properties were configured.
Parameters:
rtsp_client_sink
–
manager
–
udata
–
new-payloader
new_payloader_callback (GstElement * rtsp_client_sink, GstElement * payloader, gpointer udata)
def new_payloader_callback (rtsp_client_sink, payloader, udata):
#python callback for the 'new-payloader' signal
function new_payloader_callback(rtsp_client_sink: GstElement * rtsp_client_sink, payloader: GstElement * payloader, udata: gpointer udata): {
// javascript callback for the 'new-payloader' signal
}
Emitted after a new RTP payloader was created and the default properties were configured.
Parameters:
rtsp_client_sink
–
payloader
–
udata
–
request-rtcp-key
GstCaps * request_rtcp_key_callback (GstElement * rtsp_client_sink, guint num, gpointer udata)
def request_rtcp_key_callback (rtsp_client_sink, num, udata):
#python callback for the 'request-rtcp-key' signal
function request_rtcp_key_callback(rtsp_client_sink: GstElement * rtsp_client_sink, num: guint num, udata: gpointer udata): {
// javascript callback for the 'request-rtcp-key' signal
}
Signal emitted to get the crypto parameters relevant to the RTCP stream. User should provide the key and the RTCP encryption ciphers and authentication, and return them wrapped in a GstCaps.
Parameters:
rtsp_client_sink
–
num
–
the stream number
udata
–
Properties
async-handling
“async-handling” gboolean
The bin will handle Asynchronous state changes
Flags : Read / Write
Default value : false
debug
“debug” gboolean
Dump request and response messages to stdout
Flags : Read / Write
Default value : false
do-rtsp-keep-alive
“do-rtsp-keep-alive” gboolean
Enable RTSP keep alive support. Some old server don't like RTSP keep alive and then this property needs to be set to FALSE.
Flags : Read / Write
Default value : true
location
“location” gchararray
Location of the RTSP url to read
Flags : Read / Write
Default value : NULL
message-forward
“message-forward” gboolean
Forwards all children messages
Flags : Read / Write
Default value : false
multicast-iface
“multicast-iface” gchararray
The network interface on which to join the multicast group
Flags : Read / Write
Default value : NULL
name
“name” gchararray
The name of the object
Flags : Read / Write / Construct
Default value : rtspclientsink0
ntp-time-source
“ntp-time-source” Rtspclient-sink-ntp-time-source
NTP time source for RTCP packets
Flags : Read / Write
Default value : ntp (0)
port-range
“port-range” gchararray
Configure the client port numbers that can be used to receive RTCP.
Flags : Read / Write
Default value : NULL
protocols
“protocols” Rtsplower-trans
Allowed lower transport protocols
Flags : Read / Write
Default value : tcp+udp-mcast+udp
proxy
“proxy” gchararray
Set the proxy parameters. This has to be a string of the format [http://][user:passwd@]host[:port].
Flags : Read / Write
Default value : NULL
proxy-id
“proxy-id” gchararray
Sets the proxy URI user id for authentication. If the URI set via the "proxy" property contains a user-id already, that will take precedence.
Flags : Read / Write
Default value : NULL
proxy-pw
“proxy-pw” gchararray
Sets the proxy URI password for authentication. If the URI set via the "proxy" property contains a password already, that will take precedence.
Flags : Read / Write
Default value : NULL
retry
“retry” guint
Max number of retries when allocating RTP ports.
Flags : Read / Write
Default value : 20
rtp-blocksize
“rtp-blocksize” guint
RTP package size to suggest to server.
Flags : Read / Write
Default value : 0
rtx-time
“rtx-time” guint
Amount of ms to buffer for retransmission. 0 disables retransmission
Flags : Read / Write
Default value : 500
tcp-timeout
“tcp-timeout” guint64
Fail after timeout microseconds on TCP connections (0 = disabled)
Flags : Read / Write
Default value : 20000000
timeout
“timeout” guint64
Retry TCP transport after UDP timeout microseconds (0 = disabled)
Flags : Read / Write
Default value : 5000000
tls-database
“tls-database” GTlsDatabase *
TLS database with anchor certificate authorities used to validate the server certificate
Flags : Read / Write
tls-interaction
“tls-interaction” GTlsInteraction *
A GTlsInteraction object to prompt the user for password or certificate
Flags : Read / Write
tls-validation-flags
“tls-validation-flags” Gtls-certificate-flags
TLS certificate validation flags used to validate the server certificate
Flags : Read / Write
Default value : validate-all
udp-buffer-size
“udp-buffer-size” gint
Size of the kernel UDP receive buffer in bytes.
Flags : Read / Write
Default value : 524288
udp-reconnect
“udp-reconnect” gboolean
Reconnect to the server if RTSP connection is closed when doing UDP
Flags : Read / Write
Default value : true
user-agent
“user-agent” gchararray
The User-Agent string to send to the server
Flags : Read / Write
Default value : GStreamer/1.15.0.1
user-id
“user-id” gchararray
RTSP location URI user id for authentication
Flags : Read / Write
Default value : NULL
user-pw
“user-pw” gchararray
RTSP location URI user password for authentication
Flags : Read / Write
Default value : NULL
Named constants
Rtspclient-sink-ntp-time-source
Members
ntp
(0) – NTP time based on realtime clock
unix
(1) – UNIX time based on realtime clock
running-time
(2) – Running time based on pipeline clock
clock-time
(3) – Pipeline clock time
Gtls-certificate-flags
Members
unknown-ca
(0x00000001) – G_TLS_CERTIFICATE_UNKNOWN_CA
bad-identity
(0x00000002) – G_TLS_CERTIFICATE_BAD_IDENTITY
not-activated
(0x00000004) – G_TLS_CERTIFICATE_NOT_ACTIVATED
expired
(0x00000008) – G_TLS_CERTIFICATE_EXPIRED
revoked
(0x00000010) – G_TLS_CERTIFICATE_REVOKED
insecure
(0x00000020) – G_TLS_CERTIFICATE_INSECURE
generic-error
(0x00000040) – G_TLS_CERTIFICATE_GENERIC_ERROR
validate-all
(0x0000007f) – G_TLS_CERTIFICATE_VALIDATE_ALL
Rtsplower-trans
Members
unknown
(0x00000000) – GST_RTSP_LOWER_TRANS_UNKNOWN
udp
(0x00000001) – GST_RTSP_LOWER_TRANS_UDP
udp-mcast
(0x00000002) – GST_RTSP_LOWER_TRANS_UDP_MCAST
tcp
(0x00000004) – GST_RTSP_LOWER_TRANS_TCP
http
(0x00000010) – GST_RTSP_LOWER_TRANS_HTTP
tls
(0x00000020) – GST_RTSP_LOWER_TRANS_TLS
Rtspprofile
Members
unknown
(0x00000000) – GST_RTSP_PROFILE_UNKNOWN
avp
(0x00000001) – GST_RTSP_PROFILE_AVP
savp
(0x00000002) – GST_RTSP_PROFILE_SAVP
avpf
(0x00000004) – GST_RTSP_PROFILE_AVPF
savpf
(0x00000008) – GST_RTSP_PROFILE_SAVPF
The results of the search are