[Bug 752413] dashdemux: add support for parsing UTCTiming elements

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Sat Aug 8 02:54:20 PDT 2015


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

Sebastian Dröge (slomo) <slomo at coaxion.net> changed:

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

--- Comment #4 from Sebastian Dröge (slomo) <slomo at coaxion.net> ---
Review of attachment 308087:
 --> (https://bugzilla.gnome.org/review?bug=752413&attachment=308087)

Just a short initial review, will continue in a bit

::: ext/dash/gstdashdemux.c
@@ +647,3 @@
+            gst_dash_demux_clock_drift_new (dashdemux, (const gchar **) urls,
+            method);
+        gst_task_start (dashdemux->clock_drift->task);

Would it be possible to reuse the mpd refresh task for this somehow?
adaptivedemux already has so many threads :)

@@ +1580,3 @@
+
+  next_update = g_get_monotonic_time ();
+  downloader = gst_uri_downloader_new ();

You can use the adaptivedemux GstURIDownloader here instead of creating a new
one. Then you can potentially reuse existing HTTP connections, reducing
overhead

@@ +1622,3 @@
+        /* We don't know when the server sampled its clock, but we know
+           it must have been before "end" and probably after "start".
+           A reasonable estimate is to use (start+end)/2

I guess that's the best you can do here but it's not correct to assume that the
server sampled the clock in the middle, especially in the presence of HTTPS and
having to create a new connection... in which case the time until the server
sees the request is much higher than the time until you get the reply.

Shouldn't really matter much here though as this is not about
millisecond-accuracy :)

@@ +1675,3 @@
+    /* wait for task to get a clock value from a time server */
+    if (demux->clock_drift->got_clock == FALSE
+        && demux->clock_drift->stop_task == FALSE) {

Never compare booleans with == and !=, but just check "if (x)" and "if (!x)"

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