diff options
-rw-r--r-- | gst/rtsp/gstrtspsrc.c | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/gst/rtsp/gstrtspsrc.c b/gst/rtsp/gstrtspsrc.c index 397ef3187..b7adc4366 100644 --- a/gst/rtsp/gstrtspsrc.c +++ b/gst/rtsp/gstrtspsrc.c @@ -90,7 +90,7 @@ #include <gst/net/gstnet.h> #include <gst/sdp/gstsdpmessage.h> #include <gst/sdp/gstmikey.h> -#include <gst/rtp/gstrtppayloads.h> +#include <gst/rtp/rtp.h> #include "gst/gst-i18n-plugin.h" @@ -3401,6 +3401,8 @@ gst_rtspsrc_stream_configure_manager (GstRTSPSrc * src, GstRTSPStream * stream, g_signal_emit_by_name (src->manager, "get-internal-session", stream->id, &rtpsession); if (rtpsession) { + GstRTPProfile rtp_profile; + GST_INFO_OBJECT (src, "configure bandwidth in session %p", rtpsession); stream->session = rtpsession; @@ -3422,6 +3424,24 @@ gst_rtspsrc_stream_configure_manager (GstRTSPSrc * src, GstRTSPStream * stream, NULL); } + switch (stream->profile) { + case GST_RTSP_PROFILE_AVPF: + rtp_profile = GST_RTP_PROFILE_AVPF; + break; + case GST_RTSP_PROFILE_SAVP: + rtp_profile = GST_RTP_PROFILE_SAVP; + break; + case GST_RTSP_PROFILE_SAVPF: + rtp_profile = GST_RTP_PROFILE_SAVPF; + break; + case GST_RTSP_PROFILE_AVP: + default: + rtp_profile = GST_RTP_PROFILE_AVP; + break; + } + + g_object_set (rtpsession, "rtp-profile", rtp_profile, NULL); + g_object_set (rtpsession, "probation", src->probation, NULL); g_object_set (rtpsession, "internal-ssrc", stream->send_ssrc, NULL); |