=== release 1.16.0 ===

2019-04-19 00:15:21 +0100  Tim-Philipp Müller <tim@centricular.com>

	* ChangeLog:
	* NEWS:
	* README:
	* RELEASE:
	* configure.ac:
	* gstreamer.doap:
	* meson.build:
	  Release 1.16.0

2019-04-19 00:15:21 +0100  Tim-Philipp Müller <tim@centricular.com>

	* docs/plugins/inspect/plugin-coreelements.xml:
	* docs/plugins/inspect/plugin-coretracers.xml:
	  Update docs

2019-04-19 00:15:19 +0100  Tim-Philipp Müller <tim@centricular.com>

	* po/zh_CN.po:
	  Update translations

2019-04-18 10:13:51 +0200  Olivier Crête <olivier.crete@collabora.com>

	* libs/gst/base/gstbasesrc.c:
	  basesrc: Downgrade EOS warning
	  In the case of pushfilesrc, this is the expected behaviour, so let's
	  downgrade the warning to a debug message to avoid confusing users.

2019-04-17 20:46:58 +0200  Mathieu Duponchelle <mathieu@centricular.com>

	* tests/check/libs/basesrc.c:
	  tests: basesrc: unref gst_bus_timed_pop_filtered return

2019-04-16 13:29:00 +0200  Mathieu Duponchelle <mathieu@centricular.com>

	* gst/gst.c:
	* gst/gst_private.h:
	* gst/gstinfo.c:
	  gstinfo: clean up function pointer names hashtable
	  And add strduped function pointer names to the global quark
	  table, so that they don't get reported as lost by valgrind.
	  This allows us to use GST_DEBUG when running tests under
	  valgrind.

2019-04-16 23:50:15 +0100  Tim-Philipp Müller <tim@centricular.com>

	* libs/gst/base/gstaggregator.c:
	  aggregator: fix doc chunk for new buffer-consumed signal
	  Fixes 'Warning: GstBase: incorrect number of parameters in
	  comment block, parameter annotations will be ignored.' from
	  g-ir-scanner.

2019-04-12 09:23:52 -0400  Julian Bouzas <julian.bouzas@collabora.com>

	* plugins/tracers/gstlatency.c:
	  tracer: latency: Don't compare element name as element Id is already unique

2019-04-12 08:38:03 -0400  Julian Bouzas <julian.bouzas@collabora.com>

	* plugins/tracers/gstlatency.c:
	  tracer: latency: Remove redundant if conditions

2019-04-12 08:34:49 -0400  Julian Bouzas <julian.bouzas@collabora.com>

	* plugins/tracers/gstlatency.c:
	  tracer: latency: Make GST_DEBUG logs consistent

2019-04-12 08:28:22 -0400  Julian Bouzas <julian.bouzas@collabora.com>

	* plugins/tracers/gstlatency.c:
	  tracer: latency: Fix bug when dropping sub-latency probe event
	  Fixes #373

2019-04-12 16:37:18 +0200  Philipp Zabel <p.zabel@pengutronix.de>

	* gst/gstevent.c:
	  event: fix seek event creation
	  Creating seek events segfaults on 32-bit ARM since commit 2fa15d53717c
	  ('event: add new seek parameter, "trickmode-interval"'), which missed
	  casting the trickmode-interval initializer in the variable argument list
	  to guint64.

2019-04-11 15:32:51 -0400  Xavier Claessens <xavier.claessens@collabora.com>

	* tools/gst-inspect.c:
	  gst-inspect: Do not print warning if 'less' is missing

=== release 1.15.90 ===

2019-04-11 00:19:11 +0100  Tim-Philipp Müller <tim@centricular.com>

	* ChangeLog:
	* NEWS:
	* RELEASE:
	* configure.ac:
	* gstreamer.doap:
	* meson.build:
	  Release 1.15.90

2019-04-11 00:19:11 +0100  Tim-Philipp Müller <tim@centricular.com>

	* docs/plugins/inspect/plugin-coreelements.xml:
	* docs/plugins/inspect/plugin-coretracers.xml:
	  Update docs

2019-04-10 09:17:01 -0400  Julian Bouzas <julian.bouzas@collabora.com>

	* plugins/tracers/gstlatency.c:
	  tracer: latency: Fix typo bug

2019-04-10 09:13:53 -0400  Julian Bouzas <julian.bouzas@collabora.com>

	* plugins/tracers/gstlatency.c:
	  tracer: latency: Fix bug when storing latency probe event
	  The pad name sotred in the latency event has no longer the name of the element,
	  so we have to get the element Id, element name and pad name values from the data
	  structure and compare all 3 values.

2019-04-10 10:18:54 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstcontrolbinding.c:
	  controlbinding: Check if the weak pointer was cleared before explicitly removing it
	  Otherwise we'll get an assertion if the object behind the weak pointer
	  was already destroyed in the meantime as we would pass NULL as first
	  argument to g_object_remove_weak_pointer().

2019-04-09 08:05:09 -0400  Julian Bouzas <julian.bouzas@collabora.com>

	* plugins/tracers/gstlatency.c:
	* tools/gst-stats.c:
	  tracer: latency: Show element id, element name and pad name

2019-03-25 15:36:08 +0100  Julian Bouzas <julian.bouzas@collabora.com>

	* tools/gst-stats.c:
	  gst-stats: Add element latency support
	  This will output latency information when parsing a log file with gst-stats that
	  has latency trace information. It will show the min, max and mean latency for
	  the pipeline and all its elements. It will also show the reported latency for
	  each element of the pipeline. Output example:
	  Latency Statistics:
	  pulsesrc0_src|fakesink0_sink: mean=190000043 min=190000043 max=190000043
	  Element Latency Statistics:
	  flacparse0_src: mean=45561281 min=654988 max=90467575
	  flacenc0_src: mean=89938883 min=81913512 max=97964254
	  flacdec0_src: mean=45804881 min=228962 max=91380801
	  Element Reported Latency:
	  pulsesrc0: min=10000000 max=200000000 ts=0:00:00.262846528
	  flacenc0: min=104489795 max=104489795 ts=0:00:00.262898616
	  flacparse0: min=0 max=0 ts=0:00:00.262927962

2019-03-21 10:37:34 +0100  Julian Bouzas <julian.bouzas@collabora.com>

	* plugins/tracers/gstlatency.c:
	* plugins/tracers/gstlatency.h:
	  tracer: latency: Show per-element reported latency

2019-03-20 12:20:48 +0100  Julian Bouzas <julian.bouzas@collabora.com>

	* plugins/tracers/gstlatency.c:
	  tracer: latency: Show element's source pad name instead of element's name
	  The full pad name gives more information than the element's name, which is very
	  useful when elements have multiple source pads.

2019-03-18 21:55:50 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* plugins/tracers/gstlatency.c:
	  latency: Dot not override already stored events
	  First, the event would be leaved, but also when an element takes
	  several buffers before producing one, we want the reported latency to be
	  the aggregation, so the distance from the oldest buffer.

2018-10-31 16:50:48 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* plugins/tracers/gstlatency.c:
	* plugins/tracers/gstlatency.h:
	  tracer: latency: Add parameter to select latency type
	  This sets back the default to trace only pipeline latency, and add flags
	  to enabled element tracing. It is now possible to only trace element
	  latency, only trace pipeline latency, trace both or none.

2018-07-06 17:08:24 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* plugins/tracers/gstlatency.c:
	  tracer: latency: Add per element latency tracer
	  This adds per element latency tracing.

2018-07-04 14:18:42 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* plugins/tracers/gstlatency.c:
	  tracer: Don't pass pads inside GstEvent
	  This removes the passing of pad inside of a GstEvent. While this is not
	  a bug, it may affect the live time of the pad, hense change the pipeline
	  behaviour.

2018-11-13 21:19:22 +0100  Mathieu Duponchelle <mathieu@centricular.com>

	* libs/gst/base/gstbasesrc.c:
	* tests/check/libs/basesrc.c:
	  basesrc: do not send EOS when automatic_eos is FALSE

2019-04-01 12:22:49 +0200  Mathieu Duponchelle <mathieu@centricular.com>

	* libs/gst/base/gstaggregator.c:
	  aggregator: add buffer-consumed pad signal
	  The signal will be emitted when a buffer was consumed on
	  a pad, if the newly-added "emit-signals" property has been
	  set to TRUE.
	  Handlers connected to the signal will receive a valid reference on
	  the consumed buffer, allowing for example the retrieval of metas in
	  order to forward them once an output buffer is pushed out.

2019-04-05 11:43:53 +0200  Antonio Ospite <antonio.ospite@collabora.com>

	* tools/gst-inspect.c:
	  gst-inspect: fix printing the first field of a GstStructure
	  When printing a GstStructure property (e.g. the "stats" property in
	  rtpsession) the first field is printed on the same line of the type
	  description, and this is both inconsistent compared to  how Enum values
	  are printed and confusing as the reader might miss the first field.
	  To fix this, add a newline before printing GstStructure fields in
	  properties.
	  NOTE: this does not change the existing inconsistent behavior of an
	  extra newline *after* a GstStructure property, but the latter is not as
	  annoying and it would take more effort to fix because GstStructure
	  fields are printed in CAPS descriptions too.

2019-04-01 18:34:07 +0200  Mathieu Duponchelle <mathieu@centricular.com>

	* docs/gst/gstreamer-sections.txt:
	* gst/gstevent.c:
	* gst/gstevent.h:
	* gst/gstquark.c:
	* gst/gstquark.h:
	* tests/check/gst/gstevent.c:
	  event: add new seek parameter, "trickmode-interval"
	  When performing a key unit trickmode seek, it may be useful to
	  specify a minimum interval between the output frames, either
	  in very high rate cases, or as a protection against streams
	  that may contain an overly large amount of key frames.
	  One use case is ONVIF Section 6.5.3:
	  <https://www.onvif.org/specs/stream/ONVIF-Streaming-Spec.pdf>

2019-03-22 17:46:03 +0100  Antonio Ospite <antonio.ospite@collabora.com>

	* tests/check/gstreamer.supp:
	  tests: add the valgrind suppression file from the "common" module
	  Other gstreamer repositories have their own valgrind suppression file
	  directly in the repository.
	  Add a suppression file to the core gstreamer repository too, this makes
	  it easier to use it with gst-build which does not check out the common
	  module.
	  This is also a little step towards the removal of the common submodule.
	  NOTE: the added file is the latest version from the "common" repository
	  but it has been renamed from gst.supp to gstreamer.supp for symmetry
	  with the suppression files in the other repositories.

2019-03-23 18:31:42 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  g-i: pass --quiet to g-ir-scanner
	  This suppresses the annoying 'g-ir-scanner: link: cc ..' output
	  that we get even if everything works just fine.
	  We still get g-ir-scanner warnings and compiler warnings if
	  we pass this option.

2019-03-23 18:17:43 +0000  Tim-Philipp Müller <tim@centricular.com>

	* libs/gst/check/gstcheck.c:
	  check: suppress some g-i warnings
	  gstcheck.c:142: Warning: GstCheck: gst_check_add_log_filter: return value: Invalid non-constant return of bare structure or union; register as boxed type or (skip)
	  gstcheck.h:178: Warning: GstCheck: gst_check_run_suite: argument suite: Unresolved type: 'Suite*'

2019-03-23 17:53:54 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  g-i: silence 'nested extern' compiler warnings when building scanner binary
	  We need a nested extern in our init section for the scanner binary
	  so we can call gst_init to make sure GStreamer types are initialised
	  (they are not all lazy init via get_type functions, but some are in
	  exported variables). There doesn't seem to be any other mechanism to
	  achieve this, so just remove that warning, it's not important at all.

2019-03-23 17:53:07 +0000  Tim-Philipp Müller <tim@centricular.com>

	* libs/gst/base/gstbitwriter.c:
	  bitwriter: mark as 'skip' for gobject-introspection
	  Silences g-ir-scanner warnings. We do the same for ByteWriter.

2019-03-21 18:55:16 +1100  Matthew Waters <matthew@centricular.com>

	* libs/gst/base/gstaggregator.c:
	  aggregator: don't leak gap buffer when out of segment

2019-03-21 18:47:04 +1100  Matthew Waters <matthew@centricular.com>

	* libs/gst/base/gstaggregator.c:
	  aggregator: take the pad lock around queue gap event removal
	  As is done for every other queue interaction

2019-03-20 17:43:02 +1100  Matthew Waters <matthew@centricular.com>

	* libs/gst/base/gstbaseparse.c:
	  baseparse: don't reset the disable-passthrough property value
	  Resetting as a result of _reset() on PAUSED->READY is unexpected.

2019-03-14 11:59:43 +0100  Stephane Cerveau <scerveau@fluendo.com>

	* gst/gstelement.c:
	  gst_element_get_factory: update documentation
	  Inform about a potential NULL result.

2019-03-13 18:46:14 +0100  Stephane Cerveau <scerveau@fluendo.com>

	* gst/gstelementfactory.c:
	  gst_element_factory_get_metadata: protect from null factory

2019-03-12 21:19:23 +0000  Damian Vicino <sdavtaker@gmail.com>

	* README:
	  Update README

2019-03-12 20:12:37 +0000  Damian Vicino <sdavtaker@gmail.com>

	* README:
	  Update README to have correct name of the license file documented (COPYING). There is no LICENSE file in the root directory, and COPYING file content is a license file.

2019-03-10 15:35:39 +0900  Seungha Yang <seungha.yang@navercorp.com>

	* tests/check/meson.build:
	  tests: fdsrc: Exclude unit test on Windows
	  Since elements_fdsrc.test_num_buffers uses blocking pipe on Windows,
	  the test will never be finished. But emulating non-blocking fd without
	  win32 APIs on Windows is a little tricky.

2019-03-08 16:19:29 +0100  Santiago Carot-Nemesio <scarot@twilio.com>

	* gst/gsttaskpool.c:
	  gsttaskpool: Do not block tasks while cleaning up the taskpool
	  There is a deadlock if any thread from the pool tries to push
	  a new task while other thread is waiting for the pool of threads
	  to finish. With this patch the thread will get an error when it
	  tries to add a new task while the taskpool is being cleaned up.

2019-03-06 19:46:46 +0100  Marco Trevisan (Treviño) <mail@3v1n0.net>

	* gst/gsturi.c:
	  gsturi: Fix annotation on get_path to return a nullable
	  Use proper syntax or the (nullable): part will be part of the description

2019-03-06 19:34:12 +0100  Marco Trevisan (Treviño) <mail@3v1n0.net>

	* gst/gstmessage.c:
	  gstmessage: Fix annotations on details
	  Details argument should be nullable, but the docstring uses a wrong syntax.

2019-03-06 09:04:54 +0000  Tim-Philipp Müller <tim@centricular.com>

	* tests/check/gst/gstbuffer.c:
	  tests: fix leak in buffer test_wrapped_bytes test

2019-03-01 11:59:14 +0100  Mathieu Duponchelle <mathieu@centricular.com>

	* gst/gstbuffer.c:
	* tests/check/gst/gstmeta.c:
	  gstbuffer: store meta in add order
	  The previous implementation of add was implemented as a prepend,
	  switch to append as that seems like the expected order.

2019-03-04 09:01:07 +0000  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* configure.ac:
	* docs/plugins/inspect/plugin-coreelements.xml:
	* docs/plugins/inspect/plugin-coretracers.xml:
	* meson.build:
	  Back to development

2019-02-28 16:48:57 +0100  Santiago Carot-Nemesio <sancane@gmail.com>

	* gst/gsttaskpool.c:
	  taskpool: Set error in case something goes wrong in the default handlers

=== release 1.15.2 ===

2019-02-26 11:38:00 +0000  Tim-Philipp Müller <tim@centricular.com>

	* ChangeLog:
	* NEWS:
	* RELEASE:
	* configure.ac:
	* gstreamer.doap:
	* meson.build:
	  Release 1.15.2

2019-02-26 13:23:47 +0000  Tim-Philipp Müller <tim@centricular.com>

	* gst/parse/Makefile.am:
	  meson: dist get_flex_version.py

2019-02-26 11:38:00 +0000  Tim-Philipp Müller <tim@centricular.com>

	* docs/plugins/inspect/plugin-coreelements.xml:
	* docs/plugins/inspect/plugin-coretracers.xml:
	  Update docs

2019-02-26 11:37:57 +0000  Tim-Philipp Müller <tim@centricular.com>

	* po/af.po:
	* po/ast.po:
	* po/az.po:
	* po/be.po:
	* po/bg.po:
	* po/ca.po:
	* po/cs.po:
	* po/da.po:
	* po/de.po:
	* po/el.po:
	* po/en_GB.po:
	* po/eo.po:
	* po/es.po:
	* po/eu.po:
	* po/fi.po:
	* po/fr.po:
	* po/fur.po:
	* po/gl.po:
	* po/hr.po:
	* po/hu.po:
	* po/id.po:
	* po/it.po:
	* po/ja.po:
	* po/lt.po:
	* po/nb.po:
	* po/nl.po:
	* po/pl.po:
	* po/pt_BR.po:
	* po/ro.po:
	* po/ru.po:
	* po/rw.po:
	* po/sk.po:
	* po/sl.po:
	* po/sq.po:
	* po/sr.po:
	* po/sv.po:
	* po/tr.po:
	* po/uk.po:
	* po/vi.po:
	* po/zh_CN.po:
	* po/zh_TW.po:
	  Update translations

2019-02-25 13:49:43 +0100  Philipp Zabel <p.zabel@pengutronix.de>

	* gst/gstplugin.c:
	  plugin: add 0BSD as valid license
	  Add the zero-clause BSD license, which is an alteration of the ISC
	  license, to the list of valid licenses.

2019-02-25 13:48:38 +0100  Philipp Zabel <p.zabel@pengutronix.de>

	* gst/gstplugin.c:
	  plugin: fix link to 3-clause BSD license
	  The current link points to the 2-clause BSD license,
	  explicitly link to the 3-clause version of the license.

2019-02-20 17:51:40 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* gst/gstmacros.h:
	  gstmacros.h: Fix restrict definition on MSVC
	  Turns out it's exposed as `__restrict`, not as `restrict`.
	  https://gitlab.freedesktop.org/gstreamer/gstreamer/merge_requests/95#note_120782

2019-02-20 01:25:11 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* gst/gstmacros.h:
	  gstmacros.h: Fix check for 'restrict' keyword
	  MSVC also defines it as a keyword. Fixes build errors in projects that
	  include MSVC's xkeycheck.h which ensures that keywords aren't overriden
	  with a define.

2019-02-18 09:58:19 +0900  Seungha Yang <seungha.yang@navercorp.com>

	* gst/gstbuffer.c:
	  buffer: Don't miss return value on Windows build
	  ... and use InterlockedExchangeAdd64 for the 64bit value.
	  InterlockedExchangeAdd is 32bit version.

2019-02-15 13:23:37 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstbus.c:
	  bus: Make removing of signal/bus watches thread-safe
	  Between getting the GSource with the mutex and destroying it, something
	  else might've destroyed it already and we would have a dangling pointer.
	  Keep an additional reference just in case.

2019-02-15 13:20:27 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstbus.c:
	  bus: Don't allow removing signal watches with gst_bus_remove_watch()
	  Signal watches are reference counted and gst_bus_remove_watch() would
	  immediately remove it, breaking the reference counting. Only
	  gst_bus_remove_signal_watch() should be used for removing signal
	  watches.

2019-02-11 15:21:21 +1300  Lawrence Troup <lawrence.troup@teknique.com>

	* gst/gstpad.c:
	* gst/gstpad.h:
	  pad: Document that pad unlink function is called with pad lock held
	  Fixes #353

2016-12-02 17:56:59 +0000  Tim-Philipp Müller <tim@centricular.com>

	* docs/gst/gstreamer-sections.txt:
	* gst/gst_private.h:
	* gst/gstbuffer.c:
	* gst/gstmeta.c:
	* gst/gstmeta.h:
	* tests/check/gst/gstmeta.c:
	  buffer: store sequence number for metas
	  For metas where order might be significant if multiple metas are
	  attached to the same buffer, so store a sequence number with the
	  meta when adding it to the buffer. This allows users of the meta
	  to make sure metas are processed in the right order.
	  We need a 64-bit integer for the sequence number here in the API,
	  a 32-bit one might overflow too easily with high packet/buffer
	  rates. We could do it rtp-seqnum style of course, but that's a
	  bit of a pain.
	  We could also make it so that gst_buffer_add_meta() just keeps metas in
	  order or rely on the order we add the metas in, but that seems too
	  fragile overall, when buffers (incl. metas) get merged or split.
	  Also add a compare function for easier sorting.
	  We store the seqnum in the MetaItem struct here and not in the
	  GstMeta struct since there's no padding in the GstMeta struct.
	  We could add a private struct to GstMeta before the start of
	  GstMeta, but that's what MetaItem effectively is implementation-
	  wise. We can still change this later if we want, since it's all
	  private.
	  Fixes #262

2019-02-09 11:35:59 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstdeviceprovider.c:
	  deviceprovider: It's (transfer none) not (transfer-none)

2019-01-30 10:41:58 -0300  Thibault Saunier <tsaunier@igalia.com>

	* docs/gst/gstreamer-sections.txt:
	* gst/gstdevicemonitor.c:
	* gst/gstdeviceprovider.c:
	* gst/gstdeviceprovider.h:
	* gst/gstmessage.c:
	* gst/gstmessage.h:
	* gst/gstquark.c:
	* gst/gstquark.h:
	  device-provider: Allow notifying application of device changes
	  Thi introduces new APIs to post a `DEVICE_CHANGED` message on the
	  bus so the application is notifies when a device is modified. For
	  example, if the "defaultness" of a device was changed or any property
	  that can be changed at any time. Atomically changing the device
	  object notifying that way allow us to abtract away the internal threads.
	  New APIS:
	  - gst_message_new_device_changed
	  - gst_message_parse_device_changed
	  - gst_device_provider_device_changed

2019-02-08 16:42:43 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* gst/parse/get_flex_version.py:
	* gst/parse/meson.build:
	  meson: Extract flex version using a regex inside a script
	  Different builds of Flex on different platforms output different strings
	  in --version. For example:
	  macOS:
	  flex 2.5.35 Apple(flex-31)
	  Windows:
	  win_flex.exe 2.6.4
	  C:\Program Files (x86)\GnuWin32\bin\flex.EXE version 2.5.4
	  We need to look for a string that looks like a version, which means
	  a regex till https://github.com/mesonbuild/meson/issues/1609 is fixed.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/356

2019-02-05 18:18:48 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* libs/gst/check/gstharness.c:
	* tests/check/gst/gstmeta.c:
	* tools/gst-inspect.c:
	  misc: Fix various compiler warnings on MinGW
	  gstharness.c: Use G_GSIZE_FORMAT instead of hard-coding %zu
	  error: unknown conversion type character 'z' in format [-Werror=format]
	  gst-inspect.c: GPid is void* on non-UNIX, and we only use it on UNIX
	  error: initialization makes pointer from integer without a cast [-Werror]
	  gstmeta.c: Use and then discard value
	  error: value computed is not used [-Werror=unused-value]
	  With this, gstreamer builds with -Werror on MinGW

2019-01-29 16:26:49 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstdatetime.c:
	  datetime: new() and new_local_time() constructors are not nullable

2019-01-29 15:50:06 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstpad.c:
	  pad: Constructors are all not nullable
	  They can't possibly return NULL except in case of assertions.

2019-01-29 15:49:50 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstpadtemplate.c:
	  padtemplate: Constructors are all nullable as they check the template name

2019-01-29 12:01:59 +0100  Edward Hervey <edward@centricular.com>

	* tests/check/libs/baseparse.c:
	  test: Set PTS on proper variable
	  This would previously set the PTS on a random address causing various
	  memory corruption

2019-01-25 02:36:18 +0100  Mathieu Duponchelle <mathieu@centricular.com>

	* gst/gstinfo.c:
	* meson.build:
	* meson_options.txt:
	  gstinfo: add Windows stacktraces support
	  This uses the DbgHelp library if available

2019-01-25 13:46:59 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* gst/gstpad.c:
	  pad: Remove unneeded 64bit upcast in debug trace
	  The hook->hook_id is a gulong for which there are no portability issues
	  when tracing in printf format with %lu. So use %lu and remove the upcast
	  to 64 bit. This makes the code more consistent with everything else
	  tracing that hook_id and other gulong id.

2019-01-24 13:52:46 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* tools/gst-inspect.c:
	  gst-inspect: Re-add DEFAULT_LESS_OPTS with initial value
	  Commit 56b4fbef5e6760adc927d0e1c7c8d6a0db9b785c refactored the pipe code
	  to use GLib utility, but the patch was hading some other changed. LESS
	  env was now hardcoded in the middle instead of from a define and was
	  changed from FXR to -RX. The "-" is not even valid for LESS env, and
	  with the lost of F, we would still use a pager when the content fits the
	  terminal.

2019-01-23 13:51:08 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/gsttaglist.c:
	  taglist: Remove (scope call) annotation from gst_tag_register()
	  This was added in 7fdb15d6a2 but it is wrong. (scope call) is for
	  closures that only have to stay valid for the scope of the call, but the
	  tag merge function has to stay valid for the whole lifetime of the
	  application instead.
	  There's no appropriate scope annotation for that so we have to skip
	  these functions for now.

2019-01-23 12:15:13 +0900  Seungha Yang <seungha.yang@navercorp.com>

	* tests/check/gst/gstinfo.c:
	  tests: info: Fix spurious validation
	  Should be equality check, not assignment.
	  Additionally, use fail_unless_equals_* macro for better readability
	  and debugging easier, if possible.

2019-01-23 21:15:09 +0100  Mathieu Duponchelle <mathieu@centricular.com>

	* gst/parse/meson.build:
	  meson: improve flex version parsing
	  the output of flex --version can contain more than one space

2019-01-22 14:05:43 +0900  Seungha Yang <seungha.yang@navercorp.com>

	* meson.build:
	  meson: Correct minimum required GLib version
	  It's updated to 2.40.0 since the commit 3e8ef4cf5a41e26836f0a5a8cb3ddaa5e55f1524

2019-01-17 11:22:27 +0900  Seungha Yang <seungha.yang@navercorp.com>

	* tools/gst-inspect.c:
	  gst-inspect: Don't setup pager too early
	  Setup it only if we have something to print out about inspected results.
	  Otherwise, gst_tools_print_version() output will be redirected to pager and also
	  exit immediately without waiting child process.

2019-01-08 21:23:44 +0900  Seungha Yang <seungha.yang@navercorp.com>

	* tools/gst-inspect.c:
	  gst-inspect: Port to Glib's spawn API
	  Although we support pager just for *nix until now,
	  this can make more portable to Windows.
	  Fixes #342

=== release 1.15.1 ===

2019-01-17 01:38:59 +0000  Tim-Philipp Müller <tim@centricular.com>

	* ChangeLog:
	* NEWS:
	* RELEASE:
	* configure.ac:
	* gstreamer.doap:
	* meson.build:
	  Release 1.15.1

2019-01-17 01:38:59 +0000  Tim-Philipp Müller <tim@centricular.com>

	* docs/plugins/gstreamer-plugins.args:
	* docs/plugins/gstreamer-plugins.hierarchy:
	* docs/plugins/inspect/plugin-coreelements.xml:
	* docs/plugins/inspect/plugin-coretracers.xml:
	  Update docs

2019-01-17 01:38:49 +0000  Tim-Philipp Müller <tim@centricular.com>

	* po/af.po:
	* po/ast.po:
	* po/az.po:
	* po/be.po:
	* po/bg.po:
	* po/ca.po:
	* po/cs.po:
	* po/da.po:
	* po/de.po:
	* po/el.po:
	* po/en_GB.po:
	* po/eo.po:
	* po/es.po:
	* po/eu.po:
	* po/fi.po:
	* po/fr.po:
	* po/fur.po:
	* po/gl.po:
	* po/hr.po:
	* po/hu.po:
	* po/id.po:
	* po/it.po:
	* po/ja.po:
	* po/lt.po:
	* po/nb.po:
	* po/nl.po:
	* po/pl.po:
	* po/pt_BR.po:
	* po/ro.po:
	* po/ru.po:
	* po/rw.po:
	* po/sk.po:
	* po/sl.po:
	* po/sq.po:
	* po/sr.po:
	* po/sv.po:
	* po/tr.po:
	* po/uk.po:
	* po/vi.po:
	* po/zh_CN.po:
	* po/zh_TW.po:
	  Update translations

2019-01-17 01:30:25 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* tools/gst-inspect.c:
	  gst-inspect: Fix ANSI escape sequence usage on Windows
	  Either disable it when it's not supported, or setup the console to
	  interpret them correctly when it's supported.
	  Closes https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/351

2019-01-15 18:05:31 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstpad.c:
	  pad: Fix printf format when printing hook id
	  It's a gulong so we have to cast it to a guint64 when using it with
	  G_GUINT64_FORMAT.
	  Spotted by Vincent Penvern.

2019-01-14 16:22:16 +0800  Daniel Drake <drake@endlessm.com>

	* gst/gstdeviceprovider.c:
	  deviceprovider: fix counting number of times started
	  GstDeviceProvider has a started_count private variable counter,
	  and the gst_device_provider_start() documentation emphasizes the
	  importance of balancing the start and stop calls.
	  However, when starting a provider that is already started, the
	  current code will never increment the counter more than once.
	  So you start it twice, but it will have start_count 1, which is the
	  maximum value it will ever see.
	  Then when you stop it twice, on the 2nd stop, after decrementing the
	  counter in gst_device_provider_stop():
	  else if (provider->priv->started_count < 1) {
	  g_critical
	  ("Trying to stop a GstDeviceProvider %s which is already stopped",
	  GST_OBJECT_NAME (provider));
	  and the program is killed.
	  Fix this by incrementing the counter when starting a device provider that
	  was already started.

2019-01-11 12:32:49 +0200  Jordan Petridis <jordan@centricular.com>

	* tests/check/gst/gstdatetime.c:
	  tests: gstdatetime: move gst_date_time_new* and time() calls closer
	  While extremelly rare, time and gst_date_time_new_* will have
	  diff values and potentially trigger an assertion. Thus move
	  the calls as closely together as possible to mitigate this.

2019-01-10 12:05:34 +0000  Sebastian Dröge <slomo@coaxion.net>

	* gst/gstbin.c:
	  Revert "bin: Hold the state lock while removing elements from a bin"
	  This reverts commit 7f70d7a9450b321585fbfd1eb977548d4264b2a6

2019-01-09 14:01:02 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>

	* tests/check/gst/gststructure.c:
	  tests: Add more int range fixation tests

2019-01-09 13:38:44 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>

	* gst/gststructure.c:
	  structure: Support stepped ranges when fixating
	  The step restriction was completely ignored until now.

2019-01-09 13:37:30 +0100  Jan Alexander Steffens (heftig) <jsteffens@make.tv>

	* gst/gststructure.c:
	  structure: Use GLib's CLAMP macro for fixating ranges
	  Just a bit of refactoring.

2019-01-07 14:08:25 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstelement.c:
	  element: Add note about racyness to gst_element_set_locked_state()
	  This is racy if the state lock of the parent bin is not taken. The
	  parent bin might've just checked the flag in another thread and as the
	  next step proceed to change the child element's state.

2019-01-07 14:08:00 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstbin.c:
	  bin: Hold the state lock while removing elements from a bin
	  We need to take the state lock here to ensure that we're
	  not currently just before setting the state of this child
	  element. Otherwise it can happen that we removed the element
	  here and e.g. set it to NULL state, and shortly afterwards
	  have another thread set it to a higher state again as part of
	  a state change for the whole bin.
	  When adding an element to the bin this is not needed as we
	  require callers to always ensure after adding to the bin that
	  the new element is set to the correct state.

2019-01-05 18:55:12 +0000  Tim-Philipp Müller <tim@centricular.com>

	* libs/gst/base/gstaggregator.c:
	  aggregator: fix typo in docs

2019-01-02 23:35:11 +0200  Sebastian Dröge <sebastian@centricular.com>

	* tests/check/gst/gstpipeline.c:
	  pipeline: Call gst_task_cleanup_all() before checking reference counts after shutdown
	  We have to ensure that all background threads from thread pools are shut
	  down, or otherwise they might not have had a chance yet to drop their
	  last reference to the pipeline and then the assertion for a reference
	  count of 1 on the pipeline fails.

2019-01-02 18:41:24 +0200  Sebastian Dröge <sebastian@centricular.com>

	* tests/check/gst/gstpipeline.c:
	  pipeline: Use the test clock in all unit tests
	  And check for exact times as we can now do that thanks to the test clock
	  being deterministic.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/313

2018-09-26 17:09:50 +0200  Michael Olbrich <m.olbrich@pengutronix.de>

	* libs/gst/helpers/gst_gdb.py:
	  gdb: implement 'gst-dot' and 'gst-print' commands
	  This adds two custom gdb commands:
	  'gst-dot' creates dot files that a very close to what
	  GST_DEBUG_BIN_TO_DOT_FILE() produces. Object properties and buffer content
	  (e.g. codec-data in caps) are not available.
	  'gst-print' produces high-level information about GStreamer objects. This
	  is currently limited to pads for GstElements and events for the pads. The
	  output can look like this:
	  (gdb) gst-print pad.object.parent
	  GstMatroskaDemux (matroskademux0) {
	  SinkPad (sink, pull) {
	  }
	  SrcPad (video_0, push) {
	  events:
	  stream-start:
	  stream-id: 0463ccb080d00b8689bf569a435c4ff84f9ff753545318ae2328ea0763fd0bec/001:1274058367
	  caps: video/x-theora
	  width: 1920
	  height: 800
	  pixel-aspect-ratio: 1/1
	  framerate: 24/1
	  streamheader: < 0x5555557c7d30 [GstBuffer], 0x5555557c7e40 [GstBuffer], 0x7fffe00141d0 [GstBuffer] >
	  segment: time
	  rate: 1
	  tag: global
	  container-format: Matroska
	  }
	  SrcPad (audio_0, push) {
	  events:
	  stream-start:
	  stream-id: 0463ccb080d00b8689bf569a435c4ff84f9ff753545318ae2328ea0763fd0bec/002:1551204875
	  caps: audio/mpeg
	  mpegversion: 4
	  framed: true
	  stream-format: raw
	  codec_data: 0x7fffe0014500 [GstBuffer]
	  level: 2
	  base-profile: lc
	  profile: lc
	  channels: 2
	  rate: 44100
	  segment: time
	  rate: 1
	  tag: global
	  container-format: Matroska
	  tag: stream
	  audio-codec: MPEG-4 AAC audio
	  language-code: en
	  }
	  }

2018-12-29 16:20:54 +0100  Michael Olbrich <m.olbrich@pengutronix.de>

	* libs/gst/helpers/gst_gdb.py:
	  gdb: make the code PEP-8 compliant

2018-12-31 14:55:55 +0000  Tim-Philipp Müller <tim@centricular.com>

	* tests/check/gst/gststream.h:
	  tests: remove unused gststream.h file
	  Looks like an earlier version of the .c file.

2018-12-19 16:55:57 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* tools/gst-inspect.c:
	  gst-inspect: Disable colors when piped
	  This follows what git and systemd tools would do.

2018-12-19 16:06:40 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* tools/gst-inspect.c:
	  gst-inspect: Fix pager color with less
	  Fixes #341

2018-12-19 00:34:40 +0000  Tim-Philipp Müller <tim@centricular.com>

	* libs/gst/base/gstbasesrc.c:
	  basesrc: ensure submitted buffer list is writable
	  Fixes flaky appsrc unit test where depending on scheduling
	  the submitted list might not be writable if submitted via
	  an action signal from the application thread.
	  Fixes gst-plugins-base#522

2018-12-14 15:55:27 +0000  Jonny Lamb <jonnylamb@jonnylamb.com>

	* plugins/elements/gstidentity.c:
	* plugins/elements/gstidentity.h:
	  identity: fixes to the eos-after and error-after properties
	  I copied `error-after` to make the `eos-after` property, but it turned
	  out there were some problems with that one, so this patch: adds
	  separate counters (so setting to NULL and reusing the element will
	  still work); clarifies the properties' min values; and reports an
	  error when both are set.

2018-11-28 14:58:32 -0600  Michael Gruner <michael.gruner@ridgerun.com>

	* scripts/gst-uninstalled:
	  gst-uninstalled: include prefix in the plugins path

2018-12-17 23:29:16 +0900  Seungha Yang <seungha.yang@navercorp.com>

	* tests/check/gst/gstdatetime.c:
	  tests: datetime: Fix failure on Windows
	  The documentation for WIN32 mktime indicates that for struct tm*
	  before January 1, 1970, that -1 is returned, and since mktime is timezone
	  dependent, the struct tm corresponding to 1:00, Jan. 1, 1970 might be failed.
	  See also
	  https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/mktime-mktime32-mktime64

2018-09-25 09:03:03 +0200  Edward Hervey <edward@centricular.com>

	* plugins/elements/gstqueue2.c:
	  queue2: Add details of query in debug log

2018-12-15 11:42:30 +0100  Edward Hervey <edward@centricular.com>

	* gst/parse/grammar.y:
	  parse: Move variable to block where it's used
	  There was a dead assignment used outside of the bin/pipeline creation
	  which was confusing (and unused). Just move that variable to
	  where it is actually used.
	  (Note that that variable was not needed outside of that block since
