mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-01-30 11:08:34 +00:00
stream: Fix randomly missing streams from SDP with dynamic elements
When using dynamic elements, gst_rtsp_stream_join_bin() is called from "pad-added" signal. In that case priv->srcpad could already have its caps, and they'll be sent to priv->send_src[0] pad. That means that when it connects "notify::caps" signal, that pad could already have received its caps and the signal won't be emitted anymore. In that case priv->caps stay to NULL and when building the SDP that stream gets ignored. Leading to missing video or audio when playing in client side. https://bugzilla.gnome.org/show_bug.cgi?id=772478
This commit is contained in:
parent
87f8eed5a7
commit
c0f24fea83
1 changed files with 1 additions and 0 deletions
|
@ -2759,6 +2759,7 @@ gst_rtsp_stream_join_bin (GstRTSPStream * stream, GstBin * bin,
|
|||
/* be notified of caps changes */
|
||||
priv->caps_sig = g_signal_connect (priv->send_src[0], "notify::caps",
|
||||
(GCallback) caps_notify, stream);
|
||||
priv->caps = gst_pad_get_current_caps (priv->send_src[0]);
|
||||
}
|
||||
|
||||
priv->joined_bin = bin;
|
||||
|
|
Loading…
Reference in a new issue