[Bug 775615] decodebin3: Select default track by GstStreamFlags

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Thu Feb 2 13:36:37 UTC 2017


https://bugzilla.gnome.org/show_bug.cgi?id=775615

--- Comment #19 from HoonHee Lee <hoonh83.lee at gmail.com> ---
Review of attachment 344712:
 --> (https://bugzilla.gnome.org/review?bug=775615&attachment=344712)

::: gst/playback/gstdecodebin3.c
@@ +1102,3 @@
+ * GCompareFunc to use with lists of GstStream.
+ * Sorts GstStreams by mime type and select flag and stream-id
+ * First video, then audio, then others.

I am not sure that I understand correctly about your question.

I know that it is not a good solution to sorting whenever collection is updated
in terms of code complexity.
But, in case of adaptive stream likes HLS, there is a stream which has 1-video
and 2-audio.
For that stream, number of parsebin is 3 and we can not guarantee that
collection messages from each parsebin are posted in order. Also, there is
preferred stream by SELECT flag.
So, I think that it is not enough to sort by just stream type.
Therefore, we have to re-order all streams by stream type, SELECT flag and
stream-id when multiple parsebins.

@@ +1143,3 @@
+
+  ret =
+      (flaga == GST_STREAM_FLAG_SELECT) ? ((flagb ==

Done.

@@ +1153,3 @@
+  ida = gst_stream_get_stream_id (sa);
+  idb = gst_stream_get_stream_id (sb);
+  ret = (ida) ? ((idb) ? g_strcmp0 (ida, idb) : -1) : 1;

Done.

@@ +1165,3 @@
   GstStreamCollection *res = NULL;
   GList *tmp;
+  GList *all_streams = NULL;

Done.

-- 
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