mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-28 12:41:05 +00:00
discoverer: Try to get negotiated caps first on pad-added and only then fall back to a caps query
The negotiated caps will be more accurate and are fixed caps in any case. Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/498 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/655>
This commit is contained in:
parent
add3023f09
commit
350a7197e7
1 changed files with 6 additions and 1 deletions
|
@ -701,7 +701,12 @@ uridecodebin_pad_added_cb (GstElement * uridecodebin, GstPad * pad,
|
|||
g_object_set (ps->sink, "silent", TRUE, NULL);
|
||||
g_object_set (ps->queue, "max-size-buffers", 1, "silent", TRUE, NULL);
|
||||
|
||||
caps = gst_pad_query_caps (pad, NULL);
|
||||
caps = gst_pad_get_current_caps (pad);
|
||||
if (!caps) {
|
||||
GST_WARNING ("Couldn't get negotiated caps from %s:%s",
|
||||
GST_DEBUG_PAD_NAME (pad));
|
||||
caps = gst_pad_query_caps (pad, NULL);
|
||||
}
|
||||
|
||||
sinkpad = gst_element_get_static_pad (ps->queue, "sink");
|
||||
if (sinkpad == NULL)
|
||||
|
|
Loading…
Reference in a new issue