=== release 1.6.4 ===

2016-04-14  Tim-Philipp Müller <[email protected]>

       * configure.ac:
         releasing 1.6.4

2016-04-12 09:41:00 +0000  Paolo Pettinato <[email protected]>

       * gst/rtpmanager/gstrtpmux.c:
         rtpmux: Forward sticky events on buffer lists too, not only on buffers
         https://bugzilla.gnome.org/show_bug.cgi?id=764933

2016-03-08 13:03:55 +0100  Alban Bedel <[email protected]>

       * sys/v4l2/gstv4l2object.c:
         v4l2object: fix capture with bayer formats other than bggr
         gst_v4l2_object_get_caps_info() always return V4L2_PIX_FMT_SBGGR8
         for all bayer formats. This is obviously broken if the device use
         another ordering. Fix this by properly reading the format parameter.
         https://bugzilla.gnome.org/show_bug.cgi?id=763318

2016-03-04 15:09:45 +0100  Josep Torra <[email protected]>

       * sys/v4l2/gstv4l2object.c:
         v4l2: fix colorimetry for NV12
         Replicate V4L2_MAP_QUANTIZATION_DEFAULT macro behavior.
         At #v4l it was described that documentation might be wrong and that
         we should trust this macro instead.
         https://bugzilla.gnome.org/show_bug.cgi?id=762529

2016-01-21 17:41:55 -0500  Nicolas Dufresne <[email protected]>

       * sys/v4l2/gstv4l2object.c:
         v4l2: Re-add colorimetry field for RGB formats
         This time, check if it's an RGB format and sets the transformation
         matrix to identity. The rest of the colorimetry information is
         meaningfull and shall be kept.
         https://bugzilla.gnome.org/show_bug.cgi?id=759624

2016-01-22 10:03:50 +0100  Wim Taymans <[email protected]>

       * sys/v4l2/gstv4l2object.c:
         v4l2: fix sRGB colorspace definition
         V4l2 can also use the sRGB colorspace for YUV formats and thus needs a
         default matrix.

2015-11-17 12:39:05 +0200  Sebastian Dröge <[email protected]>

       * gst/udp/gstudpsrc.c:
       * gst/udp/gstudpsrc.h:
         udpsrc: Add "loop" property for enabling/disabling multicast loopback
         On POSIX, IP_MULTICAST_LOOP is a setting for the sender socket. On Windows it
         is a setting for the receiver socket. As such we will need it on udpsrc too to
         allow filtering out our own multicast packets.

2016-02-10 19:56:59 +0530  Nirbheek Chauhan <[email protected]>

       * sys/v4l2/gstv4l2deviceprovider.c:
         v4l2: Don't leak v4l2 objects and props on probe errors

2016-03-15 03:25:26 +0530  Nirbheek Chauhan <[email protected]>

       * gst/rtp/gstrtpjpegdepay.c:
         rtpjpegdepay: Don't send invalid frames downstream after packet loss or a DISCONT
         After clearing the adapter due to a DISCONT, as might happen when some packet(s)
         have been lost, the depayloader was pushing data into the adapter (which had no
         header due to the clear), creating a headerless frame out of it, and sending it
         downstream. The downstream decoder would then usually ignore it; unless there
         were lots of DISCONTs from the jitterbuffer in which case the decoder would reach
         its max_errors limit and throw an element error. Now we just discard that data.
         It is probaby not worth trying to salvage this data because non-progressive
         jpeg does not degrade gracefully and makes the video unwatchable even with
         low packet loss such as 3-5%.

2016-01-31 11:08:38 +1100  Sebastian Dröge <[email protected]>

       * gst/rtp/gstrtpjpegpay.c:
         rtpjpegpay: Allow different quantization tables for components 2 and 3
         RFC 2435 mentions in section 4.1 that U/V use table number 1, but this seems
         just like an example. Some encoders are not following that and there seems to
         be no reason to reject their streams.
         https://bugzilla.gnome.org/show_bug.cgi?id=761345

2016-02-29 23:40:03 -0300  Thiago Santos <[email protected]>

       * gst/multifile/gstsplitmuxsink.c:
       * tests/check/elements/splitmux.c:
         splitmuxsink: only try to create internal sink if it doesn't exist
         This allows splitmuxsink to be reused after being put to NULL.
         Test included
         https://bugzilla.gnome.org/show_bug.cgi?id=762893

2016-03-04 14:07:19 +0200  Sebastian Dröge <[email protected]>

       * gst/udp/gstudpsrc.c:
         udpsrc: Fix multicast group joining with provided sockets on Windows
         On Windows the socket will be bound to ANY instead of the multicast group,
         as binding to a multicast group does not work. Which would mean that we
         override src->addr to become ANY and won't automatically join a multicast
         group anymore on Windows.
         On Linux we would automatically join a multicast group, keep it consistent.
         https://bugzilla.gnome.org/show_bug.cgi?id=763093

2015-11-04 14:51:19 +0900  Jihae Yi <[email protected]>

       * gst/rtsp/gstrtspsrc.c:
         rtspsrc: avoid potentially overflowing expression
         https://bugzilla.gnome.org/show_bug.cgi?id=757569

2016-03-08 17:37:17 +0100  Thomas Roos <[email protected]>

       * sys/directsound/gstdirectsoundsink.c:
         dirctsoundsink: Setting volume should not unmute
         https://bugzilla.gnome.org/show_bug.cgi?id=755106

2016-03-08 13:57:24 +0100  Thomas Roos <[email protected]>

       * sys/directsound/gstdirectsoundsink.c:
         dirctsoundsink: Fix volume reset on unmute
         https://bugzilla.gnome.org/show_bug.cgi?id=755106

2016-02-28 13:42:28 +0000  Tim-Philipp Müller <[email protected]>

       * gst/replaygain/gstrgvolume.c:
       * tests/check/elements/rgvolume.c:
         rgvolume: make tag list writable before modifying it
         Making the event itself writable is not enough, it won't make
         the actual taglist in the event writable as well. Instead, just
         make a copy of the taglist and then create a new tag event from
         that if required, replacing the old one. Before we would
         inadvertently modify taglists upstream elements might still
         be holding on to. Add unit test for this as well.
         https://bugzilla.gnome.org/show_bug.cgi?id=762793

2016-02-28 13:01:34 +0200  Sebastian Dröge <[email protected]>

       * gst/rtsp/gstrtspsrc.c:
         rtspsrc: Properly error out if binding the UDP sockets fails
         udpsrc is not returning us a socket in that case.

2016-02-24 09:12:03 +0100  Philippe Normand <[email protected]>

       * gst/isomp4/qtdemux.c:
         qtdemux: don't push encrypted buffer without cenc metadata
         When the cenc metadata is stored outside of the moof box and the
         stream is exposed it is possible that the cenc metadata hasn't been
         processed yet while the first buffer is being pushed. When this
         happens the buffer can't possibly be decrypted downstream so don't
         push it.
         https://bugzilla.gnome.org/show_bug.cgi?id=762516

2015-10-21 16:21:45 +0200  Philippe Normand <[email protected]>

       * gst/isomp4/qtdemux.c:
         qtdemux: read saio aux_info_type as a FOURCC
         https://bugzilla.gnome.org/show_bug.cgi?id=756897

2016-02-23 18:27:47 +0200  Sebastian Dröge <[email protected]>

       * ext/dv/gstdvdec.c:
       * ext/gdk_pixbuf/gstgdkpixbufdec.c:
       * gst/deinterlace/gstdeinterlace.c:
       * gst/smpte/gstsmpte.c:
         gst: Handle gst_pad_get_current_caps() returning NULL gracefully

2015-12-16 12:40:39 +0000  Dave Craig <[email protected]>

       * ext/flac/gstflacenc.c:
       * gst/flv/gstflvmux.c:
       * gst/imagefreeze/gstimagefreeze.c:
       * gst/rtp/gstrtph264depay.c:
       * gst/shapewipe/gstshapewipe.c:
       * gst/videocrop/gstaspectratiocrop.c:
         gst: Don't assume that get_current_caps() returns non-NULL caps after has_current_caps()
         Remove calls to gst_pad_has_current_caps() which then go on to call
         gst_pad_get_current_caps() as the caps can go to NULL in between. Instead just
         use gst_pad_get_current_caps() and check for NULL.
         https://bugzilla.gnome.org/show_bug.cgi?id=759539

2015-12-16 10:54:17 +0000  Dave Craig <[email protected]>

       * gst/audioparsers/gstaacparse.c:
         aacparse: Handle gst_pad_get_current_caps() returning NULL gracefully
         This can happen when the pipeline is currently shutting down.
         https://bugzilla.gnome.org/show_bug.cgi?id=759539

2016-02-23 15:57:18 +0100  Linus Svensson <[email protected]>

       * gst/matroska/matroska-demux.c:
         matroska-demux: Don't handle seek until ready
         https://bugzilla.gnome.org/show_bug.cgi?id=762542

2016-02-23 15:55:13 +0100  Linus Svensson <[email protected]>

       * gst/matroska/matroska-demux.c:
         matroska-demux: Unref seek event
         https://bugzilla.gnome.org/show_bug.cgi?id=762542

2016-02-22 11:01:40 +0100  Aurélien Zanelli <[email protected]>

       * gst/multifile/gstmultifilesink.c:
         multifilesink: close file on write error with next-file mode is set to buffer
         If we have an error during fwrite call, file stays open and thus next
         incoming buffer will trigger an assert when trying to opening a new
         file.
         This happens if we do not restart element, file is closed at stop, and
         if application handles the returned GST_FLOW_ERROR to keep bin alive.
         https://bugzilla.gnome.org/show_bug.cgi?id=762434

2016-02-22 09:09:01 +0900  Vineeth TM <[email protected]>

       * gst/avi/gstavidemux.c:
         avidemux: Fix buffer memory leak
         buffer being mapped is not being unmapped in some cases
         https://bugzilla.gnome.org/show_bug.cgi?id=762420

2015-11-04 10:19:03 +0100  Stian Selnes <[email protected]>

       * gst/rtpmanager/gstrtpjitterbuffer.c:
         rtpmanager: Don't warn for duplicate/reordered packets
         This is a normal scenario and should not be a warning.
         https://bugzilla.gnome.org/show_bug.cgi?id=762208

2016-02-06 14:39:05 +0100  Matej Knopp <[email protected]>

       * gst/isomp4/qtdemux.c:
         qtdemux: workaround for files with wrong color_table_id value
         Instead of erroring out, just use the default color table.
         https://bugzilla.gnome.org/show_bug.cgi?id=761637

2015-12-04 00:46:34 +1100  Havard Graff <[email protected]>

       * gst/flv/gstflvmux.c:
         flvmux: plug leak(s) in error-scenario
         https://bugzilla.gnome.org/show_bug.cgi?id=762210

2015-12-04 00:46:12 +1100  Havard Graff <[email protected]>

       * gst/flv/gstflvdemux.c:
         flvdemux: fix eos event leak
         https://bugzilla.gnome.org/show_bug.cgi?id=762209

2016-02-18 18:33:13 +0100  Philippe Normand <[email protected]>

       * gst/isomp4/qtdemux.c:
         qtdemux: plug leaks in cenc aux info parsing

2016-02-18 13:43:07 +0000  Tim-Philipp Müller <[email protected]>

       * tests/check/Makefile.am:
         tests: fix spurious souphttpsrc test timouts
         Set GSETTINGS_BACKEND=memory, apparently there's something
         about fork() and the dconf backend (or whatever else that
         drags in or activates) that messes up locking and causes
         timeouts due to deadlocks in g_mutex_lock(), since
         everything works fine with CK_FORK=no as well.

2016-02-18 11:10:14 +0200  Sebastian Dröge <[email protected]>

       * gst/matroska/matroska-demux.c:
         matroskademux: Unmap wavpack header buffer after creating it
         Otherwise it will be mapped writable all the time and we can't read from it
         anywhere.
         https://bugzilla.gnome.org/show_bug.cgi?id=762239

2016-02-16 09:02:30 +0900  Vineeth TM <[email protected]>

       * gst/avi/gstavidemux.c:
         avidemux: Fix string memory leak
         codec_name is not being freed in all conditions leading to memory leak
         https://bugzilla.gnome.org/show_bug.cgi?id=762117

2016-02-07 15:02:35 -0500  Nicolas Dufresne <[email protected]>

       * ext/jpeg/gstjpegdec.c:
         jpegdec: Don't pass the same data over and over
         We already pass the entire frame to the decoder. If the decoder ask for
         more data, don't pass the same data again as this leads to infinit loop.
         Instead, simply fail the fill function to signal the problem with that
         frame. It will then be skipped properly.
         https://bugzilla.gnome.org/show_bug.cgi?id=761670

2016-01-30 18:43:30 +0100  Sebastian Dröge <[email protected]>

       * gst/rtp/gstrtpjpegpay.c:
         rtpjpegpay: Skip APP and JPG markers and print warnings for unknown markers
         For APP/JPG markers the size is following and we have to skip that. This is
         not really a problem unless the marker contains e.g. a preview JPEG or
         something else that we might interprete as another marker.

2016-03-13 10:33:13 +0200  Sebastian Dröge <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         Revert "flacparse: push tags in pre_push_frame"
         This reverts commit 4065fcb80a49924b70f0c8fc159dec0ff47943a1.
         flacparse should not push tags by itself, the base class is going to do that
         while properly merging in upstream tags. It just didn't because of a bug in
         the base class, which was hidden by this commit.
         https://bugzilla.gnome.org/show_bug.cgi?id=763553

2016-03-01 15:01:22 +0000  Luis de Bethencourt <[email protected]>

       * gst/audioparsers/gstflacparse.c:
         flacparse: push tags in pre_push_frame
         Push a tag event before pre-roll if we have tags.
         This issue breaks tag reading via GstDiscoverer:
         https://bugzilla.gnome.org/show_bug.cgi?id=762660

2016-02-27 20:33:32 +0200  Sebastian Dröge <[email protected]>

       * gst/goom/gstgoom.c:
         goom: Use goom_set_resolution() instead of recreating the goom instance when the resolution changes
         https://bugzilla.gnome.org/show_bug.cgi?id=762765