summaryrefslogtreecommitdiff
path: root/gst/rtsp-server/rtsp-stream.h
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian@centricular.com>2015-12-30 18:39:05 +0200
committerSebastian Dröge <sebastian@centricular.com>2016-04-03 11:22:31 +0300
commit9fab555cc598d701b8911926193f8005471e2ded (patch)
treeff15e2fc44d8c0f13c8629830ae87f2bf70a2043 /gst/rtsp-server/rtsp-stream.h
parentb63a6f029f478a859ac6dc6ac1d422072fdc70a0 (diff)
rtsp-server: Implement clock signalling according to RFC7273
For NTP and PTP clocks we signal the actual clock that is used and signal the direct media clock offset. For all other clocks we at least signal that it's the local sender clock. This allows receivers to know which clock was used to generate the media and its RTP timestamps. Receivers can then implement network synchronization, either absolute or at least relative by getting the sender clock rate directly via NTP/PTP instead of estimating it from RTP timestamps and packet receive times. https://bugzilla.gnome.org/show_bug.cgi?id=760005
Diffstat (limited to 'gst/rtsp-server/rtsp-stream.h')
-rw-r--r--gst/rtsp-server/rtsp-stream.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/gst/rtsp-server/rtsp-stream.h b/gst/rtsp-server/rtsp-stream.h
index c347cb8..a6ab1ff 100644
--- a/gst/rtsp-server/rtsp-stream.h
+++ b/gst/rtsp-server/rtsp-stream.h
@@ -43,6 +43,7 @@ typedef struct _GstRTSPStreamPrivate GstRTSPStreamPrivate;
#include "rtsp-stream-transport.h"
#include "rtsp-address-pool.h"
#include "rtsp-session.h"
+#include "rtsp-media.h"
/**
* GstRTSPStream:
@@ -110,6 +111,7 @@ gboolean gst_rtsp_stream_join_bin (GstRTSPStream *stream,
GstState state);
gboolean gst_rtsp_stream_leave_bin (GstRTSPStream *stream,
GstBin *bin, GstElement *rtpbin);
+GstBin * gst_rtsp_stream_get_joined_bin (GstRTSPStream *stream);
gboolean gst_rtsp_stream_set_blocked (GstRTSPStream * stream,
gboolean blocked);
@@ -174,6 +176,10 @@ GstElement * gst_rtsp_stream_request_aux_sender (GstRTSPStream * st
gboolean gst_rtsp_stream_allocate_udp_sockets (GstRTSPStream * stream, GSocketFamily family,
GstRTSPTransport *transport, gboolean use_client_setttings);
+
+void gst_rtsp_stream_set_publish_clock_mode (GstRTSPStream * stream, GstRTSPPublishClockMode mode);
+GstRTSPPublishClockMode gst_rtsp_stream_get_publish_clock_mode (GstRTSPStream * stream);
+
/**
* GstRTSPStreamTransportFilterFunc:
* @stream: a #GstRTSPStream object