=== release 1.11.91 === 2017-04-27 Sebastian Dröge * configure.ac: releasing 1.11.91 2017-04-27 15:21:26 +0300 Sebastian Dröge * po/LINGUAS: * po/ast.po: * po/fur.po: po: Update translations 2017-04-24 20:27:33 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From 60aeef6 to 48a5d85 2017-04-21 15:04:32 +0200 Koop Mast * tools/meson.build: Meson: also build and install gst-stats-1.0 and it's man page. https://bugzilla.gnome.org/show_bug.cgi?id=781585 2017-04-21 15:03:18 +0200 Koop Mast * tools/gst-stats-1.0.1: Add very simple man page for gst-stats. https://bugzilla.gnome.org/show_bug.cgi?id=781585 2017-04-21 10:51:59 -0300 Thibault Saunier * gst/gstelement.h: doc: Fix some doctsing making GI happy 2017-04-06 17:51:29 -0300 Thibault Saunier * gst/gstelement.h: doc: Fix GstChangeState docstring 2017-04-19 17:31:38 +0100 Sebastian Dröge * gst/gstinfo.c: info: Move debug output in for_each_threshold_by_entry() to TRACE level It's otherwise appearing many, many times in logs and usually is nothing you're interested in. 2017-03-31 12:22:00 +0100 Vincent Penquerc'h * tests/check/pipelines/seek.c: tests: fix message leak in seek test https://bugzilla.gnome.org/show_bug.cgi?id=780757 2017-03-29 19:26:53 +0900 Yasushi SHOJI * libs/gst/base/gstbasetransform.c: basetransform: fix typo in debug log output This unbalanced closing parenthesis is leftover from the commit 8b739d91e7. It used to wrap the caps but we don't seem to do that in the current code. So, just remove it. No functionality has been changed. https://bugzilla.gnome.org/show_bug.cgi?id=781484 2017-04-10 16:28:57 +0200 Rico Tzschichholz * gst/meson.build: * libs/gst/base/meson.build: * libs/gst/controller/meson.build: * libs/gst/net/meson.build: meson: A couple for GIR-generation fixes 2017-04-12 09:48:53 -0300 Thibault Saunier * libs/gst/controller/meson.build: meson: Add controller enum file as generated sources Avoiding build failure like https://ci.appveyor.com/project/thiblahute/gst-build-ge9m5/build/1.0.2857 2017-04-11 20:19:03 +0100 Tim-Philipp Müller * Makefile.am: meson: dist new meson build script 2017-04-11 20:16:53 +0100 Tim-Philipp Müller * docs/libs/gstreamer-libs-sections.txt: * libs/gst/controller/controller.h: controller: include new proxycontrolbinding header And fix includes in docs to just include the main header (the include for the proxycontrolbinding was wrong in the docs). 2017-04-11 20:16:41 +0100 Tim-Philipp Müller * .gitignore: .gitignore: ignore more 2017-04-11 11:52:20 -0400 Olivier Crete * gst/parse/meson.build: meson: Only check the first parameter https://bugzilla.gnome.org/show_bug.cgi?id=781155 2017-04-11 10:17:40 -0300 Thibault Saunier * gst/parse/meson.build: meson: Check bison and flex are recent enough https://bugzilla.gnome.org/show_bug.cgi?id=781155 2017-04-10 23:48:53 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From 39ac2f5 to 60aeef6 2017-04-10 12:24:06 -0400 Olivier Crête * gst/gstvalue.c: * tests/check/gst/gstvalue.c: value: Accept NULL as a structure Some GstStructure properties default to NULL, so it should be a supported value. With unit test. 2017-04-10 14:26:42 +0300 Sebastian Dröge * libs/gst/controller/Makefile.am: controller: Fix build with srcdir!=builddir 2017-04-10 13:52:17 +0300 Rico Tzschichholz * libs/gst/controller/Makefile.am: controller: Add missing sources/headers to the GIR build 2017-04-09 12:16:39 +0300 Sebastian Dröge * libs/gst/controller/meson.build: meson: And actually make the controller mkenums rules work 2017-04-09 12:09:33 +0300 Sebastian Dröge * meson.build: meson: Add check for glib-mkenums 2017-04-09 12:02:43 +0300 Sebastian Dröge * libs/gst/controller/Makefile.am: * libs/gst/controller/controller_mkenum.py: * libs/gst/controller/gstinterpolationcontrolsource.c: * libs/gst/controller/gstinterpolationcontrolsource.h: * libs/gst/controller/gstlfocontrolsource.c: * libs/gst/controller/gstlfocontrolsource.h: * libs/gst/controller/meson.build: controller: Generate GLib enums automatically 2017-04-04 17:53:39 +0100 Tim-Philipp Müller * gst/gstbufferpool.c: * gst/gstbus.c: * gst/gstdeviceproviderfactory.c: * gst/gstdynamictypefactory.c: * gst/gstelementfactory.c: * gst/gstplugin.c: * gst/gstpluginloader.c: * gst/gstregistry.c: * gst/gstregistrychunks.c: * gst/gsttask.c: * gst/gsttaskpool.c: * gst/gsttracer.c: * gst/gsttracerrecord.c: * gst/gsttypefind.c: * libs/gst/base/gstadapter.c: * libs/gst/base/gstdataqueue.c: * libs/gst/base/gstindex.c: * libs/gst/controller/gstinterpolationcontrolsource.c: * libs/gst/controller/gstlfocontrolsource.c: * libs/gst/controller/gsttriggercontrolsource.c: * tests/check/gst/gstcontroller.c: * tests/check/gst/gstelementfactory.c: Don't use deprecated g_object_newv() Use g_object_new() instead which nowadays has a shortcut for the no-properties check. It still does an extra GType check in the function guard, but there's a pending patch to remove that and it's hardly going to be a performance issue in practice, even less so on a system that's compiled without run-time checks. Alternative would be to move to the new g_object_new_properties() with a fallback define for older glib versions, but it makes the code look more unwieldy and doesn't seem worth it. Fixes deprecation warnings when building against newer GLib versions. https://bugzilla.gnome.org/show_bug.cgi?id=780903 2017-04-07 13:49:29 -0400 Olivier Crête * tests/check/gst/gststructure.c: test: Add test for serializing/deserializing NULL strings === release 1.11.90 === 2017-04-07 16:30:35 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gstreamer-plugins.args: * docs/plugins/inspect/plugin-coreelements.xml: * gstreamer.doap: * meson.build: Release 1.11.90 2017-04-07 15:04:11 +0300 Sebastian Dröge * po/af.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/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 .po files 2017-03-08 12:09:45 -0500 Olivier Crête * gst/gststructure.c: structure: Don't print warning on NULL strings or pointers Putting NULL for those is a valid serialization for the NULL value. 2017-04-05 16:32:38 +0300 Sebastian Dröge * gst/gstclock.h: gst: Use GstClockTimeDiff instead of GstClockTime as type for GST_SECOND and friends They were (signed!) gint64 before because of G_GINT64_CONSTANT() already and they are actually used in signed calculations. With this change we at least ensure that an integer type of the correct size is used for GI (it was using gint before). 2017-04-05 15:46:26 +0300 Sebastian Dröge * gst/gstclock.h: * gst/gstelementfactory.h: * gst/gstevent.h: * gst/gstquery.h: gst: Update some more types and values of combined-flags constants 2017-04-05 14:45:00 +0300 Sebastian Dröge * gst/gstbuffer.h: * gst/gstmemory.h: * gst/gstminiobject.h: gst: Cast combined-flags constants to their respective target types This makes C++ compilers a bit more happy without having the user of the constants cast. It also provides the correct type information to GI. https://bugzilla.gnome.org/show_bug.cgi?id=780923 2017-04-05 14:42:16 +0300 Sebastian Dröge * gst/gstbuffer.h: * gst/gstmemory.h: * gst/gstminiobject.h: gst: Set values and types for combined-flags constants in GI annotations 2017-04-05 14:26:33 +0300 Sebastian Dröge * gst/gstvalue.h: value: Properly set value and type for GST_FLAG_SET_MASK_EXACT in GI annotations Storing a -1 inside an unsigned integer confuses GIR based bindings generators. 2017-04-04 16:28:45 -0400 Nicolas Dufresne * data/bash-completion/helpers/gst.in: completion: Try to avoid parsing summary In GES, the summary refers to options that are only available when built against gst-valdiate. Those where picked by our regex. This patch add a initial grep to try and filter-out as best as possible the content to which we will extract the command list. 2017-04-04 14:25:52 -0400 Nicolas Dufresne * data/bash-completion/helpers/meson.build: * data/meson.build: * libs/gst/helpers/meson.build: * meson.build: meson: Add bash completion support 2017-04-04 13:42:50 -0400 Nicolas Dufresne * configure.ac: * data/Makefile.am: * data/bash-completion/completions/gst-inspect-1.0: * data/bash-completion/completions/gst-launch-1.0: * data/bash-completion/helpers/.gitignore: * data/bash-completion/helpers/gst.in: * libs/gst/helpers/.gitignore: * libs/gst/helpers/Makefile.am: * pkgconfig/gstreamer-uninstalled.pc.in: * pkgconfig/gstreamer.pc.in: completion: Place the completion helper in libexec This patch reorganize the bash completion scripts in order to install the binary helper (gst-completion-helper) in libexec path rather then share folder. Most Linux hierarchy compliance requires that no binary executable are placed in share. We also cleanup the unused .pc entries and remove copy pasted parts of the script. Note that other project including the common helper, should now use $_GST_HELPER to read the binary executable gst-completion-helper. This helper is not longer version, as it is placed in a versionned subfolder (libexec/gstreamer.10) just like the other helpers (scanner and ptp). 2017-03-31 11:22:49 +0100 Vincent Penquerc'h * gst/gstvalue.c: gstvalue: fix GstValue leak in structure_field_union_into https://bugzilla.gnome.org/show_bug.cgi?id=780751 2017-03-31 10:38:15 +0100 Vincent Penquerc'h * gst/gststreamcollection.c: streamcollection: fix racy user-after-free The issue happens when the structure is printed by the logging subsystem: the object is included in the log, and this will cause the full object printout to be done there. However, after dispose, the queue was already cleared, so the access to it (to print the object) would assert, as the queue was already freed. The patch changes it so that the queue is merely empty, and only freed in _finalize. https://bugzilla.gnome.org/show_bug.cgi?id=776293 2017-03-27 18:30:35 +0100 Tim-Philipp Müller * gst/gstdebugutils.c: debugutils: add pad EOS flag in pipeline dot file dumps But only if set. Helps debug issues with EOS propagation. 2017-03-27 18:27:59 +0100 Tim-Philipp Müller * tools/gst-launch.c: tools: gst-launch: print structure property notifies nicer One less layer of escaping, but still lots of ugly \. 2017-03-24 14:33:19 -0400 Nicolas Dufresne * win32/common/libgstreamer.def: Fix win32 libgstreamer.def ordering This should fix make distcheck 2017-03-15 17:31:39 -0400 Nicolas Dufresne * gst/gstparamspecs.c: paramspec: Fix array validation logic A paramspec validation should modify the content to match what the spec requires and return TURE if a modification happened. This previous implementation would only fix the first element of the array and return. It was also return TRUE for empty array, while no modification was needed. https://bugzilla.gnome.org/show_bug.cgi?id=780111 2017-03-22 13:35:32 -0400 Nicolas Dufresne * gst/gstparamspecs.c: array/fraction: In param types, use get_type() function directly The GST_TYPE macro points to global variables initialized by the first call to get_type. This is not an issue if you call gst_init() but unfortunatly pygi will need to acces the param type before init can be called. This removes an assertion. 2017-03-22 13:33:47 -0400 Nicolas Dufresne * gst/gstparamspecs.c: fraction/array: Make get_type() thread safe Those aren't suppose to be called from multiple thread, but all fundamental get_type() function are thread safe. Fix it to be consistent and it may help if we change the typing mechanism in GStreamer come day. 2017-03-20 16:46:33 -0400 Nicolas Dufresne * docs/gst/gstreamer-sections.txt: * gst/gstutils.c: * gst/gstutils.h: * win32/common/libgstreamer.def: gstutils: Add helpers to get/set array properties This is to help bindings access properties of type GST_TYPE_ARRAY. This function will get/set the property and convert form/to GValueArray. New API: gst_util_set_object_array gst_util_get_object_array https://bugzilla.gnome.org/show_bug.cgi?id=753754 2017-03-20 15:50:49 -0400 Nicolas Dufresne * docs/gst/gstreamer-sections.txt: * gst/gststructure.c: * gst/gststructure.h: * win32/common/libgstreamer.def: structure: Add get/set_array/list using GValueArray This adds a binding friendly interface to get and set arrays and list into GstStructure. New API: - gst_structure_set_array - gst_structure_set_list - gst_structure_get_array - gst_structure_get_list https://bugzilla.gnome.org/show_bug.cgi?id=753754 2017-03-20 15:40:25 -0400 Nicolas Dufresne * gst/gstvalue.c: * tests/check/gst/gstvalue.c: gstvalue: Add transformation to/from GValueArray This allow transforming a GValue of type G_TYPE_VALUE_ARRAY to and from GST_TYPE_ARRAY/LIST. https://bugzilla.gnome.org/show_bug.cgi?id=753754 2017-03-24 14:21:30 +0200 Sebastian Dröge * libs/gst/base/gstqueuearray.h: queuearray: Add G_BEGIN_DECLS and G_END_DECLS to make it usable from C++ code 2017-03-24 17:53:31 +1100 Jan Schmidt * gst/gstparamspecs.c: paramspecs: Use gst_value_array_get_type() for GstParamSpecArray type When registering GstParamSpecArray, use the gst_value_array_get_type() function to get the type, rather than the GST_TYPE_ARRAY macro, which gets it from the _gst_value_array_type, which is in turn only initialised during gst_init() Fixes criticals with (python) bindings that look up all the types from the gobject-introspection info as soon as they are imported. /usr/lib64/python3.5/site-packages/gi/module.py:178: Warning: g_param_type_register_static: assertion 'g_type_name (pspec_info->value_type) != NULL' failed g_type = info.get_g_type() /usr/lib64/python3.5/site-packages/gi/module.py:212: Warning: g_type_get_qdata: assertion 'node != NULL' failed type_ = g_type.pytype /usr/lib64/python3.5/site-packages/gi/module.py:226: Warning: g_type_get_qdata: assertion 'node != NULL' failed g_type.pytype = wrapper /usr/lib64/python3.5/site-packages/gi/module.py:226: Warning: g_type_set_qdata: assertion 'node != NULL' failed g_type.pytype = wrapper 2017-03-17 22:32:19 +1100 Jan Schmidt * libs/gst/base/gstbaseparse.c: baseparse: Don't forget error returns when processing more If parsing returns a non-OK flow return in the middle of processing an input buffer, don't overwrite that if a later return is OK again - the subclass might return not-linked in the middle, and then discard subsequent data without pushing while returning OK. A later success doesn't invalidate the earlier failure, but we should continue processing after not-linked, so as to keep parse state consistent. https://bugzilla.gnome.org/show_bug.cgi?id=779831 2017-03-20 16:54:22 +0000 Tim-Philipp Müller * tools/gst-launch-1.0.1: tools: replace mentions of 'mad' on the gst-launch-1.0 man page The 'mad' plugin has been removed. Mention mpg123audiodec instead. https://bugzilla.gnome.org/show_bug.cgi?id=776140 2017-03-13 11:08:01 +0000 Vincent Penquerc'h * gst/gstvalue.c: * tests/check/gst/gstvalue.c: value: fix union of int range and int when extending on a side The internal representation uses bounds scaled by the step Add tests to catch those cases 2017-03-14 22:18:36 -0700 Thiago Santos * plugins/elements/gstqueue.c: queue: avoid return flushing if we have a not-linked Return the correct flow return instead of returning always flushing. This would cause queue to convert not-linked to flushing and making upstream elements stop. Based on the previous patch for queue2. https://bugzilla.gnome.org/show_bug.cgi?id=776999 2017-01-22 11:26:56 -0300 Thiago Santos * plugins/elements/gstqueue2.c: queue2: avoid return flushing if we have a not-linked Return the correct flow return instead of returning always flushing. This would cause queue2 to convert not-linked to flushing and making upstream elements stop. https://bugzilla.gnome.org/show_bug.cgi?id=776999 2016-09-18 12:02:54 -0300 Thiago Santos * tests/check/gst/gstbin.c: tests: bin: add more tests for suppressed flags Add tests to confirm flags are persisted even after removing elements that have those suppressed flags 2017-03-10 10:13:05 +0100 Wim Taymans * libs/gst/check/gstharness.c: * plugins/elements/gstdownloadbuffer.c: buffer: handle gst_buffer_map failures 2017-03-10 10:12:49 +0100 Wim Taymans * plugins/elements/gstdownloadbuffer.c: downloadbuffer: unlock mutex in error case 2017-03-09 12:09:57 +1100 Jan Schmidt * gst/gstvalue.c: * tests/check/gst/gstcaps.c: * tests/check/gst/gststructure.c: gstvalue: Do more checks when guessing at flagset strings If guessing that a string matches a flagset, be more thorough at checking that the string following a string of hex:hex: actually looks like a flag set string. Add some unit tests to catch more cases. https://bugzilla.gnome.org/show_bug.cgi?id=779755 2017-03-09 12:09:57 +1100 Jan Schmidt * plugins/elements/gstmultiqueue.c: * plugins/elements/gstmultiqueue.h: multiqueue: Make min-interleave-time a configurable property Remove a FIXME about making the minimum interleave buffering a configurable property 2017-03-08 14:51:42 +0000 Tim-Philipp Müller * gst/gstelementfactory.c: elementfactory: promote factory not found log message to WARNING In most cases people really want to know when an element could not be created. 2017-03-07 08:21:48 +0900 Seungha Yang * plugins/elements/gstinputselector.c: inputselector: Always proxy position/duration query active-pad switch causes reconfigure event with lock taken, and upstream element might query the current position or duration before returning the reconfigure event. Meanwhile, gst_input_selector_get_linked_pad() is used to get srcpad inside of default query handle, and it takes also lock. Since inputselector is still locked by active-pad switch, and so the query cannot be handled further. https://bugzilla.gnome.org/show_bug.cgi?id=775445 2017-03-03 12:53:26 +0000 Tim-Philipp Müller * gst/gstinfo.h: info: document that logging macros don't need newlines at the end https://bugzilla.gnome.org/show_bug.cgi?id=779459 2017-02-24 21:35:27 +0000 Tim-Philipp Müller * gst/gstpad.c: pad: add since marker to docs for new API 2017-02-24 21:33:49 +0000 Tim-Philipp Müller * win32/common/libgstreamer.def: win32: update .def file for new API 2017-02-24 10:23:01 -0300 Thibault Saunier * gst/gstregistry.c: registry: Only scan plugin files that end with an extension Not file that would for some reason end with 'so' or 'dll', etc... https://bugzilla.gnome.org/show_bug.cgi?id=779175 2017-02-17 15:48:17 -0300 Thibault Saunier * docs/gst/gstreamer-sections.txt: * gst/gstpad.c: * gst/gstpad.h: pad: Add API to get the current state of a task Avoiding the user to need to deal with the locking himself etc. API: gst_pad_task_get_state https://bugzilla.gnome.org/show_bug.cgi?id=778830 2017-02-13 15:18:59 -0300 Thibault Saunier * gst/meson.build: * meson.build: * meson_options.txt: meson: Add an option to disable usage of libunwind Fixes https://bugzilla.gnome.org/show_bug.cgi?id=778193 2017-02-24 15:59:35 +0200 Sebastian Dröge * meson.build: meson: Update version 2017-02-24 15:37:30 +0200 Sebastian Dröge * configure.ac: Back to development