[Bug 755036] mssdemux: improved live playback support

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Thu Nov 10 12:18:32 UTC 2016


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

Matthew Waters (ystreet00) <ystreet00 at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #339338|none                        |reviewed
             status|                            |

--- Comment #13 from Matthew Waters (ystreet00) <ystreet00 at gmail.com> ---
Review of attachment 339338:
 --> (https://bugzilla.gnome.org/review?bug=755036&attachment=339338)

The fragment parsing feels like it should go into qtdemux instead.  Any reason
why it isn't?

::: ext/smoothstreaming/gstmssmanifest.c
@@ +78,3 @@

+  gboolean has_live_fragments;
+  GQueue live_fragments;

Why the separate variable instead of changing over the existing GList
fragments?

@@ +267,3 @@
+      manifest->is_live ? "yes" : "no", manifest->look_ahead_fragment_count);
+  stream->has_live_fragments = manifest->is_live
+      && manifest->look_ahead_fragment_count;

What exactly is the has_live_fragments condition signalling?

The possible existence of parsing needed for the TfrfBox?

@@ +1117,3 @@
+    fragment = stream->current_fragment->data;
+    if (fragment->time <= prev_fragment->time) {
+      while (fragment->time <= prev_fragment->time) {

double condition without an else on the if seems a little pointless no?

Also, what exactly is the while loop meant to solve?

When aren't the fragments that you're iterating over, not in order?

In any case, this seems like it should be a separate patch.

@@ +1526,3 @@
+
+void
+gst_mss_stream_fragment_parse (GstMssStream * stream, GstBuffer * buffer)

parse_fragment() is a better name.

@@ +1545,3 @@
+
+  for (guint8 index = 0; index < stream->fragment_parser.tfrf.entries_count;
+      index++) {

Any particular reason you chose an 8-bit integer for an index?

That would only allow 255 fragments.

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