mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-22 08:17:01 +00:00
gst/multifile/gstmultifilesink.c: Add a fixme comment.
Original commit message from CVS: * gst/multifile/gstmultifilesink.c: Add a fixme comment. * plugins/elements/gstoutputselector.c: Fix same leak as in input-selector. * tests/icles/output-selector-test.c: Improve the test.
This commit is contained in:
parent
2495420116
commit
dec9d95edb
2 changed files with 10 additions and 11 deletions
|
@ -25,13 +25,6 @@
|
|||
* Direct input stream to one out of N output pads.
|
||||
*/
|
||||
|
||||
/* FIXME: By default basesinks require some prerolled data before changing
|
||||
to playing state. Also pipeline with output-selector connected to multiple
|
||||
sink elements won't change to playing until all sink elements have received
|
||||
the preroll data. Currently this can be worked around using live source element
|
||||
and and exporting GST_COMPAT="no-live-preroll".
|
||||
*/
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
@ -212,7 +205,12 @@ gst_output_selector_set_property (GObject * object, guint prop_id,
|
|||
GstPad *next_pad =
|
||||
gst_element_get_static_pad (GST_ELEMENT (sel),
|
||||
g_value_get_string (value));
|
||||
if (next_pad && (next_pad != sel->active_srcpad)) {
|
||||
if (!next_pad) {
|
||||
GST_WARNING ("pad %s not found, activation failed",
|
||||
g_value_get_string (value));
|
||||
break;
|
||||
}
|
||||
if (next_pad != sel->active_srcpad) {
|
||||
/* switch to new srcpad in next chain run */
|
||||
if (sel->pending_srcpad != NULL) {
|
||||
GST_INFO ("replacing pending switch");
|
||||
|
@ -220,7 +218,8 @@ gst_output_selector_set_property (GObject * object, guint prop_id,
|
|||
}
|
||||
sel->pending_srcpad = next_pad;
|
||||
} else {
|
||||
GST_WARNING ("setting active pad failed");
|
||||
GST_INFO ("pad already active");
|
||||
gst_object_unref (next_pad);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -93,8 +93,8 @@ main (gint argc, gchar * argv[])
|
|||
g_object_set (G_OBJECT (src), "is-live", TRUE, NULL);
|
||||
g_object_set (G_OBJECT (src), "do-timestamp", TRUE, NULL);
|
||||
g_object_set (G_OBJECT (src), "num-buffers", 500, NULL);
|
||||
g_object_set (G_OBJECT (sink1), "sync", FALSE, NULL);
|
||||
g_object_set (G_OBJECT (sink2), "sync", FALSE, NULL);
|
||||
g_object_set (G_OBJECT (sink1), "sync", FALSE, "async", FALSE, NULL);
|
||||
g_object_set (G_OBJECT (sink2), "sync", FALSE, "async", FALSE, NULL);
|
||||
g_object_set (G_OBJECT (osel), "resend-latest", TRUE, NULL);
|
||||
|
||||
/* link src ! timeoverlay ! osel */
|
||||
|
|
Loading…
Reference in a new issue