=== release 1.10.4 === 2017-02-23 Sebastian Dröge * configure.ac: releasing 1.10.4 2017-02-10 20:50:17 +0900 Seungha Yang * ext/soup/gstsouphttpsrc.c: souphttpsrc: Extract redirection uri on libsoup's restarted callback Let libsoup handle redirection automatically. And then, to figure out redirection uri, extract it on "restarted" callback which will be fired before soup_session_send() is returned. https://bugzilla.gnome.org/show_bug.cgi?id=778428 2017-01-02 19:29:04 -0500 Nicolas Dufresne * sys/v4l2/gstv4l2object.c: v4l2object: Update image size when extrapolating Update the image size according the amount of data we are going to read/write. This workaround bugs in driver where the sizeimage provided by TRY/S_FMT represent the buffer length (maximum size) rather then the expected bytesused (buffer size). https://bugzilla.gnome.org/show_bug.cgi?id=775564 2017-02-17 15:50:32 -0800 Reynaldo H. Verdejo Pinochet * sys/v4l2/gstv4l2object.c: v4l2: fix typo in _acquire_format() error messages Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=778815 2017-02-10 10:32:57 -0300 Juan Pablo Ugarte * sys/v4l2/gstv4l2object.c: v4l2object: mark singleton caps as "may be leaked" objects. Set MAY_BE_LEAKED flag on static pads returned by gst_v4l2_object_get_*_caps() functions. Made functions thread safe by using g_once_init[enter|leave] funtions. https://bugzilla.gnome.org/show_bug.cgi?id=778453 2017-01-17 16:41:58 +0100 Jean-Christophe Trotin * sys/v4l2/gstv4l2allocator.c: v4l2allocator: reference memory before the buffer is queued In gst_v4l2_allocator_qbuf(), the memory is referenced after the buffer is queued. Once queued (VIDIOC_QBUF), the buffer might be handled by the V4L2 driver (e.g. decoded) and dequeued (gst_v4l2_allocator_dqbuf), through a different thread, before the memory is referenced (gst_memory_ref). In this case, in gst_v4l2_allocator_dqbuf(), the memory is unreferenced (gst_memory_unref) before having been referenced: the memory refcount reaches 0, and the memory is freed. So, to avoid this crossing case, in gst_v4l2_allocator_qbuf(), the memory shall be referenced before the buffer is queued. https://bugzilla.gnome.org/show_bug.cgi?id=777399 2016-12-14 19:15:03 +0100 Víctor Manuel Jáquez Leal * sys/v4l2/gstv4l2object.c: v4l2object: Don't check size in a non-list value After commit 1ea9735a I see these error while using the webcam integrated in my laptop: GStreamer-CRITICAL **: gst_value_list_get_size: assertion 'GST_VALUE_HOLDS_LIST (value)' failed The issue is gst_v4l2src_value_simplify() was doing its job of generating a single value, rather than the original list. That why, when getting the list size, a critical warning was raised. This patch takes advantage of the compiler optimizations to verify first if the list was simplified, thus use it directly, otherwise, if it is a list, verify its size. https://bugzilla.gnome.org/show_bug.cgi?id=776106 2016-12-06 17:42:31 +0530 Arun Raghavan * sys/v4l2/gstv4l2object.c: v4l2object: Don't set empty interlace-mode list If for some reason we fail to probe formats (all try_fmt calls fail, for example), this is not a critical error, but we end up with an empty list of interlace modes. This causes all subsequent negotiation to fail. This patch fixes interlace-mode setting to be skipped if we failed to detect any. https://bugzilla.gnome.org/show_bug.cgi?id=775702 2016-11-14 22:33:27 +0530 Arun Raghavan * config.h.meson: meson: Add define for v4l2-probe config option 2017-01-24 19:23:44 -0300 Thibault Saunier * tests/check/meson.build: meson: Properly use ':' for defining keywords 2017-02-15 00:13:30 +0200 Sebastian Dröge * gst/udp/gstudpsrc.c: udpsrc: Use IP_MULTICAST_ALL for filtering IPv4 packets if available This goes around the inefficient control message based filtering and does all the filtering kernel-side. Unfortunately this is Linux-only and there is no IPv6 variant of it (yet). 2017-02-10 10:53:05 +0100 Søren Juul * gst/icydemux/gsticydemux.c: * tests/check/elements/icydemux.c: icydemux: reset tags on empty value Some radio streams uses StreamTitle='' to reset the title after a track stopped playing, e.g. while the host talks between tracks or during news segments. This change forces an empty tag object to be distributed if StreamTitle or StreamUrl is received with empty value, thus allowing downstream elements to get notified about this. https://bugzilla.gnome.org/show_bug.cgi?id=778437 2017-02-07 13:10:18 +1100 Jan Schmidt * gst/multifile/gstsplitmuxpartreader.c: splitmuxsrc: Allow for buffers before the segment when measuring Used signed calculations when measuring the max_ts of an input fragment, so as to calculate the correct duration and offset when buffers have timestamps preceding their segment 2017-01-30 20:20:08 +0000 Tim-Philipp Müller * gst/isomp4/qtdemux.c: qtdemux: sanity check number of segments in edit list Fixes crash with fuzzed file. https://bugzilla.gnome.org/show_bug.cgi?id=777940