[Bug 738285] playbin: Sequential playback of the file list does not work

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Tue Nov 4 02:10:11 PST 2014


https://bugzilla.gnome.org/show_bug.cgi?id=738285
  GStreamer | gst-plugins-base | git

Sebastian Dröge (slomo) <slomo> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #289637|none                        |needs-work
             status|                            |

--- Comment #67 from Sebastian Dröge (slomo) <slomo at coaxion.net> 2014-11-04 10:10:06 UTC ---
Review of attachment 289637:
 --> (https://bugzilla.gnome.org/review?bug=738285&attachment=289637)

Please explain what exactly you're doing here and why, in the commit message

::: gst/playback/gstdecodebin2.c
@@ +471,3 @@
 static gboolean gst_decode_chain_is_drained (GstDecodeChain * chain);
+static gboolean gst_decode_group_is_drained (GstDecodeGroup * group);
+#endif

Where do you stop using them?

@@ +4641,3 @@
+  GstDecodePad *dpad = GST_DECODE_PAD (parent);
+  GstFlowReturn ret = gst_proxy_pad_chain_default (pad, parent, buffer);
+  gboolean notlinked = (ret == GST_FLOW_NOT_LINKED);

Handling not-linked specially here seems wrong. If anything this should be (!=
OK && != FLUSHING) or something like that

::: tests/check/elements/playbin-complex.c
@@ +1036,3 @@
+  gst_object_unref (bus);
+
+  g_usleep (10000);

Why do you sleep here?

@@ +1037,3 @@
+
+  g_usleep (10000);
+  fail_unless (remaining == 0);

You only check if the about-to-finish signal is emitted often enough... but
that doesn't mean that the second URI is actually played. Maybe it just went
EOS directly after the first?

@@ +1101,3 @@
+
+  g_usleep (10000);
+  fail_unless (remaining == 0);

Same two comments here

@@ +1138,3 @@
+      g_signal_connect (G_OBJECT (playbin), "about-to-finish",
+      (GCallback) play_next, &remaining);
+  g_object_set (G_OBJECT (playbin), "flags", 1, NULL);

flags are usually set by first getting the current flags, and then unsetting or
setting any flags you care about

@@ +1165,3 @@
+
+  g_usleep (10000);
+  fail_unless (remaining == 0);

And here

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list