X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=ChangeLog;h=e0a20389f345a0cf770da5e2d3a7d12dcc4bec78;hb=ce43de86902c4e9c8ed4e9682602664cb9bce2ee;hp=3f28d3d063a3b26ecafeb51a0f8399568be4d3b1;hpb=1fbcc71dbdff79d70b0abe1285f694f3d4596564;p=platform%2Fupstream%2Fgstreamer.git diff --git a/ChangeLog b/ChangeLog index 3f28d3d..e0a2038 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,9 +1,45410 @@ +=== release 1.16.0 === + +2019-04-19 00:15:21 +0100 Tim-Philipp Müller + + * 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 + + * 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 + + * po/zh_CN.po: + Update translations + +2019-04-18 10:13:51 +0200 Olivier Crête + + * 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 + + * tests/check/libs/basesrc.c: + tests: basesrc: unref gst_bus_timed_pop_filtered return + +2019-04-16 13:29:00 +0200 Mathieu Duponchelle + + * 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 + + * 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 + + * 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 + + * plugins/tracers/gstlatency.c: + tracer: latency: Remove redundant if conditions + +2019-04-12 08:34:49 -0400 Julian Bouzas + + * plugins/tracers/gstlatency.c: + tracer: latency: Make GST_DEBUG logs consistent + +2019-04-12 08:28:22 -0400 Julian Bouzas + + * 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 + + * 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 + + * 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 + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gstreamer.doap: + * meson.build: + Release 1.15.90 + +2019-04-11 00:19:11 +0100 Tim-Philipp Müller + + * docs/plugins/inspect/plugin-coreelements.xml: + * docs/plugins/inspect/plugin-coretracers.xml: + Update docs + +2019-04-10 09:17:01 -0400 Julian Bouzas + + * plugins/tracers/gstlatency.c: + tracer: latency: Fix typo bug + +2019-04-10 09:13:53 -0400 Julian Bouzas + + * 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 + + * 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 + + * 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 + + * 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 + + * plugins/tracers/gstlatency.c: + * plugins/tracers/gstlatency.h: + tracer: latency: Show per-element reported latency + +2019-03-20 12:20:48 +0100 Julian Bouzas + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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: + + +2019-03-22 17:46:03 +0100 Antonio Ospite + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * libs/gst/base/gstaggregator.c: + aggregator: don't leak gap buffer when out of segment + +2019-03-21 18:47:04 +1100 Matthew Waters + + * 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 + + * 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 + + * gst/gstelement.c: + gst_element_get_factory: update documentation + Inform about a potential NULL result. + +2019-03-13 18:46:14 +0100 Stephane Cerveau + + * gst/gstelementfactory.c: + gst_element_factory_get_metadata: protect from null factory + +2019-03-12 21:19:23 +0000 Damian Vicino + + * README: + Update README + +2019-03-12 20:12:37 +0000 Damian Vicino + + * 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 + + * 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 + + * 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) + + * 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) + + * 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 + + * tests/check/gst/gstbuffer.c: + tests: fix leak in buffer test_wrapped_bytes test + +2019-03-01 11:59:14 +0100 Mathieu Duponchelle + + * 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 + + * 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 + + * 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 + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gstreamer.doap: + * meson.build: + Release 1.15.2 + +2019-02-26 13:23:47 +0000 Tim-Philipp Müller + + * gst/parse/Makefile.am: + meson: dist get_flex_version.py + +2019-02-26 11:38:00 +0000 Tim-Philipp Müller + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * gst/gstdeviceprovider.c: + deviceprovider: It's (transfer none) not (transfer-none) + +2019-01-30 10:41:58 -0300 Thibault Saunier + + * 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 + + * 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 + + * 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 + + * gst/gstdatetime.c: + datetime: new() and new_local_time() constructors are not nullable + +2019-01-29 15:50:06 +0200 Sebastian Dröge + + * 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 + + * gst/gstpadtemplate.c: + padtemplate: Constructors are all nullable as they check the template name + +2019-01-29 12:01:59 +0100 Edward Hervey + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gstreamer.doap: + * meson.build: + Release 1.15.1 + +2019-01-17 01:38:59 +0000 Tim-Philipp Müller + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * 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) + + * tests/check/gst/gststructure.c: + tests: Add more int range fixation tests + +2019-01-09 13:38:44 +0100 Jan Alexander Steffens (heftig) + + * 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) + + * 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 + + * 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 + + * 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 + + * libs/gst/base/gstaggregator.c: + aggregator: fix typo in docs + +2019-01-02 23:35:11 +0200 Sebastian Dröge + + * 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 + + * 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 + + * 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 + + * libs/gst/helpers/gst_gdb.py: + gdb: make the code PEP-8 compliant + +2018-12-31 14:55:55 +0000 Tim-Philipp Müller + + * 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 + + * 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 + + * tools/gst-inspect.c: + gst-inspect: Fix pager color with less + Fixes #341 + +2018-12-19 00:34:40 +0000 Tim-Philipp Müller + + * 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 + + * 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 + + * scripts/gst-uninstalled: + gst-uninstalled: include prefix in the plugins path + +2018-12-17 23:29:16 +0900 Seungha Yang + + * 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 + + * plugins/elements/gstqueue2.c: + queue2: Add details of query in debug log + +2018-12-15 11:42:30 +0100 Edward Hervey + + * 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 + the refactoring done in 2b33d3318519fd613dd5a4ebbd7c308609904e68 ) + +2018-12-15 11:08:09 +0100 Edward Hervey + + * tests/examples/streamiddemux/streamiddemux-stream.c: + examples: Remove dead assignments + Those values are always set after before usage + +2018-12-15 11:07:21 +0100 Edward Hervey + + * libs/gst/check/gstharness.c: + harness: assert on result of gst_pad_push_event() + That assertion was accidentally removed in the refactoring done in + 60de1f26c78feb0cde6d3f82cf86cf35daa71cc0 + +2018-12-15 10:53:55 +0100 Edward Hervey + + * tools/gst-inspect.c: + gst-inspect: Remove dead assignment + readable is set just after before usage since 906bbd3817c86e64d1bfa57570469055456addfe + +2018-12-14 18:38:21 +0200 Sebastian Dröge + + * tests/check/gst/gstpad.c: + pad: Let threads in the test take ownership of a strong reference to their pads + Otherwise it can easily happen that the pad is destroyed before the + thread disappears, as happened sometimes in the test_pad_probe_block_add_remove + test where joining of the thread was done *after* the pad was unreffed + and destroyed. + Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/339 + +2018-12-14 18:37:53 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Print some debug information about pad probe hooks we remove + +2018-12-11 16:48:56 +0000 Jonny Lamb + + * plugins/elements/gstidentity.c: + * plugins/elements/gstidentity.h: + identity: add eos-after property + Using `num-buffers` can be unpredictable as buffer sizes are often + arbitrary (filesrc, multifilesrc, etc.). The `error-after` property on + `identity` is better but obviously reports an error afterwards. This + adds `eos-after` which does exactly the same thing but reports EOS + instead. + +2018-12-11 10:48:46 +0100 Guillaume Desmottes + + * docs/gst/gstreamer-sections.txt: + * gst/gstcaps.c: + * gst/gstcaps.h: + * tests/check/gst/gstcaps.c: + gstcaps: add gst_caps_set_features_simple() + Convenient helper setting a caps feature on all the structures of a + caps. + +2018-12-06 20:22:21 +0000 Roman Sivriver + + * libs/gst/helpers/Makefile.am: + gst: fixed the install command for gdb python macros on macos - `install -D` is not supported by BSD install + +2018-12-01 10:32:07 -0500 Dardo D Kleiner + + * tests/check/gst/gstmeta.c: + buffer: Add more exhaustive test for gst_buffer_foreach_meta() meta removal + Existing test for iterating/removing buffer meta data was insufficient + to detect linked list corruption when removing multiple items, and could + also suffer from such corruption in attempting to count remaining items. + Modified the one test and added several others to exercise multiple + scenarios. + Validates fix for issue #332. + +2018-12-01 10:48:11 -0500 Dardo D Kleiner + + * gst/gstbuffer.c: + buffer: Fix memory corruption in gst_buffer_foreach_meta() when removing metas + Fix corruption of meta list head when removing metas at the beginning + during iteration. Linked list handling in gst_buffer_foreach_meta + failed to track the previous entry and update the correct next pointer + when removing items from beyond the head of the list, resulting in + arbitrary list pointer corruption. + Closes #332 + +2018-12-05 17:24:00 -0300 Thibault Saunier + + * common: + Automatic update of common submodule + From cd1dee0 to 59cb678 + +2018-11-23 21:22:21 -0500 Nicolas Dufresne + + * meson.build: + * meson_options.txt: + libdw support is optional + This was no longer optional, leading to deadcode. This regression was + found trying to fix the unwind variant in cerbero. + +2018-11-29 12:54:46 +0100 Zeeshan Ali + + * tools/gst-inspect.c: + gst-inspect: Fix colors for "URI handling" section + They seemed incompatible with other colors. + +2018-11-28 18:06:54 +0100 Zeeshan Ali + + * tools/gst-inspect.c: + gst-inspect: Avoid use of non-bright blue color + Simple blue doesn't work on Linux console, which also happens to be a + gnome-terminal theme. Use bright-blue instead. + +2018-11-26 22:00:28 +0900 KimTaeSoo + + * tests/check/libs/baseparse.c: + baseparse: Add unit test for short reads + Before the previous commit, buffer pulling count and chain function call + counts are not equal due to EOS. After the modification, these counts + are equal so unit test is passing. + https://gitlab.freedesktop.org/gstreamer/gstreamer/merge_requests/33 + https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/294 + +2018-11-15 00:17:09 +0900 KimTaeSoo + + * libs/gst/base/gstbaseparse.c: + baseparse: Use buffer from short reads instead of pulling again + baseparse internally uses a 64kb buffer for pulling data from upstream. + If a 64kb pull is failing with a short read, it would previously pull + again the requested size. + Doing so is not only inefficient but also seems to cause problems with + some elements (rawvideoparse) where the second pull would fail with EOS. + Short reads are only allowed in GStreamer at EOS. + Closes https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/294 + +2018-11-28 11:00:21 +0000 Philippe Normand + + * plugins/elements/gstinputselector.c: + input-selector: Let context queries pass through + By doing so GL source elements can successfully reuse the GL context and display + of downstream elements. This change fixes an issue in playbin when using + gltestsrc where the context query made by the source element would fail and the + source element would create a second (useless) GLDisplay. + +2018-11-28 05:58:53 +0200 Jordan Petridis + + * gst/gstsystemclock.c: + * libs/gst/check/libcheck/check.c: + * plugins/elements/gstfdsink.c: + * tests/benchmarks/capsnego.c: + * tests/check/gst/gstpad.c: + * tests/check/gst/gsturi.c: + Run gst-indent through the files + This is required before we enabled an indent test in the CI. + https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/33 + +2018-11-24 14:51:19 +0100 Zeeshan Ali + + * tools/gst-inspect.c: + gst-inspect: Use only original 16 colors + Not only this will make colored output work on old terminals and console + as well, terminals can theme the actual colors this way to make it fit + with their different themes this way. + +2018-11-27 02:59:41 +0100 Mathieu Duponchelle + + * libs/gst/check/gstharness.c: + Revert "harness: Take ownership of floating references (pads, elements) passed to the harness" + This reverts commit 2faf93c009d866d68cf0d063a29bb8c21f192aea. + THis broke half our unit tests, oops: + https://ci.gstreamer.net/job/GStreamer-master/11203/testReport/ + +2018-11-13 14:32:56 +0200 Sebastian Dröge + + * libs/gst/check/gstharness.c: + harness: Take ownership of floating references (pads, elements) passed to the harness + Without this bindings get confused about the meaning of references, and + we really own these references if they are not already owned by + something else. + +2018-11-24 12:06:38 +0100 Zeeshan Ali + + * tools/gst-inspect.c: + gst-inspect: Tell `less` to parse color codes + This change was originally part of 2cf16838c54 (gst-inspect: Colored + output) but got lost during the recent rebase. + +2018-10-27 18:06:20 +0100 Zeeshan Ali + + * tools/gst-inspect-1.0.1: + * tools/gst-inspect.c: + gst-inspect: Colored output + Let's make the output a bit pretty to read. The colored output can be + disabled with `--no-colors` option or by setting `GST_INSPECT_NO_COLORS' + env (to any value). + The chosen colors are based on the popular Solarized theme, which is + targeted for both dark and light backgrounds. + Note: + * We only support true colors. If the terminal doesn't signal support for + that via 'COLORTERM' env, we disable colored output. + * We don't add colors to --print-plugin-auto-install-info output, as + that's meant for machines, not humans. Not only machines don't care + about beauty, the existing ones will likely not expect colors and choke + on it and we'll get angry mob at our doors. + [1] https://ethanschoonover.com/solarized + +2018-11-10 23:35:18 +0100 Zeeshan Ali + + * tools/gst-inspect.c: + gst-inspect: Remove redundant plugin name from output + When printing info about a specific plugin, there is no need to prefix + some of the details with plugin's name. It's not only redundant but also + inconsistent and makes the task of adding consistent coloring to the + output (which we'll do in a follow patch), harder. + +2018-11-23 03:31:38 +0530 Nirbheek Chauhan + + * tools/gst-inspect.c: + gst-inspect: Use less -F -X everywhere as the pager + This emulates the default behaviour of git help pages, and also fixes + a bug on macOS where `less -F` doesn't display anything at all when + the output is shorter than one terminal screen. + Also moved the DEFAULT_PAGER define to after the includes, because + it's an unprefixed define. + Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/330 + +2018-11-12 14:00:22 +0200 Jordan Petridis + + * .gitlab-ci.yml: + Add Gitlab CI configuration + This commit adds a .gitlab-ci.yml file, which uses a feature + to fetch the config from a centralized repository. The intent is + to have all the gstreamer modules use the same configuration. + The configuration is currently hosted at the gst-ci repository + under the gitlab/ci_template.yml path. + Part of https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/29 + +2018-12-11 20:12:50 +0900 Seungha Yang + + * tests/check/gst/gstcaps.c: + tests: caps: Add more broken caps test case + +2018-12-11 20:12:41 +0900 Seungha Yang + + * gst/gstcaps.c: + * gst/gstchildproxy.c: + * gst/gststructure.c: + * gst/gsttracerrecord.c: + gst: Fix string leak when G_VALUE_COLLECT_INIT() was failed + Returned string should be freed + Fixes #319 + +2018-11-10 20:41:40 +0200 Sebastian Dröge + + * gst/gstdebugutils.h: + debugutils: Make sure that GST_DEBUG_GRAPH_SHOW_VERBOSE gets the correct value in introspection + Currently in Python it would become a signed 64 bit value but should + actually be an unsigned 32 bit value with all bits set. + This is the same problem as with GST_MESSAGE_TYPE_ANY. + See https://bugzilla.gnome.org/show_bug.cgi?id=732633 + +2018-11-06 10:20:17 +0100 Havard Graff + + * configure.ac: + * gst/gstconfig.h.in: + * gst/meson.build: + * libs/gst/check/gstcheck.h: + * tests/check/gst/gstcaps.c: + * tests/check/gst/gstghostpad.c: + * tests/check/gst/gstobject.c: + * tests/check/gst/gststructure.c: + * tests/check/gst/gsturi.c: + * tests/check/gst/gstvalue.c: + * tests/check/libs/adapter.c: + tests: fix tests when compiling with glib_checks=disabled + We won't be able to do ASSERT_CRITICAL, but the main body of the tests + are still valid, and given we ship GStreamer with this configuration, it + is important to be able to run some tests against it. + +2018-10-31 10:29:22 +0100 Havard Graff + + * tests/check/gst/gstdatetime.c: + test/datetime: fix test for windows + In the previous configuration, mktime returned -1 on Windows 10 compiled + with MSVC using meson. + Fix this by moving the hour one forward. + +2018-10-31 10:27:23 +0100 Havard Graff + + * tests/check/gst/gsturi.c: + tests/uri: fix test after GHashTable changes in GLib 2.59 + Maybe the implementation should not be dependent on a "random" hash-table + ordering, but at least this shows the problem clearly. + +2018-11-09 11:34:19 +0100 Zeeshan Ali + + * tools/gst-inspect.c: + gst-inspect: Pipe stderr to pager as well + If stderr is not redirected by the user, also page that. + +2018-11-05 12:24:01 +0100 Niels De Graef + + * plugins/elements/gsttypefindelement.c: + typefind: cleanup (un)reffing of several objects. + By using these functions, we can shave off a few lines, and make the + intent of that line more clear. + +2018-11-08 14:09:32 +0000 Tim-Philipp Müller + + * libs/gst/helpers/Makefile.am: + Fix distcheck + Follow-up to !18 and #320. + +2018-09-26 13:33:31 +0200 Michael Olbrich + + * configure.ac: + * libs/gst/helpers/.gitignore: + * libs/gst/helpers/Makefile.am: + * libs/gst/helpers/glib_gobject_helper.py: + * libs/gst/helpers/gst_gdb.py: + * libs/gst/helpers/libgstreamer-gdb.py.in: + * libs/gst/helpers/meson.build: + gst: add some gdb python macros + This adds gdb pretty printer for some GStreamer types. + For GstObject pointers the type and name is added, e.g. + "0x5555557e4110 [GstDecodeBin|decodebin0]". + For GstMiniObject pointers the object type is added, e.g. + "0x7fffe001fc50 [GstBuffer]". + For GstClockTime and GstClockTimeDiff the time is also printed in human + readable form, e.g. "150116219955 [+0:02:30.116219955]". + Fixes #320 + +2018-11-08 10:09:29 +0200 Sebastian Dröge + + * gst/gstclock.c: + * gst/gstclock.h: + clock: Move clock GWeakRef to a private GstClockEntry struct + There's no need for it to be in the public struct and we can keep the + padding for things to be added in the future. + +2018-05-17 21:42:43 +1000 Matthew Waters + + * docs/gst/gstreamer-sections.txt: + * gst/gstpad.c: + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gstquery.c: + * gst/gstquery.h: + * plugins/elements/gstqueue2.c: + * plugins/elements/gstqueue2.h: + * tests/check/elements/queue2.c: + query: add a new bitrate query + Allows determining from downstream what the expected bitrate of a stream + may be which is useful in queue2 for setting time based limits when + upstream does not provide timing information. + Implement bitrate query handling in queue2 + https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60 + +2018-05-17 21:09:36 +1000 Matthew Waters + + * plugins/elements/gstqueue2.c: + * plugins/elements/gstqueue2.h: + queue2: avoid ping-pong between 0% and 100% buffering messages + If upstream is pushing buffers larger than our limits, only 1 buffer + is ever in the queue at a time. Once that single buffer has left the + queue, a 0% buffering message would be posted followed immediately by a + 100% buffering message when the next buffer was inserted into the queue + a very short time later. As per the recommendations, This would result + in the application pausing for a short while causing the appearance of + a short stutter. + The first step of a solution involves not posting a buffering message if + there is still data waiting on the sink pad for insertion into the queue. + This successfully drops the 0% messages from being posted however a + message is still posted on each transition to 100% when the new buffer + arrives resulting in a string of 100% buffering messages. We silence + these by storing the last posted buffering percentage and only posting a + new message when it is different from or last posted message. + +2018-11-06 20:12:27 +0000 Nicolas Dufresne + + * plugins/tracers/gstlog.c: + tracers: log: Fix post query trace + The post tracer hooks have a GstQuery argument which was truncated from + the trace. As the post hook is the one that contains the useful data, + this bug was hiding the important information from that trace. + +2018-11-06 14:21:35 +0100 Havard Graff + + * docs/libs/gstreamer-libs-sections.txt: + docs: add new GstTestClock API + +2018-11-06 11:45:45 +0100 Havard Graff + + * libs/gst/check/gstharness.c: + * libs/gst/check/gsttestclock.c: + * libs/gst/check/gsttestclock.h: + harness: improve _wait_for_clock_id_waits performance + By moving the functionality down to the testclock, the implementation + no longer needs to poll the waits, but rather wait properly for + them to be added. + The performance-hit here would be that by polling the test-clock + regularly, you would create contention on the testclock-lock, making code + using the testclock (gst_clock_id_wait) fighting for the lock. + +2018-09-20 01:42:48 -0700 Havard Graff + + * gst/gstsystemclock.c: + systemclock: pre-calculate the ratio for multiplying the perf-count on win + Saves a lot of computations. + +2018-10-28 12:46:09 +0100 Havard Graff + + * gst/gstpad.c: + * tests/check/gst/gstpad.c: + gstpad: use hook_id instead of hook in called_probes list + A pointer to a hook in this list can easily not be unique, given both + the slice-allocator reusing memory, and the OS re-using freed blocks + in malloc. + By doing many repeated add and remove of probes, this becomes very easily + reproduced. + Instead use hook_id, which *is* unique for a added GHook. + +2018-09-27 19:13:35 +1000 Matthew Waters + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * tests/check/gst/gstbuffer.c: + gst/buffer: add a new function for wrapping GBytes + One restriction on the GBytes is that the data cannot be NULL as this is + explicitly forbidden by GstMemory. + Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/318 + +2018-11-03 00:49:01 +1100 Matthew Waters + + * meson.build: + * plugins/elements/meson.build: + * plugins/tracers/meson.build: + meson: generate pkg-config files for our plugins + +2018-11-05 14:07:59 +0100 Jan Alexander Steffens (heftig) + + * gst/gstminiobject.c: + * gst/gstminiobject.h: + * gst/gstobject.c: + * gst/gstobject.h: + * gst/gststructure.c: + * gst/gststructure.h: + gst_clear_*: Remove volatile from arguments + g_clear_pointer is not thread-safe and never was. GLib similarly removed + the volatile from g_clear_object in 2aacef39b1. + Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/327 + +2018-11-05 14:03:51 +0100 Jan Alexander Steffens (heftig) + + * gst/gstbuffer.h: + * gst/gstbufferlist.h: + * gst/gstcaps.h: + * gst/gstevent.h: + * gst/gstmessage.h: + * gst/gstquery.h: + * gst/gsttaglist.h: + gst_clear_*: Cast to GstMiniObject** when needed + +2018-11-05 09:37:29 +0100 Niels De Graef + + * docs/gst/gstreamer-sections.txt: + docs: update gstreamer-sections.txt with new API + +2018-11-05 10:33:54 +0100 Niels De Graef + + * gst/gstquery.h: + query: add gst_query_take() + This makes its API consistent with the other GstMiniObject subclasses + +2018-11-05 08:57:16 +0100 Niels De Graef + + * gst/gstmessage.h: + message: add gst_message_take() + This makes its API consistent with the other GstMiniObject subclasses + +2018-11-04 19:14:32 +0100 Niels De Graef + + * gst/gsttaglist.h: + taglist: add gst_tag_list_replace/take() + This makes its API consistent with the other GstMiniObject subclasses. + +2018-11-04 19:13:39 +0100 Niels De Graef + + * gst/gstbufferlist.h: + bufferlist: add gst_buffer_list_replace/take() + This makes its API consistent with the other GstMiniObject subclasses. + +2018-11-04 19:04:19 +0100 Niels De Graef + + * gst/gststructure.c: + * gst/gststructure.h: + structure: add gst_clear_structure() + Basically, you can use this instead of using gst_structure_free (which + needs to be preceded by a NULL-check). + Also fixes #275 + +2018-11-04 18:55:42 +0100 Niels De Graef + + * gst/gsttaglist.h: + taglist: add gst_clear_tag_list() + Basically, you can use this instead of using gst_tag_list_unref (which + needs to be preceded by a NULL-check). + Also fixes #275 + +2018-11-04 18:55:16 +0100 Niels De Graef + + * gst/gstquery.h: + query: add gst_clear_query() + Basically, you can use this instead of using gst_query_unref (which + needs to be preceded by a NULL-check). + Also fixes #275 + +2018-11-04 18:54:44 +0100 Niels De Graef + + * gst/gstmessage.h: + message: add gst_clear_message() + Basically, you can use this instead of using gst_message_unref (which + needs to be preceded by a NULL-check). + Also fixes #275 + +2018-11-04 18:53:51 +0100 Niels De Graef + + * gst/gstevent.h: + event: add gst_clear_event() + Basically, you can use this instead of using gst_event_unref (which + needs to be preceded by a NULL-check). + Also fixes #275 + +2018-11-04 18:53:31 +0100 Niels De Graef + + * gst/gstcaps.h: + caps: add gst_clear_caps() + Basically, you can use this instead of using gst_caps_unref (which + needs to be preceded by a NULL-check). + Also fixes #275 + +2018-11-04 18:52:50 +0100 Niels De Graef + + * gst/gstbufferlist.h: + bufferlist: add gst_clear_buffer_list() + Basically, you can use this instead of using gst_buffer_list_unref + (which needs to be preceded by a NULL-check). + Also fixes #275 + +2018-11-04 18:51:28 +0100 Niels De Graef + + * gst/gstbuffer.h: + buffer: add gst_clear_buffer() + Basically, you can use this instead of using gst_buffer_unref (which + needs to be preceded by a NULL-check). + Also fixes #275 + +2018-11-03 20:00:57 +0100 Niels De Graef + + * gst/gstminiobject.c: + * gst/gstminiobject.h: + miniobject: add gst_clear_mini_object() + This is based on g_clear_object(). Basically, you can use this instead + of using gst_mini_object_unref (which needs to be preceded by a NULL-check). + Also fixes #275 + +2018-02-08 17:31:15 +0100 Niels De Graef + + * gst/gstobject.c: + * gst/gstobject.h: + object: add gst_clear_object() + This is based on g_clear_object(). Basically, you can use this instead + of using g_object_unref (which needs to be preceded by a NULL-check). + Fixes #275 + +2018-11-05 11:07:14 +0800 Haihao Xiang + + * .gitmodules: + * gstreamer.doap: + * scripts/create-uninstalled-setup.sh: + Clone the code from gitlab + This fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/326 + +2018-11-04 12:45:57 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Always forward RECONFIGURE events upstream + Based on a patch by Vincent Penquerc'h + Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/67 + +2018-11-03 18:44:48 +0200 Sebastian Dröge + + * gst/gstclock.c: + * gst/gstclock.h: + clock: Move clock weak ref into its own ABI struct + Otherwise it will be hard to add other things into the padding later + without breaking API. + +2018-11-03 18:29:17 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstclock.c: + clock: Add new functions to the documentation + +2018-11-03 18:29:03 +0200 Sebastian Dröge + + * gst/gstclock.c: + * gst/gstclock.h: + clock: Fix deprecation handling of the GstClock clock field + +2016-09-08 08:49:54 -0600 Thomas Bluemel + + * gst/gstclock.c: + * gst/gstclock.h: + * libs/gst/base/gstbasesink.c: + clock: Keep weak reference to underlying clock + Fixes potential segmentation fault when using a GstClockID that + is referencing an already freed GstClock + Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/187 + +2018-10-30 15:30:38 +0100 Zeeshan Ali + + * tools/gst-inspect.c: + gst-inspect: Don't page if output fits the screen + +2018-10-30 14:52:15 +0100 Zeeshan Ali + + * tools/gst-inspect.c: + gst-inspect: Flush stdout before closing stdout FD + Otherwise, last line can be lost. + +2018-10-28 15:19:38 +0000 Sebastian Dröge + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/check/Makefile.am: + * libs/gst/check/gstharness.c: + * libs/gst/check/gstharness.h: + harness: Add API for proposing meta APIs from the allocation query + https://bugzilla.gnome.org/show_bug.cgi?id=797350 + +2018-09-20 23:17:52 +1000 Jan Schmidt + + * gst/gstsegment.c: + * tests/check/gst/gstsegment.c: + segment: Allow stop == -1 in gst_segment_to_running_time() and rate < 0 + If a segment has stop == -1, then gst_segment_to_running_time() + would refuse to calculate a running time for negative rates, + but gst_segment_do_seek() allows this scenario and uses a + valid duration for calculations. + Make the 2 functions consistent by using any configured duration + to calculate a running time too in that case. + https://bugzilla.gnome.org/show_bug.cgi?id=796559 + +2018-10-27 13:38:57 +0100 Zeeshan Ali + + * tools/gst-inspect.c: + gst-inspect: Pipe stdout to less if not piped already + https://bugzilla.gnome.org/show_bug.cgi?id=797344 + +2018-10-26 09:21:42 +0100 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Lower debug level of some output related to the URI query + It's not a warning if an URI doesn't have an extension, and it's also + not mandatory that sources have an URI or even answer the URI query. + +2018-10-16 19:35:03 +0300 Jordan Petridis + + * gst/gstclock.h: + * gst/gstinfo.h: + * gst/gstvalue.h: + gst: skip format specifiers from gir generation + GST_TIME_FORMAT, GST_TIME_ARGS, GST_STIME_FORMAT, GST_STIME_ARGS + GST_PTR_FORMAT, GST_SEGMENT_FORMAT, GST_FOURCC_FORMAT and + GST_FOURCC_ARGS are format specifiers. + They can't be used outside of C and should be generated in the gir. + https://bugzilla.gnome.org/show_bug.cgi?id=797320 + +2018-10-16 19:35:03 +0300 Jordan Petridis + + * gst/gsterror.h: + gst/gsterror.h: skip GST_ERROR_SYSTEM during gir generation + GST_ERROR_SYSTEM can't really be used outside of C and should + be skipped. + https://bugzilla.gnome.org/show_bug.cgi?id=797320 + +2018-10-22 15:26:25 +0200 Edward Hervey + + * plugins/elements/gstmultiqueue.c: + multiqueue: Don't clamp running times for position calculation + Since we use full signed running times, we no longer need to clamp + the buffer time. + This avoids having the position of single queues not advancing for + buffers that are out of segment and never waking up non-linked + streams (resulting in an apparent "deadlock"). + +2018-10-22 13:45:52 +0200 Edward Hervey + + * plugins/elements/gstqueue2.c: + queue2: Reset result flow when retrying + If we ever get a GST_FLOW_EOS from downstream, we might retry + pushing new data. But if pushing that data doesn't return a + GstFlowReturn (such as pushing events), we would end up returning + the previous GstFlowReturn (i.e. EOS). + Not properly resetting it would cause cases where queue2 would + stop pushing on the first GstEvent stored (even if there is more + data contained within). + +2018-10-17 16:38:42 -0400 Olivier Crête + + * tests/check/gst/gstpipeline.c: + tests: Use GstTestClock for processing-deadline test + Use the test clock instead of using a real one to make it + easier to run in valgrind. + https://bugzilla.gnome.org/show_bug.cgi?id=797291 + +2018-10-16 10:48:40 +0100 Tim-Philipp Müller + + * tests/check/gst/gstpipeline.c: + tests: pipeline: fix leak + +2018-10-15 18:47:16 +0300 Sebastian Dröge + + * libs/gst/base/gstqueuearray.c: + queuearray: Only clear dropped item if it is not returned + +2018-10-15 15:24:07 +0300 Sebastian Dröge + + * libs/gst/base/gstqueuearray.c: + queuearray: Clear items when dropping them and a clear function was defined + +2018-10-12 15:34:45 +0100 Philippe Normand + + * docs/gst/gstreamer-sections.txt: + * gst/gstelementfactory.h: + gstelementfactory: Remove MEDIA_HARDWARE FactoryType + Using the MEDIA_ classifier prefix was inappropriate. It is sufficient to + specify the additional klass name that element can set in their metadata. + (follow-up of commit ca4b61c55562a4b74f241fe54cf1e5639a2aea25) + https://bugzilla.gnome.org/show_bug.cgi?id=796921 + +2018-10-05 12:19:46 +0200 Philippe Normand + + * docs/gst/gstreamer-sections.txt: + * gst/gstelementfactory.h: + gstelementfactory: Add MEDIA_HARDWARE klass classifier + The Harware factory type classifier allows elements (decoders and encoders, + mostly) to advertize they rely on hardware devices to perform encoding or + decoding operations. This classifier can be used by applications to filter and + select only the elements that use hardware devices, for instance to ensure + zero-copy support is enabled for a specific pipeline. + https://bugzilla.gnome.org/show_bug.cgi?id=796921 + +2018-10-10 00:00:14 -0700 Aleix Conchillo Flaqué + + * scripts/gst-uninstalled: + gst-uninstalled: add libnice to LD_LIBRARY_PATH + https://bugzilla.gnome.org/show_bug.cgi?id=797269 + +2018-10-11 14:34:40 +1100 Jan Schmidt + + * libs/gst/net/gstptpclock.c: + ptp clock: Wait for ANNOUNCE before selecting a master + Previously, with opportunistic sync we'd track a master + clock as soon as we see a SYNC message, and hence sync up + faster, but then we'd announce we're synched before seeing + the ANNOUNCE, leaving the clock details like grandmaster-clock + empty. + A better way is to start tracking the clock opportunistically, + but not announce we're synched until we've also seen the ANNOUNCE. + +2018-10-11 14:33:35 +1100 Jan Schmidt + + * libs/gst/net/gstptpclock.c: + ptp clock: improve debug + Log message arrival times. Fix a typo in one debug string + +2018-10-11 14:29:47 +1100 Jan Schmidt + + * libs/gst/net/gstptpclock.c: + ptp clock: Increase tolerance for late follow-up and delay-resp + The follow-up and delay-resp messages carry precise + timestamps for the arrival at the clock master, but + the local return time is unimportant, so we should be very + lenient in accepting them late. Some PTP masters don't + prioritise sending those packets, and we reject all the + responses and never sync - or take forever to do so. + Increase the tolerance to 20x the mean path delay. + Also fix a typo in one debug output that would print + the absolute time of the delay-resp message, not the offset + from the delay-req that it's actually being compared against. + +2018-09-18 09:36:45 +1000 Jan Schmidt + + * libs/gst/net/gstptpclock.c: + ptpclock: Add TRACE level debug output + Add some debugging to be able to tell what is happening + inside the PTP clock protocol handling. + +2018-10-07 19:51:41 +0100 Tim-Philipp Müller + + * meson.build: + meson: use new 'python' module instead of deprecated 'python3' one + https://github.com/mesonbuild/meson/pull/4169 + +2018-10-04 00:30:52 +0100 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + aggregator: document new "min-upstream-latency" property is in nanosecs + https://bugzilla.gnome.org/show_bug.cgi?id=797213 + +2018-10-03 18:23:01 +0200 Thibault Saunier + + * gst/gstprotection.h: + protection: Fix the string to define unspecified system id + Setting it to "unspecified-system-id". + +2018-10-01 12:11:47 +0200 Yacine Bandou + + * docs/gst/gstreamer-sections.txt: + * gst/gstprotection.h: + protection: Add a new definition for unspecified system protection + In some cases the system protection ID is not present in the contents + or in their metadata. + This define is used to set the value of the "system_id" field in GstProtectionEvent, + with this value, the application will use an external information to choose which + protection system to use. + Example: The matroskademux uses this value in the case of encrypted WebM, + the application will choose the appropriate protection system based on the information + received through EME API. + https://bugzilla.gnome.org/show_bug.cgi?id=797231 + +2018-09-27 17:30:25 +0300 Vivia Nikolaidou + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstqueuearray.c: + * libs/gst/base/gstqueuearray.h: + queuearray: Add set_clear_func and clear functions + gst_queue_array_clear will clear the GstQueueArray, + gst_queue_array_set_clear_func will set a clear function for each + element to be called on _clear and on _free. + https://bugzilla.gnome.org/show_bug.cgi?id=797218 + +2018-09-27 13:20:10 +0200 Mathieu Duponchelle + + * libs/gst/base/gstaggregator.c: + aggregator: add gtk-doc blurb for new min-upstream-latency prop + +2018-09-27 12:42:30 +0200 Mathieu Duponchelle + + * libs/gst/base/gstaggregator.c: + aggregator: add min-upstream-latency property. + This is exposed as a solution to the use case of plugging in + sources with a higher latency after the aggregator has started + playing with an initial set of sources, allowing to avoid resyncing. + https://bugzilla.gnome.org/show_bug.cgi?id=797213 + +2018-09-20 16:28:35 +0200 Mathieu Duponchelle + + * gst/gstelement.c: + element: remove inactive pad g_warning in add_pad + The documentation incorrectly used to state that the pads were + not automatically activated when added, whereas we actually do + that when appropriate. + Callers of gst_element_add_pad must not hold the object lock, + which implies that they cannot perform the same checks as + add_pad in a non-racy manner. + This updates the documentation, and removes the g_warning + that was output before performing automatic activation. + https://bugzilla.gnome.org/show_bug.cgi?id=797181 + +2018-09-19 19:37:38 +0100 Tim-Philipp Müller + + * libs/gst/check/meson.build: + meson: use library() for libgstcheck instead of always building a shared lib + Otherwise we try to build a shared lib when we build the rest + of GStreamer statically, which won't work because we pass + -DGST_STATIC_COMPILATION when building statically, which means + we won't dllimport public symbols from our libs which means + that on Windows the unit tests will fail to link to libgstcheck. + https://bugzilla.gnome.org/show_bug.cgi?id=797185 + +2018-08-26 01:23:23 +0200 Tim-Philipp Müller + + * tests/misc/Makefile.am: + * tests/misc/meson.build: + * tests/misc/netclock-replay.c: + tests: netclock-replay: fix build with new api export/import + Can't mix/match imports and exports from the same library + here, so just include all .c files needed instead and don't + link to gstnet at all then. + https://bugzilla.gnome.org/show_bug.cgi?id=797185 + +2018-08-25 23:56:01 +0200 Tim-Philipp Müller + + * common: + * configure.ac: + * gst/gstconfig.h.in: + * libs/gst/base/base-prelude.h: + * libs/gst/base/gstdataqueue.c: + * libs/gst/base/gstflowcombiner.c: + * libs/gst/base/gstqueuearray.c: + * libs/gst/check/check-prelude.h: + * libs/gst/check/gstbufferstraw.c: + * libs/gst/check/gstconsistencychecker.c: + * libs/gst/controller/controller-prelude.h: + * libs/gst/controller/gstargbcontrolbinding.c: + * libs/gst/controller/gstdirectcontrolbinding.c: + * libs/gst/controller/gstinterpolationcontrolsource.c: + * libs/gst/controller/gstlfocontrolsource.c: + * libs/gst/controller/gsttimedvaluecontrolsource.c: + * libs/gst/controller/gsttriggercontrolsource.c: + * libs/gst/controller/meson.build: + * libs/gst/net/gstnetaddressmeta.c: + * libs/gst/net/gstnetcontrolmessagemeta.c: + * libs/gst/net/net-prelude.h: + * meson.build: + libs: figure out right export define in configure + Add new GST_API_EXPORT in config.h and use that for GST_*_API + decorators instead of GST_EXPORT. + The right export define depends on the toolchain and whether + we're using -fvisibility=hidden or not, so it's better to set it + to the right thing directly than hard-coding a compiler whitelist + in the public header. + We put the export define into config.h instead of passing it via the + command line to the compiler because it might contain spaces and brackets + and in the autotools scenario we'd have to pass that through multiple + layers of plumbing and Makefile/shell escaping and we're just not going + to be *that* lucky. + The export define is only used if we're compiling our lib, not by external + users of the lib headers, so it's not a problem to put it into config.h + Also, this means all .c files of libs need to include config.h + to get the export marker defined, so fix up a few that didn't + include config.h. + This commit depends on a common submodule commit that makes gst-glib-gen.mak + add an #include "config.h" to generated enum/marshal .c files for the + autotools build. + https://bugzilla.gnome.org/show_bug.cgi?id=797185 + +2018-08-25 23:09:12 +0200 Tim-Philipp Müller + + * gst/Makefile.am: + * gst/gstconfig.h.in: + * gst/meson.build: + * gst/parse/Makefile.am: + * libs/gst/base/Makefile.am: + * libs/gst/base/base-prelude.h: + * libs/gst/base/meson.build: + * libs/gst/check/Makefile.am: + * libs/gst/check/check-prelude.h: + * libs/gst/check/meson.build: + * libs/gst/controller/Makefile.am: + * libs/gst/controller/controller-prelude.h: + * libs/gst/controller/meson.build: + * libs/gst/net/Makefile.am: + * libs/gst/net/meson.build: + * libs/gst/net/net-prelude.h: + libs: fix 'inconsistent DLL linkage' warnings on Windows + For each lib we build export its own API in headers when we're + building it, otherwise import the API from the headers. + This fixes linker warnings on Windows when building with MSVC. + The problem was that we had defined all GST_*_API decorators + unconditionally to GST_EXPORT. This was intentional and only + supposed to be temporary, but caused linker warnings because + we tell the linker that we want to export all symbols even + those from externall DLLs, and when the linker notices that + they were in external DLLS and not present locally it warns. + What we need to do when building each library is: export + the library's own symbols and import all other symbols. To + this end we define e.g. BUILDING_GST_FOO and then we define + the GST_FOO_API decorator either to export or to import + symbols depending on whether BUILDING_GST_FOO is set or not. + That way external users of each library API automatically + get the import. + https://bugzilla.gnome.org/show_bug.cgi?id=797185 + +2018-08-25 22:53:07 +0200 Tim-Philipp Müller + + * gst/gstconfig.h.in: + gstconfig.h: add GST_API_IMPORT define + This is for use by the various GST_*_API decorators and + will be what they get defined to when a library API is being + used by external users of that library (not the library itself + whilst it's being compiled). + In most cases it will simply map to a plain 'extern' but on + Windows with MSVC it will need to map to __declspec(dllimport). + For functions this is not strictly needed, but for exported + variables it is. + https://bugzilla.gnome.org/show_bug.cgi?id=797185 + +2018-09-21 22:26:00 +0900 Seungha Yang + + * meson.build: + meson: Specify encoding to UTF-8 when building with MSVC + Fix build on some non-US locale Windows systems + Error: + gstreamer/gst/gstdebugutils.c(194): error C2001 + https://bugzilla.gnome.org/show_bug.cgi?id=797186 + +2018-09-20 16:22:14 +0200 Mathieu Duponchelle + + * libs/gst/base/gstaggregator.h: + aggregator: define autoptr cleanup functions + +2018-09-19 15:42:06 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + docs: gst: default to single include also for protection meta API + https://bugzilla.gnome.org/show_bug.cgi?id=797165 + +2018-09-19 15:07:36 +0100 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-sections.txt: + docs: libs: move all includes to canonical single header includes + And fix up bogus libs/ prefix for controller lib includes. + https://bugzilla.gnome.org/show_bug.cgi?id=797165 + +2018-09-18 15:44:24 +0200 Linus Svensson + + * docs/libs/gstreamer-libs-sections.txt: + docs: Update include directive for gstreamer-base components + Change to always include gst/libs/base.h in order to also + include base-prelude.h, but also because it's the right + thing for people to include anyway. + https://bugzilla.gnome.org/show_bug.cgi?id=797165 + +2018-09-19 11:31:43 +0100 Tim-Philipp Müller + + * meson.build: + * meson_options.txt: + meson: add glib-checks option to disable API guards and such + We want this enabled by default, also in releases, but people + may want to disable this for performance-critical workloads or + on embedded devices. + +2018-09-19 11:25:24 +0100 Tim-Philipp Müller + + * meson_options.txt: + meson: fix missing closing bracket in option descriptions + +2018-09-17 22:13:22 +1000 Jan Schmidt + + * tests/check/gst/gstsegment.c: + tests: Use a different rate in a segment test. + Using a rate of 1.1 in the test is causing the test to + fail on 32-bit because ceil(1.1 * 10) can round to 12. + Instead use a rate 2.0 that can be expressed as floating + point number and doesn't trigger the problem. + https://bugzilla.gnome.org/show_bug.cgi?id=797154 + +2018-09-11 21:32:27 -0400 Nicolas Dufresne + + * plugins/elements/gstfilesink.c: + filesink: Fix wrong printf format + We add a guint64 and a guint, the result is a guint64. On 64bit + architecture, this is the same, but on 32bit architecture, it's not. + https://bugzilla.gnome.org/show_bug.cgi?id=797127 + +2018-09-08 13:05:13 +0100 Philippe Normand + + * gst/gstbin.c: + bin: Fix use-after-free issue in gst_bin_add() + gst_element_post_message() takes ownership of the message so we need to increase + its refcount until we no longer require access to its data (context_type). + https://bugzilla.gnome.org/show_bug.cgi?id=797099 + +2018-09-05 16:32:07 +0530 Nirbheek Chauhan + + * libs/gst/meson.build: + * tests/meson.build: + meson: Always use a dependency object for dependencies + Fixes a configure error with gst-build: + subprojects/gst-plugins-base/meson.build:235:2: ERROR: Fetched variable 'gst_check_dep' in the subproject 'gstreamer' is not a dependency object. + +2018-09-03 12:06:35 +0100 Philippe Normand + + * gst/gstutils.c: + utils: Set default values for position and duration query results + https://bugzilla.gnome.org/show_bug.cgi?id=797066 + +2018-08-30 17:44:07 +0100 Philippe Normand + + * libs/gst/base/gstbaseparse.c: + baseparse: avg_bitrate calculation critical warning fix + The avg_bitrate is an unsigned int, so the gst_util_uin64_scale() function can't + be used for it, as it expects signed integers for the fraction parts arguments. + https://bugzilla.gnome.org/show_bug.cgi?id=797054 + +2018-08-31 12:15:16 +0300 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + input-selector: Bring latency handling in sync with GstPad code + +2018-08-31 12:12:13 +0300 Sebastian Dröge + + * gst/gstpad.c: + Revert "pad: Don't drop LATENCY queries with default implementation" + This reverts commit 794944f779f954375fc74a3fffcc2067bba6a3e5. + Accumulating non-live latency values generally makes no sense and often + gives invalid results with min>max + +2018-08-31 12:12:09 +0300 Sebastian Dröge + + * gst/gstpad.c: + Revert "pad: Accumulate live/non-live latency values separately" + This reverts commit f5783e1cacb09867d81ba089b229faa7dd0edd0c. + +2018-08-29 02:03:28 +0530 Nirbheek Chauhan + + * gst/meson.build: + * libs/gst/base/meson.build: + * libs/gst/check/meson.build: + * libs/gst/controller/meson.build: + * libs/gst/net/meson.build: + * meson.build: + meson: Maintain macOS ABI through dylib versioning + Requires Meson 0.48, but the feature will be ignored on older versions + so it's safe to add it without bumping the requirement. + Documentation: + https://github.com/mesonbuild/meson/blob/master/docs/markdown/Reference-manual.md#shared_library + +2018-08-31 11:47:03 +0300 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + input-selector: Apply GstPad default latency handler fixes here too + +2018-08-31 11:41:47 +0300 Sebastian Dröge + + * gst/gstpad.c: + pad: Accumulate live/non-live latency values separately + And only ever use the non-live values if all pads are non-live, + otherwise only use the results of all live pads. + It's unclear what one would use the values for in the non-live case, but + by this we at least pass them through correctly then. + This is a follow-up for 794944f779f954375fc74a3fffcc2067bba6a3e5, which + causes wrong latency calculations if the first pad is non-live but a + later pad is actually live. In that case the live values would be + accumulated together with the values of the non-live first pad, + generally causing wrong min/max latencies to be calculated. + +2018-08-29 19:26:04 +0300 Sebastian Dröge + + * plugins/elements/gstconcat.c: + concat: Improve debug output a bit by printing pad names + +2018-08-28 14:22:16 +0300 Sebastian Dröge + + * plugins/elements/gstfilesink.c: + filesink: Flush buffers before directly writing out buffers with the SYNC_AFTER flag + Otherwise we write out the SYNC_AFTER buffer immediately, and the + previously queued up buffers afterwards which then breaks the order of + data. + Also add various debug output. + +2018-08-27 22:32:01 +1000 Jan Schmidt + + * tests/check/gst/gstsegment.c: + gstsegment: Add check for gst_segment_offset_running_time() + Add a check for gst_segment_offset_running_time() that values + are taken directly from the segment base if possible. + +2018-08-23 22:34:47 +1000 Jan Schmidt + + * gst/gstsegment.c: + * tests/check/gst/gstsegment.c: + gstsegment: Handle positions before the segment properly + Fixes for gst_segment_position_from_running_time_full() when + converting running_times that precede the segment start (or + stop in a negative rate segment) + The return value was incorrectly negated in those cases. + Add some more unit test checks for those cases, and especially + for segments with offsets. + +2018-08-26 00:45:45 +0200 Tim-Philipp Müller + + * tests/check/gst/gstmeta.c: + tests: meta: fix msvc compiler warnings + gstmeta.c(167): warning C4090: 'function': different 'const' qualifiers + gstmeta.c(172): warning C4090: 'function': different 'const' qualifiers + gstmeta.c(211): warning C4090: 'function': different 'const' qualifiers + gstmeta.c(216): warning C4090: 'function': different 'const' qualifiers + +2018-08-26 00:34:44 +0200 Tim-Philipp Müller + + * libs/gst/check/check-prelude.h: + * libs/gst/check/gsttestclock.h: + check: testclock: fix deprecation guards + Make our own deprecation marker for libgstcheck, + since the function declaration must contain the + right API export decorator (GST_CHECK_API) and + not the one for GStreamer core. + +2018-08-26 00:16:51 +0200 Tim-Philipp Müller + + * libs/gst/base/gstbitwriter.h: + bitwriter: fix compiler warning + Don't return a value from a function that doesn't + return a value using the returned value from a + function that also doesn't return a value. + gstbitwriter.h(265): warning C4098: 'gst_bit_writer_align_bytes_unchecked': 'void' function returning a value + +2018-08-17 17:24:59 +0300 Sebastian Dröge + + * tests/check/elements/filesink.c: + filesink: Use SYNC_AFTER flag in seeking test + Otherwise it's not guaranteed that buffers are actually on disk after + pushing them, and reading the file via g_file_get_contents() might not + include them yet. + +2018-08-17 17:24:19 +0300 Sebastian Dröge + + * plugins/elements/gstfilesink.c: + filesink: Consider the current buffer size when checking the current position + +2018-08-17 17:23:52 +0300 Sebastian Dröge + + * plugins/elements/gstfilesink.c: + filesink: Reset the current buffer size to NULL and clear the buffer on close and FLUSH_STOP + +2018-08-17 02:54:00 +0530 Nirbheek Chauhan + + * libs/gst/helpers/meson.build: + * meson.build: + meson: host_system is 'ios' when building for iOS + The cross file sets this value, and we use 'ios' in Cerbero. + +2018-08-14 11:28:00 +0300 Sebastian Dröge + + * plugins/elements/gstfilesink.c: + * plugins/elements/gstfilesink.h: + filesink: Implement buffering internally + We use writev() so every call ends up going to the kernel but for small + buffers we generally would prefer to do as few write calls as possible. + https://bugzilla.gnome.org/show_bug.cgi?id=794173 + +2018-08-14 10:58:26 +0300 Sebastian Dröge + + * plugins/elements/gstfilesink.c: + * plugins/elements/gstfilesink.h: + filesink: Remove buffer, deprecate line-buffer mode and don't use fflush() + fflush() has no effect because we use writev() directly, so fsync() + should be used instead which is actually flushing the kernel-side + buffers. + As a next step, a non-line-buffered buffering mode is to be added. + https://bugzilla.gnome.org/show_bug.cgi?id=794173 + +2018-08-14 12:30:19 +0300 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Fixup for previous commit to prevent infinite loop if no events are pending + +2018-08-13 14:50:57 +0300 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Return an error directly if negotiation of a sink pad failed + And don't give buffers to subclasses in that case. + https://bugzilla.gnome.org/show_bug.cgi?id=796951 + +2018-08-12 22:57:41 +0100 Tim-Philipp Müller + + * Makefile.am: + * win32/MANIFEST: + * win32/README.txt: + * win32/common/libgstbase.def: + * win32/common/libgstcontroller.def: + * win32/common/libgstnet.def: + * win32/common/libgstreamer.def: + win32: remove .def file with exports + They're no longer needed, symbol exporting is now explicit + via GST_*_API export decorators in all cases, that is + autotools and meson, incl. MSVC. + +2018-08-12 19:04:51 +0100 Tim-Philipp Müller + + * configure.ac: + * gst/printf/Makefile.am: + * libs/gst/check/gstcheck.c: + autotools: stop controlling symbol visibility with -export-symbols-regex + Instead, use -fvisibility=hidden and explicit exports via GST_EXPORT. + This should result in consistent behaviour for the autotools and + Meson builds where this is done already, and will allow us to drop + the win32 .def files. + +2018-08-12 20:07:02 +0100 Tim-Philipp Müller + + bitwriter: fix g-i scanner warning + gstbitwriter.h:45: Warning: GstBase: "@bit_capacity" parameter unexpected at this location: + * @bit_capacity: Capacity of the allocated @data + +2018-08-11 18:17:29 +0100 Tim-Philipp Müller + + * libs/gst/check/meson.build: + * meson.build: + * meson_options.txt: + meson: add options to disable gobject cast checks and glib asserts + And match what we do for autotools here currently. + +2018-08-10 09:22:51 +0100 Tim-Philipp Müller + + * meson.build: + meson: define G_DISABLE_DEPRECATED for development versions + Like in autotools. + +2018-08-10 01:23:35 +0100 Tim-Philipp Müller + + * libs/gst/meson.build: + * meson_options.txt: + * pkgconfig/meson.build: + * tests/check/meson.build: + meson: add option to disable build of GStreamer unit test library + +2018-08-10 00:33:58 +0100 Tim-Philipp Müller + + * meson.build: + * meson_options.txt: + meson: add memory-alignment option + +2018-08-10 00:18:55 +0100 Tim-Philipp Müller + + * meson.build: + * meson_options.txt: + meson: add option to disable command-line option parsing + +2018-08-10 00:08:43 +0100 Tim-Philipp Müller + + * gst/meson.build: + * gst/parse/meson.build: + * meson_options.txt: + * tests/check/meson.build: + * tools/meson.build: + meson: add option to disable parse-launch pipeline string parser + +2018-08-09 23:32:49 +0100 Tim-Philipp Müller + + * meson.build: + * meson_options.txt: + * tests/meson.build: + meson: add options to disable tests, examples, benchmarks and tools + And remove duplicate option 'poisoning' and unused 'build_tools' one. + +2018-08-03 13:18:12 +0300 Sebastian Dröge + + * configure.ac: + configure: Enable poisoning by default for non-release builds + +2018-08-03 13:16:21 +0300 Sebastian Dröge + + * gst/gstbufferlist.c: + * gst/gstcaps.c: + * gst/gstcontext.c: + * gst/gstdatetime.c: + * gst/gstevent.c: + * gst/gstmemory.c: + * gst/gstmessage.c: + * gst/gstpromise.c: + * gst/gstquery.c: + * gst/gstsample.c: + * gst/gsttaglist.c: + * gst/gsttoc.c: + * gst/gsturi.c: + gst: Add poisoning to more types + +2018-08-03 10:36:21 +0100 Tim-Philipp Müller + + * meson.build: + meson: fix setting of extra checks option + It's checked for with #ifdef so setting it to 0 or 1 + will always enable it. + +2018-08-03 10:35:07 +0100 Tim-Philipp Müller + + * meson.build: + * meson_options.txt: + meson: add option to enable poisoning of deallocated objects + +2018-08-02 10:55:40 +0300 Sebastian Dröge + + * libs/gst/base/gsttypefindhelper.c: + typefindhelper: Mark gst_type_find_helper_get_range_full() as Since 1.14.3 + +2018-07-31 19:25:03 +0300 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + inputselector: Forward LATENCY query to all sinkpads + Otherwise downstream will consider the pipeline not live if the active + pad is live, even though some inactive pads might be live and might + require a non-zero latency configuration. + https://bugzilla.gnome.org/show_bug.cgi?id=796901 + +2018-07-31 16:46:25 +0300 Sebastian Dröge + + * gst/gstpad.c: + pad: Update pad offsets on the current event if the offset changed in pad probes + https://bugzilla.gnome.org/show_bug.cgi?id=796898 + +2018-07-30 18:51:35 +0300 Sebastian Dröge + + * gst/gstpad.c: + pad: Ensure that the pad is blocked for IDLE probes if they are called from the streaming thread too + IDLE probes that are directly called when being added will increase / + decrease the "number of IDLE probes running" counter around the call, + but when running from the streaming thread this won't happen. + This has the effect that when running from a streaming thread it is + possible to push serialized events or data out of the pad without + problems, but otherwise it would deadlock because serialized data would + wait for the IDLE probe to finish first (it is blocking after all!). + With this change it will now always consistently deadlock instead of + just every once in a while, which should make it obvious why this + happens and prevent racy deadlocks in application code. + https://bugzilla.gnome.org/show_bug.cgi?id=796895 + +2018-07-30 18:10:31 +0300 Sebastian Dröge + + * libs/gst/base/gsttypefindhelper.c: + * libs/gst/base/gsttypefindhelper.h: + * plugins/elements/gsttypefindelement.c: + * win32/common/libgstbase.def: + typefind: Add new gst_type_find_helper_get_range_full() that returns flow return + And make use of it in the typefind element. It's useful to distinguish + between the different errors why typefinding can fail, and especially to + not consider GST_FLOW_FLUSHING as an actual error. + https://bugzilla.gnome.org/show_bug.cgi?id=796894 + +2018-07-27 23:22:42 +0200 Mathieu Duponchelle + + * libs/gst/base/gstaggregator.h: + aggregator: annotate GstAggregatorClass::update_src_caps + +2018-07-25 07:34:19 +0530 Nirbheek Chauhan + + * meson.build: + * meson_options.txt: + * tests/examples/controller/meson.build: + * tests/examples/streams/meson.build: + * tests/meson.build: + meson: Add feature options for optional deps + Everything should be behind an option now. + https://bugzilla.gnome.org/show_bug.cgi?id=795107 + +2018-07-26 02:31:05 +0300 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Don't leak peer pad of inactive pads when (not) forwarding QoS events to them + +2018-07-25 18:51:58 -0400 Nicolas Dufresne + + * meson.build: + meson: Install bash completion helper in prefix + A regression was causing the helpers to be installed in /share which + would lead to permission denied error or PolicyKit to promtp for + permission. See: + 054fa3aa2 meson: Use new define_variable: feature instead of run_command() + +2018-07-25 16:00:28 +0530 Nirbheek Chauhan + + * libs/gst/check/meson.build: + * libs/gst/helpers/meson.build: + * meson.build: + meson: host_machine.system() is darwin even on iOS + Also use host_system everywhere. + +2018-07-25 14:25:07 +0530 Nirbheek Chauhan + + * libs/gst/helpers/meson.build: + * plugins/tracers/meson.build: + * tests/benchmarks/meson.build: + * tools/meson.build: + meson: Don't add static printf library to executables + They should only need to link to libgstreamer. + +2018-07-25 07:30:52 +0530 Nirbheek Chauhan + + * meson.build: + meson: Use new define_variable: feature instead of run_command() + +2018-07-25 07:29:51 +0530 Nirbheek Chauhan + + * meson.build: + meson: Small cleanup, unused variable + +2018-07-25 07:04:11 +0530 Nirbheek Chauhan + + * docs/gst/meson.build: + * docs/libs/meson.build: + * meson.build: + meson: Use copy: true for configure_file() + Fixes a warning. + +2018-07-25 01:12:49 +0300 Sebastian Dröge + + * libs/gst/base/gsttypefindhelper.c: + typefindhelper: Mark extension in gst_type_find_helper_get_range() as allow-none + It always allowed NULL and even said so in the documentation. + +2018-07-24 17:28:45 +0300 Sebastian Dröge + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gsttypefindhelper.c: + * libs/gst/base/gsttypefindhelper.h: + * plugins/elements/gsttypefindelement.c: + * win32/common/libgstbase.def: + typefind: Add _with_extension() variants for typefinding data or a buffer + And make use of that in the typefind element to also be able to make use + of the extension in push mode. It previously only did that in pull mode + and this potentially speeds up typefinding and might also prevent false + positives. + https://bugzilla.gnome.org/show_bug.cgi?id=796865 + +2018-07-24 09:58:31 +0300 Sebastian Dröge + + * gst/gstpadtemplate.c: + * gst/gstparse.c: + * gst/parse/types.h: + gst: Simplify some boolean expressions + (!x || (x && y)) is the same as (!x || y) + https://bugzilla.gnome.org/show_bug.cgi?id=796847 + +2018-07-23 23:17:54 +0300 Sebastian Dröge + + * gst/gstpad.c: + * tests/check/gst/gstpad.c: + Revert "pad: Handle changing sticky events in pad probes" + This reverts commit 11e0f451eb498e92d05d8208f7217625dc62848b. + When pushing a sticky event out of a pad with a pad probe or pad offset, + those should not be applied to the event that is actually stored in the + event but only in the event sent downstream. The pad probe and pad + offsets are conceptually *after* the pad, added by external code and + should not affect any internal state of pads/elements. + Also storing the modified event has the side-effect that a re-sent event + would arrive with any previous modifications done by the same pad probe + again inside that pad probe, and it would have to check if its + modifications are already applied or not. + For sink pads and generally for events arriving in a pad, some further + changes are still needed and those are tracked in + https://bugzilla.gnome.org/show_bug.cgi?id=765049 + In addition, the commit also had a refcounting problem with events, + causing already destroyed events to be stored inside pads. + +2018-07-20 23:51:44 +0200 Mathieu Duponchelle + + * gst/gstbus.c: + bus: add missing (out) annotation to get_poll_fd() + +2018-07-18 21:13:57 -0400 Thibault Saunier + + * libs/gst/base/gstbasetransform.c: + basetransform: Do not check if NULL is an emtpy caps + gst_base_transform_transform_caps can return NULL in various conditions + thus we should not treat its result as valid caps. + In all other places NULL is properly handled. + +2018-07-16 11:51:05 -0400 Olivier Crête + + * libs/gst/base/gstbasesink.c: + sink: Only add processing latency if upstream is live + Only add it if upstream is live, otherwise leave the latency at 0. + https://bugzilla.gnome.org/show_bug.cgi?id=640610 + +2018-07-16 11:50:36 -0400 Olivier Crête + + * tests/check/gst/gstpipeline.c: + pipeline tests: Add test for processing latency + +2018-07-13 08:53:53 -0400 Thibault Saunier + + * tools/gst-inspect.c: + gst-inspect: Sort properties names + Making it simpler to find properties you are looking for when reading. + +2018-07-13 08:52:55 -0400 Thibault Saunier + + * libs/gst/base/gstbasesink.c: + basesink: Minor GI warning fix. + +2018-07-10 08:48:47 +0200 Sebastian Dröge + + * gst/gstsample.c: + sample: Set buffer/caps/buffer-lists to NULL correctly when replacing them with NULL + +2018-06-29 07:16:28 +0200 Sebastian Dröge + + * gst/gstbufferlist.c: + * tests/check/gst/gstbufferlist.c: + bufferlist: Prevent gst_buffer_list_foreach() from modifying non-writeable lists + Previously gst_buffer_list_foreach() could modify (drop or replace) + buffers in non-writable lists, which could cause all kinds of problems + if other code also has a reference to the list and assumes that it stays + the same. + https://bugzilla.gnome.org/show_bug.cgi?id=796692 + +2018-06-29 07:16:28 +0200 Sebastian Dröge + + * tests/check/gst/gstbuffer.c: + buffer: Add test to ensure that memories in a non-writable buffer are not writable + https://bugzilla.gnome.org/show_bug.cgi?id=796692 + +2018-06-28 14:13:39 +0200 Sebastian Dröge + + * tests/check/gst/gstbufferlist.c: + bufferlist: Add test to ensure that buffers in an non-writable list are not writable + https://bugzilla.gnome.org/show_bug.cgi?id=796692 + +2018-07-03 20:07:31 +0300 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.c: + * gst/gstbufferlist.c: + * gst/gstminiobject.c: + * gst/gstminiobject.h: + * gst/gstsample.c: + * win32/common/libgstreamer.def: + miniobject: Add parent pointers to the miniobject to influence writability + Every container of miniobjects now needs to store itself as parent in + the child object, and remove itself again at a later time. + A miniobject is only writable if there is at most one parent, and that + parent is writable itself, and if the reference count of the miniobject + is 1. + GstBuffer (for memories), GstBufferList (for buffers) and GstSample (for + caps, buffer, bufferlist) was updated accordingly. + Without this it was possible to have e.g. a bufferlist with refcount 2 + in two places, modifying the same buffer with refcount 1 at the same + time. + https://bugzilla.gnome.org/show_bug.cgi?id=796692 + +2018-07-08 20:52:08 -0400 Thibault Saunier + + * libs/gst/check/gstcheck.h: + check: Add a fail_unless_equals_clocktime macro for convenience + +2018-07-07 09:15:58 -0400 Nicolas Dufresne + + * win32/common/libgstbase.def: + base: Add processing deadline API to win32 def + https://bugzilla.gnome.org/show_bug.cgi?id=640610 + +2015-05-04 17:30:17 -0400 Olivier Crête + + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + basesink: Add processing deadline + The processing deadline is the acceptable amount of time to process the media + in a live pipeline before it reaches the sink. This is on top of the algorithmic + latency that is normally reported by the latency query. This should make + pipelines such as "v4lsrc ! xvimagesink" not claim that all frames are late + in the QoS events. Ideally, this should replace max_lateness for most applications. + https://bugzilla.gnome.org/show_bug.cgi?id=640610 + +2018-04-01 16:06:26 +0200 Bastian Köcher + + * gst/meson.build: + * libs/gst/check/meson.build: + * libs/gst/controller/meson.build: + gstreamer: fix install dir for configure files + Nixos installs into a non-standard includedir. + https://bugzilla.gnome.org/show_bug.cgi?id=794856 + +2018-07-04 14:00:35 -0400 Nicolas Dufresne + + * gst/gststructure.c: + structure: Update doc error in ARRAY/LIST helpers + +2018-06-22 15:35:42 +0100 Philippe Normand + + * gst/gstprotection.c: + protection: Release decryptors list, even if it's empty + https://bugzilla.gnome.org/show_bug.cgi?id=796651 + +2018-06-23 17:01:09 +0200 Tim-Philipp Müller + + * gst/gstallocator.c: + * gst/gstbin.c: + * gst/gstbufferpool.c: + * gst/gstbus.c: + * gst/gstclock.c: + * gst/gstcontrolbinding.c: + * gst/gstdevice.c: + * gst/gstdevicemonitor.c: + * gst/gstdeviceprovider.c: + * gst/gstghostpad.c: + * gst/gstpad.c: + * gst/gstpipeline.c: + * gst/gstplugin.c: + * gst/gstregistry.c: + * gst/gststreamcollection.c: + * gst/gststreams.c: + * gst/gstsystemclock.c: + * gst/gsttask.c: + * gst/gsttracer.c: + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstdataqueue.c: + * libs/gst/check/gsttestclock.c: + * libs/gst/controller/gstinterpolationcontrolsource.c: + * libs/gst/controller/gstlfocontrolsource.c: + * libs/gst/controller/gsttriggercontrolsource.c: + * libs/gst/net/gstnetclientclock.c: + * libs/gst/net/gstnettimeprovider.c: + * libs/gst/net/gstptpclock.c: + * tests/check/gst/gstdevice.c: + Update for g_type_class_add_private() deprecation in recent GLib + https://gitlab.gnome.org/GNOME/glib/merge_requests/7 + +2018-06-18 16:29:18 +0200 Edward Hervey + + * plugins/elements/gstconcat.c: + concat: Properly forward the SEGMENT seqnum + +2018-06-11 10:22:39 +0300 Sebastian Dröge + + * gst/gstevent.c: + event: Unset SNAP flags when creating a new seek event without KEY_UNIT flag + The SNAP flags only make sense in combination with the KEY_UNIT flag, + and without they expose all kinds of unexpected behaviour in various + elements that don't expect this from happening. + Also warn if this ever happens. + https://bugzilla.gnome.org/show_bug.cgi?id=796558 + +2018-06-18 09:17:36 +0300 Sebastian Dröge + + * gst/gstevent.c: + event: Require writable events for setting the running-time-offset and sequence number + Otherwise multiple code paths with the same event could change the + values on each other. + https://bugzilla.gnome.org/show_bug.cgi?id=796615 + +2018-03-15 12:43:56 +0100 Guillaume Desmottes + + * gst/gststructure.c: + * tests/check/gst/gststructure.c: + gst_structure_to_string: display actual value of pointers + We used to always display "NULL" which was pretty confusing when + debugging. + https://bugzilla.gnome.org/show_bug.cgi?id=794355 + +2018-06-13 16:27:24 -0400 Thibault Saunier + + * gst/gststreams.c: + stream: Add some missing API safe guards + +2018-06-08 17:58:43 +0100 Tim-Philipp Müller + + * gst/gstpoll.c: + poll: minor docs clarification + 'Not implemented' could be misinterpreted to mean that + the API doesn't even exist there. + +2018-06-08 17:57:01 +0100 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: update for new API + +2018-04-05 12:40:09 +0200 Guillaume Desmottes + + * gst/gstpoll.c: + * gst/gstpoll.h: + poll: add API to watch for POLLPRI + Windows doesn't seem to have an equivalent of POLLPRI so disabled those + functions on this platform. + This API can be used, for example, to wait for video4linux events which + are using POLLPRI. + https://bugzilla.gnome.org/show_bug.cgi?id=794977 + +2018-04-05 12:19:39 +0200 Guillaume Desmottes + + * gst/gstpoll.c: + poll: stop treating on POLLPRI as 'read' + Current code was considering "can read" as having either POLLIN or POLLPRI being + set. + This may lead to client being awaken because of POLLPRI, starting a blocking + read and getting stuck because there is actually nothing to read. + This patch removes POLLPRI handling in read code and I'll add specific + API to wait for POLLPRI. + https://bugzilla.gnome.org/show_bug.cgi?id=794977 + +2018-06-05 17:02:18 +0200 Edward Hervey + + * libs/gst/base/gstbaseparse.c: + baseparse: Ensure seqnum consistency + We need all relevant events of a segment to have consistent seqnum: + * GST_EVENT_SEGMENT + * GST_EVENT_EOS + If we are push-based and create a new segment, use the same seqnum + as the upstream event. + If we are pull-based, use the seqnum of that newly created segment + event everywhere + +2018-06-05 17:01:05 +0200 Edward Hervey + + * gst/gstmessage.c: + message: Only allow setting valid seqnum on messages + If we want to make sure we never end up with invalid seqnum on + messages let's forbid setting them. + +2018-06-05 16:59:50 +0200 Edward Hervey + + * gst/gstevent.c: + event: Only allow setting valid seqnum on events + If we want to make sure we never end up with invalid seqnum on + events let's forbid setting them. + +2018-06-05 16:58:21 +0200 Edward Hervey + + * gst/gstbin.c: + bin: Make sure we don't use invalid seqnums on messages + There is a possibility that the accumlation functions don't set + a seqnum. Make sure we only set/override the seqnum of the new + messages if we *have* a valid upstream seqnum to use + +2018-06-02 14:02:19 +0200 Dimitrios Katsaros + + * plugins/elements/gstqueue2.c: + * plugins/elements/gstqueue2.h: + queue2: use GstQueueArray + When using queue2 as a queue it was using GQueue with + individually allocated queue items, so two allocs for + each item. With GstQueueArray we can avoid those. + https://bugzilla.gnome.org/show_bug.cgi?id=796483 + +2018-06-03 19:37:40 +0200 Mike Wey + + * libs/gst/base/gstdataqueue.c: + dataqueue: add some missing introspection annotations + https://bugzilla.gnome.org/show_bug.cgi?id=796488 + +2018-05-30 14:06:06 +0200 Edward Hervey + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbaseparse.h: + baseparse: Documentation improvements + * Remove references to old functions and methods + * Use proper #ClassName.vmethod() decorator for vmethod + +2018-05-22 16:30:58 +0200 Thibault Saunier + + * meson.build: + * meson_options.txt: + meson: Add an option to activate extra checks + And activate them by default as with autotools + +2018-05-21 23:10:21 +0100 Tim-Philipp Müller + + * meson.build: + * meson_options.txt: + meson: rename gtkdoc option to gtk_doc + +2018-05-21 11:37:00 +0200 Edward Hervey + + * gst/gstdatetime.c: + datetime: Update/fix documentation + +2018-05-21 11:36:42 +0200 Edward Hervey + + * docs/gst/gstreamer-sections.txt: + * gst/gstsample.c: + * gst/gstsample.h: + sample: Update documentation + +2018-05-21 11:16:29 +0200 Edward Hervey + + * gst/gstpadtemplate.h: + gst: Add an example to GST_STATIC_PAD_TEMPLATE macro + +2018-05-21 09:14:37 +0200 Mark Nauwelaerts + + * gst/gstmeta.c: + * gst/gstprotection.c: + gst: add some GIR array annotations + +2018-05-20 14:07:15 +0100 Tim-Philipp Müller + + * meson.build: + * meson_options.txt: + meson: add 'nls' option to disable translations + And enable by default. Was implicitly disabled because + ENABLE_NLS was not defined. + +2018-05-16 23:25:26 +0100 Tim-Philipp Müller + + * win32/common/libgstbase.def: + win32: update for new aggregator API + Fixes make distcheck. + +2018-05-05 10:46:09 +0200 Olivier Crête + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: Add get_next_time function for live streams + Add a function to do the right thing for live streams. + https://bugzilla.gnome.org/show_bug.cgi?id=795486 + +2018-05-10 00:05:51 +0300 Sebastian Dröge + + * gst/gstpad.c: + pad: Fix race condition causing the same probe to be called multiple times + Probes were remembering a cookie that was used to check if the probe was + already called this time before the probes list changed. However the + same probes could've been called by another thread in between and thus + gotten a new cookie, and would then be called a second time. + https://bugzilla.gnome.org/show_bug.cgi?id=795987 + +2018-05-04 09:29:22 +0200 Edward Hervey + + * gst/gstregistrybinary.c: + * libs/gst/helpers/gst-ptp-helper.c: + gst: Use memcpy() instead of strncpy() where appropriate + strncpy() is assumed to be for strings so the compiler assumes that + it will need an extra byte for the string-terminaning NULL. + For cases where we know it's actually "binary" data, just copy it + with memcpy. + https://bugzilla.gnome.org/show_bug.cgi?id=795756 + +2018-05-07 10:47:00 +0900 Seungha Yang + + * libs/gst/base/gstbitwriter.h: + bitwriter: Fix build error + Fix implicit-function-declaration warning for meemst and memcpy + gstbitwriter.h:166:3: error: implicit declaration of function ‘memset’ + memset (bitwriter->data + clear_pos, 0, (new_bit_size >> 3) - clear_pos); + ^ + https://bugzilla.gnome.org/show_bug.cgi?id=795867 + +2018-05-07 01:32:14 +1000 Jan Schmidt + + * gst/gstevent.h: + gstevent: Add some FIXME: 2.0 about removing the timestamp + The timestamp field isn't valuable or used well anywhere. We + should remove it for GStreamer 2.0 + https://bugzilla.gnome.org/show_bug.cgi?id=761462 + +2014-03-18 16:01:04 +0200 Sreerenj Balachandran + + * tests/check/Makefile.am: + * tests/check/libs/.gitignore: + * tests/check/libs/bitwriter.c: + * tests/check/meson.build: + bitwriter: Add unit tests + https://bugzilla.gnome.org/show_bug.cgi?id=707543 + +2013-11-12 15:00:51 +0800 Wind Yuan + + * docs/libs/gstreamer-libs-docs.sgml: + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/Makefile.am: + * libs/gst/base/gstbitwriter-docs.h: + * libs/gst/base/gstbitwriter.c: + * libs/gst/base/gstbitwriter.h: + * libs/gst/base/meson.build: + * win32/common/libgstbase.def: + bitwriter: Add a generic bit writer + GstBitWriter provides a bit writer that can write any number of + bits into a memory buffer. It provides functions for writing any + number of bits into 8, 16, 32 and 64 bit variables. + https://bugzilla.gnome.org/show_bug.cgi?id=707543 + +2018-05-05 19:08:09 +0530 Nirbheek Chauhan + + * gst/meson.build: + * libs/gst/helpers/meson.build: + * meson.build: + * meson_options.txt: + * plugins/meson.build: + * plugins/tracers/meson.build: + * tests/check/meson.build: + * tests/meson.build: + meson: Update option names to omit disable_ and with- prefixes + Also yield common options to the outer project (gst-build in our case) + so that they don't have to be set manually. + +2018-05-05 16:16:45 +0200 Tim-Philipp Müller + + * gst/gstbufferlist.c: + * tests/check/gst/gstbufferlist.c: + bufferlist: fix abort due to underflow when creating 0-sized list + gst_buffer_list_new_sized(0) will cause an underflow in a calculation + which then makes it try to allocate huge amounts of memory, which + may lead to aborts. + https://bugzilla.gnome.org/show_bug.cgi?id=795758 + +2018-05-05 12:16:07 +0200 Tim-Philipp Müller + + * scripts/create-uninstalled-setup.sh: + scripts: create-uninstalled-setup: remove dead wiki link, mention gst-build + https://bugzilla.gnome.org/show_bug.cgi?id=795734 + +2018-05-05 11:32:12 +0200 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + aggregator: since marker for new API + Was also backported. + https://bugzilla.gnome.org/show_bug.cgi?id=795332 + +2018-05-04 14:00:21 +0200 Francisco Velazquez + + * gst/gstdebugutils.h: + debugutils: Update configure option in documentation + Update documentation on non existent option `gst-enable-gst-debug'. Instead, + one has to make sure that the `--disable-gst-debug' option was not used when + compiling GStreamer (i.e., `./configure --disable-gst-debug'). + https://bugzilla.gnome.org/show_bug.cgi?id=795801 + +2018-04-27 12:41:58 -0400 luz.paz + + * docs/random/typefind: + * docs/random/wtay/capsnego-cases: + * docs/random/wtay/events2: + * gst/gstelement.c: + * libs/gst/base/gstbasesink.c: + * tests/check/gst/gstpreset.c: + Source code typo fixes + https://bugzilla.gnome.org/show_bug.cgi?id=795610 + +2018-04-27 12:40:31 -0400 luz.paz + + * configure.ac: + * docs/libs/gstreamer-libs-docs.sgml: + * docs/random/TODO-pre-0.9: + * docs/random/autoplug1: + * docs/random/autoplug2: + * docs/random/bbb/streamselection: + * docs/random/caps: + * docs/random/caps2: + * docs/random/company/clocks: + * docs/random/company/gstdata: + * docs/random/company/gstparse: + * docs/random/company/gvadec.txt: + * docs/random/company/tagging: + * docs/random/company/time: + * docs/random/ds/0.9-planning2: + * docs/random/dynpads: + * docs/random/ensonic/distributed.txt: + * docs/random/ensonic/dparams.txt: + * docs/random/ensonic/draft-bufferpools.txt: + * docs/random/ensonic/draft-registry-change-hooks.txt: + * docs/random/ensonic/dynlink.txt: + * docs/random/ensonic/embedded.txt: + * docs/random/ensonic/interfaces.txt: + * docs/random/ensonic/lazycaps.txt: + * docs/random/ensonic/logging.txt: + * docs/random/ensonic/media-device-daemon.txt: + * docs/random/ensonic/profiling.txt: + * docs/random/error: + * docs/random/events: + * docs/random/gdp: + * docs/random/matth/scheduling.txt: + * docs/random/negotiation: + * docs/random/old/ChangeLog.gstreamer: + * docs/random/omega/TODO-0.1.0: + * docs/random/omega/caps2: + * docs/random/omega/plan-generation: + * docs/random/omega/sched-commit1: + * docs/random/omega/sched2: + * docs/random/phonon-gst: + * docs/random/plan-0.11.txt: + * docs/random/plugins: + * docs/random/porting-to-1.0.txt: + * docs/random/queue: + * docs/random/rtp: + * docs/random/thomasvs/0.10: + * docs/random/thomasvs/packaging: + * docs/random/types: + * docs/random/types2: + * docs/random/types3: + * docs/random/uraeus/gstreamer_and_midi.txt: + * docs/random/wtay/CORBA: + * docs/random/wtay/autoplug2: + * docs/random/wtay/caps-negociation: + * docs/random/wtay/capsnego2: + * docs/random/wtay/capsnego2-docs: + * docs/random/wtay/clocking: + * docs/random/wtay/eos2: + * docs/random/wtay/events: + * docs/random/wtay/events3: + * docs/random/wtay/interactivity: + * docs/random/wtay/messages: + * docs/random/wtay/namespaces: + * docs/random/wtay/negotiation3: + * docs/random/wtay/padprobes: + * docs/random/wtay/pipelineinfo: + * docs/random/wtay/plugin_guidelines: + * docs/random/wtay/registry: + * docs/random/wtay/scheduling_ideas: + * docs/random/wtay/threading: + * docs/random/wtay/threads_hilevel: + * docs/random/wtay/timecache: + * gst/gst.c: + * gst/gstbin.c: + * gst/gstcapsfeatures.c: + * gst/gstdebugutils.c: + * gst/gstdebugutils.h: + * gst/gstdevice.h: + * gst/gstdeviceprovider.c: + * gst/gstelement.c: + * gst/gstelement.h: + * gst/gstevent.c: + * gst/gstinfo.h: + * gst/gstmemory.c: + * gst/gstmessage.h: + * gst/gstminiobject.c: + * gst/gstobject.c: + * gst/gstpad.c: + * gst/gstpreset.c: + * gst/gstregistrybinary.c: + * gst/gstregistrychunks.c: + * gst/gstsegment.c: + * gst/gststreams.c: + * gst/gsttaglist.c: + * gst/gsttracerrecord.h: + * gst/gsttracerutils.c: + * gst/gsttypefindfactory.c: + * gst/gsturi.c: + * gst/gstutils.c: + * gst/gstvalue.c: + * gst/parse/grammar.y: + * hooks/pre-commit.hook: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstcollectpads.h: + * libs/gst/base/gstflowcombiner.c: + * libs/gst/base/gstindex.c: + * libs/gst/check/gstcheck.h: + * libs/gst/check/gstharness.c: + * libs/gst/check/libcheck/check.h.in: + * libs/gst/check/libcheck/check_impl.h: + * libs/gst/controller/gstinterpolationcontrolsource.c: + * libs/gst/controller/gsttimedvaluecontrolsource.c: + * libs/gst/net/gstptpclock.c: + * plugins/elements/gstcapsfilter.c: + * plugins/elements/gstconcat.c: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gsttee.c: + * plugins/elements/gsttypefindelement.c: + * plugins/tracers/gstlatency.c: + * scripts/gst-plot-traces.sh: + * tests/check/elements/funnel.c: + * tests/check/elements/selector.c: + * tests/check/elements/streamiddemux.c: + * tests/check/gst/gstbuffer.c: + * tests/check/gst/gstmemory.c: + * tests/check/gst/gstmessage.c: + * tests/check/gst/gstpad.c: + * tests/check/libs/aggregator.c: + * tests/examples/helloworld/helloworld.c: + Fix typos in comments and docs + Found via `codespell` + https://bugzilla.gnome.org/show_bug.cgi?id=795610 + +2018-04-25 19:47:11 +0100 Tim-Philipp Müller + + * win32/common/libgstbase.def: + win32: add new symbol + +2018-04-25 14:30:04 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Improve doc for gst_aggregator_pad_has_buffer + +2018-04-23 11:34:19 -0400 Olivier Crête + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: Add API to check if a pad has a new buffer + https://bugzilla.gnome.org/show_bug.cgi?id=795332 + +2018-04-25 18:28:00 +0100 Tim-Philipp Müller + + * gst/gstbuffer.c: + buffer: don't over-allocate internal GstMeta items + We would allocate space for two GstMeta structs even though + there is only one in the end (the one in GstMetaItem and in + GstFooMeta overlap). + +2018-03-23 12:48:37 -0400 Xavier Claessens + + * gst/meson.build: + * libs/gst/base/meson.build: + * libs/gst/controller/meson.build: + * libs/gst/net/meson.build: + * meson.build: + * meson_options.txt: + * plugins/elements/meson.build: + Meson: Use library() to build both static and shared libs + Meson supports building both static and shared libraries in a single + library() call. It has the advantage of reusing the same .o objects and + thus avoid double compilation. + https://bugzilla.gnome.org/show_bug.cgi?id=794627 + +2018-04-24 14:37:40 -0400 Xavier Claessens + + * meson.build: + Meson: Fix check for linker args + https://bugzilla.gnome.org/show_bug.cgi?id=795513 + +2018-04-22 19:23:50 +0100 Tim-Philipp Müller + + * pkgconfig/gstreamer-uninstalled.pc.in: + pkgconfig: set pluginsdir to plugins/ sub-directory for uninstalled .pc file + So we don't unnecessarily scan directories that have no plugins + (or try to open libs). Matches how we limit the search space for + plugin modules to gst/ ext/ sys/ subdirs. + +2018-04-20 12:30:24 +0100 Tim-Philipp Müller + + * meson.build: + meson: fix invalid keyword argument warnings + cc.compiles() doesn't have a 'prefix' argument (yet) and the + prefix has already been prepended to the source code snippets. + https://github.com/mesonbuild/meson/issues/2364 + +2018-04-18 11:35:20 -0300 Thibault Saunier + + * gst/gstevent.c: + Revert "docs: Minor fix in event_new_select_streams" + This reverts commit f218917d02760f8f32a35e4e635e23230c47c0c6. + +2018-04-17 20:03:09 -0300 Thibault Saunier + + * gst/gstevent.c: + docs: Minor fix in event_new_select_streams + +2018-04-17 11:24:31 +0100 Tim-Philipp Müller + + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + multiqueue, inputselector: show pad properties in gst-inspect-1.0 + +2018-04-17 11:01:09 +0100 Tim-Philipp Müller + + * plugins/elements/gstinputselector.c: + * plugins/elements/gstoutputselector.c: + inputselector, outputselector: add guards for wrong pads being set as active pads + Catch users wrongly setting foreign pads or wrong pads as + the selector's active pad, which leads to all kinds of + other issues. It's a programming error so handle it just + like we would if we had direct API. + https://bugzilla.gnome.org/show_bug.cgi?id=795309 + +2018-04-17 14:00:20 -0300 Thibault Saunier + + * gst/gstcaps.c: + * gst/gstcaps.h: + caps: Add a macro based variant of gst_caps_copy + This way we do not hit the performance overhead of having the method + not inlined but still can use it from bindings. + +2018-04-16 16:30:27 -0300 Thibault Saunier + + * gst/gstpad.c: + * tests/check/gst/gstpad.c: + pad: Handle changing sticky events in pad probes + In the case where the user sets a new padprobeinfo->data in a probe + where the data is a sticky event, the new sticky event should be automatically + sticked on the probed pad. + https://bugzilla.gnome.org/show_bug.cgi?id=795330 + +2018-04-17 09:33:02 -0300 Thibault Saunier + + * gst/gstinfo.c: + debug: Make PADS debug background blue + Red on red was... suboptimal! + https://bugzilla.gnome.org/show_bug.cgi?id=795330 + +2018-04-17 17:00:53 +0100 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: update defs for new exports + +2018-04-16 16:27:57 -0300 Thibault Saunier + + * libs/gst/check/gstharness.c: + harness: Handle harness->element not being a GstBin + It is totally valid but in gst_harness_find_element we were not + handling that case. + https://bugzilla.gnome.org/show_bug.cgi?id=795308 + +2018-04-04 17:36:57 -0300 Thibault Saunier + + * gst/gstcaps.c: + * gst/gstcaps.h: + gst: Stop inlining gst_caps_copy + This way it gets exposed to bindings through GObject Introspection. + +2018-04-16 10:52:46 +0100 Tim-Philipp Müller + + * README: + * common: + Automatic update of common submodule + From f0c2dc9 to ed78bee + +2018-04-15 00:49:55 +0200 Aurelien Jarno + + * gst/gstconfig.h.in: + gstconfig.h.in: initial RISC-V support + RISC-V supports unaligned accesses, but these might run extremely slowly + depending on the implementation. Therefore set GST_HAVE_UNALIGNED_ACCESS + to 0 on this architecture. + https://bugzilla.gnome.org/show_bug.cgi?id=795271 + +2018-04-11 17:16:54 +0200 Mathieu Duponchelle + + * libs/gst/base/gstadapter.c: + adapter: port the buffer list from GSList to GstQueueArray + Significantly reduces the amount of memory allocation operations. + https://bugzilla.gnome.org/show_bug.cgi?id=795167 + +2018-04-11 15:38:36 +0200 Mathieu Duponchelle + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstqueuearray.c: + * libs/gst/base/gstqueuearray.h: + * tests/check/libs/queuearray.c: + * win32/common/libgstbase.def: + API: gst_queue_array_peek_nth + https://bugzilla.gnome.org/show_bug.cgi?id=795157 + +2018-04-11 13:44:33 +0200 Mathieu Duponchelle + + * libs/gst/base/gstqueuearray.c: + gstqueuearray: make find() return a 0-based index + And make the drop() functions expect a 0-based index too, + this addresses a longstanding FIXME. This will not break + backward compatibility, because the drop() functions + were previously only meant to be used with the index + returned by find(). + https://bugzilla.gnome.org/show_bug.cgi?id=795156 + +2018-04-11 00:49:02 +0200 Mathieu Duponchelle + + * docs/gst/gstreamer-sections.txt: + * gst/gstsample.c: + * gst/gstsample.h: + * win32/common/libgstreamer.def: + gstsample: new API + gst_sample_set_buffer + gst_sample_set_caps + gst_sample_set_segment + gst_sample_set_info + gst_sample_is_writable + gst_sample_make_writable + This commit makes it possible to reuse a sample object and avoid + unnecessary memory allocations, for example in appsink. + In addition, writability is now required to set the buffer list. + https://bugzilla.gnome.org/show_bug.cgi?id=795144 + +2018-04-13 20:15:46 +0200 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbytereader.c: + * libs/gst/base/gstbytewriter.c: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstcollectpads.h: + * libs/gst/base/gsttypefindhelper.c: + * libs/gst/base/gsttypefindhelper.h: + base: fix some GIR annotations + Mostly related to out parameters and their transfer + +2018-03-29 18:59:43 +0200 Mark Nauwelaerts + + * gst/gstbuffer.c: + * gst/gstutils.c: + gst: add some GIR array annotations + +2018-04-13 09:58:05 +0200 Víctor Manuel Jáquez Leal + + * gst/gstdebugutils.c: + debugutils: Add missing parameters documentation + +2018-04-11 19:56:01 +0100 Tim-Philipp Müller + + * gst/gstinfo.c: + gstdebug: fix occasional deadlocks on windows when outputting debug logging + When outputting debug logs on Windows, some sections are protected + with a non-recursive lock. Turns out though that gst_debug_message_get() + might indirectly, via our printf format extensions, call code which + in turn would try to log something when it can't handle something. If + that happens we end up in gst_debug_log_default() again recursively and + try to again take the lock that's already taken, thus deadlocking. + Format the debug message string outside of the critical section + instead to avoid this. + https://bugzilla.gnome.org/show_bug.cgi?id=784382 + +2018-04-09 14:19:19 +0100 Tim-Philipp Müller + + * gst/gsturi.h: + gsturi: include gstconfig.h earlier for GST_API define + +2018-03-27 10:25:46 +0200 Jan Alexander Steffens (heftig) + + * gst/gstinfo.c: + * tests/check/gst/gstinfo.c: + gstinfo: fix debug levels being applied in the wrong order + Remove unneeded reapplication of patterns. Besides being + superfluous (gst_debug_reset_threshold already applies + patterns) it was also wrong and didn't stop checking patterns + after the first match (broken in 67e9d139). + Also fix up unit test which checked for the wrong order. + https://bugzilla.gnome.org/show_bug.cgi?id=794717 + +2018-03-27 10:15:46 +0200 Jan Alexander Steffens (heftig) + + * gst/gstinfo.c: + gstinfo: Simplify gst_debug_reset_threshold() implementation + Replace the while+goto with a for+break and check walk to determine + whether we had a match. Move up the unlock to keep the locked section as + small as possible. + https://bugzilla.gnome.org/show_bug.cgi?id=794717 + +2018-03-27 10:14:27 +0200 Jan Alexander Steffens (heftig) + + * gst/gstinfo.c: + gstinfo: Reduce code duplication around level pattern matching + Move the match, logging and set_threshold to a new function. + The log levels are different, so choose the higher one (LOG). Having two + equivalent messages at two different levels seems like a bad idea + anyway. + https://bugzilla.gnome.org/show_bug.cgi?id=794717 + +2018-03-27 17:16:05 +0100 Tim-Philipp Müller + + * gst/gststreamcollection.c: + streamcollection: embed GQueue into the private struct + +2018-04-02 12:44:15 +0200 Edward Hervey + + * docs/libs/Makefile.am: + * docs/libs/gstreamer-libs-sections.txt: + docs: Update libs documentation + * Make sure all libcheck headers are ignored + * Add all missing symbols + +2018-04-02 12:43:57 +0200 Edward Hervey + + * docs/gst/gstreamer-sections.txt: + docs: Update gst core doc + +2018-04-02 12:42:30 +0200 Edward Hervey + + * gst/gstparamspecs.h: + * gst/gsttracerutils.h: + gst: Documentation fixes + * Fix copy-paste error for GstParamSpecArray documentation + * Use proper field name for tracer utils documentation + +2018-04-02 12:41:48 +0200 Edward Hervey + + * libs/gst/base/gstaggregator.h: + * libs/gst/check/gstcheck.h: + libs: Documentation fixes + * Symbols not properly exposed or wrongly named + +2018-03-29 12:36:11 +1100 Matthew Waters + + * gst/gstbin.c: + bin: fix deep-element-added signal debug log message + Adding the bin to the child element doesn't really make sense. + +2018-03-22 13:00:21 +0000 Tim-Philipp Müller + + * meson.build: + meson: bump meson req for gnome.mkenums_simple() + +2018-03-22 12:18:28 +0000 Tim-Philipp Müller + + * gst/gstenumtypes.c.template: + * gst/gstenumtypes.h.template: + meson: remove no longer needed core enumtypes template files + +2017-07-20 18:12:43 +1000 Alessandro Decina + + * Makefile.am: + * gst/meson.build: + meson: use gnome.mkenums_simple() to generate core enumtypes + +2017-07-20 13:03:55 +1000 Alessandro Decina + + * Makefile.am: + * libs/gst/controller/controller_mkenum.py: + * libs/gst/controller/meson.build: + * meson.build: + meson: use gnome.mkenums_simple() to generate controller enumtypes + +2017-07-19 19:37:02 +1000 Alessandro Decina + + * libs/gst/controller/meson.build: + meson: delete unused variable + +2018-03-21 20:02:50 -0400 Nicolas Dufresne + + * tests/check/gst/gstbufferpool.c: + test: Pool now try to reset the size + As a side effect, buffers are no longer expected to be discarded on + resize. + +2016-11-14 15:35:50 +0100 Petr Kulhavy + + * gst/gstbufferpool.c: + gstbuffer: reset buffer to its original size if intact + Enhance default_reset_buffer() to resize the buffer to its full size if the + memory hasn't changed. This allows to reuse the buffer even if the offset has + changed or the size has shrunk, rather than freeing the buffer. + Change related to: https://bugzilla.gnome.org/show_bug.cgi?id=772841 + +2018-03-21 10:20:14 +0200 Sebastian Dröge + + * libs/gst/net/net.h: + net: Include gstnetcontrolmessagemeta.h in net.h + +2018-03-21 10:13:44 +0200 Sebastian Dröge + + * gst/gstparamspecs.h: + paramspecs: Set g-i annotation values for GST_PARAM_* constants + +2018-03-21 10:11:30 +0200 Sebastian Dröge + + * gst/gstelementfactory.h: + elementfactory: GST_ELEMENT_FACTORY_TYPE_DECODABLE had DECRYPTOR added, update g-i annotation value + +2018-03-20 16:11:01 +0200 Sebastian Dröge + + * gst/gstchildproxy.c: + * gst/parse/grammar.y: + gst: Fix compilation with latest GLib + g_object_ref() forwards the type of its argument nowadays. + ./grammar.y:409:14: error: assignment from incompatible pointer type [-Werror=incompatible-pointer-types] + gstchildproxy.c:212:7: error: assignment from incompatible pointer type [-Werror=incompatible-pointer-types] + +2018-03-20 09:02:34 +0000 Tim-Philipp Müller + + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * docs/plugins/inspect/plugin-coretracers.xml: + * meson.build: + Back to development + +=== release 1.14.0 === + +2018-03-19 20:09:51 +0000 Tim-Philipp Müller + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gstreamer.doap: + * meson.build: + Release 1.14.0 + +2018-03-19 20:09:51 +0000 Tim-Philipp Müller + + * docs/plugins/inspect/plugin-coreelements.xml: + * docs/plugins/inspect/plugin-coretracers.xml: + Update docs + +=== release 1.13.91 === + +2018-03-13 19:08:54 +0000 Tim-Philipp Müller + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gstreamer.doap: + * meson.build: + Release 1.13.91 + +2018-03-13 19:08:54 +0000 Tim-Philipp Müller + + * docs/plugins/inspect/plugin-coreelements.xml: + * docs/plugins/inspect/plugin-coretracers.xml: + Update docs + +2018-03-13 11:54:42 +0000 Tim-Philipp Müller + + * docs/gst/meson.build: + * docs/libs/meson.build: + meson: docs: update api decorators to ignore + +2018-03-12 23:12:13 +0000 Tim-Philipp Müller + + * docs/libs/Makefile.am: + docs: fixup for new libs API export decorators + +2018-03-12 23:03:26 +0000 Tim-Philipp Müller + + * libs/gst/net/Makefile.am: + * libs/gst/net/gstnet.h: + * libs/gst/net/gstnetaddressmeta.h: + * libs/gst/net/gstnetclientclock.h: + * libs/gst/net/gstnetcontrolmessagemeta.h: + * libs/gst/net/gstnettimepacket.h: + * libs/gst/net/gstnettimeprovider.h: + * libs/gst/net/gstptpclock.h: + * libs/gst/net/meson.build: + * libs/gst/net/net-prelude.h: + * libs/gst/net/net.h: + net: GST_EXPORT -> GST_NET_API + We need different export decorators for the different libs. + For now no actual change though, just rename before the release, + and add prelude headers to define the new decorator to GST_EXPORT. + +2018-03-12 23:03:26 +0000 Tim-Philipp Müller + + * common: + * libs/gst/controller/Makefile.am: + * libs/gst/controller/controller-prelude.h: + * libs/gst/controller/controller.h: + * libs/gst/controller/controller_mkenum.py: + * libs/gst/controller/gstargbcontrolbinding.h: + * libs/gst/controller/gstdirectcontrolbinding.h: + * libs/gst/controller/gstinterpolationcontrolsource.h: + * libs/gst/controller/gstlfocontrolsource.h: + * libs/gst/controller/gstproxycontrolbinding.h: + * libs/gst/controller/gsttimedvaluecontrolsource.h: + * libs/gst/controller/gsttriggercontrolsource.h: + * libs/gst/controller/meson.build: + controller: GST_EXPORT -> GST_CONTROLLER_API + We need different export decorators for the different libs. + For now no actual change though, just rename before the release, + and add prelude headers to define the new decorator to GST_EXPORT. + +2018-03-12 23:03:26 +0000 Tim-Philipp Müller + + * libs/gst/check/Makefile.am: + * libs/gst/check/check-prelude.h: + * libs/gst/check/check.h: + * libs/gst/check/gstbufferstraw.h: + * libs/gst/check/gstcheck.h: + * libs/gst/check/gstconsistencychecker.h: + * libs/gst/check/gstharness.h: + * libs/gst/check/gsttestclock.h: + * libs/gst/check/meson.build: + check: GST_EXPORT -> GST_CHECK_API + We need different export decorators for the different libs. + For now no actual change though, just rename before the release, + and add prelude headers to define the new decorator to GST_EXPORT. + +2018-03-12 23:03:26 +0000 Tim-Philipp Müller + + * libs/gst/base/Makefile.am: + * libs/gst/base/base-prelude.h: + * libs/gst/base/base.h: + * libs/gst/base/gstadapter.h: + * libs/gst/base/gstaggregator.h: + * libs/gst/base/gstbaseparse.h: + * libs/gst/base/gstbasesink.h: + * libs/gst/base/gstbasesrc.h: + * libs/gst/base/gstbasetransform.h: + * libs/gst/base/gstbitreader.h: + * libs/gst/base/gstbytereader.h: + * libs/gst/base/gstbytewriter.h: + * libs/gst/base/gstcollectpads.h: + * libs/gst/base/gstdataqueue.h: + * libs/gst/base/gstflowcombiner.h: + * libs/gst/base/gstindex.h: + * libs/gst/base/gstpushsrc.h: + * libs/gst/base/gstqueuearray.h: + * libs/gst/base/gsttypefindhelper.h: + * libs/gst/base/meson.build: + base: GST_EXPORT -> GST_BASE_API + We need different export decorators for the different libs. + For now no actual change though, just rename before the release, + and add prelude headers to define the new decorator to GST_EXPORT. + +2018-03-12 23:03:26 +0000 Tim-Philipp Müller + + * docs/gst/Makefile.am: + * gst/Makefile.am: + * gst/gst.h: + * gst/gst_private.h: + * gst/gstallocator.h: + * gst/gstatomicqueue.h: + * gst/gstbin.h: + * gst/gstbuffer.h: + * gst/gstbufferlist.h: + * gst/gstbufferpool.h: + * gst/gstbus.h: + * gst/gstcaps.h: + * gst/gstcapsfeatures.h: + * gst/gstchildproxy.h: + * gst/gstclock.h: + * gst/gstconfig.h.in: + * gst/gstcontext.h: + * gst/gstcontrolbinding.h: + * gst/gstcontrolsource.h: + * gst/gstdatetime.h: + * gst/gstdebugutils.h: + * gst/gstdevice.h: + * gst/gstdevicemonitor.h: + * gst/gstdeviceprovider.h: + * gst/gstdeviceproviderfactory.h: + * gst/gstdynamictypefactory.h: + * gst/gstelement.h: + * gst/gstelementfactory.h: + * gst/gstenumtypes.h.template: + * gst/gsterror.h: + * gst/gstevent.h: + * gst/gstformat.h: + * gst/gstghostpad.h: + * gst/gstinfo.h: + * gst/gstiterator.h: + * gst/gstmemory.h: + * gst/gstmessage.h: + * gst/gstmeta.h: + * gst/gstminiobject.h: + * gst/gstobject.h: + * gst/gstpad.h: + * gst/gstpadtemplate.h: + * gst/gstparamspecs.h: + * gst/gstparse.h: + * gst/gstpipeline.h: + * gst/gstplugin.h: + * gst/gstpluginfeature.h: + * gst/gstpoll.h: + * gst/gstpreset.h: + * gst/gstpromise.h: + * gst/gstprotection.h: + * gst/gstquery.h: + * gst/gstregistry.h: + * gst/gstsample.h: + * gst/gstsegment.h: + * gst/gststreamcollection.h: + * gst/gststreams.h: + * gst/gststructure.h: + * gst/gstsystemclock.h: + * gst/gsttaglist.h: + * gst/gsttagsetter.h: + * gst/gsttask.h: + * gst/gsttaskpool.h: + * gst/gsttoc.h: + * gst/gsttocsetter.h: + * gst/gsttracer.h: + * gst/gsttracerfactory.h: + * gst/gsttracerrecord.h: + * gst/gsttypefind.h: + * gst/gsttypefindfactory.h: + * gst/gsturi.h: + * gst/gstutils.h: + * gst/gstvalue.h: + gst: GST_EXPORT -> GST_API + We need different export decorators for the different libs. + For now no actual change though, just rename before the release, + and add prelude headers to define the new decorator to GST_EXPORT. + +2018-03-08 13:30:30 +1100 Matthew Waters + + * gst/gstpromise.c: + promise: be more explicit in docs about who/when to use reply/interrupt/expire + https://bugzilla.gnome.org/show_bug.cgi?id=794153 + +2018-03-07 11:19:25 -0500 Nicolas Dufresne + + * libs/gst/base/gstbasesrc.c: + basesrc: Balance unlock/unlock_stop in _src_stop() + Otherwise it's possible that we won't be able to start again + depending the implementation. We do start/stop in normal use cases + whenever GST_QUERY_SCHEDULING happens before we are started. + https://bugzilla.gnome.org/show_bug.cgi?id=794149 + +2018-03-07 11:16:00 -0500 Nicolas Dufresne + + * libs/gst/base/gstbasesrc.c: + basesrc: No need to stop flushing in start_complete + The flushing state is handled a bit differently, there is no need + to stop flushing in start_complete. This would other result in + unlock_stop being called without unlock_start. + Unlike what the old comment says, there is no need to take the live + lock here, we are still single threaded at this point (app thread + or the state change thread). Also, we will wait for playing state + in create/getrange, no need to do that twice. + https://bugzilla.gnome.org/show_bug.cgi?id=794149 + +2018-03-05 11:52:24 +0200 Sebastian Dröge + + * gst/gstdebugutils.c: + debugutils: Change dot-file functions documentation to proper gtk-doc + This way gobject-introspection also picks it up and handles our + annotations. + See https://gitlab.gnome.org/GNOME/gobject-introspection/issues/194 + +2018-03-04 10:53:10 +0200 Sebastian Dröge + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstqueuearray.c: + * libs/gst/base/gstqueuearray.h: + * win32/common/libgstbase.def: + queuearray: Implement pop_tail_struct() for completeness + All other variants of {peek,pop}_{head,tail}_{,struct} were already + implemented. + https://bugzilla.gnome.org/show_bug.cgi?id=794035 + +2018-03-04 10:24:49 +0200 Sebastian Dröge + + * gst/gstpreset.c: + * gst/gsturi.c: + gst: Add some more (type filename) annotations + +=== release 1.13.90 === + +2018-03-03 21:51:49 +0000 Tim-Philipp Müller + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * gstreamer.doap: + * meson.build: + Release 1.13.90 + +2018-03-03 21:51:49 +0000 Tim-Philipp Müller + + * docs/plugins/inspect/plugin-coreelements.xml: + * docs/plugins/inspect/plugin-coretracers.xml: + Update docs + +2018-02-13 22:20:18 +1100 Matthew Waters + + * plugins/elements/gstfdsink.c: + * plugins/elements/gstfdsrc.c: + * plugins/elements/gstfilesink.c: + * plugins/elements/gstfilesrc.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gstsparsefile.c: + plugins: Don't force 64-bit file/seek functions variants on android + Most functions are automatically chosen from the _FILE_OFFSET_BITS + define, the remaining one (fstat) is only available on API >= 21 so + check for that + +2018-03-01 22:21:17 +0000 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-sections.txt: + * win32/common/libgstbase.def: + Add new symbol to docs and .def file + Fixes make check + +2018-03-01 16:19:09 -0500 Olivier Crête + + * libs/gst/base/gstqueuearray.c: + * libs/gst/base/gstqueuearray.h: + * plugins/elements/gstqueue.c: + * tests/check/elements/queue.c: + queue: Ignore thresholds if a query is queued + The queue gets filled by the tail, so a query will always be the tail + object, not the head object. Also add a _peek_tail_struct() method to the + GstQueueArray to enable looking at the tail. + With unit test to prevent future regression. + https://bugzilla.gnome.org/show_bug.cgi?id=762875 + +2018-03-01 18:38:01 +0100 Mathieu Duponchelle + + * meson.build: + meson: -Wformat-* require -Wformat + +2018-03-01 17:20:06 +0100 Mathieu Duponchelle + + * gst/printf/meson.build: + * libs/gst/check/libcheck/meson.build: + * meson.build: + meson: enable more warnings + Modeled on the autotools build, -W flags are only + added if the compiler supports them. + https://bugzilla.gnome.org/show_bug.cgi?id=793958 + +2018-03-01 00:31:11 +0100 Mathieu Duponchelle + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + * tests/check/libs/aggregator.c: + gstaggregator: pads must inherit from #GstAggregatorPad + Document this, and take advantage of that fact to use + GstAggregator.srcpad.segment instead of GstAggregator.segment + https://bugzilla.gnome.org/show_bug.cgi?id=793942 + +2018-03-01 01:15:34 +0100 Mathieu Duponchelle + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + * tests/check/libs/aggregator.c: + Revert "gstaggregator: pads must inherit from #GstAggregatorPad" + This reverts commit 9774b3775d8483e5697f9196a26c1e5831113bd6. + Pushed by mistake + +2018-03-01 01:12:07 +0100 Mathieu Duponchelle + + * gst/gstghostpad.c: + ghostpad: ensure we build a ghost pad .. + When we construct from a custom GType + +2018-03-01 01:09:48 +0100 Mathieu Duponchelle + + * gst/gstpad.c: + pad: fix mixed declarations + +2018-03-01 00:31:11 +0100 Mathieu Duponchelle + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + * tests/check/libs/aggregator.c: + gstaggregator: pads must inherit from #GstAggregatorPad + Document this, and take advantage of that fact to use + GstAggregator.srcpad.segment instead of GstAggregator.segment + https://bugzilla.gnome.org/show_bug.cgi?id=793942 + +2018-02-28 19:53:42 +0100 Mathieu Duponchelle + + * libs/gst/base/gstaggregator.c: + aggregator: allow src GstAggregatorPads + See https://bugzilla.gnome.org/show_bug.cgi?id=793917 + https://bugzilla.gnome.org/show_bug.cgi?id=793934 + +2018-02-28 19:51:44 +0100 Mathieu Duponchelle + + * gst/gstghostpad.c: + * gst/gstpad.c: + * gst/gstpadtemplate.c: + pad, ghostpad: use the template gtype if specified + Also make sure the GType passed to the with_gtype versions + of the template constructors is_a GstPad + https://bugzilla.gnome.org/show_bug.cgi?id=793933 + +2018-02-21 22:25:25 -0500 Nicolas Dufresne + + * libs/gst/base/gstbaseparse.c: + baseparse: Fix integer overflow in bitrate calculation + https://bugzilla.gnome.org/show_bug.cgi?id=793284 + +2018-02-21 22:01:36 -0500 Nicolas Dufresne + + * libs/gst/base/gstbaseparse.c: + baseparse: Avoid overflow in update_interval calculation + https://bugzilla.gnome.org/show_bug.cgi?id=793284 + +2018-02-21 21:43:59 -0500 Nicolas Dufresne + + * libs/gst/base/gstbaseparse.c: + baseparse: Fix check for update_interval + update_interval may be -1 + https://bugzilla.gnome.org/show_bug.cgi?id=793284 + +2018-02-19 15:39:46 +0900 Justin Kim + + * meson.build: + meson: Use .dylib suffix if darwin + For Mac OS, GST_EXTRA_MODULE_SUFFIX should be set as '.dylib'. + Otherwise, GStreamer fails to load its plugins. + https://bugzilla.gnome.org/show_bug.cgi?id=793584 + +2018-02-01 18:29:27 +0000 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstqueuearray.c: + * libs/gst/base/gstqueuearray.h: + * tests/check/libs/queuearray.c: + * win32/common/libgstbase.def: + queuearray: add _peek_tail() and _pop_tail() + API: gst_queue_array_pop_tail() + API: gst_queue_array_peek_tail() + These will be needed later for appsrc. + +2018-02-13 12:38:33 +0100 Mark Nauwelaerts + + * gst/gstbuffer.c: + * gst/gstevent.c: + * gst/gstmemory.c: + * gst/gstmessage.c: + * gst/gstquery.c: + * gst/gstsegment.c: + * gst/gsttaglist.c: + * gst/gsturi.c: + gst: fix some GIR annotations + Mostly related to out parameters and their transfer + +2018-01-10 04:08:57 +0100 Alicia Boya García + + * libs/gst/base/gstbasesink.c: + * tests/check/libs/basesink.c: + gstbasesink: Include segment.offset in the computation of position + Position queries with GST_FORMAT_TIME are supposed to return stream + time. + gst_base_sink_get_position() estimates the current stream time on its + own instead of using gst_segment_to_stream_time(), but the algorithm + used was not taking segment.offset into account, resulting in invalid + values when this field was set to a non-zero value. + https://bugzilla.gnome.org/show_bug.cgi?id=792434 + +2018-02-15 12:58:43 +1100 Matthew Waters + + * plugins/tracers/gstlatency.c: + tracers: latency: allow for non parented pads to send latency probes + Such a setup is used in rtspsrc for its TCP connection + https://bugzilla.gnome.org/show_bug.cgi?id=793478 + +2018-02-15 19:44:14 +0000 Tim-Philipp Müller + + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * docs/plugins/inspect/plugin-coretracers.xml: + * meson.build: + Back to development + +=== release 1.13.1 === + +2018-02-15 16:31:16 +0000 Tim-Philipp Müller + + * NEWS: + * configure.ac: + * docs/plugins/gstreamer-plugins.args: + * docs/plugins/gstreamer-plugins.hierarchy: + * docs/plugins/inspect/plugin-coreelements.xml: + * docs/plugins/inspect/plugin-coretracers.xml: + * gstreamer.doap: + * meson.build: + Release 1.13.1 + +2018-02-15 13:36:26 +0000 Tim-Philipp Müller + + * tests/check/gst/gstpipeline.c: + tests: pipeline: try to make test_pipeline_reset_start_time more reliable + Occasionally this test would fail, especially if the system is under load, + because the position query would pick up the last position from the + last buffer timestamp which has a lower timestamp than what we're + looking for. The sleep is long enough, however. It's unclear to me why + exactly this happens but there seems to be some kind of scheduling + issue going on as the streaming thread floods the sink with buffers. + Let's throttle the fakesrc to 100 buffers per second and make the sink + sync to the clock to restore some sanity. It should be totally sufficient + to test what we want to test, and seems to make things reliable here. + +2018-02-15 12:03:20 +0000 Tim-Philipp Müller + + * tests/check/gst/gsturi.c: + tests: uri: fix build without -DGST_DISABLE_DEPRECATED + Must undefine it before including gst headers, since the test + tests deprecated API. + +2018-02-15 12:09:31 +0000 Tim-Philipp Müller + + * gst/gstconfig.h.in: + gstconfig.h: want deprecation warnings if GST_DISABLE_DEPRECATED is *set* + Fix inverted logic. If GST_DISABLE_DEPRECATED is undefined, + we don't want warnings about deprecated API, and if it's + defined we do want warnings. + +2018-02-15 11:28:23 +0000 Tim-Philipp Müller + + * po/bg.po: + * po/cs.po: + * po/da.po: + * po/de.po: + * po/fr.po: + * po/hr.po: + * po/hu.po: + * po/nb.po: + * po/nl.po: + * po/pl.po: + * po/ru.po: + * po/sr.po: + * po/sv.po: + * po/tr.po: + * po/uk.po: + * po/vi.po: + * po/zh_CN.po: + po: update translations + +2018-02-14 19:37:35 +0000 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-sections.txt: + docs: add flow combiner ref/unref to docs + So new-in-1.12 index actually has some entries. + +2018-02-14 19:13:28 +0000 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-docs.sgml: + docs: add index for new symbols in 1.14 + +2018-02-14 19:12:06 +0000 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-docs.sgml: + docs: add index for new symbols in 1.12 + +2018-02-08 17:22:14 +0000 Tim-Philipp Müller + + * meson.build: + meson: make version numbers ints and fix int/string comparison + WARNING: Trying to compare values of different types (str, int). + The result of this is undefined and will become a hard error + in a future Meson release. + +2018-02-03 17:56:04 +0100 Tim-Philipp Müller + + * configure.ac: + * gst/printf/Makefile.am: + autotools: use -fno-strict-aliasing where supported + https://bugzilla.gnome.org/show_bug.cgi?id=769183 + +2018-02-03 17:55:29 +0100 Tim-Philipp Müller + + * gst/gstbuffer.h: + buffer: fix gtk-doc warning regarding _get_n_meta() declaration + +2018-02-02 00:24:20 +1100 Matthew Waters + + * gst/gstpromise.c: + * gst/gstpromise.h: + gstpromise: add since 1.14 markers + +2017-10-18 21:24:19 +1100 Matthew Waters + + * scripts/gst-uninstalled: + gst-uninstalled: add webrtc to libraries + +2018-01-31 14:01:36 +0100 Mathieu Duponchelle + + * gst/gstbuffer.h: + gstbuffer.h: move FLAG_LAST documentation back to the bottom + +2018-01-31 13:36:15 +0100 Mathieu Duponchelle + + * libs/gst/base/gstbasetransform.h: + basetransform: annotate virtual methods + +2018-01-30 16:41:39 +0100 Mathieu Duponchelle + + * gst/gstbuffer.h: + gstbuffer: add GST_BUFFER_FLAG_NON_DROPPABLE + This can be used to identify buffers for which a higher percentage + of redundancy should be allocated when performing forward error + correction, or to prevent still video frames from being dropped by + elements due to QoS. + https://bugzilla.gnome.org/show_bug.cgi?id=793008 + +2018-01-30 20:30:47 +0000 Tim-Philipp Müller + + * meson.build: + meson: use -fno-strict-aliasing if supported + https://bugzilla.gnome.org/show_bug.cgi?id=769183 + +2017-12-23 16:45:18 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * win32/common/libgstreamer.def: + buffer: add gst_buffer_get_n_meta() convenience function + Counts how many metas there are for a certain api type. + https://bugzilla.gnome.org/show_bug.cgi?id=791918 + +2017-10-22 18:05:30 +0530 Arun Raghavan + + * gst/gst.c: + * gst/gstallocator.c: + * gst/gstbin.c: + * gst/gstbuffer.c: + * gst/gstbus.c: + * gst/gstcaps.c: + * gst/gstcapsfeatures.c: + * gst/gstdatetime.c: + * gst/gstdevice.c: + * gst/gstdevicemonitor.c: + * gst/gstdeviceprovider.c: + * gst/gstelement.c: + * gst/gstevent.c: + * gst/gstinfo.c: + * gst/gstmessage.c: + * gst/gstmeta.c: + * gst/gstminiobject.c: + * gst/gstpad.c: + * gst/gstpadtemplate.c: + * gst/gstparamspecs.c: + * gst/gstparse.c: + * gst/gstplugin.c: + * gst/gstprotection.c: + * gst/gstquery.c: + * gst/gstsample.c: + * gst/gststreamcollection.c: + * gst/gststreams.c: + * gst/gststructure.c: + * gst/gsttaglist.c: + * gst/gsttoc.c: + * gst/gsturi.c: + * gst/gstutils.c: + * gst/gstvalue.c: + gst: Fix up a bunch of GIR annotations + This is mostly on nullable return values, and some other minor ones that + I ran across. + https://bugzilla.gnome.org/show_bug.cgi?id=789319 + +2017-05-27 05:19:20 +0530 Arun Raghavan + + * gst/gstdevicemonitor.c: + devicemonitor: Return NULL instead of FALSE + Same effect, meaning is clearer. + https://bugzilla.gnome.org/show_bug.cgi?id=789319 + +2018-01-26 12:42:28 +0100 François Laignel + + * docs/gst/gstreamer-sections.txt: + * gst/gstmessage.c: + * gst/gstmessage.h: + * tests/check/gst/gstmessage.c: + * win32/common/libgstreamer.def: + message: Add gst_message_writable_structure() + Add gst_message_writable_structure() to be able to add extra fields to + messages (and be on par with GstEvent). + https://bugzilla.gnome.org/show_bug.cgi?id=792928 + +2018-01-23 22:49:52 +0100 Mathieu Duponchelle + + * libs/gst/base/gstaggregator.c: + aggregator: delegate buffer skipping to the aggregate thread + As we do that for serialized events as well, and the subclass will + most likely need to access pad->segment to make its decisions, + doing that from the sinkpad's streaming threads was racy. + +2017-12-28 12:12:45 +0100 Mathieu Duponchelle + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + API: GstAggregatorPad.skip_buffer virtual method + Allows subclasses to prevent buffers from being queued. + https://bugzilla.gnome.org/show_bug.cgi?id=781928 + +2018-01-23 20:04:02 +0100 Mathieu Duponchelle + + * libs/gst/base/gstbasesrc.h: + basesrc: Annotate some of the virtual methods + +2018-01-23 08:56:34 +0000 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + * tests/check/libs/aggregator.c: + * win32/common/libgstbase.def: + aggregator: rename _get_buffer() -> _peek_buffer() and _steal -> _pop + https://bugzilla.gnome.org/show_bug.cgi?id=791204 + +2018-01-20 15:30:53 +0000 Tim-Philipp Müller + + * gst/gstchildproxy.c: + childproxy: gracefully handle methods being NULL + Do this for all method invoke functions for consistency. + https://bugzilla.gnome.org/show_bug.cgi?id=750154 + +2018-01-18 18:11:59 +0000 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: fix .def file for new API + Fixes check + distcheck + +2017-08-01 10:43:32 +0200 Michele Dionisio + + * libs/gst/net/gstptpclock.c: + ptp: fix build failure with #undef USE_MEASUREMENT_FILTERING + "Label ‘out’ used but not defined", since it's also used by + the USE_MEDIAN_PRE_FILTERING branch. + https://bugzilla.gnome.org/show_bug.cgi?id=785631 + +2018-01-18 19:16:12 +0200 Sebastian Dröge + + * gst/gstpadtemplate.h: + padtemplate: And add missing GST_EXPORT to gst_pad_template_new_with_gtype() + +2018-01-18 19:15:09 +0200 Sebastian Dröge + + * gst/gstpadtemplate.c: + padtemplate: Add missing Since: 1.14 marker to gst_pad_template_new_with_gtype() + +2018-01-18 19:08:10 +0200 Sebastian Dröge + + * gst/gstpadtemplate.c: + * gst/gstpadtemplate.h: + padtemplate: Add gst_pad_template_new_with_gtype() + For being able to create a pad template with GType without having a + static pad template. + +2018-01-18 19:07:49 +0200 Sebastian Dröge + + * gst/gstpadtemplate.c: + padtemplate: Add Since: 1.14 marker to gst_pad_template_new_from_static_pad_template_with_gtype() + +2018-01-16 10:17:58 +0100 Edward Hervey + + * gst/gstpad.c: + gstpad: Avoid stream-dead-lock on deactivation + The following case can happen when two thread try to activate and + deactivate a pad at the same time: + T1: starts to deactivate, calls pre_activate(), sets in_activation + to TRUE and carries on + T2: starts to activate, calls pre_activate(), in_activation is TRUE + so it waits on the GCond + T1: calls post_activate(), tries to acquire the streaming lock .. + but can't because T2 is currently holding it + With this patch, the deadlock will no longer happen but does not + solve the problem that: + T2: will resume activation of the pad, set the pad mode to the target + one (PUSH or PULL) and eventually the streaming lock gets released. + T1: is able to finish calling post_activate() ... but ... the pad + wasn't deactivated (T2 was the last one to "activate" the pad. + https://bugzilla.gnome.org/show_bug.cgi?id=792341 + +2018-01-15 18:13:45 +0100 Edward Hervey + + * gst/gstpad.c: + gstpad: Release pending g_cond_wait() when stopping/pausing task + Otherwise we would deadlock waiting forever for the streaming lock + to be released + https://bugzilla.gnome.org/show_bug.cgi?id=792341 + +2018-01-13 11:08:00 +0800 Jun Xie + + * libs/gst/base/gsttypefindhelper.c: + typefindhelper: fix confusing debug log message + In case of a short buffer, the debug log is quite confusing. + Distinguish the two types of failure cases to make it clearer. + https://bugzilla.gnome.org/show_bug.cgi?id=792486 + +2018-01-12 18:47:17 +0000 Tim-Philipp Müller + + * gst/gstobject.c: + docs: explicit refer to GObject docs for floating refs + https://bugzilla.gnome.org/show_bug.cgi?id=788477 + +2018-01-11 19:52:41 +0000 Tim-Philipp Müller + + * tests/check/elements/fakesink.c: + tests: fakesink: make notify stress test work better on Windows + Set up all ten pipelines and preroll them first, and only set + them to playing to run wild after they're all set up. If we set + them to PLAYING directly and let those threads run wild, then + it might take ages (many seconds) for the other pipelines to + even get up and running, especially on machines with only one + or two cores, and operating systems that suck at scheduling. + Now the fakesink test takes 19 secs instead of 71 secs on a + single-cpu windows machine. + +2018-01-11 19:32:08 +0000 Tim-Philipp Müller + + * tests/check/elements/filesrc.c: + tests: filesrc: more Windows fixes + Fix typo in newly-added windows uri test. + +2018-01-11 18:44:50 +0000 Tim-Philipp Müller + + * gst/gstutils.c: + utils: use g_get_monotonic_time() as fallback in gst_utils_get_timestamp() + This is a better fit given that the function docs say this + should (only) be used for interval measurements, but also + this seems to give much better granularity on Windows + systems, where before this change there would often be + 10-20 lines of debug log with the same timestamp up front. + +2018-01-11 18:39:50 +0000 Tim-Philipp Müller + + * tests/check/gst/gstsystemclock.c: + tests: systemclock: scale stress test threads according to number of cpus + Scale the number of threads used in the stress tests according to + the number of cores/cpus. We want some contention, but we also + don't want too much contention, as some operating systems are + better at handling 100 threads running wild on a single core + than others. + +2018-01-11 17:10:45 +0000 Tim-Philipp Müller + + * gst/gstplugin.c: + plugin: plugin_load() must return a ref even if it was loaded already + Fix refcounting issue when plugin was loaded already. + gst_plugin_load() is supposed to return a ref, so it + must always return a ref. + This also fixes the gstplugin unit test on windows where + fork is not available and where test_load_coreelements() + would unref a plugin ref it didn't get and then mess up + the internal registry plugin list state for the next test, + in case where the test registry does not exist yet. + +2018-01-11 14:56:42 +0000 Tim-Philipp Müller + + * tests/check/elements/filesrc.c: + tests: filesrc: fix for windows + Location paths have backslashes on windows when converted from URI. + +2018-01-11 12:27:18 +0000 Tim-Philipp Müller + + * libs/gst/check/gstcheck.c: + libs: check: print stacktrace on unexpected criticals + +2018-01-11 12:02:47 +0000 Tim-Philipp Müller + + * tests/check/Makefile.am: + * tests/check/gst/gstabi.c: + * tests/check/gst/struct_x86_64w.h: + tests: abi: fix abi test on 64-bit Windows + Add header with structure sizes for 64-bit windows as well. + They're almost the same as on Linux, but it looks like things + like padding unions get aligned slightly differently so there + are a handful of differences: + sizeof(GstGhostPad) is 528, expected 536 + sizeof(GstPad) is 512, expected 520 + sizeof(GstPadProbeInfo) is 64, expected 72 + sizeof(GstProxyPad) is 520, expected 528 + +2018-01-11 11:38:53 +0000 Tim-Philipp Müller + + * tests/check/gst/gstinfo.c: + tests: info: fix post init cat reg test on windows and with CK_FORK=no + The test checks that categories not covered by the pattern in the + GST_DEBUG string have debug level GST_LEVEL_DEFAULT set, but previous + tests mess with the default threshold, which made this test fail on + Windows or when run with CK_FORK=no. Fix this by resetting everything + at the beginning, and then also do a sanity check afterwards. + +2018-01-11 11:36:53 +0000 Tim-Philipp Müller + + * gst/gstinfo.c: + info: reset default threshold to LEVEL_DEFAULT not 0 + in set_threshold_from_string(). + +2017-11-08 20:05:03 +0100 Håvard Graff + + * libs/gst/check/libcheck/check.h.in: + * libs/gst/check/libcheck/libcompat/libcompat.h: + * libs/gst/check/libcheck/meson.build: + * libs/gst/check/meson.build: + * libs/gst/meson.build: + * pkgconfig/meson.build: + * tests/meson.build: + meson: make check and tests build on Windows with msvc + +2018-01-02 10:02:45 +0100 Edward Hervey + + * libs/gst/check/gstharness.c: + gstharness: Remove double free + +2017-12-26 18:08:31 +0100 Sebastian Dröge + + * gst/gststreams.h: + streams: GstStreamType/GstStream are available since 1.10 + Annotate them as such. + +2017-12-26 13:46:20 +0100 Tim-Philipp Müller + + * meson.build: + meson: skip translations if gettext is not available + +2017-12-26 12:51:22 +0100 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: remove DEBUG_FUNCPTR + The new gst_element_do_foreach_pad() does not print the functions anymore. + +2017-12-26 12:17:53 +0100 Stefan Sauer + + * tools/gst-inspect.c: + inspect: add comment for how to improve tracer support + +2017-12-26 11:29:39 +0100 Stefan Sauer + + * gst/gstsegment.c: + segment: add a FIXME-2.0 for the format parameters + Capture the somewhat not ordinary use of the extra format parameter in a + comment. + See https://bugzilla.gnome.org/show_bug.cgi?id=788979 + +2017-12-24 16:21:38 +0100 Tim-Philipp Müller + + * gst/gst.c: + * tests/check/Makefile.am: + * tests/check/gst/.gitignore: + * tests/check/gst/gstdeinit.c: + * tests/check/meson.build: + Skip gst_deinit() if gstreamer was not initialized properly + Can happen if an error occurs during option parsing, for example. + https://bugzilla.gnome.org/show_bug.cgi?id=781914 + +2017-12-23 23:43:33 +0100 Jan Alexander Steffens (heftig) + + * tests/check/elements/multiqueue.c: + tests: multiqueue: Replace large test macro with function + Just a bit of cleanup. + https://bugzilla.gnome.org/show_bug.cgi?id=756867 + +2017-12-15 09:43:40 +0100 Jan Alexander Steffens (heftig) + + * tests/check/elements/multiqueue.c: + tests: multiqueue: Check we get CREATE+ENTER stream-statuses when adding pads + https://bugzilla.gnome.org/show_bug.cgi?id=756867 + +2017-12-15 09:14:57 +0100 Jan Alexander Steffens (heftig) + + * plugins/elements/gstmultiqueue.c: + multiqueue: Don't start new pads until parented + Start task on new source pads added at runtime after they + have been added to the element, not during activation. + This ensures the pads can post their CREATE stream-status + messages and the application can set thread priorities. + https://bugzilla.gnome.org/show_bug.cgi?id=756867 + +2017-12-15 09:14:07 +0100 Jan Alexander Steffens (heftig) + + * plugins/elements/gstmultiqueue.c: + multiqueue: Split task handling from gst_single_queue_flush + https://bugzilla.gnome.org/show_bug.cgi?id=756867 + +2017-12-23 23:25:58 +0100 Jan Alexander Steffens (heftig) + + * libs/gst/base/gstaggregator.c: + aggregator: Avoid a maybe-uninitialized warning + Arch Linux x86_64, gcc 7.2.1-2, -Og -g3 + +2017-12-21 13:47:52 +0200 Sebastian Dröge + + * plugins/elements/gstdownloadbuffer.c: + downloadbuffer: Don't hold the mutex while posint the download-complete message + Something might handle it from a sync message handler and call back into + downloadbuffer, causing a deadlock. + +2017-12-20 18:56:23 +0200 Sebastian Dröge + + * gst/gstsystemclock.c: + systemclock: set_default() clock parameter can be NULL + +2017-12-20 18:11:48 +0200 Sebastian Dröge + + * gst/gstelement.c: + element: Annotate set_clock() clock parameter with allow-none + +2017-12-20 18:09:28 +0200 Sebastian Dröge + + * gst/gstelement.c: + element: Annotate set_bus() bus parameter as allow-none + It's possible to replace the bus with NULL/None + +2017-12-10 22:50:05 +0000 Tim-Philipp Müller + + * scripts/gst-uninstalled: + gst-uninstalled: update for gl lib move from bad to base + +2017-12-11 20:58:16 -0500 Nicolas Dufresne + + * libs/gst/base/gstbasetransform.c: + basetransform: Allow going passthrough inside decide_allocation + Sub-class may want to decide to go passthrough/in-place by inspecting + the support meta APIs. This patch duplicates the check for this mode, + so we still don't do uneeded allocation query while we allow sub-classes + to switch the behaviour during it's own decide_allocation call. + Notice that such sub-class need to reset the class to non-passthrough in + set_caps() in order for decide_allocation to be called again. This is + needed otherwise we'd be doing an allocation query in element in which + it make no sense (notably capsfilter). + https://bugzilla.gnome.org/show_bug.cgi?id=791453 + +2017-12-17 14:18:38 +0200 Sebastian Dröge + + * gst/gstplugin.c: + plugin: Annotate add_dependency() arguments as NULL-terminated arrays + +2017-12-14 00:03:04 +0530 Umang Jain + + * gst/gstbus.c: + docs: GstBus: Provide more information for ref/unref during bus watch. + https://bugzilla.gnome.org/show_bug.cgi?id=791588 + +2017-12-14 16:05:00 +1100 Matthew Waters + + * win32/common/libgstreamer.def: + update win32 defs for tracer API addition + +2017-12-14 14:48:47 +1100 Matthew Waters + + * common: + Automatic update of common submodule + From e8c7a71 to 3fa2c9e + +2017-12-05 21:36:34 +1100 Matthew Waters + + * docs/gst/gstreamer-sections.txt: + * docs/plugins/Makefile.am: + * docs/plugins/gstreamer-plugins-docs.sgml: + * docs/plugins/gstreamer-plugins-sections.txt: + * docs/plugins/inspect/plugin-coretracers.xml: + * gst/gsttracerfactory.c: + * gst/gsttracerfactory.h: + * plugins/tracers/gstlatency.c: + * plugins/tracers/gstleaks.c: + * plugins/tracers/gstlog.c: + * plugins/tracers/gstrusage.c: + * plugins/tracers/gststats.c: + docs: include tracers in the documentation + Requires exposing the tracer GType from the GstTracerFactory in order + to link the plugin with the tracer in the documentation. + https://bugzilla.gnome.org/show_bug.cgi?id=791253 + +2017-12-05 20:56:09 +1100 Matthew Waters + + * libs/gst/check/gstharness.c: + check/harness: fix transfer annotations on buffer passing functions + +2017-08-30 13:03:28 +0100 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasesrc.h: + * tests/check/libs/basesrc.c: + * win32/common/libgstbase.def: + basesrc: add buffer list support + Add a gst_base_src_submit_buffer_list() function that allows subclasses + to produce a bufferlist containing multiple buffers in the ::create() + function. The buffers in the buffer list will then also be pushed out + in one go as a GstBufferList. This can reduce push overhead + significantly for sources with packetised inputs (such as udpsrc) + in high-throughput scenarios. + The _submit_buffer_list() approach was chosen because it is fairly + straight-forward, backwards-compatible, bindings-friendly (as opposed + to e.g. making the create function return a mini object instead), + and it allows the subclass maximum control: the subclass can decide + dynamically at runtime whether to return a list or a single buffer + (which would be messier if we added a create_list virtual method). + https://bugzilla.gnome.org/show_bug.cgi?id=750241 + +2017-08-31 01:18:28 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbasesrc.c: + basesrc: minor code readability improvement + +2017-12-07 12:05:23 +0000 Tim-Philipp Müller + + * gst/gstbus.c: + * gst/gstevent.c: + * gst/gsttracer.c: + * gst/gsttracerutils.h: + * gst/gstvalue.h: + docs: Fix a few gtk-doc warnings + Broken links mostly. + +2017-12-06 20:58:42 +0000 Tim-Philipp Müller + + * tests/check/libs/aggregator.c: + tests: aggregator: fix caps leak in unit test + +2017-12-06 17:07:29 +0100 Edward Hervey + + * gst/gstpad.c: + gstpad: Handle GST_PAD_PROBE_HANDLED on sticky event push + When actually pushing an event, if we get GST_FLOW_CUSTOM_SUCCESS_1 + (which is the conversion of GST_PAD_PROBE_HANDLED return value), + don't consider the stick event push as ignored, but as handled + +2017-12-06 13:40:46 +0200 Sebastian Dröge + + * gst/gstevent.c: + * gst/gstmessage.c: + * gst/gstquery.c: + event/query/message: Annotate get_structure() return value as nullable + +2017-12-06 13:36:30 +0200 Sebastian Dröge + + * gst/gstquery.c: + query: Add an empty structure in writable_structure() if there is none yet + This is consistent with how it works for GstEvent already. + +2017-12-05 18:21:00 +0100 Edward Hervey + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + * gst/gstpromise.c: + * gst/gststreamcollection.h: + * gst/gststreams.h: + docs: Misc addition/fixes + And also add the "Since" API sections for 1.12 and 1.14 + +2017-12-05 18:20:34 +0100 Edward Hervey + + * docs/gst/gstreamer-sections.txt: + * gst/gstutils.c: + * gst/gstutils.h: + docs: Add documentation for GST_SEQNUM_INVALID + And link to it + +2017-12-05 17:28:55 +0100 Edward Hervey + + * docs/gst/gstreamer-sections.txt: + * gst/gstutils.c: + * gst/gstutils.h: + utils: Never return a group_id of 0, add GST_GROUP_ID_INVALID + Various plugins use special values (0 or G_MAXUINT32) as an + invalid/unset group_id, but nothing guarantees a groupid won't have + that value. + Instead define a value which group_id will never have and make + gst_group_id_next() always return a value different from that. + API: GST_GROUP_ID_INVALID + +2017-12-05 16:42:57 +0000 Tim-Philipp Müller + + * libs/gst/check/gstharness.c: + harness: make bindings use the GBytes variant for _take_all_data() + +2016-11-23 13:12:36 +0100 Havard Graff + + * libs/gst/check/gstharness.c: + harness: use new take_all_data() function in _dump_to_file(). + +2017-12-05 15:28:43 +0000 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/check/Makefile.am: + * libs/gst/check/gstharness.c: + * libs/gst/check/gstharness.h: + * tests/check/libs/gstharness.c: + harness: add gst_harness_take_all_data() + _take_all_data_as_{bytes,buffer}() + Convenience function to just grab all pending data + from the harness, e.g. if we just want to check if + it matches what we expect and we don't care about + the chunking or buffer metadata. + Based on patch by: Havard Graff + +2017-12-05 15:16:36 +0000 Tim-Philipp Müller + + * gst/gstbuffer.c: + buffer: document that _extract_dup() will return NULL for 0-sized buf + And make it explicit, and don't call _extract() on NULL data buffer. + +2017-12-05 12:27:18 +0530 Nirbheek Chauhan + + * tests/check/meson.build: + meson: Use array syntax instead of .get() in tests + +2017-11-24 02:39:43 +0530 Nirbheek Chauhan + + * gst/parse/meson.build: + meson: Use new find_program fallback syntax + We use this syntax in libs/gst/helpers/meson.build already. + +2017-12-04 18:08:39 +0200 Sebastian Dröge + + * gst/gstelement.c: + gst: gst_element_remove_pad() is transfer none for the pad + While the refcount of the pad is decreased, it's the refcount that is + owned by the parent (i.e. the element) and not the one passed in by the + caller. + Fixes a memory leak in bindings. + +2017-12-04 11:24:47 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: add finish_buffer() vfunc + So subclasses can override the finish behaviour + and/or decorate or modify buffers before they + get pushed out. + https://bugzilla.gnome.org/show_bug.cgi?id=760981 + +2017-12-04 12:29:05 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + aggregator: disable tag merging and forwarding for now + Subclasses should handle this for now. + +2017-11-06 20:23:12 +0100 Jan Alexander Steffens (heftig) + + * gst/gstdevicemonitor.c: + devicemonitor: Avoid maybe-uninitialized compiler warning + On Arch Linux x86_64, gcc 7.2.0-3, -Og -g3: + gstdevicemonitor.c: In function ‘bus_sync_message’: + gstdevicemonitor.c:276:8: error: ‘matches’ may be used uninitialized in this function [-Werror=maybe-uninitialized] + This commit also simplifies the code a bit. + https://bugzilla.gnome.org/show_bug.cgi?id=789983 + +2017-12-03 14:48:22 +0200 Sebastian Dröge + + * gst/gstdebugutils.c: + * gst/gstplugin.c: + * gst/gstregistry.c: + gst: Annotate various strings as type filename if they represent a path/filename + +2017-12-02 15:44:48 +0000 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-docs.sgml: + * docs/libs/gstreamer-libs-sections.txt: + * docs/libs/gstreamer-libs.types: + * libs/gst/base/gstaggregator.c: + aggregator: hook up to docs + +2017-12-02 15:24:22 +0000 Tim-Philipp Müller + + * libs/gst/base/Makefile.am: + * libs/gst/base/base.h: + * libs/gst/base/gstaggregator.h: + * libs/gst/base/meson.build: + * tests/check/Makefile.am: + * tests/check/libs/.gitignore: + * tests/check/meson.build: + * win32/common/libgstbase.def: + aggregator: hook up to build system + https://bugzilla.gnome.org/show_bug.cgi?id=739010 + +2017-12-02 15:12:25 +0000 Tim-Philipp Müller + + Move GstAggregator from -bad to core + Merge branch 'aggregator-move' + https://bugzilla.gnome.org/show_bug.cgi?id=739010 + +2017-11-06 21:07:51 +0100 Mathieu Duponchelle + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: Remove klass->sinkpads_type + This posed problems for the python bindings (and possibly others). + Instead, subclasses now use add_pad_template_with_gtype. + https://bugzilla.gnome.org/show_bug.cgi?id=789986 + +2017-11-02 18:32:55 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + aggregator: add doc blurb for gst_aggregator_pad_is_eos() + +2017-11-02 16:05:12 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.h: + aggregator: also remove now-unused PadForeachFunc declaration + https://bugzilla.gnome.org/show_bug.cgi?id=785679 + +2017-08-02 12:08:26 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: Remove pad iterator function + Use new gst_element_foreach_sink_pad() from core instead. + https://bugzilla.gnome.org/show_bug.cgi?id=785679 + +2017-11-02 12:46:26 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + aggregator: use new gst_element_foreach_sink_pad() + Instead of gst_aggregator_iterate_sinkpads() which will + soon be removed. + https://bugzilla.gnome.org/show_bug.cgi?id=785679 + +2017-11-01 15:18:08 +0100 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: add more comments + +2017-10-23 11:52:38 +0200 Stefan Sauer + + * tests/check/libs/aggregator.c: + tests: comment and logging cleanups for audiomixer and aggregator + Remove some references to 'collectpads'. Logs pads through the object variants. + Add some more comments. Remove a left over comment. + +2017-10-22 19:43:17 +0200 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: fix type for latency property (int64 -> GStClockTime) + The value is used as GstClockTiem in the code. Adapt the hack^H^H^H^Hcode + in live-adder. + +2017-07-13 19:03:19 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Don't take flush lock from output thread + Instead just take it in the chain function. + https://bugzilla.gnome.org/show_bug.cgi?id=784911 + +2017-07-13 18:38:34 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Don't block if adding to the tail of the queue + If we're adding to the tail of the queue, it's because we're converting + a gap event, so don't block there it means we're calling from the output + thread. + https://bugzilla.gnome.org/show_bug.cgi?id=784911 + +2017-10-17 08:03:02 +0200 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: review code related to time level + Add a comment for when the state matters. Use a local var for priv in + update_time_level() to improve readability. Move the our_latency local + var below the query results checks. + +2017-10-17 07:51:51 +0200 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: init latency values with 0 instead of FALSE + +2017-10-15 20:46:09 +0200 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: code cleanup for event and query func + Only look up klass for non serialized events/queries. For events remove + superfluous assignment for the return value in the flushing case. + +2017-10-15 17:46:45 +0200 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: simplify pad_event_func for FLUSH_STOP events + We want to skip serialization for FLUSH_STOP events (apparently). We can + simplify the code to add it to the top-level conditions. There was nothing + done in the first code path if the event was FLUSH_STOP. + +2017-10-15 16:57:13 +0200 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: drop special casing for eos + Just queue it like any other serialized event. This way we don't need to + check if there still are buffers in the queue. + Validated with the tests and gst-launch-1.0 pipelines. + +2017-10-15 16:51:21 +0200 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: add a doc-blob for the event_func + +2017-10-15 16:48:21 +0200 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: rename a local variable + The variable tracks wheter the queue is not empty, but num_buffers==0. That + means we have events or queries to process. Rename accordingly. + +2017-10-15 12:17:42 +0200 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: remove commented code + The SEGMENT_DONE event does not require any special treatment. This is + commented out in 6efc106a67. + +2017-10-15 12:14:28 +0200 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: move the comment for the locks to the lock macros + Looks like some code was inserted afterwards. + +2017-10-15 10:44:44 +0200 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: improve section docs + Mention how data ends up in the queues. Document the relation of the pad + functions and the class vmethods to get events and queries. + +2017-10-14 18:18:44 +0200 Stefan Sauer + + * tests/check/libs/aggregator.c: + aggregator: add two more tests for a sequence of data + This verifies that we handle events and queries at the head of the queue and + then buffers. + +2017-10-14 13:26:02 +0200 Stefan Sauer + + * tests/check/libs/aggregator.c: + aggregator: refactor the test helper + Make the test helpers use a queue. This lets us also test sequences of events, + queries and data. + +2017-10-14 12:08:19 +0200 Stefan Sauer + + * tests/check/libs/aggregator.c: + aggregator: test cleanup + Remove gst_init() from a few tests. Use _OBJECT variants in logging. Remove + arbitrary extra blank lines. Make push_event() more like push_buffer() - set + the event to NULL and add cleanup to _chain_data_clear(). + +2017-10-03 12:36:10 +0200 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: cleanup event forwarding + Don't copy the whole event struct. Set the input params when we call the + forwarding helper. Initialize the internal fields and return values in the + helper. + +2017-10-03 12:08:42 +0200 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: simplify src_event + Avoid extra ref/unref, we have a ref and do_seek unrefs. Just return the result + as we have. This lets us remove the local var plus the label. + +2017-09-17 12:37:03 -0700 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: register func for do_events_and_queries + This fixes logging the func ptr from _iterate_sinkpads(). + +2017-09-17 12:30:37 -0700 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: only set clipped_buffer to NULL if needed + +2017-09-17 12:25:37 -0700 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: rename check_events + This function also handles queries. Update the code to loop until all events and + queuries are handled. + +2017-09-17 12:24:54 -0700 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: add a few more comments to PadPrivate struct + +2017-09-17 11:39:12 -0700 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: rename buffers field to data + The queue stores buffers, events and queries. + +2017-09-17 10:18:56 -0700 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: documentaion fixes + Fix typos and remove params docs, where the param was moved. + +2017-09-05 14:26:52 +0200 Edward Hervey + + * tests/check/libs/aggregator.c: + check: Fix usage of dual probes + Using two (or more) probes on the same pad where one of the probe + returns HANDLED or DROP is tricky since the other probes might + not be called. + Instead use regular probes and a proper pad (the sinkpad already existed, + it only required to be activated and have a dummy chain function for + the events/buffers to be received/handled properly) + +2017-07-30 12:17:57 +0200 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: log all events + We already log a few events explicitly, just log them all with more detail. + +2017-07-29 16:54:38 +0100 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.h: + aggregator: fix header formatting + +2017-07-24 18:38:57 +0300 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Remove the GAP event from the queue before queueing up the GAP buffer + Otherwise check_events() will not remove the GAP event (as the queue + tail is not the event anymore but the GAP buffer), then the GAP buffer + is handled, then the GAP event is handled again, ... forever. + +2017-07-18 00:30:51 +0100 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.h: + aggregator: mark symbols explicitly for export with GST_EXPORT + +2017-07-13 22:00:58 +0200 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: remove duplicated code fragment + This code already runs above when (event || query). + +2017-07-13 21:55:55 +0200 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: code cleanups + Fix comment typos, some copy'n'paste in logging. Add more doc comments. + +2017-04-13 22:11:55 +0200 Mathieu Duponchelle + + * libs/gst/base/gstaggregator.c: + aggregator: Invalidate pad's tail position ... + when dequeuing a segment event. + https://bugzilla.gnome.org/show_bug.cgi?id=784593 + +2017-07-01 20:23:25 +0200 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: fix "'aggclass' may be used uninitialized in this function" + +2017-05-23 00:53:57 +0200 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Process serialized queries through the queue + This ensures that they really get processed in order with + buffers. Just waiting for the queue to be empty is sometimes not + enough as the buffers are dropped from the pad before the result is + pushed to the next element, sometimes resulting in surprising + re-ordering. + +2017-05-23 00:53:23 +0200 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Set flow to FLUSHING on pad stop + Fixes a rare race where the pad is being stopped while doing a query. + +2016-11-18 14:44:16 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Request pad templates which are not request pad + https://bugzilla.gnome.org/show_bug.cgi?id=782920 + +2016-11-18 14:41:54 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Don't restrict sink pad names + Sink pads could have other names than sink_%u + https://bugzilla.gnome.org/show_bug.cgi?id=782920 + +2017-05-21 15:19:17 +0200 Olivier Crête + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: Implement propose allocation + https://bugzilla.gnome.org/show_bug.cgi?id=782918 + +2017-05-21 14:34:13 +0200 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Check for the result of caps events + https://bugzilla.gnome.org/show_bug.cgi?id=782918 + +2017-05-21 14:28:00 +0200 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Caps event always goes to the aggregate thread + So no need to check it here. + https://bugzilla.gnome.org/show_bug.cgi?id=782918 + +2017-05-20 16:58:54 +0200 Olivier Crête + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: Add downstream allocation query + https://bugzilla.gnome.org/show_bug.cgi?id=746529 + +2017-05-20 15:56:16 +0200 Olivier Crête + + * libs/gst/base/gstaggregator.h: + aggregator: Remove unused GST_FLOW_NOT_HANDLED + +2017-05-20 14:24:57 +0200 Matthew Waters + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: add simple support for caps handling + Modelled off the videoaggregator caps handling as that seems the most + mature aggregtor-using implementation that has caps handling there is. + https://bugzilla.gnome.org/show_bug.cgi?id=776931 + +2017-05-20 13:10:53 +0200 Nicolas Dufresne + + * libs/gst/base/gstaggregator.c: + aggregator: Reset upstream latency on first buffer + In the case an aggregator is created and pads are requested but only + linked later, we end up never updating the upstream latency. + This was because latency queries on pads that are not linked succeed, + so we never did a new query once a live source has been linked, so the + thread was never started. + https://bugzilla.gnome.org/show_bug.cgi?id=757548 + +2016-05-14 15:52:37 +0200 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Always handle sync'ed events on output thread + Having all synchronized events always be handled on the output + thread should make synchronization easier. + https://bugzilla.gnome.org/show_bug.cgi?id=781673 + +2016-07-06 16:39:17 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: Delay clipping to output thread + This is required because the synchronized events like caps or segments + may only be processed on the output thread. + https://bugzilla.gnome.org/show_bug.cgi?id=781673 + +2016-07-07 16:13:57 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Make pad eos as soon as all buffers are processed, dont way for events + https://bugzilla.gnome.org/show_bug.cgi?id=781673 + +2016-07-07 11:47:40 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Only count buffers when declaring queue full + https://bugzilla.gnome.org/show_bug.cgi?id=781673 + +2016-07-06 16:41:44 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: Simplify clip function + The return value was ignored anyway + https://bugzilla.gnome.org/show_bug.cgi?id=781673 + +2016-05-15 16:04:58 +0300 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Only declare first buffer on actual buffer + The function needs to be unlocked if any data is received, but only + end the first buffer processing on an actual buffer, synchronized events + don't matter on the first buffer processing. + https://bugzilla.gnome.org/show_bug.cgi?id=781673 + +2017-05-09 20:20:07 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Set initial position on first buffer + Set the initial position on the first buffer, otherwise the queue + will grow without limits before the output thread is started. + https://bugzilla.gnome.org/show_bug.cgi?id=781673 + +2017-05-09 20:06:29 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Reset the pad's first buffer flag with the rest + There is not reason to have separate code to reset this one. + https://bugzilla.gnome.org/show_bug.cgi?id=781673 + +2017-05-09 20:05:55 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Reset pad on init + Factor out the pad reset code from the flushing and use it on init as well + https://bugzilla.gnome.org/show_bug.cgi?id=781673 + +2017-05-09 20:13:58 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Fix indentation + https://bugzilla.gnome.org/show_bug.cgi?id=781673 + +2017-03-08 15:01:13 -0300 Thibault Saunier + + * libs/gst/base/gstaggregator.c: + docs: Port all docstring to gtk-doc markdown + +2017-04-12 12:06:52 -0300 Thibault Saunier + + * libs/gst/base/gstaggregator.h: + aggregator: Make instance var name match between .c and .h + Making GI happy + +2017-04-07 10:19:43 +0100 Vincent Penquerc'h + + * libs/gst/base/gstaggregator.c: + gstaggregator: fix event use after free + https://bugzilla.gnome.org/show_bug.cgi?id=781017 + +2016-09-06 16:05:53 -0300 Thibault Saunier + + * libs/gst/base/gstaggregator.c: + aggregator: Use the event_full function for GstAggregatorPads + Allowing us to tell GstPad why we are failing an event, which might + be because we are 'flushing' even if the sinkpad is not in flush state + at that point. + +2016-05-25 13:38:47 -0400 Nicolas Dufresne + + * libs/gst/base/gstaggregator.c: + Revert "aggregator: Start the task when linked" + This reverts commit 302580c3815136d29479c3a8cae611d6e2ff3709. + +2016-04-13 16:30:28 -0400 Nicolas Dufresne + + * libs/gst/base/gstaggregator.c: + aggregator: Start the task when linked + Until now we would start the task when the pad is activated. Part of the + activiation concist of testing if the pipeline is live or not. + Unfortunatly, this is often too soon, as it's likely that the pad get + activated before it is fully linked in dynamic pipeline. + Instead, start the task when the first serialized event arrive. This is + a safe moment as we know that the upstream chain is complete and just + like the pad activation, the pads are locked, hence cannot change. + https://bugzilla.gnome.org/show_bug.cgi?id=757548 + +2016-04-22 10:15:39 -0400 Nicolas Dufresne + + * libs/gst/base/gstaggregator.c: + aggregator: Check all pads for data when live + When live, we still need to inspect all pads queue in order to determin + if we have received the first buffer or not. + https://bugzilla.gnome.org/show_bug.cgi?id=765431 + +2016-04-15 16:51:17 -0400 Nicolas Dufresne + + * libs/gst/base/gstaggregator.c: + aggregator: Fix locking when using the clock + This fixes a race where we check if there is a clock, then it get + removed and we endup calling gst_clock_new_single_shot_id() with a NULL + pointer instead of a valid clock and also calling gst_object_unref() + with a NULL pointer later. + https://bugzilla.gnome.org/show_bug.cgi?id=757548 + +2016-04-03 17:56:06 +0200 Aurélien Zanelli + + * libs/gst/base/gstaggregator.c: + aggregator: remove duplicated test of flow_return in pad_chain_internal + https://bugzilla.gnome.org/show_bug.cgi?id=764549 + +2016-03-28 13:52:07 +0300 Sebastian Dröge + + * tests/check/libs/aggregator.c: + aggregator: Fix leak in unit test + GST_PAD_PROBE_HANDLED means that we should've unreffed the probe data, + it was handled by us in one way or another. + +2016-03-27 19:06:50 +0530 Nirbheek Chauhan + + * libs/gst/base/gstaggregator.c: + aggregator: Fix strcmp test for sink template + +2016-03-27 18:41:30 +0530 Nirbheek Chauhan + + * libs/gst/base/gstaggregator.c: + aggregator: Don't try to be too smart while allocating pad names + Previously, while allocating the pad number for a new pad, aggregator was + maintaining an interesting relationship between the pad count and the pad + number. + If you requested a sink pad called "sink_6", padcount (which is badly named and + actually means number-of-pads-minus-one) would be set to 6. Which means that if + you then requested a sink pad called "sink_0", it would be assigned the name + "sink_6" again, which fails the non-uniqueness test inside gstelement.c. + This can be fixed by instead setting padcount to be 7 in that case, but this + breaks manual management of pad names by the application since it then becomes + impossible to request a pad called "sink_2". Instead, we fix this by always + directly using the requested name as the sink pad name. Uniqueness of the pad + name is tested separately inside gstreamer core. If no name is requested, we use + the next available pad number. + Note that this is important since the sinkpad numbering in aggregator is not + meaningless. Videoaggregator uses it to decide the Z-order of video frames. + +2016-03-04 15:50:26 +0900 Vineeth TM + + * tests/check/libs/aggregator.c: + bad: use new gst_element_class_add_static_pad_template() + https://bugzilla.gnome.org/show_bug.cgi?id=763081 + +2015-11-09 16:08:30 +0900 Hyunjun Ko + + * tests/check/libs/aggregator.c: + tests:aggregator: fix tc failure and correct check value + Failure by this commit 2dfa548f3645844082c3db65d96d87255701b3ad, which is + to append hooks instead of prepend. + Because of this change, aggretated_cb is not called and leads to failure. + And correct to check flush stop value instead of flush start value + https://bugzilla.gnome.org/show_bug.cgi?id=757801 + +2015-11-05 12:36:48 +0000 Luis de Bethencourt + + * libs/gst/base/gstaggregator.c: + aggregator: use GST_STIME_FORMAT for GstClockTimeDiff + No need to manually handle negative value of deadline, GST_STIME_FORMAT does + exactly this. + +2015-11-03 19:09:33 -0800 Stefan Sauer + + * libs/gst/base/gstaggregator.c: + aggregator: don't compare templ instance pointers + One can pass the PadTemplate from the element_class or the one from the factory. + While they have the same content, the addresses are different. + +2015-11-03 14:41:57 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Set to running in a single place + Only set to running when the thread is actually started. + +2015-11-03 14:37:26 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Document more locking + +2015-11-02 20:10:35 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Hold object lock while manipulating the segment + Make sure the object lock is held when aggregator->segment is + modified. + +2015-11-02 19:05:01 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Remove dead code + This code will never be called as max>=min in all cases. If the upstream + latency query returned min>max, the function already returned and all + values that are added to those have max>= min. + +2015-10-23 15:42:24 +0300 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: Add create_new_pad() vfunc to allow subclasses to override the default behaviour + Not all aggregator subclasses will have a single pad template called sink_%u + and might do something special depending on what the application requests. + https://bugzilla.gnome.org/show_bug.cgi?id=757018 + +2015-09-30 19:05:35 +0200 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Convert GST_ERROR_OBJECT() for seek events to GST_DEBUG_OBJECT() + +2015-09-30 19:03:05 +0200 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: For the start time selection, only set the segment position + segment.time and segment.start can stay the same, and were always the same + before anyway because of a mistake. + https://bugzilla.gnome.org/show_bug.cgi?id=755623 + +2015-08-31 16:12:40 +0300 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Don't forward QOS events to sinkpads that had no buffer yet + Otherwise they will receive a QOS event that has earliest_time=0 (because we + can't have negative timestamps), and consider their buffer as too late + https://bugzilla.gnome.org/show_bug.cgi?id=754356 + +2015-09-17 19:42:34 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Keep at least two buffers in the queue in live mode + When in live mode, the queue needs to hold the currently processed + buffer and one more at least. + https://bugzilla.gnome.org/show_bug.cgi?id=754851 + +2015-09-11 12:21:50 +0200 Sebastian Dröge + + * libs/gst/base/gstaggregator.h: + aggregator: Document that get_next_time() should return running time + https://bugzilla.gnome.org/show_bug.cgi?id=753196 + +2015-08-28 23:05:20 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Also ignore start-time on seek from gst_element_send_event() + https://bugzilla.gnome.org/show_bug.cgi?id=753806 + +2015-07-02 19:34:43 -0400 Olivier Crête + + * tests/check/libs/aggregator.c: + tests: Add test for seeking live pipelines + https://bugzilla.gnome.org/show_bug.cgi?id=745768 + +2015-07-02 19:19:33 -0400 Olivier Crête + + * tests/check/libs/aggregator.c: + tests: Make source live to re-enable aggregator timeout tests + The live mode is only enabled if one of the sources if live. + https://bugzilla.gnome.org/show_bug.cgi?id=745768 + +2015-03-06 19:50:08 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: Queue "latency" buffers at each sink pad. + In the case where you have a source giving the GstAggregator smaller + buffers than it uses, when it reaches a timeout, it will consume the + first buffer, then try to read another buffer for the pad. If the + previous element is not fast enough, it may get the next buffer even + though it may be queued just before. To prevent that race, the easiest + solution is to move the queue inside the GstAggregatorPad itself. It + also means that there is no need for strange code cause by increasing + the min latency without increasing the max latency proportionally. + This also means queuing the synchronized events and possibly acting + on them on the src task. + https://bugzilla.gnome.org/show_bug.cgi?id=745768 + +2015-07-29 20:07:09 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Default to "zero" start time selection mode as documented + +2015-07-29 20:06:11 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Ignore the "first" mode if the segment not a time segment + +2015-06-15 18:30:20 +0200 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Add property to select how to decide on a start time + Before aggregator based elements always started at running time 0, + now it's possible to select the first input buffer running time or + explicitly set a start-time value. + https://bugzilla.gnome.org/show_bug.cgi?id=749966 + +2015-07-28 21:15:43 +0300 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Query the peer latency again on the next opportunity after a pad was added or removed + Adding a pad will add a new upstream that might have a bigger minimum latency, + so we might have to wait longer. Or it might be the first live upstream, in + which case we will have to start deadline based aggregation. + Removing a pad will remove a new upstream that might have had the biggest + latency, so we can now stop waiting a bit earlier. Or it might be the last + live upstream, in which case we can stop deadline based aggregation. + +2015-05-06 13:07:52 -0300 Thiago Santos + + * libs/gst/base/gstaggregator.h: + aggregator: add a convenience macro to get the source pad + Easier than casting or acessing the parent everywhere + +2015-06-01 18:50:14 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Document that the latency is in ns + +2015-05-28 00:59:39 +1000 Jan Schmidt + + * libs/gst/base/gstaggregator.c: + aggregator: Push EOS on error return. + Before shutting down the srcpad task due to a + downstream error, push an EOS to give downstream + a chance to shut down somewhat cleanly. + +2015-03-29 17:53:23 -0300 Reynaldo H. Verdejo Pinochet + + * libs/gst/base/gstaggregator.c: + aggregator: document gap handling behavior + https://bugzilla.gnome.org/show_bug.cgi?id=746249 + +2015-03-27 19:36:42 -0300 Reynaldo H. Verdejo Pinochet + + * libs/gst/base/gstaggregator.c: + aggregator: drop stale white space at warning + +2015-03-27 19:28:05 -0300 Reynaldo H. Verdejo Pinochet + + * tests/check/libs/aggregator.c: + aggregator: fix typo in test suite + +2015-03-27 18:32:27 -0300 Reynaldo H. Verdejo Pinochet + + * tests/check/libs/aggregator.c: + aggregator: add gap event handling unit test + https://bugzilla.gnome.org/show_bug.cgi?id=746249 + +2015-03-17 22:13:06 -0300 Reynaldo H. Verdejo Pinochet + + * libs/gst/base/gstaggregator.c: + aggregator: implement gap handling + https://bugzilla.gnome.org/show_bug.cgi?id=746249 + +2015-04-01 22:10:11 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Unify downstream flow return and flushing + Also means that having a non-OK downstream flow return + wakes up the chain functions. + https://bugzilla.gnome.org/show_bug.cgi?id=747220 + +2015-04-01 21:45:01 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Flushing is always in pad lock, no need to atomics + The usage of atomics was always doubtful as it was used to release a + GCond + https://bugzilla.gnome.org/show_bug.cgi?id=747220 + +2015-04-01 21:38:11 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Reset pending_eos on pad flush + https://bugzilla.gnome.org/show_bug.cgi?id=747220 + +2015-04-01 21:37:25 -0400 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Unify code to set a pad flushing + https://bugzilla.gnome.org/show_bug.cgi?id=747220 + +2015-03-06 21:12:52 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: Query latency on first incoming buffer. + And keep on querying upstream until we get a reply. + Also, the _get_latency_unlocked() method required being calld + with a private lock, so removed the _unlocked() variant from the API. + And it now returns GST_CLOCK_TIME_NONE when the element is not live as + we think that 0 upstream latency is possible. + https://bugzilla.gnome.org/show_bug.cgi?id=745768 + +2015-03-06 21:12:13 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Be more aggressive with invalid replies to our latency query + https://bugzilla.gnome.org/show_bug.cgi?id=745768 + +2015-03-08 02:04:11 +1100 Matthew Waters + + * libs/gst/base/gstaggregator.h: + aggregatory: don't redefine GST_FLOW_CUSTOM_SUCCESS + +2015-02-27 00:26:00 +0530 Arun Raghavan + + * libs/gst/base/gstaggregator.c: + aggregator: Use standard upstream latency querying logic + The same functionality is duplicated in the default latency querying + now. + +2015-02-19 21:21:56 -0500 Olivier Crete + + * libs/gst/base/gstaggregator.c: + aggregator: Use src_lock to protect latency related members + One has to use the src_lock anyway to protect the min/max/live so they + can be notified atomically to the src thread to wake it up on changes, + such as property changes. So no point in having a second lock. + Also, the object lock was being held across a call to + GST_ELEMENT_WARNING, guaranteeing a deadlock. + +2015-02-19 18:53:32 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Remove untrue comment + +2015-02-19 18:30:35 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Don't try to push tags while flush seeking + The downstream segment could have been flushed already, so + need to re-send the segment event before re-sending the tags. + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-02-19 11:04:28 +0200 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Use the sinkpads iterator directly to query upstream latencies + While gst_aggregator_iterate_sinkpads() makes sure that every pad is only + visited once, even when the iterator has to resync, this is not all we have + to do for querying the latency. When the iterator resyncs we actually have + to query all pads for the latency again and forget our previous results. It + might have happened that a pad was removed, which influenced the result of + the latency query. + +2015-02-19 10:57:09 +0200 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Move gst_aggregator_get_latency_unlocked() a bit + It was between another function and its helper function before, which was + confusing when reading the code as it had nothing to do with the other + functions. + +2015-02-19 01:28:06 +0200 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Fail the latency query if one of the upstream queries fails + +2015-02-18 15:53:53 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Document locking order + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-02-18 15:11:14 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Rename confusinly named SRC_STREAM_LOCK macros to SRC_LOCK + This will match the name of the lock itself. It is also not a stream + lock as it not recursive and not held while pushing. + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-02-18 15:06:01 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Rename confusingly named stream lock to flush lock + This lock is not what is commonly known as a "stream lock" in GStremer, + it's not recursive and it's taken from the non-serialized FLUSH_START event. + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-02-18 15:04:04 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Fix macro indendation + Changes no code + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-02-13 23:45:20 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + aggregator: drop GAP events until we handle them properly + +2015-02-13 15:53:19 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + * tests/check/libs/aggregator.c: + aggregator: use new gst_aggregator_pad_drop_buffer() + +2015-02-13 15:49:50 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: add gst_aggregator_pad_drop_buffer() + steal_buffer() + unref seems to be a wide-spread idiom + (which perhaps indicates that something is not quite + right with the way aggregator pad works currently). + +2015-02-12 13:32:39 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + aggregator: only post latency message if anything changed + Perhaps we should check for element state as well and + only post it if in PLAYING state. + +2015-02-11 14:16:21 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + Improve and fix LATENCY query handling + This now follows the design docs everywhere, especially the maximum latency + handling. + https://bugzilla.gnome.org/show_bug.cgi?id=744106 + +2015-02-10 10:49:16 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Pause srcpad task on flow errors + Otherwise we will call the task function over and over again until + upstream finally handled the flow return and shuts us down. + +2015-02-06 10:59:27 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Streamline latency calculations + Min latency can never be invalid, latency property can never be invalid + either. So no need to check for all these things in various places. + +2015-02-06 10:36:28 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: If upstream has no max latency but the subclass has, take the subclass max latency + +2015-02-06 10:33:59 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Fix min>max latency error check + We have to include the upstream latency, our own latency and the subclass + latency in the calculations. + FIXME: This is still not entirely correct + +2015-02-06 10:30:59 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Don't add the latency property to the max latency + It has no meaning for the max latency and is only used to increase the min + latency. + +2015-01-26 17:06:29 +0100 Thibault Saunier + + * libs/gst/base/gstaggregator.c: + aggregator: Cleanup locking around AggregatorPad flush related fields + And document the locking + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-01-26 13:11:05 +0100 Mathieu Duponchelle + + * libs/gst/base/gstaggregator.c: + aggregator: keep chain functions as dumb as possible. + + A pad chain function has no business checking other pads, + that's what the aggregate thread is for. + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-01-26 11:32:47 +0100 Thibault Saunier + + * libs/gst/base/gstaggregator.c: + aggregator: More fixes around locking when accessing protected private fields + In some more places we were accessing GstAggregator->segment + and GstAggregator->seqnum without holding the GST_OBJECT_LOCK + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-01-26 11:29:08 +0100 Thibault Saunier + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: Make the PAD_LOCK private + Instead of using the GST_OBJECT_LOCK we should have + a dedicated mutex for the pad as it is also associated + with the mutex on the EVENT_MUTEX on which we wait + in the _chain function of the pad. + The GstAggregatorPad.segment is still protected with the + GST_OBJECT_LOCK. + Remove the gst_aggregator_pad_peak_unlocked method as it does not make + sense anymore with a private lock. + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-01-26 11:25:54 +0100 Thibault Saunier + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + * tests/check/libs/aggregator.c: + aggregator: Hide GstAggregatorPad buffer and EOS fileds + And add a getter for the EOS. + The user should always use the various getters to access + those fields + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-01-21 18:41:43 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Document locking of GstAggregatorPrivate members + Most of them are protected by the object lock, specify + which ones use a different lock. + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-01-21 18:47:09 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.h: + aggregator: Document how the segment is protected + Document that it can only be accessed with the object lock. + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-01-21 19:44:57 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Protect all latency related members with the object lock + The locking was not consistent, now consistently use the object lock. + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-01-21 19:43:12 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: Document locking for gst_aggregator_get_latency_unlocked() + Renamed it to _unlocked() to make it clear. + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-01-21 19:35:25 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Protect the srcpad caps negotiation with the stream lock + Instead of adding another lock, use the srcpad stream lock, which is already + taken anyway to push out the new caps if needed. + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-01-21 19:33:18 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Protect the tags with the object lock + The tags related variables were sometimes protected, sometimes not and + sometimes atomic. Put them all under the object lock. + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-01-21 18:53:20 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Consistenly lock the flow_return state + Use the object's lock to protect it. + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-01-21 18:45:36 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Consistently lock some members + Some members sometimes used atomic access, sometimes where not locked at + all. Instead consistently use a mutex to protect them, also document + that. + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-01-14 14:38:09 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: Protect exported pad members with the pad's object lock + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-01-14 14:35:15 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: Replace event lock with pad's object lock + Reduce the number of locks simplify code, what is protects + is exposed, but the lock was not. + Also means adding an _unlocked version of gst_aggregator_pad_steal_buffer(). + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-01-09 22:01:00 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Protect data with the same mutex as GCond + Whenever a GCond is used, the safest paradigm is to protect + the variable which change is signalled by the GCond with the same + mutex that the GCond depends on. + https://bugzilla.gnome.org/show_bug.cgi?id=742684 + +2015-01-14 23:47:19 +0530 Nirbheek Chauhan + + * libs/gst/base/gstaggregator.c: + aggregator: Nitpick spacing/punctuation in debug logging + +2015-01-09 21:51:40 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Remove pointless atomic + It is only modified from the streaming thread + +2015-01-09 21:30:36 -0500 Olivier Crête + + * libs/gst/base/gstaggregator.c: + aggregator: Fix query leak + +2015-01-09 16:43:39 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Print jitter from clock waiting in the debug logs + +2015-01-04 17:15:37 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + aggregator: don't use iterator when setting flush pending on pads + +2015-01-04 16:57:05 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + aggregator: check if pads are ready more efficiently + No need to use an iterator for this which creates a temporary + structure every time and also involves taking and releasing the + object lock many times in the course of iterating. Not to mention + all that GList handling in gst_aggregator_iterate_sinkpads(). + +2015-01-04 12:59:19 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.h: + aggregator: name vfunc arguments consistently + +2015-01-01 15:46:00 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + aggregator: add g-i transfer and scope annotations + +2015-01-01 14:10:05 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + aggregator: register names of iterate_sinkpads functions with debug system + +2015-01-01 14:03:02 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + aggregator: reduce debug messages for taking/releasing logs to TRACE level + Don't spam debug log with this stuff. + +2014-12-31 18:16:21 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: move property member into private structure + Our locking (or lack thereof) while accessing this also + looks generally quite dodgy. + +2014-12-31 14:50:58 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + aggregator: remove empty dispose function + +2014-12-30 23:58:34 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: give private functions namespace prefix + Especially the GST_DEBUG_FUNCPTR ones. + +2014-12-31 12:35:06 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.h: + aggregator: fix up some docs comments in header + +2014-12-30 23:44:46 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: remove now-unused system clock member + +2014-12-30 19:22:01 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: make GstAggregatorPadForeachFunc take an GstAggregatorPad + +2014-12-30 17:50:17 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + aggregator: bring start/stop vfunc semantics in line with other baseclasses + Sub-class should not have to chain up to GstAggregator's start/stop + vfuncs, same as in GstBaseSrc, GstBaseSink, GstBaseTransform etc. + +2014-12-28 18:26:49 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + aggregator: remove pointless GST_DEBUG_FUNCPTR + Not useful for GObject vfuncs. + +2014-12-28 18:24:21 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + aggregator: remove duplicate pad parent_class variable + G_DEFINE_TYPE already provides one, just need to use it. + +2014-12-28 18:22:57 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.h: + aggregator: add _CAST() variants for cast macros + +2014-12-28 01:13:33 +0000 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.h: + aggregator: make padding larger + Esp. the class structures, can't have enough + spare space for virtual functions. + +2014-12-27 16:15:41 +0530 Nirbheek Chauhan + + * libs/gst/base/gstaggregator.c: + aggregator: Log to the pad instead of the element + More correct way of doing the same thing as before + +2014-12-27 09:49:43 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Make sure that the minimum latencies are never GST_CLOCK_TIME_NONE + +2014-12-27 09:42:57 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Wait for the minimum latency, not the maximum + The minimum latency is the latency we have to wait at least + to guarantee that all upstreams have produced data. The maximum + latency has no meaning like that and shouldn't be used for waiting. + +2014-12-27 04:21:36 +0530 Nirbheek Chauhan + + * libs/gst/base/gstaggregator.c: + aggregator: Clamp the min latency at the max if it's greater + +2014-12-27 04:21:26 +0530 Nirbheek Chauhan + + * libs/gst/base/gstaggregator.c: + aggregator: Print the sinkpad name while logging latency queries + Very useful while debugging. + +2014-12-27 04:19:52 +0530 Nirbheek Chauhan + + * libs/gst/base/gstaggregator.c: + aggregator: Take the stream lock when iterating sink pads + When iterating sink pads to collect some data, we should take the stream lock so + we don't get stale data and possibly deadlock because of that. This fixes + a definitive deadlock in _wait_and_check() that manifests with high max + latencies in a live pipeline, and fixes other possible race conditions. + +2014-12-23 11:45:05 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Don't leak flush-start events + +2014-12-23 10:24:27 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Also change the default latency to 0, not just the minimum + +2014-12-23 09:52:20 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Fix docs and default value of the latency property + +2014-12-22 22:19:52 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Also include the subclass latency in the result of the latency query + +2014-12-22 15:26:37 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Post a latency message if the value of the latency property changes + +2014-12-22 15:03:59 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Wake up the src thread after handling a latency query + Due to changed latencies or changed live-ness we might have to + adjust if we wait on a deadline at all and how long. + +2014-12-22 15:00:36 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Don't count the number of times we need to wake up but instead check all conditions for waiting again + This simplifies the code and also makes sure that we don't forget to check all + conditions for waiting. + Also fix a potential deadlock caused by not checking if we're actually still + running before starting to wait. + +2014-12-17 19:51:32 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: Add function to allow subclasses to set their own latency + For audiomixer this is one blocksize, for videoaggregator this should + be the duration of one output frame. + +2014-12-17 17:54:09 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + * tests/check/libs/aggregator.c: + aggregator: Add a timeout parameter to ::aggregate() + When this is TRUE, we really have to produce output. This happens + in live mixing mode when we have to output something for the current + time, no matter if we have enough input or not. + +2014-12-16 19:49:35 +0000 Tim-Philipp Müller + + * tests/check/libs/aggregator.c: + tests: fix aggregator unit test after property renaming + +2014-12-16 17:33:01 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Some minor cleanup + +2014-12-05 18:19:54 +1100 Matthew Waters + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: make the src pad task drive the pipeline for live pipelines + This removes the uses of GAsyncQueue and replaces it with explicit + GMutex, GCond and wakeup count which is used for the non-live case. + For live pipelines, the aggregator waits on the clock until either + data arrives on all sink pads or the expected output buffer time + arrives plus the timeout/latency at which time, the subclass + produces a buffer. + https://bugzilla.gnome.org/show_bug.cgi?id=741146 + +2014-12-14 01:29:26 +0100 Sebastian Rasmussen + + * tests/check/libs/aggregator.c: + tests/aggregator: Use correct type when setting property + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=741495 + +2014-11-19 17:17:06 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Unblock events/queries immediately if the pad is flushing + https://bugzilla.gnome.org/show_bug.cgi?id=740376 + +2014-11-19 17:15:02 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Drop serialized events/queries if the pad is flushing + https://bugzilla.gnome.org/show_bug.cgi?id=740376 + +2014-11-19 17:03:41 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Block serialized events/queries until the pad has consumed all buffers + Otherwise the caps of the pad might change while the subclass still works with + a buffer of the old caps, assuming the the current pad caps apply to that + buffer. Which then leads to crashes and other nice effects. + https://bugzilla.gnome.org/show_bug.cgi?id=740376 + +2014-11-19 17:03:33 +0100 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Fix typo in debug output + +2014-11-17 14:00:10 +1100 Matthew Waters + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: add _get_latency() for subclass usage + API: gst_aggregator_get_latency + https://bugzilla.gnome.org/show_bug.cgi?id=739996 + +2014-10-20 18:25:08 +0530 Vineeth T M + + * libs/gst/base/gstaggregator.c: + audiomixer: critical error for blocksize, timeout min/max values + Audiomixer blocksize, cant be 0, hence adjusting the minimum value to 1 + timeout value of aggregator is defined with MAX of MAXINT64, + but it cannot cross G_MAXLONG * GST_SECOND - 1 + Hence changed the max value of the same + https://bugzilla.gnome.org/show_bug.cgi?id=738845 + +2014-10-07 16:57:27 +1100 Matthew Waters + + * tests/check/libs/aggregator.c: + tests/aggregator: add timeout handling test for the timeout parameter + +2014-10-06 21:46:24 +1100 Matthew Waters + + * libs/gst/base/gstaggregator.c: + aggregator: add latency query handling + +2014-10-06 18:23:03 +1100 Matthew Waters + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + aggregator: add a timeout property determining buffer wait time + Determines the amount of time that a pad will wait for a buffer before + being marked unresponsive. + Network sources may fail to produce buffers for an extended period of time, + currently causing the pipeline to stall possibly indefinitely, waiting for + these buffers to appear. + Subclasses should render unresponsive pads with either silence (audio), the + last (video) frame or what makes the most sense in the given context. + +2014-09-17 16:48:02 +0200 Jan Alexander Steffens (heftig) + + * libs/gst/base/gstaggregator.c: + aggregator: Replace GMainContext with GAsyncQueue (v2) + The previous implementation kept accumulating GSources, + slowing down the iteration and leaking memory. + Instead of trying to fix the main context flushing, replace + it with a GAsyncQueue which is simple to flush and has + less overhead. + https://bugzilla.gnome.org/show_bug.cgi?id=736782 + +2014-08-05 15:36:30 +0200 Mathieu Duponchelle + + * libs/gst/base/gstaggregator.c: + aggregator: Set seqnum only when segments are received. + +2014-08-02 18:25:01 +0200 Thibault Saunier + + * libs/gst/base/gstaggregator.c: + aggregator: Add a streaming lock so to secure flush start action + Without a lock that is taken in FLUSH_START we had a rare race where we + end up aggregating a buffer that was before the whole FLUSH_START/STOP + dance. That could lead to very wrong behaviour in subclasses. + +2014-07-18 13:58:55 +0200 Thibault Saunier + + * libs/gst/base/gstaggregator.c: + aggregator: Query seeking when a seek failed to see if it was expected + And do not worry if seeking failed on a stream that is not seekable + +2014-07-18 01:41:26 +0200 Mathieu Duponchelle + + * libs/gst/base/gstaggregator.c: + aggregator: set future seqnum before propagating the seek event. + So the seqnum is properly set for the following events. + +2014-07-08 16:16:55 +0200 Thibault Saunier + + * libs/gst/base/gstaggregator.c: + aggregator: Store segment when seeked in READY for later use + +2014-10-06 10:11:23 +0300 Sebastian Dröge + + * libs/gst/base/gstaggregator.c: + aggregator: Unref the taglist in GstAggregator::stop() + +2014-10-03 12:34:15 +0200 Thibault Saunier + + * libs/gst/base/gstaggregator.c: + aggregator: Take lock to ensure set_caps is not called concurently + Avoiding to be in an inconsistent state where we do not have + actual negotiate caps set as srccaps and leading to point where we + try to unref ->srccaps when they have already been set to NULL. + https://bugzilla.gnome.org/show_bug.cgi?id=735042 + +2014-08-11 23:38:40 +1000 Matthew Waters + + * libs/gst/base/gstaggregator.c: + aggregator: fix up doc comment for set_src_caps + It does not occur 'later' anymore + https://bugzilla.gnome.org/show_bug.cgi?id=732662 + +2014-08-07 19:54:36 +1000 Matthew Waters + + * libs/gst/base/gstaggregator.c: + videoaggregator: push the caps event as soon as we receive it + Along with the required mandatory dependent events. + Some elements need to perform an allocation query inside + ::negotiated_caps(). Without the caps event being sent prior, + downstream elements will be unable to answer and will return + an error. + https://bugzilla.gnome.org/show_bug.cgi?id=732662 + +2014-07-16 16:57:35 +0200 Mathieu Duponchelle + + * libs/gst/base/gstaggregator.c: + aggregator: Reset flow_return *after* stopping the srcpad task. + Otherwise it might be set in an already running aggregate function. + +2014-07-10 13:18:21 +0200 Thibault Saunier + + * libs/gst/base/gstaggregator.c: + aggregator: Flush sinkpads when stopping + All values are meaningless in that case, so we should make sure that + we clean everything + +2014-07-10 13:15:55 +0200 Thibault Saunier + + * libs/gst/base/gstaggregator.c: + aggregator: Do not forget to reset the flow return when stoping + Setting it to FLUSHING when the element is not started, and to OK + when it starts. + +2014-07-08 16:48:08 +0200 Thibault Saunier + + * libs/gst/base/gstaggregator.c: + aggregator: Handle event seqnum + +2014-07-06 16:17:06 +0100 Tim-Philipp Müller + + * libs/gst/base/gstaggregator.c: + aggregator: fix locking + We would unlock a mutex we never locked on SEGMENT + events. + +2014-06-30 12:22:07 +0200 Thibault Saunier + + * libs/gst/base/gstaggregator.c: + * tests/check/libs/aggregator.c: + aggregator: Avoid destroying sources we do not own + + Unref the maincontext in a new dispose function + + Make sure to remove all sources on dispose + https://bugzilla.gnome.org/show_bug.cgi?id=732445 + +2014-06-28 11:20:43 -0300 Thiago Santos + + * tests/check/libs/aggregator.c: + tests: aggregator: fix various leaks in the tests + +2014-06-28 09:34:05 -0300 Thiago Santos + + * libs/gst/base/gstaggregator.c: + aggregator: always store or unref the buffer on the _chain function + Otherwise it leaks, and it is very common to go to flushing when the + pipeline is stopping, leaking a buffer. + +2014-06-28 09:32:32 -0300 Thiago Santos + + * libs/gst/base/gstaggregator.c: + aggregator: always unref the buffer on _finish function + Otherwise the user doesn't know if it was unref'd or not + +2014-06-28 09:31:55 -0300 Thiago Santos + + * libs/gst/base/gstaggregator.c: + aggregator: add dispose/finalize functions + Add functions to be able to cleanup the mutex/cond and pending buffers + on the aggregator and on its pad + +2014-06-26 10:53:16 +1000 Matthew Waters + + * libs/gst/base/gstaggregator.c: + aggregator: plug a memory leak of the srccaps + +2014-06-21 16:51:01 +0200 Thibault Saunier + + * libs/gst/base/gstaggregator.h: + libs:base: Properly declare APIs as UNSTABLE + +2014-06-21 13:45:13 +0200 Thibault Saunier + + * libs/gst/base/gstaggregator.c: + aggregator: Fix requested pad name + +2014-05-22 19:44:37 +0200 Thibault Saunier + + * libs/gst/base/gstaggregator.c: + * libs/gst/base/gstaggregator.h: + * tests/check/libs/aggregator.c: + aggregator: Add new GstAggregator base class + This base class has been added to a newly created libgstbadbase library + Co-Authored by: Mathieu Duponchelle + https://bugzilla.gnome.org/show_bug.cgi?id=731917 + +2017-12-02 12:02:15 +0000 Tim-Philipp Müller + + * tests/check/gst/gstinfo.c: + tests: info: add test for post-gst_init() category registration perf + When registering categories after gst_init() we would re-check *all* + categories against the existing GST_DEBUG patterns again, whereas + it's enough to just check the new category. Moreover, we would parse + the GST_DEBUG pattern string again and re-add that to the existing + pattern list for every newly-registered debug category, and then + check that against all categories of course. This made registering + categories after gst_init() very very slow. + +2017-12-02 12:29:20 +0000 Tim-Philipp Müller + + * gst/gstinfo.c: + info: always check match patterns for new debug categories + Not only if a match pattern was set originally via GST_DEBUG. + Patterns might be set programmatically as well after all. + +2017-12-02 12:22:47 +0000 Tim-Philipp Müller + + * gst/gstinfo.c: + info: fix performance issue with registering categories after gst_init() + When registering a new debug category after gst_init(), simply check + the existing patterns against that new category. + No need to iterate over all categories and recheck them all against + the existing patterns. + Also, no need to re-parse the existing pattern string set via GST_DEBUG + and add the same set of match patterns all over again to the existing + list of match patterns every time we register a new debug category. + Combined with iterating all debug categories on a change this would + make adding debug categories after gst_init() very very very slow. + +2017-12-01 13:33:48 -0500 Nicolas Dufresne + + * gst/gstplugin.c: + plugin-scanner: Measure string length in bytes + g_strndup() wants a number of bytes to copy, so use strlen intead of + UTF-8 strlen function. + +2017-11-30 17:49:10 +0100 Michael Tretter + + * libs/gst/net/gstptpclock.c: + ptpclock: do not require a name to create a clock + The gst_ptp_clock_new() does not actually require a name. However, for + example the rtpjitterbuffer may create a clock without a name, fail, and + fall back to not using the PTP clock. + https://bugzilla.gnome.org/show_bug.cgi?id=791034 + +2017-11-28 23:37:47 +0000 Tim-Philipp Müller + + * tools/gst-inspect.c: + tools: gst-inspect: fix readable flag printing for pad properties + +2017-11-27 20:09:42 +1100 Matthew Waters + + * common: + Automatic update of common submodule + From 3f4aa96 to e8c7a71 + +2017-11-26 13:31:28 -0300 Thibault Saunier + + * gst/gstpreset.c: + Revert "preset: Do not save deprecated properties" + This reverts commit 81e10f61231ad56ca4aa07278993b87c6ec0f058. + A mistake lead to committing it twice in a weird way. + +2017-11-03 12:20:47 -0300 Thibault Saunier + + * gst/gstpreset.c: + preset: Do not save deprecated properties + It will g_warn upon deserialization and we should not use + those anyway. + https://bugzilla.gnome.org/show_bug.cgi?id=789871 + +2017-11-08 12:46:44 -0300 Thibault Saunier + + * gst/gsttaglist.c: + taglist: Avoid assertions when getting tag nick from unregister tag + With serialized GstDiscovererInfos we might end up trying to use + tags that have not been registered. + +2017-11-03 12:23:50 -0300 Thibault Saunier + + * gst/gstpreset.c: + preset: Do not save deprecated properties + It will g_warn upon desarialization and we should not use + those anyway. + https://bugzilla.gnome.org/show_bug.cgi?id=789871 + +2017-10-13 00:21:03 +0100 Tim-Philipp Müller + + * plugins/tracers/Makefile.am: + * plugins/tracers/gstlog.c: + tracers: log: no need to link to our internal printf implementation + The call to __gst_vasprintf() was removed in commit 1a3e218b8. + +2017-11-26 00:20:13 +0000 Tim-Philipp Müller + + * tools/gst-inspect.c: + tools: gst-inspect: don't print element flags whch are always 'none' + We print the interesting flags like clocking capabilities separately + later, this function just always prints 'none', so remove it. + +2017-11-25 23:43:56 +0000 Tim-Philipp Müller + + * gst/gstpadtemplate.c: + * tools/gst-inspect.c: + tools: gst-inspect: print pad properties where we know the subclass type + +2017-11-25 22:27:08 +0000 Tim-Philipp Müller + + * tools/gst-inspect.c: + tools: gst-inspect: refactor way indentation is done during printing + +2017-11-25 13:07:12 +0100 Edward Hervey + + * gst/gstinfo.c: + gstinfo: Use free instead of g_free + Because + +2017-11-25 12:44:11 +0100 Edward Hervey + + * gst/gstinfo.c: + gstinfo: Don't leak array of strings + The array provided by backtrace_symbols needs to be freed. + +2017-11-24 12:08:07 +0100 Edward Hervey + + * tests/check/gst/gstbuffer.c: + check/buffer: Remove usless memcmp with empty size + 1) checking nothing against nothing is pointless + 2) memcmp needs to be provided non-NULL arguments + +2017-11-24 12:05:26 +0100 Edward Hervey + + * gst/gstutils.c: + gstutils: Fix linear regression comparision + The check for dropping precision was wrong when sxx and syy were negative. + if they are negative then "G_MAXINT64 - val" would always overflow + The check was meant to use G_MININT64 (like in the loop contained just + after). + +2017-11-24 13:58:01 +1100 Matthew Waters + + * libs/gst/check/Makefile.am: + check: add missing harness function to symbol export list + Fixes in user code: + undefined reference to `gst_harness_add_element_sink_pad' + Also reorder harness function list to be strictly in alphabetical order and + double check the list with: + awk '{ if ($1 !~ /#define/) if ($2 ~ /gst_harness_/) { print $2 }; if ($3 ~ /gst_harness_/) { print $3} }' libs/gst/check/gstharness.h | sort + +2017-11-24 13:41:20 +0100 Tim-Philipp Müller + + * tests/check/elements/capsfilter.c: + * tests/check/elements/dataurisrc.c: + * tests/check/elements/fakesink.c: + * tests/check/elements/fakesrc.c: + * tests/check/elements/fdsrc.c: + * tests/check/elements/filesink.c: + * tests/check/elements/filesrc.c: + * tests/check/elements/identity.c: + * tests/check/elements/multiqueue.c: + * tests/check/elements/queue.c: + * tests/check/elements/queue2.c: + * tests/check/elements/selector.c: + * tests/check/elements/tee.c: + * tests/check/elements/valve.c: + * tests/check/generic/sinks.c: + * tests/check/generic/states.c: + * tests/check/gst/gst.c: + * tests/check/gst/gstabi.c: + * tests/check/gst/gstatomicqueue.c: + * tests/check/gst/gstbin.c: + * tests/check/gst/gstbufferlist.c: + * tests/check/gst/gstbufferpool.c: + * tests/check/gst/gstbus.c: + * tests/check/gst/gstcaps.c: + * tests/check/gst/gstcapsfeatures.c: + * tests/check/gst/gstchildproxy.c: + * tests/check/gst/gstclock.c: + * tests/check/gst/gstcontext.c: + * tests/check/gst/gstcontroller.c: + * tests/check/gst/gstcpp.cc: + * tests/check/gst/gstevent.c: + * tests/check/gst/gstghostpad.c: + * tests/check/gst/gstindex.c: + * tests/check/gst/gstinfo.c: + * tests/check/gst/gstiterator.c: + * tests/check/gst/gstmessage.c: + * tests/check/gst/gstminiobject.c: + * tests/check/gst/gstpad.c: + * tests/check/gst/gstparamspecs.c: + * tests/check/gst/gstplugin.c: + * tests/check/gst/gstpoll.c: + * tests/check/gst/gstpreset.c: + * tests/check/gst/gstprintf.c: + * tests/check/gst/gstpromise.c: + * tests/check/gst/gstprotection.c: + * tests/check/gst/gstquery.c: + * tests/check/gst/gstsegment.c: + * tests/check/gst/gststream.c: + * tests/check/gst/gststructure.c: + * tests/check/gst/gstsystemclock.c: + * tests/check/gst/gsttag.c: + * tests/check/gst/gsttagsetter.c: + * tests/check/gst/gsttask.c: + * tests/check/gst/gsttoc.c: + * tests/check/gst/gsttocsetter.c: + * tests/check/gst/gsttracerrecord.c: + * tests/check/gst/gsturi.c: + * tests/check/gst/gstvalue.c: + * tests/check/libs/adapter.c: + * tests/check/libs/gstharness.c: + * tests/check/libs/gstnetclientclock.c: + * tests/check/libs/gstnettimeprovider.c: + * tests/check/libs/gsttestclock.c: + tests: include config.h and don't include unix headers + In many cases the unistd.h includes weren't actually needed. + Preparation for making tests work on Windows with MSVC. + +2017-11-24 13:21:47 +0100 Tim-Philipp Müller + + * tests/check/libs/test_transform.c: + tests: add missing license header to test_transform.c + +2017-11-10 16:26:50 +0100 Mikhail Fludkov + + * configure.ac: + * gst/gsttracerutils.c: + * gst/gsttracerutils.h: + * plugins/Makefile.am: + gsttraceutils: actually disable tracing system hooks if configured + `./configure --disable-gst-tracer-hooks` didn't do anything, hooks were + always enabled regardless of the option. It works correctly in the + Meson build though. + +2017-10-26 12:09:07 +0200 Havard Graff + + * docs/gst/gstreamer-sections.txt: + * gst/gstutils.c: + * gst/gstutils.h: + * win32/common/libgstreamer.def: + utils: add gst_utils_dump_buffer() + Useful for debugging. + +2017-10-10 15:44:51 +0200 Håvard Graff + + * pkgconfig/meson.build: + meson.build: use join_paths() on prefix + So that "/" are correct on Windows and the paths in + the .pc files are like C:/some/where and not + C:\some\where. + +2017-11-24 09:49:27 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbasetransform.c: + * libs/gst/net/gstptpclock.c: + libs: fix indentation + +2017-08-18 14:30:32 +0200 Stian Selnes + + * gst/gstpad.c: + * tests/check/gst/gstghostpad.c: + pad: gst_pad_activate_mode() always succeed if same mode + Checking that the pad is in the correct mode before the parent is + checked makes the call always succeed if the mode is ok. + This fixes a race with ghostpad where gst_pad_activate_mode() could + trigger a g_critical() if the ghostpad is unparented while the + proxypad is deactivating, for instance if the ghostpad is released. + More specifically, gst_ghost_pad_internal_activate_push_default()'s + call to gst_pad_activate_mode() would fail if ghostpad doesn't have a + parent. With this patch it will return true of mode is already + correct. + +2017-03-31 16:36:05 +0200 Havard Graff + + * libs/gst/base/gstbasetransform.c: + * plugins/elements/gstfunnel.c: + * plugins/elements/gstfunnel.h: + gstbasetranform: replace GST_BASE_TRANSFORM with GST_BASE_TRANSFORM_CAST + To avoid a global type-lock on chain etc. + +2017-11-24 09:53:41 +0100 Tim-Philipp Müller + + * gst/gstghostpad.c: + ghostpad: return TRUE if target pad was already set + The state is as it should be, so no reason to return + FALSE really, everything's good. + +2017-11-24 09:40:07 +0100 Tim-Philipp Müller + + * gst/gstghostpad.c: + ghostpad: access internal pad with lock held + +2017-03-30 09:17:08 +0200 Havard Graff + + * gst/gstghostpad.c: + * tests/check/gst/gstghostpad.c: + ghostpad: fix race-condition while tearing down + An upstream query will take a ref on the internal proxypad, and can + hence end up owning the last reference to that pad, causing a crash. + +2013-03-23 13:44:51 +0100 Haakon Sporsheim + + * libs/gst/check/gstcheck.c: + check: Add test suite time elapsed output + +2017-11-23 15:28:39 +0100 Edward Hervey + + * plugins/elements/gstqueue.c: + queue: Only calculate level if we have valid levels + Doing calculations with GST_CLOCK_STIME_NONE would result in + completely bogus levels + +2017-11-23 13:56:51 +0100 Tim-Philipp Müller + + * gst/gstvalue.c: + gstvalue: allocate slightly larger than needed tables at startup + If we pre-allocate only *exactly* as many nodes as we need for the + core types, we are practically guaranteed a re-alloc when external + code like GstVideoTimeCode or GstEncodingProfile register their + own GstValue things. So allocate a bit more than strictly needed. + +2017-11-06 21:10:54 +0100 Mathieu Duponchelle + + * docs/gst/gstreamer-sections.txt: + * gst/gstelement.c: + * gst/gstelement.h: + * gst/gstpadtemplate.c: + * gst/gstpadtemplate.h: + * win32/common/libgstreamer.def: + pad templates: Allow specifying GType + See https://bugzilla.gnome.org/show_bug.cgi?id=731301 + https://bugzilla.gnome.org/show_bug.cgi?id=789986 + +2017-11-22 15:59:39 +0100 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: update for latest promise api changes + +2017-04-03 22:20:51 +1000 Matthew Waters + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + * docs/gst/gstreamer.types.in: + * gst/Makefile.am: + * gst/gst.c: + * gst/gst.h: + * gst/gstpromise.c: + * gst/gstpromise.h: + * gst/meson.build: + * tests/check/Makefile.am: + * tests/check/gst/.gitignore: + * tests/check/gst/gstpromise.c: + * tests/check/meson.build: + * win32/common/libgstreamer.def: + gst: add a promise object + An object that can be waited on and asked for asynchronous values. + In much the same way as promise/futures in js/java/etc + A callback can be installed for when the promise changes state. + Original idea by + Jan Schmidt + With contributions from + Nirbheek Chauhan + Mathieu Duponchelle + https://bugzilla.gnome.org/show_bug.cgi?id=789843 + +2017-11-20 17:01:04 +0100 Edward Hervey + + * gst/gstregistrychunks.c: + registrychunks: Make sure we use aligned memory + This is in the same vein as for all other features. Some systems + might not allow unaligned read. + +2017-11-17 00:15:17 +0000 Tim-Philipp Müller + + * tools/gst-inspect.c: + tools: gst-inspect: stop printing element state_change function + This is really not interesting at all, not sure why we print this. + +2017-11-17 00:14:35 +0000 Tim-Philipp Müller + + * tools/gst-inspect.c: + tools: gst-inspect: fix double empty line after pad templates + +2017-11-16 10:47:46 +0100 Edward Hervey + + gstpad: Make pad (de)activation atomic + The following could happen previously: + * T1: calls gst_pad_set_active() + * T2: currently (de)activating it + * T1: gst_pad_set_active() returns, caller assumes that the pad has + completed the requested (de)activation ... whereas it is not + the case since the actual (de)activation in T2 might still be + going on. + To ensure atomicity of pad (de)activation, we use a internal + variable (and cond) to ensure only one thread at a time goes through + the actual (de)activation block + https://bugzilla.gnome.org/show_bug.cgi?id=790431 + +2017-11-16 08:26:12 +0100 Edward Hervey + + * gst/gstpad.c: + gstpad: Make calls to GstPadActivateFunction MT-safe + checking whether we already were in the target GstPadMode was being + done too early and there was the risk that we *would* end up + (de)activating a pad more than once. + Instead, re-do the check for pad mode when entering the final pad + (de)activation block. + https://bugzilla.gnome.org/show_bug.cgi?id=790431 + +2017-11-10 12:07:28 -0500 Nicolas Dufresne + + * gst/gstparamspecs.c: + paramspec: Move condition check inside the g_return + It's mostly a debug check and crash avoidance, it's better to + keep all the condition inside the macro. + +2017-11-10 12:03:00 -0500 Nicolas Dufresne + + * gst/gstparamspecs.c: + paramspec: Add missing since for _spec_array() + +2017-11-10 14:10:31 +0100 Edward Hervey + + * plugins/elements/gstconcat.c: + concat: Handle single-pad use-cases + When EOS reaches concat, it will switch to the next candidate as its + activate pad. + The problem arises when there is only one sinkpad, the "active" pad + becomes NULL. This results in concat becoming unusable after it receives + a *single* EOS on its single sinkpad. + If we detect there is a single sinkpad and there is no current active pad: + * If we are waiting (from selected sink event/buffer), become the current + active pad. + * If there is a seek request, send it upstream. We don't switch the + active_sinkpad property at that point in time, since the seek could + fail. If the seek succeeds, the following SEGMENT (or STREAM_START) + will cause the pad_wait() to elect that pad as the new active one. + * Flush events get forwarded + https://bugzilla.gnome.org/show_bug.cgi?id=790167 + +2017-11-09 17:38:19 +0100 Edward Hervey + + * plugins/elements/gstconcat.c: + concat: Make QoS forward MT-safe + In the same way it's done for other event forwarding. + +2017-04-13 16:28:54 +0200 Guillaume Desmottes + + * plugins/tracers/gstlatency.c: + latency tracer: add timestamp to tracer records + Include the timestamp of the recorded log as in the 'stats' tracer. + This can be useful, for example, to plot a graph showing the latency + over time. + https://bugzilla.gnome.org/show_bug.cgi?id=781315 + +2017-11-04 11:45:54 +0100 Edward Hervey + + * libs/gst/base/gsttypefindhelper.c: + typefindhelper: Fix overflow some more + Nothing guaranteed that off+size wouldn't exceed a 2**64 value. + Instead we reverse the operation and use a subtraction. + +2017-11-04 10:34:10 +0100 Edward Hervey + + * libs/gst/base/gsttypefindhelper.c: + typefindhelper: Fix signed integer overflow + Make sure the whole calculation is done with 64bit unsigned values + (To be ready for people want to typefind exabyte files). + +2017-08-01 11:06:32 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstelement.c: + * gst/gstelement.h: + * tests/check/gst/gstelement.c: + * win32/common/libgstreamer.def: + element: add gst_element_foreach_*pad() + Add convenience API that iterates over all pads, sink pads or + source pads and makes sure that the foreach function is called + exactly once for each pad. + This is a KISS implementation. It doesn't use GstIterator and + doesn't try to do clever things like resync if pads are added + or removed while the function is executing. We can still do that + in future if we think it's needed, but in practice it will + likely make absolutely no difference whatsoever, since these + things will have to be handled properly elsewhere by the element + anyway if they're important. + After all, it's always possible that a pad is added or removed + just after the iterator finishes iterating, but before the + function returns. + This is also a replacement for gst_aggregator_iterate_sink_pads(). + https://bugzilla.gnome.org/show_bug.cgi?id=785679 + +2017-10-27 14:58:28 +0200 Mathieu Duponchelle + + * plugins/tracers/gstleaks.c: + gstleaks.c: always log leaks listing + https://bugzilla.gnome.org/show_bug.cgi?id=789556 + +2017-11-01 12:27:31 +0200 Sebastian Dröge + + * libs/gst/net/meson.build: + net: Add new file to the meson.build + +2017-11-01 11:31:52 +0200 Sebastian Dröge + + * tests/misc/netclock-replay.c: + examples/netclock-replay: Fix build + +2017-10-30 10:49:06 +0100 Robert Rosengren + + * libs/gst/net/Makefile.am: + * libs/gst/net/gstnetclientclock.c: + * libs/gst/net/gstnettimeprovider.c: + * libs/gst/net/gstnetutils.c: + * libs/gst/net/gstnetutils.h: + netutils: Add util for setting socket DSCP + Util function for setting QoS DSCP added, to remove duplicated code in + netclientclock and nettimeprovider. Fix build error if missing IP_TOS. + https://bugzilla.gnome.org/show_bug.cgi?id=784737 + +2017-10-31 11:39:23 +0100 Edward Hervey + + * gst/gstvalue.h: + gstvalue: Cast GST_MAKE_FOURCC arguments + To make it explicit that we are dealing with uint32 targets + Avoids erroneous runtime error: left shift of negative value -1 + https://bugzilla.gnome.org/show_bug.cgi?id=789700 + +2017-10-11 11:08:12 -0400 Nicolas Dufresne + + * plugins/tracers/gstlatency.c: + latency-tracer: Exclude synchronization time + The goal of this tracer is to measure the processing latency between a + src and a sink. In push mode, the time was read after the chain function + have returned. As the amount of time we wait to get synched is reverse + to the amount of latency the source introduced, the result was quite + surprising. + This patch moves the latency calculation in the pre-push hook. When + there is no processing in a a pipeline (e.g. fakesrc ! fakesink), the + latency will now be 0 as it's supposed to. For pull mode, the code was + already correct. When GstBaseSink operate in pull mode, the processing + time is done durring the pull, so pull-post is the right hook. The + synchronization will happen after the pull has ended. Note that + GstBaseSink rarely operate in pull mode. + https://bugzilla.gnome.org/show_bug.cgi?id=788431 + +2017-10-27 09:53:06 +0200 Edward Hervey + + * gst/gstevent.c: + event: Don't allow invalid SELECT_STREAMS event creation + Asking to select no streams makes no sense and can create various + issues. + If one doesn't one any stream it should deactivate (or not use) the + element in question. + +2017-10-25 17:10:15 +0200 Edward Hervey + + * gst/gst.c: + gst: Fix build with option parsing disabled + +2017-10-20 17:28:11 +0200 Stefan Sauer + + * tests/check/gst/gstsegment.c: + segment: update the tests + Boy scout rule. Make is a little less painful to debug the tests by using + fail_unless_equals_{uint64,int64,float} where appropriate. Ideally the large + tests would be splitted to avoid guessing data dependencies. + +2017-10-20 16:15:01 +0200 Stefan Sauer + + * gst/gstsegment.h: + segment: clarify the segment docs for the duration + +2017-10-20 16:11:44 +0200 Stefan Sauer + + * gst/gstsegment.c: + Revert "segment: also intialize the duration" + This reverts commit f1baaae17557fa75a9bcd940b994597714be2f74. + +2017-10-20 14:30:42 +0200 Stefan Sauer + + * gst/gstsegment.c: + segment: also intialize the duration + If start and stop are set, calculate the duration and set it too. + +2017-10-20 13:02:35 +0200 Stefan Sauer + + * tools/gst-inspect.c: + gst-inspect: print more details for typefind and tracer features + Print full details for typefind features. Print some of the available features + for tracers and add some todos for the ones we'd like to see. + +2017-10-20 11:16:46 +0200 Stefan Sauer + + * tools/gst-inspect.c: + gst-inspect: reduce casting back and forth + Refactor the print_element_info() to take a GstPluginFeature. Reduces the need + to cast to and from GstElementFactory. + +2017-10-20 11:08:14 +0200 Stefan Sauer + + * tools/gst-inspect.c: + gst-inspect: simplify the code for printing feature info + Rename print_element_features() to print_feature_info() and move the code that + handles the ElementFactory there. This simplifies the calling code and improves + readability. + Also don't leak the features for other factories. + +2017-06-02 16:27:29 +0200 Robert Rosengren + + * libs/gst/net/gstnetclientclock.c: + netclientclock: Add possibility to set QoS DSCP value + https://bugzilla.gnome.org/show_bug.cgi?id=784737 + +2017-06-01 15:48:16 +0200 Robert Rosengren + + * libs/gst/net/gstnettimeprovider.c: + nettimeprovider: Add possibility to set QoS DSCP value + https://bugzilla.gnome.org/show_bug.cgi?id=784737 + +2017-10-18 02:31:12 +1100 Jan Schmidt + + * gst/gstutils.c: + * gst/gstutils.h: + seqnum: Never return a seqnum of 0, reset GST_SEQNUM_INVALID + Various plugins use the value of '0' as an invalid seqnum value + (qtdemux for matching duplicated seek events, for example). Make + that behaviour explicit, create a GST_SEQNUM_INVALID value, + and ensure gst_util_seqnum_next never returns it. + +2017-10-16 16:06:37 +0530 Ashish Kumar + + * libs/gst/base/gstqueuearray.c: + queuearray: Fix for possible crashes due to null pointer dereferencing + https://bugzilla.gnome.org/show_bug.cgi?id=788838 + +2017-10-15 15:59:11 +0200 Stefan Sauer + + * libs/gst/base/gstcollectpads.c: + collectpads: mention the query function in the docs as well + +2017-10-06 21:59:03 +0200 Mathieu Duponchelle + + * gst/gstbuffer.c: + * tests/check/gst/gstmeta.c: + gstbuffer: fix meta removal in gst_buffer_foreach_meta + When updating the linked list, prev->next = next is correct + if prev is actually updated after being set to the head + of the list at the start. + https://bugzilla.gnome.org/show_bug.cgi?id=788617 + +2017-10-10 15:53:38 +0200 fengalin + + * libs/gst/base/gstflowcombiner.c: + flowcombiner: Fix version for ref and unref functions + The functions were introduced in version 1.12.1, GstFlowCombiner was + introduced in 1.4. + https://bugzilla.gnome.org/show_bug.cgi?id=788778 + +2017-10-05 13:35:14 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbasesink.c: + basesink: use new gst_buffer_list_calculate_size() utility function + +2017-10-05 10:24:24 +0530 Ashish Kumar + + * gst/gstdeviceprovider.c: + device-provider: gst_device_provider_unhide_provider() always fails + https://bugzilla.gnome.org/show_bug.cgi?id=788520 + +2017-10-04 14:16:46 +0200 Havard Graff + + * gst/meson.build: + * libs/gst/base/meson.build: + * libs/gst/controller/meson.build: + * libs/gst/net/meson.build: + * meson.build: + meson: remove vs_module_defs + The GST_EXPORT should handle it. + +2017-10-03 13:54:25 -0700 Reynaldo H. Verdejo Pinochet + + * libs/gst/base/gstbasetransform.h: + * libs/gst/net/gstnettimepacket.c: + * libs/gst/net/gstntppacket.c: + * plugins/elements/gstidentity.c: + Use proper GtkDoc notation for NULL/FALSE/TRUE + +2017-10-02 17:59:17 +0200 Edward Hervey + + * gst/gstbin.c: + * tests/check/gst/gstbin.c: + bin: iterate_sorted: Ensure sources are always returned last + For linked elements, the resulting gst_bin_iterate_sorted() will + properly return elements from sink to sources. + If we have some elements that are not linked, we *still* want to + ensure that we return: + * In priority any sinks + * Last of all any sources + * And in between any element which is neither source nor sink + For this to work, when looking for the next candidate element, + not only check the degree order, but if there are two candidates + with the same degree order, prefer the non-source one. + Amongst other things, this fixes the case where we activating a + bin containing unlinked sources and other elements. Without this + we could end up activating sources (which might start adding pads + to be linked) before other (to which those new source element pads + might be linked) are not activated + https://bugzilla.gnome.org/show_bug.cgi?id=788434 + +2017-10-02 14:11:19 -0400 Nicolas Dufresne + + * tests/check/elements/tee.c: + tee-test: Test a real use case + The real use case is when downstream didn't set a pool or + allocation params, in which case we expect the tee to not + create a pool or param from thin air. Dowstream setting + an pool with size=0 was in fact testing a downstream element + bug. The fact we handle that is accidental. + +2017-10-02 16:26:33 +0200 Stefan Sauer + + * plugins/elements/gsttee.c: + * tests/check/elements/tee.c: + tee: don't create a pool if none is needed + If the aggregated size is 0 and we create a pool, the pool would provide + buffers with no memory assigned. Handle that case and skip the pool. + This was the behaviour before cf803ea9f4e3fde92c1da86ecc47444035f7c0a7. + Add a test for this scenario. + https://bugzilla.gnome.org/show_bug.cgi?id=730758 + +2017-10-02 13:35:52 -0400 Nicolas Dufresne + + * tests/check/elements/tee.c: + tee: Re-enabled alloc query + allow-not-linked test + In the unit test refactoring, the unlinked pad required to test + the different behaviour induced by "allow-not-linked" property + was removed. + Commit e364d7944ecbab86dea73c0ee3e639e766938d36 + Move all the code for this test in the proper function, and re-add + the missing unlinked pad. This makes the test useful again. + +2017-10-02 16:25:00 +0200 Stefan Sauer + + * tests/check/elements/tee.c: + tee: split the allocation query test + Split the large allocation_query test into seperate tests. Add a setup helper + to reduce code duplication. Fix the original test that used fail_unless instead + of ck_assert_int_eq and had it accidentially working. + +2017-10-02 16:22:00 +0200 Stefan Sauer + + * gst/gststructure.c: + structure: add a todo comment + Printing NULL is confusing when the type is e.g. a GArray that is not empty. + +2017-10-02 13:14:21 +0200 Stefan Sauer + + * gst/gstquery.c: + query: doc consistency + Mention that it is the 'buffer size', like we do elsewhere. + +2017-09-28 10:17:53 +0200 Edward Hervey + + * win32/common/libgstreamer.def: + win32: update exports file + +2017-09-27 20:29:06 +0200 Mathieu Duponchelle + + * gst/gst.c: + * gst/gstplugin.c: + gst: Modify behaviour of gst_get_main_executable_path + To actually return the path of the executable, not its + directory. + https://bugzilla.gnome.org/show_bug.cgi?id=788256 + +2017-09-26 21:51:53 +0200 Mathieu Duponchelle + + * docs/gst/gstreamer-sections.txt: + * gst/gst.c: + * gst/gst.h: + * win32/common/libgstreamer.def: + gst: API: gst_get_main_executable_path() + This is useful for plugins that need to inspect the + folder of the main executable in order to determine the + set of features they will expose, for example: + https://github.com/centricular/gstreamer-vst3 + https://bugzilla.gnome.org/show_bug.cgi?id=788214 + +2017-09-27 13:07:25 +0200 Mathieu Duponchelle + + * gst/gst.c: + gst: Do not try to determine executable path on iOS. + The method used relies on "libproc.h", which is only available + on OSX. + https://bugzilla.gnome.org/show_bug.cgi?id=788234 + +2017-09-27 13:01:13 +0200 Mathieu Duponchelle + + * gst/gst.c: + gst: Fix typo in windows function name. + GetModuleFilename -> GetModuleFileName + https://bugzilla.gnome.org/show_bug.cgi?id=788234 + +2017-09-27 10:06:12 +0200 Edward Hervey + + * win32/common/libgstreamer.def: + win32: Update export file + +2017-09-26 15:15:27 +0200 Mathieu Duponchelle + + * gst/gst.c: + * libs/gst/helpers/gst-plugin-scanner.c: + plugin dependencies: fix 6cddce7663cb4b6ee061950d20365f42cb755851 + There were a few errors: + * The plugin scanner now accepts executable path as an argument. + In case it is NULL, argc == 2 + * We find the executable path in init_pre instead of gst_init, + allowing this to work when gst is initialized through the + option group (eg gst-inspect) + * There was a semi-colon missing in the __APPLE__ #ifdef + +2017-09-25 20:35:59 +0200 Mathieu Duponchelle + + * gst/gst.c: + * gst/gst_private.h: + * gst/gstplugin.c: + * gst/gstplugin.h: + * gst/gstpluginloader.c: + * libs/gst/helpers/gst-plugin-scanner.c: + * win32/common/libgstreamer.def: + plugin: API: GST_PLUGIN_DEPENDENCY_FLAG_PATHS_ARE_RELATIVE_TO_EXE + When a plugin declares a dependency using this flag, all the + relative paths are considered to be relative to the path of + the main executable. + We try to determine the path of the executable portably, + with implementations provided for Linux, Windows and Mac. + If retrieval of the path fails, we will not detect changes. + In order for the main executable path to be the same when + scanning a plugin in a child process, a new variable is + exposed in gst_private.h, _gst_executable_path + https://bugzilla.gnome.org/show_bug.cgi?id=788152 + +2017-09-21 14:13:47 +0300 Vivia Nikolaidou + + * scripts/git-update.sh: + git-update: Also build $EXTRA_MODULES + Doing a git pull but not autogen.sh / make is not consistent behaviour. + https://bugzilla.gnome.org/show_bug.cgi?id=787981 + +2017-09-19 23:58:26 +0200 Mathieu Duponchelle + + * tools/gst-inspect.c: + gst-inspect: Print GstValueArray properties nicely + https://bugzilla.gnome.org/show_bug.cgi?id=787924 + +2017-04-01 07:15:22 +0200 Mathieu Duponchelle + + * plugins/elements/gstmultiqueue.c: + Multiqueue: don't allow dropping SEGMENT_DONE events + https://bugzilla.gnome.org/show_bug.cgi?id=780795 + +2017-09-17 18:55:19 +0300 Sebastian Dröge + + * gst/gstinfo.h: + info: GstStackTraceFlags were added in 1.12 + +2017-08-31 13:05:57 +0100 Tim-Philipp Müller + + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + plugins: use new gst_buffer_list_calculate_size() + +2017-08-31 12:54:55 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstbufferlist.c: + * gst/gstbufferlist.h: + * tests/check/gst/gstbufferlist.c: + * win32/common/libgstreamer.def: + bufferlist: add gst_buffer_list_calculate_size() + Returns size in bytes. + +2017-08-30 13:50:33 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstbufferlist.c: + * gst/gstbufferlist.h: + * tests/check/gst/gstbufferlist.c: + * win32/common/libgstreamer.def: + bufferlist: add gst_buffer_list_get_writable() + Ensures buffer is writable. Useful if we want to change + metadata on it such as timestamps. + https://bugzilla.gnome.org/show_bug.cgi?id=750241 + +2017-09-12 18:30:00 +0300 Michael Shigorin + + * gst/gstconfig.h.in: + gstconfig.h.in: initial e2k arch support + This makes gstreamer buildable on Elbrus 2000. + https://bugzilla.gnome.org/show_bug.cgi?id=787587 + +2017-09-09 16:14:05 +0300 Sebastian Dröge + + * gst/gstinfo.h: + info: GstDebugColorFlags are flags, not an enum + Annotate as such. + +2017-09-06 10:01:58 -0400 Nicolas Dufresne + + * plugins/elements/gstidentity.c: + * plugins/elements/gstidentity.h: + identity: Add a drop-allocation property + When enabled, this property will make the allocation query fail. This is + the same as one could have done using a tee before the tee started + implementing the allocation query. + https://bugzilla.gnome.org/show_bug.cgi?id=730758 + +2017-09-05 15:57:51 -0400 Nicolas Dufresne + + * plugins/elements/gsttee.c: + * tests/check/elements/tee.c: + tee: Allocate one more buffer when multi-plexing + This extra buffer ensure that the downstream threads are not starved + when multiplexing a stream. + https://bugzilla.gnome.org/show_bug.cgi?id=730758 + +2017-09-05 15:45:33 -0400 Nicolas Dufresne + + * tests/check/elements/tee.c: + tee: Add test for the allocation query + https://bugzilla.gnome.org/show_bug.cgi?id=730758 + +2017-08-08 17:39:43 -0400 Nicolas Dufresne + + * plugins/elements/gsttee.c: + tee: Implement allocation query aggregation + This will aggregate allocation params, pool and will keep all + meta that has no parameters. + https://bugzilla.gnome.org/show_bug.cgi?id=730758 + +2017-08-08 17:35:19 -0400 Nicolas Dufresne + + * plugins/elements/gsttee.c: + tee: Deprecate alloc-pad property + It has no effect, not implemented, and would lead to bad rendering. + https://bugzilla.gnome.org/show_bug.cgi?id=730758 + +2017-09-04 12:20:43 +0200 Miguel París + + * tests/check/gst/gstpad.c: + pad: add test to check handled and drop probes + https://bugzilla.gnome.org/show_bug.cgi?id=787243 + +2017-09-04 14:33:29 +0200 Edward Hervey + + * gst/gstpad.c: + pad: Don't call remaining probes after they return DROPPED|HANDLED + If multiple probes are set on a pad and one probe returns either + GST_PAD_PROBE_HANDLED or GST_PAD_PROBE_DROPPED we need to stop + calling the remaining probes. + https://bugzilla.gnome.org/show_bug.cgi?id=787243 + +2017-08-26 13:44:38 -0300 Thibault Saunier + + * gst/gstvalue.c: + * tests/check/gst/gstvalue.c: + value: Handle serializing NULL GValueArray + Concider them as an empty array and do not segfault... + https://bugzilla.gnome.org/show_bug.cgi?id=786670 + +2017-08-24 16:00:42 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbaseparse.c: + baseparse: fix taglist update spam + We would constantly re-post the taglist because + posted_avg_rate only gets set to avg_bitrate if + parse->priv->post_avg_bitrate is true, so if it's + false the posted rate will always differ from the + current average rate and we'd queue an update, + which leads to us spamming downstream and the + application with taglist updates. + Fix this by only queuing an update if the average + rate will actually be posted. + These taglists updates could cause expensive + operations on the application side, e.g. in Totem. + https://bugzilla.gnome.org/show_bug.cgi?id=786561 + +2017-08-17 12:23:10 +0100 Tim-Philipp Müller + + * README: + * common: + Automatic update of common submodule + From 48a5d85 to 3f4aa96 + +2017-08-17 14:13:39 +0300 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstdeviceprovider.c: + * gst/gstdeviceprovider.h: + * gst/gstelement.c: + * gst/gstelement.h: + * win32/common/libgstreamer.def: + element/deviceprovider: Add instance getter functions for class properties + That is, the metadata and pad templates. Using instance getters is + easier to deal with for bindings, especially autogenerated ones. + +2017-08-16 22:47:31 +0300 Sebastian Dröge + + * plugins/elements/gstidentity.c: + * plugins/elements/gstidentity.h: + identity: Return FLUSHING instead of EOS and don't start waiting for anything if currently flushing + Otherwise we might try unscheduling a clock id (that does not exist + yet), then the streaming thread waits for id and the state change never + continues because the streaming thread is blocked. + Also shutting down and flushing and similar should return FLUSHING, not + EOS. The stream is not over, we're just not accepting any buffers + anymore. + +2017-08-14 11:01:19 +0100 Tim-Philipp Müller + + * gst/gstallocator.c: + * win32/common/libgstreamer.def: + allocator: Hide private sysmem GType func + Was never exposed in any header file, only exported + by accident. + +2017-08-11 21:17:06 +0200 Carlos Rafael Giani + + * configure.ac: + configure: Add switches for enabling/disabling libdw and libunwind + https://bugzilla.gnome.org/show_bug.cgi?id=778193 + +2017-08-13 10:50:05 +0100 Tim-Philipp Müller + + * libs/gst/check/libcheck/libcompat/libcompat.h: + libcheck: fix build failure + Need to define CK_DLL_EXP to extern as well in libcompat.h + which gets included before the internal-check.h where the + other fallback definition for CK_DLL_EXP is. + duplicate symbol _check_minor_version in: + libcheckinternal.a(libcheckinternal_la-check.o) + libcheckinternal.a(libcheckinternal_la-check_log.o) + +2017-08-11 11:12:09 +0300 Sebastian Dröge + + * plugins/elements/gstqueue.c: + queue: Allow re-usability after EOS + After EOS, it is possible for a pad to be resetted by sending + either a STREAM_START or SEGMENT event + Mimic the same behaviour when receiving STREAM_START/SEGMENT events + in queue if we are EOS'd + https://bugzilla.gnome.org/show_bug.cgi?id=786056 + +2017-08-10 13:32:43 +0100 Tim-Philipp Müller + + * libs/gst/check/libcheck/meson.build: + * meson.build: + meson: hide symbols by default unless explicitly exported + +2017-08-10 11:15:26 +0100 Tim-Philipp Müller + + * libs/gst/check/gstbufferstraw.h: + * libs/gst/check/gstcheck.h: + * libs/gst/check/gstconsistencychecker.h: + * libs/gst/check/gstharness.h: + * libs/gst/check/gsttestclock.c: + * libs/gst/check/gsttestclock.h: + * libs/gst/check/libcheck/check.h.in: + libs: check: sprinkle some GST_EXPORT + Have to modify libcheck header a bit to avoid warnings + about duplicate 'extern extern'. + Also needs some additions to the libcheck meson.build file + to define CK_EXP_DLL when building the static libcheck. + +2017-08-08 12:56:24 +0100 Tim-Philipp Müller + + * gst/gstutils.c: + utils: fix g-ir-scanner warning about bogus transfer annotations + for vararg parameters. Vararg functions are not introspectable anyway, + so might just as well mark them as '(skip)' while we're at it. + gstutils.c:2611: Warning: Gst: invalid "transfer" annotation for : only valid for object and GVariant types + +2017-08-09 16:15:23 +0200 Edward Hervey + + * plugins/elements/gstqueue2.c: + queue2: Allow re-usability after EOS + After EOS, it is possible for a pad to be resetted by sending + either a STREAM_START or SEGMENT event + Mimic the same behaviour when receiving STREAM_START/SEGMENT events + in queue2 if we are EOS'd + https://bugzilla.gnome.org/show_bug.cgi?id=786056 + +2017-08-09 10:51:39 +0200 Edward Hervey + + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + plugins: *queue* elements: Handle STREAM_START in EOS situation + When queue-like elements are in "EOS" situation (received GST_FLOW_EOS + from downstream or EOS was pushed), they drain buffers/events that + wouldn't be processed anyway and let through events that might + modify the EOS situation. + Previously only GST_EVENT_EOS and GST_EVENT_SEGMENT events were let + through, but we also need to allow GST_EVENT_STREAM_START to go + through since it resets the EOS state of pads since 1.6 + https://bugzilla.gnome.org/show_bug.cgi?id=786034 + +2017-08-08 21:19:32 +0300 Sebastian Dröge + + * gst/gstutils.c: + utils: Skip gst_calculate_linear_regression() in bindings + +2017-08-07 12:24:37 +0200 Edward Hervey + + * plugins/elements/gstqueue2.c: + queue2: Handle buffering levels on NOT_LINKED + When downstream returns NOT_LINKED, we return the buffering level + as being 100%. + Since the queue is no longer being consumed/used downstream, we + want applications to essentially "ignore" this queue for buffering + purposes. + If other streams are still being used, those stream buffering levels + will be used. If none are used, upstream will post an error message + on the bus indicating no streams are used. + https://bugzilla.gnome.org/show_bug.cgi?id=785799 + +2017-08-07 11:23:36 +0100 Tim-Philipp Müller + + * docs/gst/meson.build: + * docs/libs/meson.build: + meson: fix gtk-doc invocation + Argument is called "scanobjs_args", and we were missing a quote. + +2017-08-07 11:06:58 +0100 Tim-Philipp Müller + + * gst/meson.build: + * meson.build: + meson: fix a few warnings + +2017-08-07 10:33:32 +0100 Tim-Philipp Müller + + * pkgconfig/meson.build: + meson: add -lm to gstreamer-check-1.0 pkgconfig file + Fixes warning with meson from git about LIBM not being + defined in the configuration_data. + +2017-08-02 21:02:32 +0300 Sebastian Dröge + + * gst/gstpad.c: + pad: Recheck sticky events after non-blocking buffer probes and blocking event probes + Without the former, event changes (e.g. setting a pad offset) does not + take effect for the current buffer but only for the next one. Without + the latter, non-blocking event probes would not see any updated events + yet. + +2017-07-29 10:28:03 +0100 Tim-Philipp Müller + + * gst/gstinfo.c: + info: fix build with gst debugging disabled + +2017-07-17 21:03:11 +0300 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstinfo.c: + * gst/gstinfo.h: + * win32/common/libgstreamer.def: + debug: Add a memory ringbuffer based debug logger + This stores debug logs in memory per thread and uses up to a + configurable amount of bytes per thread for the logs. Inactive threads + are timed out after a configurable amount of time. + https://bugzilla.gnome.org/show_bug.cgi?id=785035 + +2017-07-28 17:27:18 +0100 Sebastian Dröge + + * gst/gstsegment.c: + segment: Add missing out annotations for various parameters + +2017-07-26 14:17:46 +0100 Tim-Philipp Müller + + * plugins/elements/gstdownloadbuffer.c: + * plugins/elements/gstdownloadbuffer.h: + downloadbuffer: remove unused struct member + This was used in queue2 when handling in coming serialized + queries, but downloadbuffer just refuses serialized queries. + +2015-03-10 16:42:44 +0000 Luis de Bethencourt + + * libs/gst/check/libcheck/check_run.c: + check: duplicate code branches + CID #1226446 + +2017-07-26 11:15:58 +0300 George Kiagiadakis + + * gst/gstelement.c: + element: document that gst_element_continue_state needs to be called with the STATE_LOCK + It internally calls gst_element_change_state(), which requires the STATE_LOCK + https://bugzilla.gnome.org/show_bug.cgi?id=785431 + +2017-07-20 17:31:41 +0100 Tim-Philipp Müller + + * tools/gst-launch.c: + gst-launch: fix compiler warnings for SIGHUP handlers on windows + Fix unused variable/function compiler warnings on windows. + The SIGHUP handling is only available under unix. + https://bugzilla.gnome.org/show_bug.cgi?id=783661 + +2017-07-20 14:17:48 +0200 Edward Hervey + + * plugins/elements/gstmultiqueue.c: + multiqueue: Fix access to NULL pointer + sq can be NULL. + Also fix commit message (it's the queue we are iterating over that we + are logging, not the one passed as argument). + CID #1415569 + +2017-07-03 15:17:33 +0900 Seungha Yang + + * plugins/elements/gstmultiqueue.c: + multiqueue: Calculate interleave only within each streaming thread + ... and use the biggest interleave value among streaming threads. + This is to optimize multiqueue size adaptation on adaptive streaming + use case with "use-interleave" property. + https://bugzilla.gnome.org/show_bug.cgi?id=784448 + +2017-07-15 12:40:28 +0100 Tim-Philipp Müller + + * po/meson.build: + meson: po: use glib preset and read language list from LINGUAS + Supported since meson 0.37, so we can use it now. + +2017-07-15 11:54:18 +0100 Tim-Philipp Müller + + * gst/gstminiobject.c: + miniobject: don't modify memory if it's clearly not a valid miniobject + Add back function guard that checks the refcount in a read-only + operation first, and bail out without modifying the passed-in + memory if it's clearly not a valid mini object. Otherwise we + probably cause more harm than good. We keep the second sanity + check based on the 'real refcount' at the time of the unref + around for now too. + https://bugzilla.gnome.org/show_bug.cgi?id=784383 + +2017-07-14 16:56:54 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasesrc.h: + basesrc: deprecate non-functional "typefind" property + https://bugzilla.gnome.org/show_bug.cgi?id=736565 + +2017-07-10 16:52:38 +0200 Francisco Velazquez + + * tests/benchmarks/complexity.c: + * tests/benchmarks/complexity.scm: + benchmark: fix complexity benchmark + Make complexity benchmark code work for complexity > 1 + https://bugzilla.gnome.org/show_bug.cgi?id=784754 + +2017-07-14 16:12:25 +0100 Tim-Philipp Müller + + * configure.ac: + * gst/gstpluginloader.c: + * meson.build: + win32: find plugin scanner in libexecdir subdir as configured + https://bugzilla.gnome.org/show_bug.cgi?id=679115 + +2017-07-13 21:52:34 +0800 Jason Lin + + * libs/gst/base/gstbasesink.c: + basesink: fix buffer leaks if preroll failed + buffer is not unreferened if preroll failed + :Detailed Notes: + - Problem : video freeze when switching from pause to 1/2-FF repeatedly + - RootCause : buffer leaks in basesink + - Solution : unref the buffer if prerolled failed + :Testing Preformed: + How to Test : + pause -> 1/2 FF -> resume -> pause -> 1/2 FF ... + https://bugzilla.gnome.org/show_bug.cgi?id=784932 + +2017-06-11 15:15:13 +0000 Graham Leggett + + * docs/gst/running.xml: + * tools/gst-launch-1.0.1: + * tools/gst-launch.c: + Generate a gstreamer pipeline diagram on SIGHUP. + Useful for debugging a pipeline that refuses to enter a given state. + https://bugzilla.gnome.org/show_bug.cgi?id=783661 + +2017-06-26 11:46:39 +0300 George Kiagiadakis + + * libs/gst/base/gstbasesrc.c: + basesrc: forward SINK_MESSAGE events downstream + https://bugzilla.gnome.org/show_bug.cgi?id=784551 + +2017-07-11 14:56:03 -0400 Nicolas Dufresne + + * meson.build: + meson: Fix bashcomp installation + For some reason the double quotes ended up in the path, hence + the helper where installed at "."/share/... + +2017-07-11 14:55:42 -0400 Nicolas Dufresne + + * data/bash-completion/helpers/meson.build: + * meson.build: + * plugins/elements/meson.build: + meson: Use join_paths and .set_quoted where possible + +2017-07-11 16:15:16 +0100 Tim-Philipp Müller + + * pkgconfig/meson.build: + meson: pkgconfig: add libunwind/libdw to gstreamer-1.0 Requires.private + https://bugzilla.gnome.org/show_bug.cgi?id=784795 + +2017-07-11 15:29:44 +0200 Edward Hervey + + * configure.ac: + * pkgconfig/gstreamer-uninstalled.pc.in: + * pkgconfig/gstreamer.pc.in: + pkgconfig: Add private requirements + Add libunwind and dw to the .pc Requires.private. Fixes static library + compilation if gstreamer was compiled with one of those dependencies + https://bugzilla.gnome.org/show_bug.cgi?id=784795 + +2017-07-09 21:20:03 +0200 Stefan Sauer + + * libs/gst/base/gstbasesink.c: + basesink: use GST_CLOCK_TIME macros for readability + Replace some -1 comparison with GST_CLOCK_TIME macros. + +2017-07-09 21:16:44 +0200 Stefan Sauer + + * libs/gst/base/gstcollectpads.c: + collectpads: correct some comments and add more logging + Add more logging to analyze event handling (especially failure cases). + +2017-05-01 13:35:09 -0700 Scott D Phillips + + * tools/gst-stats.c: + tools: gst-stats: Use standard character escapes + Having '\e' expand to '\x1b' is a gnu extension. I didn't see any + document describing the behavior, but gcc also seems to expand + '\[' to '['. + https://bugzilla.gnome.org/show_bug.cgi?id=782028 + +2017-07-07 12:06:44 +0100 Tim-Philipp Müller + + * gst/parse/meson.build: + * meson.build: + meson: find python3 via python3 module + And rename python3 variable in meson build files for clarity. + https://bugzilla.gnome.org/show_bug.cgi?id=783198 + +2017-07-05 13:20:19 +0100 Tim-Philipp Müller + + * gst/meson.build: + * meson_options.txt: + * plugins/meson.build: + * tests/check/meson.build: + meson: add option to disable tracer hooks + +2017-07-05 13:19:00 +0100 Tim-Philipp Müller + + * tests/check/gst/gstmemory.c: + tests: memory: skip test that depends on debug system if it's disabled + +2017-07-05 13:17:49 +0100 Tim-Philipp Müller + + * gst/gsttracerutils.h: + tracing: fix build with tracer hooks disabled + +2017-07-03 09:03:24 +0100 Tim-Philipp Müller + + * gst/gstminiobject.c: + miniobject: make refcount tracing and debug logging reliable + Tracing of the refcounts wasn't thread-safe, and log output of + the refcount values before/after wasn't reliable. + https://bugzilla.gnome.org/show_bug.cgi?id=784383 + +2017-07-03 21:06:24 +0100 Tim-Philipp Müller + + * gst/gstplugin.c: + plugin: clarify code that deduces plugin name from file name + Make the final else branch explicit for clarity. + https://bugzilla.gnome.org/show_bug.cgi?id=783333 + +2017-06-27 07:44:17 +0200 Stefan Sauer + + * libs/gst/base/gstbytereader-docs.h: + docs: add a missing const in bytereader docs + This syncs the prototype with gstbytereader.h + +2017-06-29 10:50:50 -0400 Nicolas Dufresne + + * libs/gst/base/gstbasesrc.c: + basesrc: Removed unused private member qos_enabled + +2017-06-26 14:09:20 -0400 Nicolas Dufresne + + * libs/gst/base/gstbasesrc.c: + basesrc: Don't reallocate buffers when flushing + Instead of using gst_buffer_pool_set_active() when flushing, use + gst_buffer_pool_set_flushing(), this avoids uneeded reallocation of the + buffers. + +2017-06-01 10:36:26 -0400 Nicolas Dufresne + + * libs/gst/base/gstbasesrc.c: + basesrc: Don't hold LIVE_LOCK in create/alloc/fill + Holding this lock on live source prevents the source from changing + the caps in ::create() without risking a deadlock. This has consequences + as the LIVE_LOCK was replacing the STREAM_LOCK in many situation. As a + side effect: + - We no longer need to unlock when doing play/pause as the LIVE_LOCK + isn't held. We then let the create() call finish, but will block if + the state have changed meanwhile. This has the benefit that + wait_preroll() calls in subclass is no longer needed. + - We no longer need to change the state to unlock, simplifying the + set_flushing() interface + - We need different handling for EOS depending if we are in push or pull + mode. + This patch also document the locking of each private class member and + the locking order. + https://bugzilla.gnome.org/show_bug.cgi?id=783301 + +2017-06-01 10:01:13 -0400 Nicolas Dufresne + + * libs/gst/base/gstbasesrc.c: + basesrc: Protect access to pool and allocator + This was only partly protected by the object lock. Always take the + object lock to access the currently configured pool and allocator. + https://bugzilla.gnome.org/show_bug.cgi?id=783301 + +2017-06-29 08:30:50 +0900 Jimmy Ohn + + * tools/gst-inspect.c: + gst-inspect: Fix memory leak in print_pad_templates_info + gst_static_caps_get function returned allocated memory. + So, It should be free using gst_caps_unref. + https://bugzilla.gnome.org/show_bug.cgi?id=784311 + +2017-06-29 09:10:04 +0100 Tim-Philipp Müller + + * meson.build: + meson: check for ppoll() as well + +2017-06-27 09:59:52 -0400 Thibault Saunier + + * tools/meson.build: + meson: Add configinc as include_directory in tools/ + Otherwise when the glib is used as a subproject config.h is the glib + one, not ours. + +2017-06-23 15:13:16 -0400 Thibault Saunier + + * meson.build: + meson: Allow using glib as a subproject + +2017-06-28 09:54:56 +0200 Xabier Rodriguez Calvar + + * docs/gst/gstreamer-sections.txt: + * gst/gstprotection.c: + * gst/gstprotection.h: + * win32/common/libgstreamer.def: + protection: add function to filter system ids + gst_protection_filter_systems_by_available_decryptors() takes an array + of strings and returns a new array of strings filtered by the available + decryptors for them so the ones you get are the ones that you should be + able to decrypt. + https://bugzilla.gnome.org/show_bug.cgi?id=770107 + +2017-06-23 11:11:44 +0100 Tim-Philipp Müller + + * meson.build: + meson: fix with-package-name option + https://bugzilla.gnome.org/show_bug.cgi?id=784082 + +2017-06-02 00:52:37 +0200 Matej Knopp + + * gst/gstplugin.c: + gstplugin: remove gst prefix when loading plugin on MSVC + When building with Meson and MSVC, our plugins don't have a 'libgst' + suffix and are just 'gstfoo.dll', so look for that too. + https://bugzilla.gnome.org/show_bug.cgi?id=783333 + +2017-06-21 10:48:52 -0400 Nicolas Dufresne + + * libs/gst/base/gstbaseparse.c: + baseparse: sinkcaps can be NULL in default caps negotiation + This was causing harmless assertion about the unreffed caps not being of + type caps. + https://bugzilla.gnome.org/show_bug.cgi?id=784041 + +2017-06-20 11:05:41 -0400 Thibault Saunier + + * win32/common/libgstreamer.def: + win32: Update .def file + +2017-06-14 17:12:32 -0400 Thibault Saunier + + * docs/gst/gstreamer-sections.txt: + * gst/gstutils.c: + * gst/gstutils.h: + utils: Add a function to get a string representation of GstStateChange + API: + gst_state_change_get_name + https://bugzilla.gnome.org/show_bug.cgi?id=783798 + +2017-06-15 10:38:29 -0400 Thibault Saunier + + * gst/gstelement.h: + * gst/gstpipeline.c: + element: Add missing values for "to same" state changes + And handle newly added GstStateChange values in GstPipeline + https://bugzilla.gnome.org/show_bug.cgi?id=783798 + +2017-06-20 15:57:47 +0900 Heekyoung Seo + + * gst/gstutils.c: + utils: Fix leak in failed case of regression overflow checking + https://bugzilla.gnome.org/show_bug.cgi?id=783978 + +2017-06-20 16:10:07 +0900 Heekyoung Seo + + * gst/gstregistrychunks.c: + registrychunk: Fix leak in failed case of reading plugin dependency string + https://bugzilla.gnome.org/show_bug.cgi?id=783978 + +2017-06-20 10:00:16 +0300 Sebastian Dröge + + * libs/gst/controller/gsttimedvaluecontrolsource.c: + * libs/gst/controller/gsttimedvaluecontrolsource.h: + * win32/common/libgstcontroller.def: + controller: Export boxed type copy/free functions for GstControlPoint + +2017-06-20 09:57:01 +0300 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbaseparse.h: + * libs/gst/base/gstflowcombiner.c: + * libs/gst/base/gstflowcombiner.h: + * win32/common/libgstbase.def: + base: Export boxed type copy/free functions for the remaining types + +2017-06-16 13:34:00 +0000 Andrejs Vasiljevs + + * libs/gst/net/gstptpclock.c: + ptp: Unref timeout GSource for delay requests + https://bugzilla.gnome.org/show_bug.cgi?id=783864 + +2017-06-15 10:51:50 +0100 Tim-Philipp Müller + + * gst/gsturi.c: + * gst/gsturi.h: + * tests/check/gst/gsturi.c: + * tests/check/meson.build: + meson: fix tests build with --werror + Need to pass -DGST_DISABLE_DEPRECATED to avoid warnings when + testing deprecated API such as gst_uri_construct(). + Also remove #ifndef GST_DISABLE_DEPRECATED guard from header + file, we don't use those any more for functions, the + GST_DEPRECATED_FOR macro is enough. + +2017-06-14 17:36:57 +0200 Dimitrios Katsaros + + * gst/gsturi.c: + * gst/gsturi.h: + * tests/check/gst/gsturi.c: + gsturi: Fixed incorrect escaping of path as a generic string + The gst_uri_construct function was escaping the location string + as a generic uri string. This is incorrect since the slash('/') + characters are reserved for use in this exact case. The patch + changes the escape_string function mode to handle the path correctly. + I have deleted the escape_string function since it is no longer being + used and have created a unit test for the function. I have also + deprecated this function in favour of the GstUri API. + https://bugzilla.gnome.org/show_bug.cgi?id=783787 + +2017-06-07 11:42:28 -0400 Thibault Saunier + + * tests/check/meson.build: + meson: Do not use path separator in test names + Avoiding warnings like: + WARNING: Target "elements/audioamplify" has a path separator in its name. + +2017-05-31 20:40:00 +0300 Sebastian Dröge + + * gst/gstbin.c: + bin: Put correct annotations on gst_bin_add() too + +2017-05-23 00:51:12 +0200 Olivier Crête + + * libs/gst/base/gstbasesrc.c: + basesrc: Hold object lock while updating latency + Otherwise in gst_base_src_query_latency(), it ended up + sometimes thinking it wasn't -1 when it was actually. + +2017-05-22 12:01:41 +0300 Sebastian Dröge + + * gst/gstobject.c: + object: Add missing annotations to get_value_array() / get_value_g_array() + Same as already used in GstControlBinding. + +2017-05-21 18:11:36 +0100 Tim-Philipp Müller + + * config.h.meson: + meson: actually remove config.h.meson as well + +2017-05-21 19:16:57 +0300 Sebastian Dröge + + * gst/gstprotection.c: + protection: Fix annotations for gst_protection_select_system() + +2017-05-21 17:04:10 +0200 Olivier Crête + + * gst/gstplugin.c: + plugin: Stop plugin symbol name at first . + This is because the python plugin ends up named + libgstpython.cpython-35m-x86_64-linux-gnu.so so we need to stop + at the first dot. + https://bugzilla.gnome.org/show_bug.cgi?id=782924 + +2017-05-21 14:26:01 +0100 Tim-Philipp Müller + + * Makefile.am: + * gst/meson.build: + * meson.build: + meson: don't need config.h.meson any more + Meson does the largefile support automatically nowadays, and + can generate a config.h from configuration_data() without a + template as input. + +2017-05-21 09:02:54 +0100 Tim-Philipp Müller + + * common: + * meson.build: + * tests/check/meson.build: + meson: make C++ compiler optional + It's only used to build tests to see if our headers are C++ clean. + +2017-05-20 17:57:39 +0100 Tim-Philipp Müller + + * libs/gst/check/meson.build: + meson: check: generate .gir file + https://bugzilla.gnome.org/show_bug.cgi?id=782173 + +2017-05-20 19:42:51 +0300 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstparse.c: + * gst/gstparse.h: + * win32/common/libgstreamer.def: + parse: Make gst_parse_context_copy() public for bindings + +2017-05-20 16:44:14 +0100 Tim-Philipp Müller + + * tools/Makefile.am: + tools: dist new gst-stats man page + Fixes meson build from tarball. + +2017-05-20 16:43:39 +0100 Tim-Philipp Müller + + * libs/gst/helpers/Makefile.am: + Dist meson ptp helper install script + Fixes meson build from tarball. + +2017-05-20 13:24:18 +0200 Thibault Saunier + + * plugins/tracers/gstleaks.c: + * plugins/tracers/gstleaks.h: + leaks: Handle subclasses in filters even for unhandled/lazy loaded types + Using typename in the set of unhandled types instead of the quark so + that we also handle subclasses as with other filters. + +2017-05-19 19:22:27 +0200 Matthew Waters + + * gst/gstdebugutils.c: + debugutils: add missing E character to the legend + The E character on pads indicates the presence of the EOS flag. + +2017-05-17 21:50:25 +0200 Matej Knopp + + * gst/gstplugin.c: + gst-plugin: allow '-' in plugin file name + '-' will be translated to underscore when determining symbol name + https://bugzilla.gnome.org/show_bug.cgi?id=782756 + +2016-06-20 15:58:59 +0200 Christoph Reiter + + * gst/gstbin.c: + * tests/check/gst/gstbin.c: + * tests/check/gst/gstclock.c: + * tests/check/gst/gstsystemclock.c: + gst: ref_sink() some more floating references returned by g_object_new() + https://bugzilla.gnome.org/show_bug.cgi?id=743062 + +2017-05-15 18:58:38 +0300 Sebastian Dröge + + * gst/gstbufferpool.c: + * gst/gstdevicemonitor.c: + * gst/gststreamcollection.c: + * gst/gststreams.c: + * gst/gsttracerrecord.c: + * gst/gsttracerutils.c: + * libs/gst/net/gstnettimeprovider.c: + gst: Clear floating flag in constructor of all GstObject subclasses that are not owned by any parent + I.e. most of them unfortunately. + https://bugzilla.gnome.org/show_bug.cgi?id=743062 + +2017-05-15 14:34:57 +0300 Sebastian Dröge + + * gst/gstallocator.c: + allocator: ref_sink() the global sysmem allocator after creation + It's not owned by the first one to ask for it, but by this very code. + https://bugzilla.gnome.org/show_bug.cgi?id=743062 + +2017-05-15 14:32:48 +0300 Sebastian Dröge + + * gst/gstbus.c: + * gst/gstclock.c: + * gst/gstcontrolsource.c: + * gst/gstsystemclock.c: + * gst/gsttask.c: + * gst/gsttaskpool.c: + * libs/gst/base/gstcollectpads.c: + * libs/gst/check/gsttestclock.c: + * libs/gst/controller/gstinterpolationcontrolsource.c: + * libs/gst/controller/gstlfocontrolsource.c: + * libs/gst/controller/gsttriggercontrolsource.c: + * libs/gst/net/gstnetclientclock.c: + * libs/gst/net/gstptpclock.c: + * tests/check/gst/gstcontroller.c: + gst: Don't ref_sink() GstObject subclasses in instance_init/constructor + This is something bindings can't handle and it causes leaks. Instead + move the ref_sink() to the explicit, new() constructors. + This means that abstract classes, and anything that can have subclasses, + will have to do ref_sink() in their new() function now. Specifically + this affects GstClock and GstControlSource. + https://bugzilla.gnome.org/show_bug.cgi?id=743062 + +2017-05-15 14:32:00 +0300 Sebastian Dröge + + * gst/gstdevicemonitor.c: + * gst/gstdeviceprovider.c: + * gst/gstelement.c: + * gst/gstghostpad.c: + * gst/gstobject.c: + * gst/gstpadtemplate.c: + * gst/gstplugin.c: + * gst/gstregistry.c: + * gst/gststreamcollection.c: + * gst/gststreams.c: + * gst/gsttracerrecord.c: + * gst/gstutils.c: + * libs/gst/controller/gstproxycontrolbinding.c: + * libs/gst/net/gstnettimeprovider.c: + gst: Correctly annotate functions taking floating reference parameters and returning floating references + https://bugzilla.gnome.org/show_bug.cgi?id=702960 + +2017-05-15 14:29:05 +0300 Sebastian Dröge + + * gst/gstbin.c: + * gst/gstelement.c: + * gst/gstghostpad.c: + * gst/gstregistry.c: + * gst/gstutils.c: + gst: Handle floating references consistently + If a function takes a floating reference parameter, it should also be + sinked in error cases. Otherwise the function behaves differently + between error and normal cases, which is impossible for bindings to + handle. + https://bugzilla.gnome.org/show_bug.cgi?id=747990 + +2015-07-10 15:36:59 +0900 Vineeth TM + + * gst/gstbin.c: + * gst/gstelement.c: + * gst/gstobject.c: + gst: Fix floating reference inconsistencies in error cases + If a function takes a floating reference and sinks it, it should also do + that in error cases. I.e. call ref_sink() followed by unref(). + Otherwise the reference counting behaviour of the function will be + different between the good and the error case, and simply inconsistent. + https://bugzilla.gnome.org/show_bug.cgi?id=747990 + +2017-05-16 13:31:06 -0400 Nicolas Dufresne + + * gst/gstconfig.h.in: + Also use default visibility for plugins symbol + +2017-05-16 13:29:38 -0400 Nicolas Dufresne + + * config.h.meson: + * configure.ac: + * plugins/elements/Makefile.am: + * plugins/elements/meson.build: + * plugins/tracers/Makefile.am: + Remove plugin specific static build option + Static and dynamic plugins now have the same interface. The standard + --enable-static/--enable-shared toggle are sufficient. + +2017-05-16 00:02:11 +0100 Tim-Philipp Müller + + * tests/check/meson.build: + meson: fix gstprintf test linking + Must link against gstprint helper lib to use private symbol. + +2017-05-10 13:03:31 +0100 Tim-Philipp Müller + + * gst/gstconfig.h.in: + gstconfig.h: use default visibility for GST_EXPORT for gcc/clang too + This will be needed later when we switch to using -fvisibility=hidden. + +2017-05-10 13:07:31 +0100 Tim-Philipp Müller + + * gst/gstconfig.h.in: + * gst/gstobject.c: + * gst/gstobject.h: + * gst/gstsegment.c: + * gst/gstsegment.h: + gst: add GST_DEPRECATED_FOR() and also export deprecated symbols + Can't use a #ifndef GST_DISABLE_DEPRECATED guard around deprecated + functions any more, as they won't get exported then. Besides, we + get a nicer error message from the compiler telling us what function + to use instead this way. + +2017-05-10 10:56:16 +0100 Tim-Philipp Müller + + * gst/Makefile.am: + * gst/gst.h: + * gst/gst_private.h: + * gst/gstallocator.h: + * gst/gstatomicqueue.h: + * gst/gstbin.h: + * gst/gstbuffer.h: + * gst/gstbufferlist.h: + * gst/gstbufferpool.h: + * gst/gstbus.h: + * gst/gstcaps.h: + * gst/gstcapsfeatures.h: + * gst/gstchildproxy.h: + * gst/gstclock.h: + * gst/gstcontext.h: + * gst/gstcontrolbinding.h: + * gst/gstcontrolsource.h: + * gst/gstdatetime.h: + * gst/gstdebugutils.h: + * gst/gstdevice.h: + * gst/gstdevicemonitor.h: + * gst/gstdeviceprovider.h: + * gst/gstdeviceproviderfactory.h: + * gst/gstdynamictypefactory.h: + * gst/gstelement.h: + * gst/gstelementfactory.h: + * gst/gstenumtypes.h.template: + * gst/gsterror.h: + * gst/gstevent.h: + * gst/gstformat.h: + * gst/gstghostpad.h: + * gst/gstinfo.h: + * gst/gstiterator.h: + * gst/gstmemory.h: + * gst/gstmessage.h: + * gst/gstmeta.h: + * gst/gstminiobject.h: + * gst/gstobject.h: + * gst/gstpad.h: + * gst/gstpadtemplate.h: + * gst/gstparamspecs.h: + * gst/gstparse.h: + * gst/gstpipeline.h: + * gst/gstplugin.h: + * gst/gstpluginfeature.h: + * gst/gstpoll.h: + * gst/gstpreset.h: + * gst/gstprotection.h: + * gst/gstquery.h: + * gst/gstregistry.h: + * gst/gstsample.h: + * gst/gstsegment.h: + * gst/gststreamcollection.h: + * gst/gststreams.h: + * gst/gststructure.h: + * gst/gstsystemclock.h: + * gst/gsttaglist.h: + * gst/gsttagsetter.h: + * gst/gsttask.h: + * gst/gsttaskpool.h: + * gst/gsttoc.h: + * gst/gsttocsetter.h: + * gst/gsttracer.h: + * gst/gsttracerfactory.h: + * gst/gsttracerrecord.h: + * gst/gsttypefind.h: + * gst/gsttypefindfactory.h: + * gst/gsturi.h: + * gst/gstutils.h: + * gst/gstvalue.h: + gst: mark symbols explicitly for export with GST_EXPORT + One omission: gst_allocator_sysmem_get_type() was + exported but never in any public header file. + +2017-05-10 00:11:10 +0100 Tim-Philipp Müller + + * common: + * libs/gst/controller/Makefile.am: + * libs/gst/controller/controller_mkenum.py: + * libs/gst/controller/gstargbcontrolbinding.h: + * libs/gst/controller/gstdirectcontrolbinding.h: + * libs/gst/controller/gstinterpolationcontrolsource.h: + * libs/gst/controller/gstlfocontrolsource.h: + * libs/gst/controller/gstproxycontrolbinding.h: + * libs/gst/controller/gsttimedvaluecontrolsource.h: + * libs/gst/controller/gsttriggercontrolsource.h: + libs: controller: mark symbols explicitly for export with GST_EXPORT + +2017-05-09 16:19:31 +0100 Tim-Philipp Müller + + * libs/gst/base/gstadapter.h: + * libs/gst/base/gstbaseparse.h: + * libs/gst/base/gstbasesink.h: + * libs/gst/base/gstbasesrc.h: + * libs/gst/base/gstbasetransform.h: + * libs/gst/base/gstbitreader.h: + * libs/gst/base/gstbytereader.h: + * libs/gst/base/gstbytewriter.h: + * libs/gst/base/gstcollectpads.h: + * libs/gst/base/gstdataqueue.h: + * libs/gst/base/gstflowcombiner.h: + * libs/gst/base/gstpushsrc.h: + * libs/gst/base/gstqueuearray.h: + * libs/gst/base/gsttypefindhelper.h: + libs: base: mark symbols explicitly for export with GST_EXPORT + +2017-05-09 16:01:46 +0100 Tim-Philipp Müller + + * libs/gst/net/gstnetaddressmeta.h: + * libs/gst/net/gstnetclientclock.h: + * libs/gst/net/gstnetcontrolmessagemeta.h: + * libs/gst/net/gstnettimepacket.h: + * libs/gst/net/gstnettimeprovider.h: + * libs/gst/net/gstptpclock.h: + libs: net: mark symbols explicitly for export with GST_EXPORT + +2017-05-13 18:30:27 +0100 Tim-Philipp Müller + + * meson.build: + * meson_options.txt: + meson: add options to set package name and origin + https://bugzilla.gnome.org/show_bug.cgi?id=782172 + +2017-05-13 18:19:05 +0200 Stefan Sauer + + * docs/libs/Makefile.am: + docs: use the full path to ignore dirs + +2017-05-12 17:49:25 +0200 Stefan Sauer + + * libs/gst/check/gstharness.c: + docs: remove stray ',\' from doc comment + +2017-02-25 12:18:14 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * win32/common/libgstreamer.def: + buffer: Add GstReferenceTimestampMeta + This is a meta that generically allows to attach additional reference + timestamps to a buffer, that don't have to relate to the pipeline clock + in any way. + Examples of this could be an NTP timestamp when the media was captured, + a frame counter on the capture side or the (local) UNIX timestamp when + the media was captured. + https://bugzilla.gnome.org/show_bug.cgi?id=779213 + +2017-05-09 16:29:21 +0100 Tim-Philipp Müller + + * meson.build: + meson: bump meson version requirement to 0.40.1 + +2016-12-15 12:48:55 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstbus.c: + * gst/gstbus.h: + * win32/common/libgstreamer.def: + bus: Add function to get the file descriptor of the bus + This is useful for integration with other event loops that work by + polling file descriptors. G_IO_IN will always be set whenever a message + is available currently. + https://bugzilla.gnome.org/show_bug.cgi?id=776126 + +2017-02-27 21:38:11 -0500 Nicolas Dufresne + + * gst/gst_private.h: + * gst/gstplugin.c: + * gst/gstplugin.h: + plugin: Unify static and dynamic plugin interface + This patch changes the entry point of each plugin in order to unify the + interface for static and dynamic plugin. What we do is replace the + current static plugin interface and extend the dymamic one. The plugin + entry was a C structure, name "gst_plugin_desc". With this patch, the + interface is now: + GstPpluginDesc *gst_plugin__get_desc(void); + The reason we change the C structure into function, is that it is + potentially more common to have function pointers, avoiding possible + binding language limitation. Additionally to that. This change prevents + the symbols from clashing between plugins, allowing to build once the + plugin (assuming you have -fPIC). + On the plugin loader side, we symply derive the shared object basename + to extract the plugin name. If this symbol is not found, we fallback to + gst_plugin_desc for backward compatibility. + This has one side effect, which is that the shared objects now need to + be named after their plugin name. This is generally the case with few + exceptions. The benifit of this limitation is that you can control the + gst_plugin__desc clash at file level. + https://bugzilla.gnome.org/show_bug.cgi?id=779344 + +2017-05-09 09:24:43 +0100 Tim-Philipp Müller + + * libs/gst/helpers/meson.build: + meson: fix search path for setcap + +2017-05-07 11:17:22 +0100 Tim-Philipp Müller + + * gst/gstdebugutils.c: + debugutils: make local variable static + +2017-05-05 12:23:43 +0100 Tim-Philipp Müller + + * libs/gst/helpers/ptp_helper_post_install.sh: + meson: fail silently in ptp helper post install script + .. in case permissions/capabilities could not be set. + +2017-05-05 12:02:33 +0100 Tim-Philipp Müller + + * libs/gst/helpers/meson.build: + meson: use cc.find_library() + find_library() was deprecated and removed in later versions. + +2017-05-05 11:49:08 +0100 Tim-Philipp Müller + + * config.h.meson: + * gst/meson.build: + * libs/gst/helpers/meson.build: + * libs/gst/helpers/ptp_helper_post_install.sh: + * meson.build: + * meson_options.txt: + meson: add gst-ptp-helper + https://bugzilla.gnome.org/show_bug.cgi?id=774418 + +2017-05-05 09:10:56 +0100 Tim-Philipp Müller + + * meson.build: + meson: fix indentation + No tabs please. + +2017-05-05 00:45:06 +0100 Tim-Philipp Müller + + * libs/gst/helpers/Makefile.am: + helpers: remove old cruft from CLEANFILES + These files are no longer built, so no need to clean them. + +2017-04-29 11:30:54 +0100 Tim-Philipp Müller + + * gst/Makefile.am: + * libs/gst/base/Makefile.am: + * libs/gst/check/Makefile.am: + * libs/gst/controller/Makefile.am: + * libs/gst/net/Makefile.am: + * meson.build: + g-i: no need to load registry in g-i scanner + +2017-05-04 21:37:28 +0100 Tim-Philipp Müller + + * Makefile.am: + * gst-element-check-1.0.m4: + Don't generate gst-element-check-1.0.m4 on the fly and fix meson build + This will interfere with 'git pull'. You will have to remove the + old generated gst-element-check-1.0.m4 manually if you're pulling + on a dirty build directory, sorry. + https://bugzilla.gnome.org/show_bug.cgi?id=782174 + +2017-05-04 21:06:21 +0100 Tim-Philipp Müller + + * meson.build: + meson: install gst-element-check-1.0.m4 + https://bugzilla.gnome.org/show_bug.cgi?id=782174 + +2017-04-30 12:10:49 +0900 Yasushi SHOJI + + * libs/gst/check/gstharness.c: + harness: Abort when failed to construct the specified pipeline + gst_harness_new_parse() returns without any error even if it doesn't + find the specified element. Then a succeeding call to + gst_harness_set_sink_caps_str() causes an error like this: + Unexpected critical/warning: gst_pad_push_event: assertion 'GST_IS_PAD (pad)' failed + This is a bit cryptic and doesn't give users any clue what was going + on. + gst_harness_new_parse() calls gst_harness_add_parse() with a newly + created empty harness and the given pipeline description string, but + gst_harness_add_parse() does not have a way to propagate the error + back to the caller. Since the function, gst_harness_add_parse(), is a + public API, it's not a good idea to change its signature. This patch, + instead, makes the function to g_error() when it discovers any error. + With this change the same error prints: + ** (myelement-test:25345): ERROR **: Unable to create pipeline 'bin.( myelement )': no element "myelement" + The current implementation of gst_parse_launch_full() doesn't return + partially constructed pipeline when GST_PARSE_FLAG_FATAL_ERRORS is + specified, however, this patch also adds a check for it. + https://bugzilla.gnome.org/show_bug.cgi?id=781958 + +2017-05-04 18:59:14 +0300 Sebastian Dröge + + * configure.ac: + * meson.build: + Back to development + +=== release 1.12.0 === + +2017-05-04 15:36:55 +0300 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * meson.build: + Release 1.12.0 + +2017-05-04 15:00:16 +0300 Sebastian Dröge + + * 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 .po files + +2017-05-02 14:35:50 +0300 Sebastian Dröge + + * gst/gstmessage.c: + message: Don't pass a NULL debug string to g_utf8_validate() + g_utf8_validate() crashes on NULL, but NULL is valid for the debug + string nonetheless. + +2017-05-02 14:27:14 +0300 Sebastian Dröge + + * libs/gst/base/gstadapter.c: + adapter: Check if meta transform_func is NULL before using it + https://bugzilla.gnome.org/show_bug.cgi?id=782050 + +2017-05-02 10:32:54 +0200 Frédéric Dalleau + + * libs/gst/base/gstbasetransform.c: + basetransform: Check if meta transform_func is NULL before using it + An untested pointer segfaulted in webkit while playing video + on imx6 sabrelite. It turned out that the imx plugin didn't + implement the meta transform function. + The following GST_DEBUG trace was visible: + gstbasetransform.c:1779:foreach_metadata: copy metadata + GstImxVpuBufferMetaAPI + Thread 26 vqueue:src received signal SIGSEGV, Segmentation fault. + (gdb) bt + 0x00000000 in ?? () + 0x73f8d7d8 in foreach_metadata (inbuf=0xc9b020, meta=0x474b2490, + user_data=) at gstbasetransform.c:1781 + 0x73eb3ea8 in gst_buffer_foreach_meta (buffer=buffer@entry=0xc9b020, + func=0x73f8d705 , + user_data=user_data@entry=0x474b24d4) + at gstbuffer.c:2234 + https://bugzilla.gnome.org/show_bug.cgi?id=782050 + +2017-04-28 19:43:49 +0200 Víctor Manuel Jáquez Leal + + * gst/gst.c: + gst: check non-null before dereference + It is possible to use gst_deinit() without registering the base + classes. For example, when using gst_init_get_option_group() and + call the program with an invalid parameter. In that case, + gst_deinit() will lead to a segmentation fault, since there is a + dereference to a pointer that is null. + This patch validates if the type is non-null before dereferencing + it. + https://bugzilla.gnome.org/show_bug.cgi?id=781914 + +2017-04-28 11:57:41 +0200 Nicola Murino + + * scripts/gst-uninstalled: + gst-uninstalled: add opencv to bad libs + https://bugzilla.gnome.org/show_bug.cgi?id=781889 + +=== release 1.11.91 === + +2017-04-27 17:24:05 +0300 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * meson.build: + Release 1.11.91 + +2017-04-27 15:48:33 +0300 Sebastian Dröge + + * 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 .po files + +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 + +=== release 1.11.2 === + +2017-02-24 15:06:46 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/gstreamer-plugins.args: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + Release 1.11.2 + +2017-02-24 12:44:17 +0200 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-02-23 20:52:39 +0200 Vivia Nikolaidou + + * gst/gstvalue.c: + * tests/check/gst/gstvalue.c: + value: Add deserialization for arrays/lists outside GstStructures + This is mostly useful for properties of those types when used in + gst-launch or similar. + https://bugzilla.gnome.org/show_bug.cgi?id=777375 + +2017-02-23 20:50:38 +0200 Sebastian Dröge + + * gst/gstvalue.c: + value: Add a type abbreviation for GstFlagSet in serialization + +2017-02-23 20:47:30 +0200 Vivia Nikolaidou + + * gst/gst_private.h: + * gst/gststructure.c: + * gst/gstvalue.c: + value: Always add the type name to elements when serializing arrays/lists + But only when serializing outside of GstStructures, because in case of + GstStructure the type is already preprended to the array/list and the + GstStructure API makes sure that they have the same "generic" type so + deserialization works properly. + This keeps serialization of GstStructures the same as before, and the + GstCaps unit tests already test for that. However when serializing + standalone arrays/lists get the types added now. + +2017-02-23 20:22:03 +0200 Vivia Nikolaidou + + * gst/gst_private.h: + * gst/gststructure.c: + * gst/gstvalue.c: + value: Move list/array serialization/deserialization functions from GstStructure to GstValue + https://bugzilla.gnome.org/show_bug.cgi?id=777375 + +2017-02-23 20:16:17 +0200 Vivia Nikolaidou + + * gst/gstparamspecs.c: + * gst/gstparamspecs.h: + * win32/common/libgstreamer.def: + paramspecs: Add GstParamSpecArray for GST_TYPE_ARRAY typed properties + These are mostly useful to get our automatic + serialization/deserialization from strings and simple usage from + gst-launch or similar. + https://bugzilla.gnome.org/show_bug.cgi?id=777375 + +2017-02-21 20:23:51 +0000 Tim-Philipp Müller + + * libs/gst/base/gstbytereader.c: + * tests/check/libs/bytereader.c: + bytereader: fix peek value when scanning for 00 00 01 with non-0 offset + We would add the offset a second time in _scan_for_start_code() + when we found a result, but it's already been added to the data + pointer at the beginning of _masked_scan_uint32_peek(), so the + peeked value would be wrong if the initial offset was >0, and + we would potentially read memory out-of-bounds. + Add unit test for all of this. + https://bugzilla.gnome.org/show_bug.cgi?id=778365 + +2017-02-20 12:16:32 +0100 Wim Taymans + + * gst/gstinfo.h: + info: put () around macro arguments + Put braces around macro arguments or else we might run into problems + with operater precedence. + +2017-02-20 10:45:57 +0100 Wim Taymans + + * gst/gstdeviceproviderfactory.c: + deviceproviderfactory: ignore empty classes + +2017-02-20 10:25:50 +0100 Wim Taymans + + * gst/gstdeviceproviderfactory.c: + deviceproviderfactory: compare class against NULL + gstdeviceproviderfactory.c:501:20: error: comparison between pointer and zero character constant [-Werror=pointer-compare] + if (classes[0] == '\0') + +2017-02-18 16:49:40 +0530 Nirbheek Chauhan + + * gst/meson.build: + meson: Fix build with latest upstream git + Trivial incorrect include_directories() call + +2017-02-18 10:03:24 +0100 Peter Korsgaard + + * gst/gstconfig.h.in: + gstconfig: Fix unaligned access support for the openrisc architecture + Teach gstconfig.h.in about the openrisc (or1k) architecture. Fixes + buildroot autobuild failure: + http://autobuild.buildroot.net/results/717/717d78ce0935749f477bdf3133b6f20057a28c01/build-end.log + https://bugzilla.gnome.org/show_bug.cgi?id=778866 + +2017-02-15 21:37:31 +0100 Stefan Sauer + + * libs/gst/base/gstbasesink.c: + gstbasesink: xref symbol in docs + +2017-02-15 20:58:49 +0100 Stefan Sauer + + * gst/gstpad.h: + pad: revert the content changes from previous commit + The default behaviour when returning GST_PAD_PROBE_OK is unrelated to + the other return code. + +2017-02-15 20:37:40 +0100 Stefan Sauer + + * gst/gstpad.h: + pad: fix docs for GstPadProbeReturn + There is no 'block' value, but we have 'drop'. Also fix the markup; it + is '%' to link to constants (and enum values). + +2016-10-24 22:47:29 +0100 Tim-Philipp Müller + + * Makefile.am: + meson: dist meson build files + Ship meson build files in tarballs, so people who use tarballs + in their builds can start playing with meson already. + +2017-01-31 09:55:59 +0000 Julien Isorce + + * tests/check/pipelines/seek.c: + tests: add 2 unit tests for non-flush seek with gstbaseparse + The unit test defines a test parse element that inherit from GstBaseParse. + The test pipeline is: fakesrc ! testparse ! fakesink sync=1 + Before the fix b2c05cac8 the first new test would have fail because the + pipeline would have wait doing nothing just after proceeded the seek event. + The second new test would have fail because the pipeline would have + played the media instantly just after proceeded the seek event + (like if sync was FALSE on the sink). + https://bugzilla.gnome.org/show_bug.cgi?id=777780 + +2017-01-31 21:19:18 +0200 Sebastian Dröge + + * gst/parse/grammar.y: + parse: Don't translate the "bin" element name + Otherwise we won't be able to create bins, there is no element called + "Behälter" if you're using a German locale. + https://bugzilla.gnome.org/show_bug.cgi?id=777998 + +2016-04-15 20:54:42 +0900 Seungha Yang + + * gst/gstsegment.c: + * tests/check/gst/gstsegment.c: + segment: Modifiy inside segment condition + There is a special case that segment_start == segment_stop == start. + It's inside of segment + https://bugzilla.gnome.org/show_bug.cgi?id=764707 + +2017-01-26 16:35:27 +0000 Thibault Saunier + + * gst/gstinfo.c: + info: Check libunwind return codes + +2017-01-18 18:16:26 -0300 Thibault Saunier + + * libs/gst/controller/meson.build: + * libs/gst/net/meson.build: + meson: libs: Add gir to the source list of the dependency + +2017-01-16 11:26:16 -0300 Thibault Saunier + + * gst/gst.c: + * gst/gstallocator.c: + * gst/gstbin.c: + * gst/gstbuffer.c: + * gst/gstbufferlist.c: + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + * gst/gstbus.c: + * gst/gstcaps.c: + * gst/gstcapsfeatures.c: + * gst/gstchildproxy.c: + * gst/gstclock.c: + * gst/gstclock.h: + * gst/gstcompat.h: + * gst/gstcontext.c: + * gst/gstcontrolbinding.c: + * gst/gstcontrolsource.c: + * gst/gstdebugutils.h: + * gst/gstdevice.c: + * gst/gstdevicemonitor.c: + * gst/gstdeviceprovider.c: + * gst/gstdeviceproviderfactory.c: + * gst/gstdynamictypefactory.c: + * gst/gstelement.c: + * gst/gstelement.h: + * gst/gstelementfactory.c: + * gst/gsterror.c: + * gst/gstevent.c: + * gst/gstformat.c: + * gst/gstghostpad.c: + * gst/gstinfo.c: + * gst/gstinfo.h: + * gst/gstiterator.c: + * gst/gstmemory.c: + * gst/gstmessage.c: + * gst/gstmeta.c: + * gst/gstminiobject.c: + * gst/gstobject.c: + * gst/gstpad.c: + * gst/gstpad.h: + * gst/gstpadtemplate.c: + * gst/gstparamspecs.c: + * gst/gstparse.c: + * gst/gstpipeline.c: + * gst/gstplugin.c: + * gst/gstpluginfeature.c: + * gst/gstpoll.c: + * gst/gstpreset.c: + * gst/gstprotection.c: + * gst/gstquery.c: + * gst/gstregistry.c: + * gst/gstsample.c: + * gst/gstsegment.c: + * gst/gststreamcollection.c: + * gst/gststreams.c: + * gst/gststructure.c: + * gst/gstsystemclock.c: + * gst/gsttaglist.c: + * gst/gsttagsetter.c: + * gst/gsttask.c: + * gst/gsttaskpool.c: + * gst/gsttoc.c: + * gst/gsttocsetter.c: + * gst/gsttracer.c: + * gst/gsttracerfactory.c: + * gst/gsttracerrecord.c: + * gst/gsttypefind.c: + * gst/gsttypefindfactory.c: + * gst/gsturi.c: + * gst/gstutils.c: + * gst/gstvalue.c: + * gst/gstvalue.h: + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + * libs/gst/base/gstbitreader.c: + * libs/gst/base/gstbytereader.c: + * libs/gst/base/gstbytewriter.c: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstdataqueue.c: + * libs/gst/base/gstdataqueue.h: + * libs/gst/base/gstflowcombiner.c: + * libs/gst/base/gstindex.c: + * libs/gst/base/gstpushsrc.c: + * libs/gst/base/gstqueuearray.c: + * libs/gst/base/gsttypefindhelper.c: + * libs/gst/check/gstbufferstraw.c: + * libs/gst/check/gstcheck.c: + * libs/gst/check/gstconsistencychecker.c: + * libs/gst/check/gstharness.c: + * libs/gst/check/gsttestclock.c: + * libs/gst/controller/gstargbcontrolbinding.c: + * libs/gst/controller/gstdirectcontrolbinding.c: + * libs/gst/controller/gstinterpolationcontrolsource.c: + * libs/gst/controller/gstlfocontrolsource.c: + * libs/gst/controller/gstproxycontrolbinding.c: + * libs/gst/controller/gsttimedvaluecontrolsource.c: + * libs/gst/controller/gsttriggercontrolsource.c: + * libs/gst/net/gstnetaddressmeta.c: + * libs/gst/net/gstnetclientclock.c: + * libs/gst/net/gstnetcontrolmessagemeta.c: + * libs/gst/net/gstnettimepacket.c: + * libs/gst/net/gstnettimeprovider.c: + * libs/gst/net/gstptpclock.c: + * plugins/elements/gstcapsfilter.c: + * plugins/elements/gstconcat.c: + * plugins/elements/gstdataurisrc.c: + * plugins/elements/gstdownloadbuffer.c: + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstfakesrc.h: + * plugins/elements/gstfdsink.c: + * plugins/elements/gstfdsrc.c: + * plugins/elements/gstfilesink.c: + * plugins/elements/gstfilesrc.c: + * plugins/elements/gstfunnel.c: + * plugins/elements/gstidentity.c: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstoutputselector.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gststreamiddemux.c: + * plugins/elements/gsttee.c: + * plugins/elements/gsttypefindelement.c: + * plugins/elements/gstvalve.c: + Port gtk-doc comments to their equivalent markdown syntax + Modernizing our documentation and preparing a possible move to hotdoc. + This commits also adds missing @title metadatas to all SECTIONs + +2017-01-11 17:25:08 -0300 Thibault Saunier + + * gst/gstbuffer.h: + * gst/gstcontrolbinding.h: + * gst/gstelement.h: + * gst/gstevent.h: + * gst/gstmemory.h: + * gst/gstmessage.h: + * gst/gstmeta.h: + * gst/gstquery.h: + * gst/gststreamcollection.h: + * gst/gststreams.h: + * gst/gsttracer.h: + * gst/gsturi.h: + gst: Fix includes so that files can be built separately + It used to work but it has broke in the 1.10 cycle. + +2017-01-18 10:56:38 -0300 Thibault Saunier + + * gst/gstpoll.c: + gstpoll: Encode in utf-8 + +2017-01-26 15:32:31 -0800 Brendan Shanks + + * gst/gststreamcollection.h: + * gst/gststreams.h: + GstStream/GstStreamCollection: add g_autoptr() support + https://bugzilla.gnome.org/show_bug.cgi?id=777810 + +2017-01-26 16:51:21 +0000 Julien Isorce + + * libs/gst/base/gstbaseparse.c: + baseparse: correctly handle non-flush seek + Otherwise when seeking/looping to the start when reaching the end, + the sink waits for the duration of the stream. So the user hears + nothing for the duration of the stream before it actually loop again. + See example attached to the bug for that. + Existing test: + gst-plugins-good/tests/icles/test-segment-seeks foo.flac + Without the patch the user hears a crack/cut at each seek. + https://bugzilla.gnome.org/show_bug.cgi?id=777780 + +2016-05-24 14:57:54 +0200 Stian Selnes + + * libs/gst/check/Makefile.am: + * libs/gst/check/gstcheck.c: + * libs/gst/check/gstcheck.h: + check: Add API to filter g_warning/g_critical etc + New API functions to filter log messages before they are processed by + GstCheck. This can be used to discard specific messages that are + accepted by the test or to add callbacks that test specific messages. + Default bevavior when no callback is given to a filter is to discard the + message, because it does not makes sense to have a filter with no + callback which does not discard; that would be a noop. + Discarded messages will in addition to bypass the GstCheck handling also + return to GLib that the message is not fatal if it occurs. + https://bugzilla.gnome.org/show_bug.cgi?id=773091 + +2017-01-18 22:39:33 +0100 Stefan Sauer + + * gst/gstbin.c: + bin: update the docs for the event forwarding + First this sends the events not only to the sources and 2nd this is not only + for seek events. + +2017-01-18 15:07:58 +0200 Sebastian Dröge + + * gst/parse/grammar.y: + parse: Don't hold element's object lock while querying element pads' caps + This can easily deadlock if the element uses the object lock for + something internally, like posting an error message. Use an GstIterator + for iterating over the pads instead. + https://bugzilla.gnome.org/show_bug.cgi?id=777449 + +2017-01-16 09:41:19 +1100 Jan Schmidt + + * gst/gstbin.c: + gstbin: Quieten a noisy FIXME about duration caching + Only print this FIXME once per run, at it's pretty annoying in + lots of logs otherwise. + +2015-07-14 13:11:11 +0000 Jan Schmidt + + * plugins/elements/gstidentity.c: + * plugins/elements/gstidentity.h: + identity: Add ts-offset property. + Add a property to delay or advance sync time + when sync=true, with the same behaviour as + the ts-offset property in basesink + +2017-01-15 11:52:44 +0000 Tim-Philipp Müller + + * gst/gstdatetime.c: + * tests/check/gst/gstdatetime.c: + datetime: fix potential out-of-bound read on malformed datetime string + https://bugzilla.gnome.org/show_bug.cgi?id=777263 + +2017-01-13 12:34:43 +0000 Tim-Philipp Müller + + * meson.build: + meson: bump version + +2017-01-12 16:32:38 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.11.1 === + +2017-01-12 15:29:15 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + Release 1.11.1 + +2017-01-12 14:35:22 +0200 Sebastian Dröge + + * po/hr.po: + * po/id.po: + * po/pl.po: + * po/zh_CN.po: + Update .po files + +2017-01-12 14:34:18 +0200 Sebastian Dröge + + * po/hr.po: + * po/id.po: + * po/pl.po: + * po/zh_CN.po: + po: Update translations + +2017-01-12 14:26:55 +0200 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-01-05 13:45:37 +0100 Mark Nauwelaerts + + * tools/gst-inspect-1.0.1: + tools: update gst-inspect man page + +2017-01-05 10:32:03 -0300 Thibault Saunier + + * pkgconfig/meson.build: + meson: Do not generate .pc files for libgstcheck on windows + The lib is not built + +2017-01-04 12:10:45 +0100 Guillaume Desmottes + + * pkgconfig/Makefile.am: + * pkgconfig/gstreamer-base-uninstalled.pc.in: + * pkgconfig/gstreamer-check-uninstalled.pc.in: + * pkgconfig/gstreamer-controller-uninstalled.pc.in: + * pkgconfig/gstreamer-net-uninstalled.pc.in: + * pkgconfig/gstreamer-uninstalled.pc.in: + * pkgconfig/meson.build: + meson: generate pkg-config -uninstalled pc files + Generating those files is useful for users building the GStreamer stack + using meson and having to link it to another project which is still + using the autotools. + https://bugzilla.gnome.org/show_bug.cgi?id=776810 + +2017-01-03 12:30:02 +0000 Tim-Philipp Müller + + * gst/gstpad.h: + pad: clarify docs for GST_PAD_PROBE_DROP + +2017-01-03 02:13:30 +1100 Jan Schmidt + + * plugins/elements/gstqueue.c: + queue: Don't generate GST_FLOW_ERROR without logging + At least log a message to the debug log when generating + a GST_FLOW_ERROR, to make it possible to find where it came from. + +2017-01-03 02:12:27 +1100 Jan Schmidt + + * gst/gstpadtemplate.c: + padtemplate: Fix null pointer dereference on invalid static caps + A typo in a static caps string may result in failure to + deserialise it, so don't dereference the result without + checking. + +2017-01-03 02:11:27 +1100 Jan Schmidt + + * gst/gstcaps.c: + caps: Fix null pointer dereference on invalid static caps + A typo in a static caps string may result in failure to + deserialise it, so don't dereference the result without + checking. + +2016-12-30 19:42:57 +0100 Stefan Sauer + + * gst/gststructure.c: + structure: reword comment for gst_structure_parse_string() + The comment was a bit confusing. Turn it into gtkdoc style and reword it. + +2016-12-28 21:47:03 +0100 Stefan Sauer + + * gst/gstinfo.c: + info: re-eval GST_DEBUG env var for late categories + When registering a new debug category after _debug_init(), we need to + re check the GST_DEBUG filter settings again. + In addition when parsing the filter setting, we need to already bump up + the min-debug level to not suppress debug log statments that dynamically + register a category. This happens in libraries that use a function to + register a category on first use. + +2016-12-29 17:04:04 +0100 Edward Hervey + + * scripts/gst-uninstalled: + gst-uninstalled: Default to python3 + It's 2016, unless you've specified a different version of python, + we'll default to python3 + +2016-12-28 13:45:54 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: also unset DISCONT on buffers in reverse playback fragments + +2016-12-21 21:58:53 -0300 Thibault Saunier + + * tools/gst-inspect-1.0.1: + * tools/gst-inspect.c: + gst-launch: Add a '--types' option to filter elements by types to print + This way the user can easily figure out what are the available audio + encoder for example doing: + gst-inspect-1.0 --types Encoder/Audio + https://bugzilla.gnome.org/show_bug.cgi?id=776392 + +2016-12-22 18:45:10 +0100 Nicolas Dechesne + + * tools/gst-launch.c: + tools: gst-launch: set GST_GL_XINITTHREADS + This ensure that XInitThreads is called and so gl contexts are properly + initialized. + https://bugzilla.gnome.org/show_bug.cgi?id=776401 + +2016-12-22 16:13:22 -0300 Thibault Saunier + + * gst/gstpreset.c: + gstpreset: Lower some debug logs level + A property not defined in a preset file can simply mean that the + user wants it to be set as it default value, and we should not warn + about that. + A missing preset file in a directory can happen has there are several + directory where a preset can be found in. + +2016-12-22 23:39:39 +0530 Nirbheek Chauhan + + * gst/meson.build: + meson: Fix order of C source and header in mkenums + Otherwise gstenum_h dependencies don't get added properly to gst_dep and + we see racy build failures everywhere. + +2016-12-17 14:35:19 +0000 Tim-Philipp Müller + + * gst/build_mkenum.py: + * gst/gstenumtypes.c.template: + * gst/gstenumtypes.h.template: + * gst/meson.build: + meson: use gnome.mkenums() with template files for enum file gen + Saves us a custom script. Template files are nicer than passing + multiline templating stuff through to glib-mkenums. And we can + get rid of our custom python script. + +2016-12-22 12:05:56 +0200 Sebastian Dröge + + * gst/gstelement.c: + element: Add guard to gst_element_release_pad() to ensure the pad belongs to this element + It's a programming error to pass other pads here, and it easily causes + crashes or other problematic behaviour down the road as subclasses + usually assume to only get their pads. + +2016-12-21 22:18:17 +0100 Stefan Sauer + + * plugins/tracers/gstrusage.c: + gstrusage: explicitly register to hooks + We were attaching to any probe point to take rusage samples. The new refcount + hooks are called way too frequently though to make this still feasible. + +2016-12-21 23:49:11 +0530 Nirbheek Chauhan + + * gst/meson.build: + * meson.build: + * tests/check/meson.build: + meson: Add several missing features from configure.ac + * -Wl,-Bsymbolic-functions + * HAVE_PTHREAD_SETNAME_NP_WITHOUT_TID + * HAVE_POSIX_TIMERS + * HAVE_MONOTONIC_CLOCK + * HAVE_UINT128_T + * HAVE_LONG_LONG + * HAVE_PROCESS_H + * HAVE_GMP + * HAVE_GSL + * HAVE_DLADDR + Also, don't use prefix for checking functions, and only check msvc + functions on Windows. + +2016-12-21 09:33:39 +0530 Nirbheek Chauhan + + * config.h.meson: + * configure.ac: + * meson.build: + build: Remove unused functions + fgetpos, fsetpos, mmap, posix_memalign. None of these are used anywhere + in the codebase. + +2016-12-21 09:00:22 +0530 Nirbheek Chauhan + + * meson.build: + * plugins/tracers/meson.build: + meson: Derive defines from header/function names + This is what Autoconf already does for us, so just do this. Avoids + people making typos while adding header or function checks. Because we + use a config.h.meson, such typos won't even be noticed. + Also, starting from Meson 0.36.0, the XCode 8 workaround that we use for + clock_gettime is no longer needed. + +2016-12-21 10:02:45 +0100 Stefan Sauer + + * tests/check/gst/gststructure.c: + gststructure: simplify test + We can compare structures, that is what the caps fucntion that was used before + would call anyway. + +2016-12-20 21:08:09 +0100 Stefan Sauer + + * gst/gsttracerrecord.h: + tracerrecord: improve the values flags docs + +2016-12-20 21:07:14 +0100 Stefan Sauer + + * plugins/tracers/gstlatency.c: + latency: the latency is not an aggregated value + The logged latencies are individual meassurements. + +2016-12-02 08:29:11 -0300 Thibault Saunier + + * plugins/tracers/gstleaks.c: + * plugins/tracers/gstleaks.h: + leaks: Allow user to set the flags to use to retrieve stack traces + https://bugzilla.gnome.org/show_bug.cgi?id=775541 + +2016-12-01 17:35:45 -0300 Thibault Saunier + + * gst/gstminiobject.c: + * gst/gstobject.c: + * gst/gsttracerutils.c: + * gst/gsttracerutils.h: + * plugins/tracers/gstleaks.c: + * plugins/tracers/gstleaks.h: + leaks: Allow tracing Gst(Mini)Object reffing operations + It makes it much simpler to later debug refcount issues. + https://bugzilla.gnome.org/show_bug.cgi?id=775541 + +2016-11-30 17:05:56 -0300 Thibault Saunier + + * plugins/tracers/gstleaks.c: + leaks: Allow passing a GstStructure to configure the tracer + But keep understanding the simple synthax with a comma separated + list of filters + https://bugzilla.gnome.org/show_bug.cgi?id=775541 + +2016-12-21 00:40:10 +1100 Jan Schmidt + + * plugins/elements/gsttypefindelement.c: + typefind: Switch to normal mode before have-type + Before emitting have-type, switch to NORMAL + mode, as part of the have-type processing sends + the caps event downstream, which might trigger + actions like downstream autoplugging or + flushing seeks - and the latter are only + passed upstream if we've set typefind to NORMAL + mode. + +2016-12-13 21:12:23 +0200 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: Protect against spurious wakeups of the condition variable + +2016-11-30 21:17:55 +0100 Fabrice Bellet + + * libs/gst/base/gstbasesink.c: + basesink: fix a use after free case + The event may be disposed while being pushed, so we make sure the + debug infrastructure won't use it after the gst_pad_push(). + +2016-12-16 18:30:20 +0000 Tim-Philipp Müller + + * libs/gst/check/gstcheck.c: + check: fix typo in docs + +2016-12-16 23:45:08 +0530 Nirbheek Chauhan + + * gst/parse/meson.build: + * meson.build: + meson: Don't search for python3 twice + +2016-12-16 18:14:29 +0000 Tim-Philipp Müller + + * libs/gst/check/Makefile.am: + check: export new global variable + +2016-12-16 13:59:51 -0300 Thibault Saunier + + * libs/gst/check/gstcheck.c: + check: Avoid possible double free + +2016-12-02 11:59:43 -0300 Thibault Saunier + + * libs/gst/check/gstcheck.c: + * libs/gst/check/gstcheck.h: + check: Allow listing unit tests names + Adding options while running gst_check_init + https://bugzilla.gnome.org/show_bug.cgi?id=775540 + +2016-12-15 15:37:45 +0100 Stefan Sauer + + * plugins/tracers/gststats.c: + * tools/gst-stats.c: + tracers/stats: log optional fields instead of GST_CLOCK_TIME_NONE + Simplify the traces and avoid trace analyzer to know that ((1<<64) - 1) means + we had no value. + +2016-12-16 15:05:46 +0100 Josep Torra + + * autogen.sh: + autogen.sh: drop a leftover docbook related bit + +2016-12-08 21:01:52 +1100 Matthew Waters + + * gst/gstvalue.c: + * tests/check/gst/gstvalue.c: + value: add structure intersect/union/is_subset/fixate implementations + Allows proper usage of structures in structures in caps. Subtraction + is not implemented due to complications with empty fields representing + all possible values. + The only implementation that doesn't delegate to the already existing + GstStructure functions is the union function. + https://bugzilla.gnome.org/show_bug.cgi?id=775796 + +2016-12-08 15:41:40 +1100 Matthew Waters + + * tests/check/gst/gststructure.c: + tests/structure: add some more is_subset checks + Explicitly testing extra/missing fields and name differences + +2016-12-14 18:19:00 +0000 Tim-Philipp Müller + + * tests/check/gst/gstmeta.c: + tests: meta: add test for gst_buffer_iterate_meta*() + https://bugzilla.gnome.org/show_bug.cgi?id=775727 + +2016-12-03 13:05:03 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * win32/common/libgstreamer.def: + buffer: add gst_buffer_iterate_meta_filtered() + For convenience. Pretty much every user of + gst_buffer_iterate_meta() filters for a specific + api type. + https://bugzilla.gnome.org/show_bug.cgi?id=775727 + +2016-12-14 15:22:30 +0000 Tim-Philipp Müller + + * gst/gstbuffer.c: + buffer: mark gst_buffer_iterate_meta() as 'skip' for bindings + The pointer state arg won't work well, bindings can use + the foreach function instead. + https://bugzilla.gnome.org/show_bug.cgi?id=775727 + +2016-12-14 06:56:55 +0100 Iñaki García Etxebarria + + * gst/gstevent.c: + g-i: Fix annotations for gst_event_new_select_streams() and gst_event_parse_select_streams() + A gchar is not a string. + https://bugzilla.gnome.org/show_bug.cgi?id=775944 + +2016-12-13 23:25:39 -0800 Reynaldo H. Verdejo Pinochet + + * gst/gstpad.c: + gstpad: only warn on performance penalty if not using the template caps + After b76ecfd992b0d3a423cc9ace5539ecd2ba509d41 introduced + GST_PAD_FLAG_ACCEPT_TEMPLATE, the performance penalty this + message is refering to (the cascading ACCEPT_CAPS query) + only applies to the cases where !GST_PAD_IS_ACCEPT_TEMPLATE + +2016-12-13 20:51:17 +0200 Sebastian Dröge + + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue.h: + * plugins/elements/gstqueue2.c: + * plugins/elements/gstqueue2.h: + queue/queue2: Protect against spurious condition variable wakeups + Make sure that we only wake up when we have to flush, or when this + specific query was handled. + https://bugzilla.gnome.org/show_bug.cgi?id=776039 + +2016-12-13 20:00:55 +0200 Sebastian Dröge + + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + queue/queue2: Ensure that the streaming thread is unlocked after deactivating the srcpad + It might happen that the srcpad task function is never called at all, in + which case unlocking everything from there will never happen. + Make sure to unlock everything another time after the task function is + definitely stopped. + https://bugzilla.gnome.org/show_bug.cgi?id=776039 + +2016-12-12 22:14:24 +0100 Stefan Sauer + + * gst/gststructure.c: + * gst/gstvalue.c: + * tests/check/gst/gstvalue.c: + gstvalue: add serialisation for GTypes + We need this in the GstTracerRecord. This will serialize GTypes to the typename + and vice versa. + +2016-12-13 13:20:09 +0100 Thibault Saunier + + * gst/gstinfo.c: + gst: Fix building with msvc + +2016-12-12 20:55:31 +0000 Tim-Philipp Müller + + * gst/gst.c: + gst: init new flags type in gst_init() + Fix 'make check' some more. + +2016-12-12 19:25:17 +0000 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: update .def file for new API + +2016-11-30 15:10:48 -0300 Thibault Saunier + + info: Add a 'flags' parametter to gst_debug_get_stack_trace + This is an API break but that API has not been released yet. + We are passing a flag rather than a simple boolean as we can imagine + to implement more features in the future for example to retrieve a + stack trace for all the threads, etc.. + Retrieving source file and line numbers is pretty + expensive while getting a stack trace, this new argument + allows the user to decide to retrieve a backtrace + without those infos instead which is much faster. + For example running $ GST_LEAKS_TRACER_STACK_TRACE=1 GST_DEBUG=GST_TRACER:7 \ + GST_TRACERS=leaks time gst-launch-1.0 videotestsrc num-buffers=1 ! fakesink: + * With simple stack traces: + 0.04s user 0.02s system 99% cpu 0.060 total + * With full stack traces: + 0.66s user 0.23s system 96% cpu 0.926 total + https://bugzilla.gnome.org/show_bug.cgi?id=775423 + +2016-12-12 16:19:13 +0100 Edward Hervey + + * plugins/elements/gstfilesrc.c: + filesrc: Set GError in another error case + When changing the location while open, properly set the GError regarding + the failure. + +2016-12-10 18:38:32 +0900 Seungha Yang + + * plugins/elements/gstmultiqueue.c: + multiqueue: Fix overflow on get_buffering_level() + guint64 denominator factor for gst_util_uint64_scale_int() can cause overflow + https://bugzilla.gnome.org/show_bug.cgi?id=775921 + +2016-12-09 19:28:22 -0300 Thibault Saunier + + * meson_options.txt: + * plugins/tracers/meson.build: + meson: Fix build + +2016-12-09 17:55:39 -0300 Thibault Saunier + + * meson.build: + * plugins/tracers/meson.build: + * tests/check/meson.build: + meson: Support building with Gst debug disabled + +2016-12-09 22:39:36 +0530 Nirbheek Chauhan + + * libs/gst/check/libcheck/libcompat/clock_gettime.c: + check: Fix macro check for OS X + TARGET_OS_MAC is defined on all Apple platforms. You need to check for + !TARGET_OS_IPHONE to detect OS X (now called macOS). + +2016-12-09 18:02:15 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Use gst_query_has_scheduling_mode_with_flags() convenience function + +2016-12-09 18:01:35 +0530 Nirbheek Chauhan + + * libs/gst/check/libcheck/libcompat/clock_gettime.c: + check: Don't try to include CoreServices.h on iOS + On iOS, we have MobileCoreServices.h but it's not really needed. + +2016-12-09 17:59:53 +0530 Nirbheek Chauhan + + * config.h.meson: + * libs/gst/check/libcheck/Makefile.am: + * libs/gst/check/libcheck/README.txt: + * libs/gst/check/libcheck/libcompat/malloc.c: + * libs/gst/check/libcheck/libcompat/realloc.c: + * libs/gst/check/libcheck/meson.build: + * m4/check-checks.m4: + check: Don't check for malloc/realloc and try to fallback + When malloc is not available, this will set #define malloc rpl_malloc + which is implemented only inside libcheck, and not everything will link + to libcheck. + We don't really need to care too much about how malloc is implemented + and we don't care about platforms that don't implement malloc. + +2016-12-09 16:03:41 +0530 Nirbheek Chauhan + + * libs/gst/check/libcheck/README.txt: + Add a README.txt with context for libcheck + https://bugzilla.gnome.org/show_bug.cgi?id=775870 + +2016-12-09 15:18:11 +0530 Nirbheek Chauhan + + * config.h.meson: + * libs/gst/check/libcheck/Makefile.am: + * libs/gst/check/libcheck/libcompat/alarm.c: + * libs/gst/check/libcheck/libcompat/clock_gettime.c: + * libs/gst/check/libcheck/libcompat/getline.c: + * libs/gst/check/libcheck/libcompat/gettimeofday.c: + * libs/gst/check/libcheck/libcompat/libcompat.c: + * libs/gst/check/libcheck/libcompat/libcompat.h: + * libs/gst/check/libcheck/libcompat/localtime_r.c: + * libs/gst/check/libcheck/libcompat/malloc.c: + * libs/gst/check/libcheck/libcompat/realloc.c: + * libs/gst/check/libcheck/libcompat/strdup.c: + * libs/gst/check/libcheck/libcompat/strsignal.c: + * libs/gst/check/libcheck/libcompat/timer_create.c: + * libs/gst/check/libcheck/libcompat/timer_delete.c: + * libs/gst/check/libcheck/libcompat/timer_settime.c: + * libs/gst/check/libcheck/meson.build: + * libs/gst/check/meson.build: + * m4/check-checks.m4: + * meson.build: + libcheck: Update the compatibility code and checks + This brings us up-to-speed with the latest compatibility code from upstream + check git. For completeness, we do all the checks that upstream check does, but + we skip the snprintf/vsnprintf code because it's not straightforward (involves + running code and that is bad for cross-compilation) and not necessary for the + platforms we support anyway. + If someone really wants this, they can uncomment this and copy the relevant + checks from the check git repository. + https://bugzilla.gnome.org/show_bug.cgi?id=775870 + +2016-12-09 15:18:11 +0530 Nirbheek Chauhan + + * libs/gst/check/libcheck/Makefile.am: + * libs/gst/check/libcheck/libcompat/alarm.c: + * libs/gst/check/libcheck/libcompat/clock_gettime.c: + * libs/gst/check/libcheck/libcompat/libcompat.c: + * libs/gst/check/libcheck/libcompat/libcompat.h: + * libs/gst/check/libcheck/libcompat/localtime_r.c: + * libs/gst/check/libcheck/libcompat/strsignal.c: + * libs/gst/check/libcheck/libcompat/timer_create.c: + * libs/gst/check/libcheck/libcompat/timer_delete.c: + * libs/gst/check/libcheck/libcompat/timer_settime.c: + * libs/gst/check/libcheck/meson.build: + libcheck: Just move libcompat files to a subdir + Makes it clearer which files are actually used in libcheck and which are used + for cross-platform compatibility. This is going to be especially useful when we + add all the libcompat fallback code that upstream libcheck has which will add + about 6 new files. + https://bugzilla.gnome.org/show_bug.cgi?id=775870 + +2016-12-09 15:18:11 +0530 Nirbheek Chauhan + + * libs/gst/check/libcheck/check.c: + * libs/gst/check/libcheck/check.h.in: + * libs/gst/check/libcheck/check_error.c: + * libs/gst/check/libcheck/check_error.h: + * libs/gst/check/libcheck/check_impl.h: + * libs/gst/check/libcheck/check_list.c: + * libs/gst/check/libcheck/check_list.h: + * libs/gst/check/libcheck/check_log.c: + * libs/gst/check/libcheck/check_log.h: + * libs/gst/check/libcheck/check_msg.c: + * libs/gst/check/libcheck/check_msg.h: + * libs/gst/check/libcheck/check_pack.c: + * libs/gst/check/libcheck/check_pack.h: + * libs/gst/check/libcheck/check_print.c: + * libs/gst/check/libcheck/check_print.h: + * libs/gst/check/libcheck/check_run.c: + * libs/gst/check/libcheck/check_str.c: + * libs/gst/check/libcheck/check_str.h: + libcheck: port to latest check git + Upstream seems to have stopped doing releases, but we need to update for better + Windows and Visual Studio support. + This patch only updates the libcheck sources and ignores the compatibility + sources for now. + https://bugzilla.gnome.org/show_bug.cgi?id=775870 + +2016-12-08 22:03:19 +0100 Stefan Sauer + + * plugins/tracers/gstlog.c: + tracers/log: log more detail + Log the objects like we would in GST_TRACE_OBJECT. Add the hook function into + the fucntion field. + +2016-12-08 22:02:17 +0100 Stefan Sauer + + * plugins/tracers/gstlog.c: + tracer/log: fix hook prototype + s/GstElement/GstPad/ + +2016-12-08 20:20:17 +0100 Stefan Sauer + + * gst/gstpad.c: + tracer: move the PAD_LINK tracer hook to _pad_link_full() + This is ultimately executing the pad_link. In the previous position we missed + some links, notably ghostpads. + +2016-12-07 21:53:49 +0100 Stefan Sauer + + * plugins/tracers/gstlatency.c: + tracer/latency: clear qdata + When reading the qdata, clear it to avoid it being read and unreffed again. + Fixes #774332 + +2016-12-06 22:32:31 +0100 Peter Seiderer + + * gst/gstconfig.h.in: + gstconfig: Fix unaligned access support for arc and nios2 architectures + Fixes buildroot autobuild failures ([1], [2]). + [1] http://autobuild.buildroot.net/results/fbd/fbdcd90635d5ec3a62ad98a7ff93b71b8e5ecde4 + [2] http://autobuild.buildroot.net/results/f3c/f3c9b0ed4ffb114221057237ce22c995b673a98b + https://bugzilla.gnome.org/show_bug.cgi?id=775728 + +2016-11-22 16:52:46 +0900 Seungha Yang + + * docs/gst/gstreamer-sections.txt: + * gst/gsturi.c: + * gst/gsturi.h: + * tests/check/gst/gsturi.c: + * win32/common/libgstreamer.def: + uri: Add new uri API to get media fragments URI as table + As an usecase of URI fragment, it can indicate temporal or spatial + dimension of a media stream. To easily parse key-value pair, + newly added gst_uri_get_media_fragment_table () API will provide + the table of key-value pair likewise URI query. + See also https://www.w3.org/TR/media-frags/ + https://bugzilla.gnome.org/show_bug.cgi?id=774830 + +2016-12-06 16:27:23 +0100 Ricardo Ribalda Delgado + + * libs/gst/helpers/gst: + helpers/gst: Get bash completion options from gst-launch + It is more likely that gst-launch is installed than ges-launch + Reported-by: Marianna Smidth Buschle + https://bugzilla.gnome.org/show_bug.cgi?id=775714 + +2016-12-06 18:06:56 +0000 Tim-Philipp Müller + + * configure.ac: + configure: update for removed docs/design directory + +2016-12-05 18:16:34 -0300 Thibault Saunier + + * docs/Makefile.am: + * docs/design/Makefile.am: + * docs/design/draft-klass.txt: + * docs/design/draft-metadata.txt: + * docs/design/draft-push-pull.txt: + * docs/design/draft-tagreading.txt: + * docs/design/part-MT-refcounting.txt: + * docs/design/part-TODO.txt: + * docs/design/part-activation.txt: + * docs/design/part-buffer.txt: + * docs/design/part-buffering.txt: + * docs/design/part-bufferpool.txt: + * docs/design/part-caps.txt: + * docs/design/part-clocks.txt: + * docs/design/part-context.txt: + * docs/design/part-controller.txt: + * docs/design/part-conventions.txt: + * docs/design/part-dynamic.txt: + * docs/design/part-element-sink.txt: + * docs/design/part-element-source.txt: + * docs/design/part-element-transform.txt: + * docs/design/part-events.txt: + * docs/design/part-framestep.txt: + * docs/design/part-gstbin.txt: + * docs/design/part-gstbus.txt: + * docs/design/part-gstelement.txt: + * docs/design/part-gstghostpad.txt: + * docs/design/part-gstobject.txt: + * docs/design/part-gstpipeline.txt: + * docs/design/part-latency.txt: + * docs/design/part-live-source.txt: + * docs/design/part-memory.txt: + * docs/design/part-messages.txt: + * docs/design/part-meta.txt: + * docs/design/part-miniobject.txt: + * docs/design/part-missing-plugins.txt: + * docs/design/part-negotiation.txt: + * docs/design/part-overview.txt: + * docs/design/part-preroll.txt: + * docs/design/part-probes.txt: + * docs/design/part-progress.txt: + * docs/design/part-push-pull.txt: + * docs/design/part-qos.txt: + * docs/design/part-query.txt: + * docs/design/part-relations.txt: + * docs/design/part-scheduling.txt: + * docs/design/part-seeking.txt: + * docs/design/part-segments.txt: + * docs/design/part-seqnums.txt: + * docs/design/part-sparsestreams.txt: + * docs/design/part-standards.txt: + * docs/design/part-states.txt: + * docs/design/part-stream-selection.txt: + * docs/design/part-stream-status.txt: + * docs/design/part-streams.txt: + * docs/design/part-synchronisation.txt: + * docs/design/part-toc.txt: + * docs/design/part-tracing.txt: + * docs/design/part-trickmodes.txt: + docs: Remove design doc as they have been moved to gst-docs + https://bugzilla.gnome.org/show_bug.cgi?id=775667 + +2016-11-29 17:34:40 -0300 Thibault Saunier + + * gst/gstinfo.c: + info: Properly start and end dwfl sessions when getting stack traces + We were creating a new session to retrive each line of a stack trace + and we are supposed to start it once for a whole stack trace. + And pass the whole file to gst-indent. + https://bugzilla.gnome.org/show_bug.cgi?id=775365 + +2016-12-02 22:47:32 +0100 Marcin Kolny + + * libs/gst/net/gstnetclientclock.c: + net: set clock name in the constructor + gst_net_client_clock_new() and gst_ntp_clock_new() didn't set the + "name" property. + https://bugzilla.gnome.org/show_bug.cgi?id=775538 + +2016-12-05 21:09:52 +0100 Peter Seiderer + + * gst/gstconfig.h.in: + gstconfig: Fix unaligned access support for microblaze and xtensa architectures + Fixes buildroot autobuild failures, for details see: + http://lists.busybox.net/pipermail/buildroot/2016-December/178895.html + https://bugzilla.gnome.org/show_bug.cgi?id=775661 + +2016-12-02 15:30:59 +0000 Tim-Philipp Müller + + * gst/gstmeta.h: + * tests/check/gst/struct_arm.h: + * tests/check/gst/struct_hppa.h: + * tests/check/gst/struct_i386.h: + * tests/check/gst/struct_i386w.h: + * tests/check/gst/struct_ppc32.h: + * tests/check/gst/struct_ppc64.h: + * tests/check/gst/struct_sparc.h: + * tests/check/gst/struct_x86_64.h: + meta: remove unnecessary padding for GstMetaInfo struct + This structure is always allocated by GStreamer, can't be + subclassed or extended, and is never allocated or used on + the stack, so we don't need any padding and can extend it + as we please. + +2016-06-29 19:36:09 +0100 Tim-Philipp Müller + + * plugins/elements/gstelements_private.c: + * plugins/elements/gstelements_private.h: + * plugins/elements/gstfakesink.c: + * plugins/elements/gstidentity.c: + fakesink, identity: print metas attached to buffer in silent=false mode + +2016-12-05 11:01:45 +0200 Sebastian Dröge + + * plugins/elements/gstconcat.c: + * plugins/elements/gsttee.c: + elements: Handle GstIterator RESYNC return value correctly in gst_iterator_foreach() + +2016-12-04 12:15:09 +0100 Stefan Sauer + + * plugins/tracers/gstlog.c: + tracers/log: log messages in message category + +2016-12-03 08:19:08 +0100 Edward Hervey + + * README: + * autogen.sh: + * common: + Automatic update of common submodule + From f980fd9 to 39ac2f5 + +2016-12-01 18:20:11 +0200 Sebastian Dröge + + * gst/gstbin.c: + bin: Make sure to resync iterators and handle RESYNC at all in gst_iterator_foreach() calls + +2016-11-29 18:14:24 +0200 Sebastian Dröge + + * gst/gstclock.c: + clock: Fix offsetting of times_temp relative to the times array + +2016-11-29 10:34:14 -0300 Thibault Saunier + + * meson.build: + meson: Set default debug level to ERROR when running from git + +2016-11-28 19:28:27 +0530 Nirbheek Chauhan + + * gst/meson.build: + * plugins/elements/meson.build: + * tests/check/meson.build: + meson: Add Autotools changes that weren't mirrored + commits: + a7d282d27256ad1d1a55afc37d1db7f60b040089 + 6fdb4df0f8c8a9e39f7f7cb73ab65306fb0517f5 + 1aceebd67f0161806dc3b4b68488d599290f283e + +2016-11-28 14:11:27 +0100 Edward Hervey + + * tests/check/gst/gstpipeline.c: + check/pipeline: Make failure message more informative + This will provide maybe a bit more insight the next time it fails + +2016-11-28 14:00:18 +0100 Edward Hervey + + * tests/check/gst/gstmemory.c: + check/memory: Don't leak the custom allocator + +2016-11-28 13:48:16 +0100 Edward Hervey + + * gst/gstutils.c: + gstutils: Fix a pad leak + When requesting a pad from a template and it's already linked, this + means it was a static pad. Since we only want to return an *available* + pad, we must return NULL ... but we must also remove the reference + we got from getting that static pad. + The "No need to unref" message (which wasn't true for quite some time) + dates back from the very very very first commit introducing the 0.10 + features. + +2016-11-28 09:50:40 +0100 Edward Hervey + + * tests/check/elements/queue2.c: + check: Fix leak in queue2 test + +2016-11-23 15:41:28 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/Makefile.am: + * gst/gst_private.h: + * gst/gstclock-linreg.c: + * gst/gstclock.c: + * gst/gstutils.c: + * gst/gstutils.h: + * tests/check/gst/gstclock.c: + * tests/check/gst/gstutils.c: + * win32/common/libgstreamer.def: + utils: Export linear regression calculation as public function + It is useful outside the GstClock code too. + https://bugzilla.gnome.org/show_bug.cgi?id=774916 + +2016-11-28 11:56:23 +0000 Tim-Philipp Müller + + * .gitignore: + * Makefile.am: + * configure.ac: + * gstreamer.spec.in: + Remove generated gstreamer.spec file + Likely extremely bitrotten, and we should not ship this anyway. + +2016-11-28 11:09:08 +0000 Tim-Philipp Müller + + * docs/plugins/Makefile.am: + * docs/plugins/gstreamer-plugins-docs.sgml: + * docs/plugins/gstreamer-plugins-sections.txt: + * docs/plugins/gstreamer-plugins.args: + * docs/plugins/gstreamer-plugins.hierarchy: + * docs/plugins/gstreamer-plugins.interfaces: + * docs/plugins/inspect/plugin-coreelements.xml: + docs: add dataurisrc to docs and update + https://bugzilla.gnome.org/show_bug.cgi?id=774527 + +2016-11-28 11:10:05 +0000 Tim-Philipp Müller + + * tests/check/elements/filesrc.c: + tests: filesrc: init and clear GCond and mutex + Might otherwise leak on non-Linux systems. + +2016-11-28 11:08:24 +0000 Tim-Philipp Müller + + * tests/check/Makefile.am: + * tests/check/elements/.gitignore: + * tests/check/elements/dataurisrc.c: + tests: rewrite and enable dataurisrc test + Can't use playbin for core unit tests. + https://bugzilla.gnome.org/show_bug.cgi?id=774527 + +2016-11-28 11:07:20 +0000 Tim-Philipp Müller + + * plugins/elements/Makefile.am: + * plugins/elements/gstdataurisrc.c: + * plugins/elements/gstelements.c: + elements: add dataurisrc to build + Moved from -bad. + +2016-11-28 10:42:46 +0000 Tim-Philipp Müller + + * plugins/elements/gstdataurisrc.c: + dataurisrc: fix string leak in property getter + +2016-11-28 11:18:39 +0000 Tim-Philipp Müller + + Move dataurisrc element from -bad + https://bugzilla.gnome.org/show_bug.cgi?id=774527 + +2016-11-28 12:28:28 +0200 Sebastian Dröge + + * gst/gstmessage.c: + message: Ensure that the "debug" field of error/warning/info messages is valid UTF-8 + The caller might pass arbitrary data here that caused the error, and + trying to set invalid UTF-8 in a GstStructure causes it to be not set at + all. Later when trying to parse it, the field will not exist and the + return value will point to invalid memory. Prevent this by storing NULL + instead. + Also print a g_warning(), the caller should never ever do this to begin + with. + +2016-11-26 11:20:51 +0000 Tim-Philipp Müller + + * .gitmodules: + common: use https protocol for common submodule + https://bugzilla.gnome.org/show_bug.cgi?id=775110 + +2016-11-26 11:06:20 +0000 Hanno Boeck + + * scripts/create-uninstalled-setup.sh: + scripts: create-uninstalled-setup: use https protocol to clone repos + The git:// protocol is problematic from a security perspective, as + it provides no authenticity of data. https:// also works better in + environments with restricted network connectivity. + Also add CLONE_OPTS to do shallow checkouts more easily. + https://bugzilla.gnome.org/show_bug.cgi?id=775110 + +2016-11-15 03:03:22 +0800 Ting-Wei Lan + + * meson.build: + meson: Support execinfo.h on FreeBSD by using -lexecinfo + FreeBSD supports execinfo.h and backtrace* functions, but + using them requires linking with -lexecinfo. + Requires sufficiently-new meson with #1053 fixed (post-0.36). + https://bugzilla.gnome.org/show_bug.cgi?id=774424 + +2016-11-23 18:56:20 +0100 Edward Hervey + + * tools/Makefile.am: + tools: Remove files to be cleaned + manpages are no longer auto-generated + cov-related files should not be there (if needed we could use gitignore) + +2016-11-04 18:54:10 -0400 Olivier Crête + + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + basesink: Document the interaction between unlock() and wait_preroll() + This was totally non-obvious, the kind of big problem is that subclasses must + be able to unblock their streaming thread and continue exactly where they left off + on unpause! + https://bugzilla.gnome.org/show_bug.cgi?id=773912 + +2016-11-04 18:46:45 -0400 Olivier Crête + + * plugins/elements/gstelements_private.c: + * plugins/elements/gstelements_private.h: + * plugins/elements/gstfdsink.c: + * plugins/elements/gstfdsink.h: + * plugins/elements/gstfilesink.c: + fdsink: Block in preroll_wait on unlock + The correct behaviour of anything stuck in the ->render() function + between ->unlock() and ->unlock_stop() is to call + gst_base_sink_wait_preroll() and only return an error if this returns an + error, otherwise, it must continue where it left off! + https://bugzilla.gnome.org/show_bug.cgi?id=773912 + +2016-11-23 18:57:17 +0200 Sebastian Dröge + + * gst/gstelement.c: + element: Don't increment NULL pointers + Trivial workaround for coverity false warning. + CID 1394488, 1394487. + +2016-11-23 09:58:44 +0000 Tim-Philipp Müller + + * tools/.gitignore: + * tools/Makefile.am: + tools: fix distcheck and .gitignore + +2016-11-03 10:30:53 +0100 Antonio Ospite + + * tools/meson.build: + meson: tools: install the man pages + https://bugzilla.gnome.org/show_bug.cgi?id=773917 + +2016-11-03 10:30:53 +0100 Antonio Ospite + + * tools/.gitignore: + * tools/Makefile.am: + * tools/gst-inspect-1.0.1: + * tools/gst-launch-1.0.1: + * tools/gst-typefind-1.0.1: + tools: ship the final man pages directly, no more man pages templates + Don't use templates for the man pages, the API version change is a rare + event, so it's not really worth keeping in place the "sed" boilerplate + to have it set at build time. + Shipping the final man pages directly also makes it easer to install the + man pages with meson (in a future commit). + Note that now all the occurrences of the programs names have the API + version as a suffix. + Traditionally the example command lines looked like: + gst-launch ... + Now they look like: + gst-launch-1.0 ... + This reflects the actual programs names and makes it easier to copy and + paste the example commands. + Also, the .gitignore file is adjusted not to ignore the final man pages + anymore. + You may need to clean your src/build directory before pulling in this + patch. + https://bugzilla.gnome.org/show_bug.cgi?id=773917 + +2016-11-18 13:09:21 +1100 Matthew Waters + + * docs/libs/gstreamer-libs-docs.sgml: + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/controller/Makefile.am: + * libs/gst/controller/gstproxycontrolbinding.c: + * libs/gst/controller/gstproxycontrolbinding.h: + * libs/gst/controller/meson.build: + * tests/check/libs/controller.c: + * win32/common/libgstcontroller.def: + controllers: add new proxy control binding + Allows proxying the control interface from one property on one GstObject + to another property (of the same type) in another GstObject. + E.g. in a parent-child relationship, one may need to + gst_object_sync_values() on the child and have a binding (set elsewhere) + on the parent update the value. + Note: that this doesn't solve GObject property forwarding and must be + taken care of by the implementation manually or using GBinding. + https://bugzilla.gnome.org/show_bug.cgi?id=774657 + +2016-10-07 11:39:26 +0100 Julien Isorce + + * gst/gstmemory.c: + * tests/check/gst/gstmemory.c: + memory: log with GST_INFO instead GST_ERROR when subclass map failed. + Add unit test to ensure that. + It can be a normal execution path to do some map trials and there is + no need to worry the user in that case. + The application has to check the return value of gst_memory_map. + https://bugzilla.gnome.org/show_bug.cgi?id=765600 + +2016-11-17 17:37:16 +0200 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + basetransform: Ensure to set the RECONFIGURE flag again if reconfiguration failed + It might've failed just because of flushing or other things, and we + should retry again on the next possibility if something ever calls in + here again. + https://bugzilla.gnome.org/show_bug.cgi?id=774623 + +2016-11-17 16:39:52 -0800 Scott D Phillips + + * meson.build: + meson: add_global_arguments -> add_project_arguments + https://bugzilla.gnome.org/show_bug.cgi?id=774656 + +2016-11-16 23:19:28 +1100 Jan Schmidt + + * plugins/elements/gstmultiqueue.c: + multiqueue: Make sure not-linked streams get woken up + When running in sync-by-running-time mode, pad groups + that have exactly 1 pad and it's not-linked might never + wake up after computing a high time, as the per-pad-group + high time was only recomputed when a pad in the group + advances. + Wake those up using the global multiqueue high-time across + all other groups instead. + https://bugzilla.gnome.org/show_bug.cgi?id=774322 + +2016-11-16 10:55:29 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + * gst/gstbin.h: + * gst/gstelement.h: + * gst/gstutils.h: + docs: misc fixes + +2016-11-16 10:51:48 +0000 Tim-Philipp Müller + + * gst/gstutils.h: + utils: use temp var in fallback GST_WRITE_*() macros + To make sure the value is only expanded/used once, in case + there are side effects to it, and to avoid calculating it + or looking it up multiple times if there is a calculation + or lookup involved. + +2016-11-16 00:30:26 +1100 Jan Schmidt + + * libs/gst/base/gstbaseparse.c: + baseparse: Fix previous commit + Check the correct segment format value. + parse->segment.format is the format we're outputting in, + not the upstream format. Use parse->priv->upstream_format instead, + and make sure it's set in pull mode. + +2016-11-15 23:51:06 +1100 Jan Schmidt + + * libs/gst/base/gstbaseparse.c: + baseparse: Restrict query/convert responses when demuxing + If the parser is not parsing a raw elementary stream, restrict + the position, duration and conversion query replies to + things we can sensibly answer about - especially don't do + random conversions to/from bytes. + +2016-11-15 22:39:43 +1100 Jan Schmidt + + * plugins/elements/gstdownloadbuffer.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gsttypefindelement.c: + queues: Don't return negative position queries. + When subtracting queued data sizes from upstream queries + in queue, queue2, downloadbuffer and typefind, clamp the + result to not go negative, in case upstream returned + a nonsense value that's too small (as could happen if + upstream is estimating, or just broken) + +2016-11-14 11:27:05 -0800 Scott D Phillips + + * gst/gstbuffer.c: + * gst/gstprotection.c: + * libs/gst/net/gstnetaddressmeta.c: + * libs/gst/net/gstnetcontrolmessagemeta.c: + Cast away const from GstMetaInfo in *_get_meta_info() functions + MSVC warns about the const in the implicit argument conversion in the + calls to g_once_init_{enter,leave}. It's OK so explicitly cast it. + https://bugzilla.gnome.org/show_bug.cgi?id=774293 + +2016-11-14 11:32:51 -0800 Scott D Phillips + + * libs/gst/base/gsttypefindhelper.c: + typefindhelper: Update prototype of helper_find_suggest() + forward declaration prototype is updated to match the change in: + 5a72c23 Change some types to match their prototypes + https://bugzilla.gnome.org/show_bug.cgi?id=774293 + +2016-11-14 21:28:22 +0000 Tim-Philipp Müller + + * Makefile.am: + * configure.ac: + * win32/MANIFEST: + * win32/README.txt: + * win32/common/config.h: + * win32/common/gstconfig.h: + * win32/common/gstenumtypes.c: + * win32/common/gstenumtypes.h: + * win32/common/gstversion.h: + win32: remove copies of generated headers + +2016-11-14 21:18:13 +0000 Tim-Philipp Müller + + * configure.ac: + * docs/Makefile.am: + * docs/htmlinstall.mak: + * docs/image-eps: + * docs/image-pdf: + * docs/image-png: + * docs/manuals.mak: + * docs/slides/Makefile.am: + * docs/slides/README: + * docs/slides/abstract: + * docs/slides/abstract.save: + * docs/slides/outline: + * docs/slides/slides: + * docs/url.entities: + * docs/xsl/Makefile.am: + * docs/xsl/admon.xsl: + * docs/xsl/css.xsl: + * docs/xsl/fileext.xsl: + * docs/xsl/fo.xsl: + * docs/xsl/html.xsl: + * docs/xsl/keycombo.xsl: + * docs/xsl/ulink.xsl: + docs: remove more docbook build cruft that's no longer needed + +2016-11-14 21:29:43 +0100 Stefan Sauer + + * docs/README: + docs/README: remove more outdated pieces of info/advice + +2016-10-20 22:32:50 +0200 Stefan Sauer + + * docs/design/part-tracing.txt: + * scripts/gst-plot-traces.sh: + scripts/gst-plot-traces.sh: make log parsing a bit more solid + Use grep -o to grab the log message only. This makes it work with colored log + files too. Prefilter the log to not catch tracer classes. + Update the commandline for the script in the docs. + +2016-10-20 15:38:46 -0300 Thibault Saunier + + * gst/printf/meson.build: + * libs/gst/check/libcheck/meson.build: + * meson.build: + meson: require meson 0.36 and use new `pic` arg on static libs + Removes a meson warning and some special casing we had. + +2016-11-11 10:30:44 -0800 Scott D Phillips + + * gst/gstevent.h: + * gst/gsttask.c: + * libs/gst/base/gsttypefindhelper.c: + Change some types to match their prototypes + Particularly note that the underlying integer type of the enum + GstTypeFindProbability is implementation dependent and may not match + guint. + https://bugzilla.gnome.org/show_bug.cgi?id=774293 + +2016-11-14 18:04:28 +0000 Tim-Philipp Müller + + * 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: + po: update for new translatable strings + +2016-11-14 17:46:07 +0000 Tim-Philipp Müller + + * Makefile.am: + * autogen.sh: + * configure.ac: + * docs/Makefile.am: + * docs/README: + * docs/faq/.gitignore: + * docs/faq/Makefile.am: + * docs/faq/base.css: + * docs/faq/dependencies.xml: + * docs/faq/developing.xml: + * docs/faq/faq.xml: + * docs/faq/general.xml: + * docs/faq/getting.xml: + * docs/faq/git.xml: + * docs/faq/legal.xml: + * docs/faq/start.xml: + * docs/faq/troubleshooting.xml: + * docs/faq/using.xml: + * gstreamer.spec.in: + docs: remove FAQ which was moved into gst-docs module + +2015-04-29 12:34:49 +0200 Nicola Murino + + * scripts/gst-uninstalled: + gst-uninstalled: add GIO_EXTRA_MODULES + In case glib is installed into local prefix dir. + https://bugzilla.gnome.org/show_bug.cgi?id=748626 + +2016-11-12 12:36:05 +0000 Tim-Philipp Müller + + * gst/gstutils.h: + utils: faster GST_WRITE_* macros if unaligned access is possible + https://bugzilla.gnome.org/show_bug.cgi?id=599546 + +2016-11-11 20:31:03 +0000 Tim-Philipp Müller + + * gst/parse/grammar.y: + parse: better error message when linking two elements with capsfilter fails + https://bugzilla.gnome.org/show_bug.cgi?id=760550 + +2016-11-11 16:11:15 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstinfo.c: + * gst/gstinfo.h: + * win32/common/libgstreamer.def: + Add gst_print(), gst_println(), gst_printerr(), gst_printerrln() + Useful for debugging. + https://bugzilla.gnome.org/show_bug.cgi?id=766470 + +2016-11-11 10:23:17 -0800 Scott D Phillips + + * gst/gsttaglist.c: + taglist: remove `return void` in gst_tag_register + MSVC warns on this and the documentation about the warning says: + > The compiler assumes the function returns a value of type int + which is a little scary, so lets just remove the unnecessary 'return' + https://bugzilla.gnome.org/show_bug.cgi?id=774293 + +2016-05-09 15:32:43 +0200 Nicolas Huet + + * tests/check/libs/adapter.c: + tests: add unit test for gst_adapter_prev_pts_at_offset() + https://bugzilla.gnome.org/show_bug.cgi?id=765662 + +2016-04-27 10:57:29 +0200 Nicolas Huet + + * libs/gst/base/gstadapter.c: + adapter: fix distance when getting prev pts/dts at offset + https://bugzilla.gnome.org/show_bug.cgi?id=765662 + +2016-10-26 22:38:07 -0700 Scott D Phillips + + * meson.build: + meson: don't add_global_arguments when being built as a subproject + https://bugzilla.gnome.org/show_bug.cgi?id=773568 + +2016-07-21 10:52:30 +0200 Guillaume Desmottes + + * libs/gst/base/gstbasetransform.c: + basetransform: fix pool leak when early returning in decide_allocation + https://bugzilla.gnome.org/show_bug.cgi?id=769023 + +2016-07-27 13:39:50 +0200 Guillaume Desmottes + + * gst/gstinfo.c: + info: add GstStream and GstStreamCollection support to gst_debug_print_object() + https://bugzilla.gnome.org/show_bug.cgi?id=769220 + +2016-08-12 08:03:41 +0900 Seungha Yang + + * libs/gst/base/gstbasesrc.c: + basesrc: Support PROTECTION event from application + Application may want to send PROTECTION event to the src element. + https://bugzilla.gnome.org/show_bug.cgi?id=769775 + +2016-11-03 13:34:18 +0100 Antonio Ospite + + * tools/meson.build: + meson: tools: generate the targets dynamically + The three targets are the same except for input and output + files, use a loop and generate them dynamically. + https://bugzilla.gnome.org/show_bug.cgi?id=773917 + +2016-11-03 15:21:05 +0100 Antonio Ospite + + * tools/gst-inspect.1.in: + * tools/gst-typefind.1.in: + tools: don't mention gst-feedback in man pages + gst-feedback no longer exists. + https://bugzilla.gnome.org/show_bug.cgi?id=773917 + +2016-11-03 00:18:21 +0100 Antonio Ospite + + * tools/gst-launch.1.in: + tools: put the examples descriptions before the commands in man page + Put the description of the example command lines before the command + instead of after them. The new way is more intuitive. + https://bugzilla.gnome.org/show_bug.cgi?id=773917 + +2016-11-02 22:56:01 +0100 Antonio Ospite + + * tools/gst-launch.1.in: + tools: don't start lines with single quotes in man page + When a line starts with a single quote it's treated in a special way by + man, which may result in paragraphs of the man page not rendered by the + man pager, so just avoid that. + A possible solution could have been to escape the singe quote with + a \(cq sequence but this is rather unreadable, instead the text has been + reformatted to have the problematic quoted 'ppc' string on the previous + line. + https://bugzilla.gnome.org/show_bug.cgi?id=773917 + +2016-11-02 22:36:27 +0100 Antonio Ospite + + * tools/gst-inspect.1.in: + * tools/gst-launch.1.in: + * tools/gst-typefind.1.in: + tools: escape dashes in the man pages + The portable way to have the dashes to be rendered as ASCII minuses is + to use the sequence backslash-dash, use this style at least for text + that can be copied and pasted (e.g. command names, file names, element + options). + Also use backslash-dash in the NAME section as suggested by lexgrog(1). + https://bugzilla.gnome.org/show_bug.cgi?id=773917 + +2016-11-11 04:42:30 +0530 Nirbheek Chauhan + + * libs/gst/net/meson.build: + meson: Fir dependencies of gstnet-1.0 + It depends on gst_base_dep which will pull in gst_dep + +2016-11-11 04:41:39 +0530 Nirbheek Chauhan + + * libs/gst/base/meson.build: + meson: Add GstBase-1.0.gir to gst_base_dep + Without this, GIR generators can't find and use it + +2016-11-10 13:42:46 +0000 Tim-Philipp Müller + + * libs/gst/base/gstbaseparse.c: + * win32/common/libgstbase.def: + baseparse: add since marker for new API to docs and fix win32 .def file + +2016-11-10 12:47:37 +0000 Vincent Penquerc'h + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbaseparse.h: + * win32/common/libgstbase.def: + baseparse: expose gst_base_parse_drain + +2016-11-09 14:07:28 -0300 Thibault Saunier + + * libs/gst/base/meson.build: + * libs/gst/controller/meson.build: + * libs/gst/net/meson.build: + meson: Advertise dependency on gst_dep generating girs + And do not simply link to libgst as the gir information + location only exist in declare_dependecy + https://bugzilla.gnome.org/show_bug.cgi?id=774044 + +2016-11-08 17:09:53 +0100 Victor Toso + + * tests/misc/netclock-replay.c: + tests: Fix compile warning on mingw64 + In file included from ../../libs/gst/net/gstntppacket.c:35:0, + from netclock-replay.c:25: + ../../config.h:546:0: error: "__MSVCRT_VERSION__" redefined [-Werror] + #define __MSVCRT_VERSION__ 0x0601 + In file included from /usr/x86_64-w64-mingw32/sys-root/mingw/include/crtdefs.h:10:0, + from /usr/x86_64-w64-mingw32/sys-root/mingw/include/stdio.h:9, + from netclock-replay.c:21: + /usr/x86_64-w64-mingw32/sys-root/mingw/include/_mingw.h:220:0: note: + this is the location of the previous definition + # define __MSVCRT_VERSION__ 0x0700 + https://bugzilla.gnome.org/show_bug.cgi?id=774108 + +2016-11-09 11:37:09 +0200 Sebastian Dröge + + * plugins/elements/gstfunnel.c: + funnel: Make sure to only lock the stream lock once + We also only unlock it once, and otherwise have it locked forever from + this thread, causing deadlocks on shutdown later. + +2016-11-08 16:58:53 +0100 Victor Toso + + * gst/gstpoll.c: + pool: Fix compiler warning on mingw64 + gstpoll.c: In function 'release_event': + gstpoll.c:239:3: error: suggest parentheses around assignment used as + truth value [-Werror=parentheses] + if (status = WaitForSingleObject (set->wakeup_event, INFINITE)) { + ^~ + https://bugzilla.gnome.org/show_bug.cgi?id=774108 + +2016-11-04 21:15:58 +0000 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: update .def for new API + +2016-11-04 10:19:17 -0300 Thibault Saunier + + * meson.build: + meson: Unset the plugin paths to generate the .gir files + Avoiding problems when using subproject: + Failed to load plugin 'something.so: file too short + +2016-10-10 16:40:21 +0200 Thibault Saunier + + * gst/gstinfo.c: + debug: Remove the Gst only based stack trace printing implementation + We now have 2 other implementations that should work better. + https://bugzilla.gnome.org/show_bug.cgi?id=772555 + +2016-10-07 12:02:44 +0200 Thibault Saunier + + * plugins/tracers/Makefile.am: + * plugins/tracers/gstleaks.c: + * plugins/tracers/meson.build: + tracers: leaks: Use the new gst_debug_get_stack_trace + And remove the local implementation of it. + https://bugzilla.gnome.org/show_bug.cgi?id=772555 + +2016-10-07 11:38:27 +0200 Thibault Saunier + + * config.h.meson: + * configure.ac: + * docs/gst/gstreamer-sections.txt: + * gst/Makefile.am: + * gst/gstinfo.c: + * gst/gstinfo.h: + * gst/meson.build: + * meson.build: + * plugins/tracers/meson.build: + gst: Use libunwind/libdw to generate backtraces if avalaible + Making the gst_debug_print_trace function more generally useful. + API: + + gst_debug_get_trace + https://bugzilla.gnome.org/show_bug.cgi?id=772555 + +2016-11-02 13:57:51 +0100 Antonio Ospite + + * tools/gst-launch.c: + tools: gst-launch: fix minor memory leak when failing to parse options + Commit 215cfcf99338 (gstreamer: Fix memory leaks when context parse + fails) fixes some memory leak, but in one of the newly added calls to + g_clear_error() the wrong variable was passed. + When failing to parse command line options, free the "err" variable, not + the "error" one. + https://bugzilla.gnome.org/show_bug.cgi?id=773907 + +2016-11-03 15:22:34 -0400 Nicolas Dufresne + + * libs/gst/base/gstbasesink.c: + basesink: Make sure we never drop the preroll buffer + This is cosmetic as 'late' should never be set during preroll (in pause). + Though code may evolve in the future, so this is good for preventing + potential bugs. + https://bugzilla.gnome.org/show_bug.cgi?id=772468 + +2016-10-05 14:26:11 -0400 Nicolas Dufresne + + * libs/gst/base/gstbasesink.c: + basesink: Don't nest prepare/render calls + When the first buffer arrives, we endup calling: + ->prepare() + ->prepare() + ->preroll() + ->render() + This will likely confuse any element using this method. With this patch, + we ensure the preroll take place before the first render prepare() is + called. This will result in: + ->prepare() + ->preroll() + ->prepare() + ->render() + https://bugzilla.gnome.org/show_bug.cgi?id=772468 + +2016-11-02 16:27:58 +0000 Luis de Bethencourt + + * libs/gst/base/gstbasesink.c: + basesink: fix typo in documentation + Small typo in the documentatin of gst_base_sink_set_drop_out_of_segment(). + Fixing it. + +2016-11-02 16:35:59 +0200 Sebastian Dröge + + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + basesink: Fix gst_base_sink_set_drop_out_of_segment() documentation + Also silences a GI warning. + +2016-11-02 14:11:43 +0530 Nirbheek Chauhan + + * libs/gst/check/libcheck/clock_gettime.c: + clock_gettime.c: Use __APPLE__ instead of __MACH__ + Hurd also defines __MACH__, but it does not have mach_absolute_time. Use + the more strict __APPLE__ instead. + Has also been sent upstream: https://github.com/libcheck/check/pull/65 + +2016-11-02 14:01:38 +0530 Nirbheek Chauhan + + * m4/check-checks.m4: + build: Fix AM_CONDITIONAL check for clock_gettime + It was always evaluating to false, so clock_gettime.c was always being + included into libcheck. This breaks building on Hurd and causes us to + always override clock_gettime() even when it is available. + https://bugzilla.gnome.org/show_bug.cgi?id=773813 + +2016-11-02 10:12:58 +0200 Sebastian Dröge + + * gst/meson.build: + gst: Also include the gstdynamictypefactory.c source file in the build + +2016-11-02 10:04:01 +0200 Sebastian Dröge + + * gst/Makefile.am: + * gst/meson.build: + gst: Install gstdynamictypefactory.h header file + +2016-11-02 09:35:05 +0200 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + Revert "baseparse: fix draining with less data than min frame size available" + This reverts commit 2e278aeb7128e8732f5324ab8c8b22a47950c80a. + Some parsers, specifically audio parsers, assume to get all remaining + data on EOS and just pass them onwards. While the idea here is correct, + we will probably need a property for this on baseparse for parsers to + opt-in. + https://bugzilla.gnome.org/show_bug.cgi?id=773666 + +2015-06-26 03:29:27 +1000 Jan Schmidt + + * gst/parse/grammar.y: + * gst/parse/parse.l: + * gst/parse/types.h: + * tests/check/pipelines/parse-launch.c: + * tools/gst-launch.1.in: + parse-launch: Support linking all pads with new operator + Introduce a new operator ':' - e.g. element1 ':' element2 + For example, 'uridecodebin : encodebin' - + if the encodebin has multiple profiles compatible with the + decodebin, multiple links will be created. + With '!' , after one delayed link is successfully done, the + pad-added callback is disconnected. + https://bugzilla.gnome.org/show_bug.cgi?id=751450 + +2016-11-02 11:32:42 +1100 Jan Schmidt + + * libs/gst/base/gstbasesink.c: + * win32/common/libgstbase.def: + Add new basesink API to exports and Since markers + Add Since markers to the new basesink API to drop + out-of-segment buffers, and add them to the + win32 exports + +2015-05-14 00:25:21 +1000 Jan Schmidt + + * gst/Makefile.am: + * gst/gst.h: + * gst/gst_private.h: + * gst/gstdynamictypefactory.c: + * gst/gstdynamictypefactory.h: + * gst/gstelementfactory.h: + * gst/gstregistrybinary.c: + * gst/gstregistrychunks.c: + * gst/gstregistrychunks.h: + * gst/gststructure.c: + * gst/gstvalue.c: + * win32/common/libgstreamer.def: + dynamic types: Implement dynamic types in the registry + Implement GstDynamicTypeFactory as a new registry feature. + GstDynamicTypeFactory provides a way of registering a GType + into the registry, such that it will be registered as a dynamic + type when the registry is loaded, and then automatically loaded + if the type is needed during caps parsing. + This allows using non-core types in pad templates, by loading a + registry feature to create the GType on the fly. + https://bugzilla.gnome.org/show_bug.cgi?id=750079 + +2016-04-29 02:38:49 +1000 Jan Schmidt + + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + * plugins/elements/gstfakesink.c: + fakesink: Add property to not drop out-of-segment buffers + Implement handling in basesink to not unconditionally discard + out-of-segment buffers and expose it as a new property on fakesink + (not unconditionally in all basesink based sinks). + The property defaults to FALSE. + https://bugzilla.gnome.org/show_bug.cgi?id=765734 + +2016-11-01 23:54:05 +0200 Sebastian Dröge + + * gst/gstvalue.c: + value: Update GstValue table size for GValueArray + +2016-07-07 19:41:49 +0300 Sebastian Dröge + + * plugins/elements/gstfunnel.c: + funnel: Always push all sticky events whenever we forward a serialized event + Otherwise downstream will have an inconsistent set of sticky events at this + point, e.g. when a TAG event is pushed and downstream wants to relate it to + the stream by looking at the current STREAM_START event. + https://bugzilla.gnome.org/show_bug.cgi?id=768526 + +2016-03-29 10:38:05 +0300 Sebastian Dröge + + * plugins/elements/gsttee.c: + tee: Set GST_PAD_FLAG_PROXY_CAPS before forwarding sticky events + https://bugzilla.gnome.org/show_bug.cgi?id=752213 + +2016-10-29 11:17:38 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbaseparse.c: + baseparse: fix draining with less data than min frame size available + baseparse would pass whatever is left in the adapter to the + subclass when draining, even if it's less than the minimum + frame size required. This is bogus, baseparse should just + discard that data then. The original intention of that code + seems to have been that if we have more data available than + the minimum required we should pass all of the data available + and not just the minimum required, which does make sense, so + we'll continue to do that in the case that more data is available. + Fixes assertions in rawvideoparse on EOS after not-negotiated with + fakesrc sizetype=random ! queue ! rawvideoparse format=rgb ! appsink caps=video/x-raw,format=I420 + https://bugzilla.gnome.org/show_bug.cgi?id=773666 + +2015-10-29 22:51:18 +0100 Stian Selnes + + * gst/gstinfo.c: + info: Replace %p and %r in GST_DEBUG_FILE + It's useful to be able to set a name pattern for GST_DEBUG_FILE so that + the same environment variable can be used for multiple processes and + still write to different files. Especially useful if these processes + run simultaneously. + %p: Replaced with PID + %r: Replaced with random number + %p is obviously useful. %r is useful when for instance running two + processes with same PID but in different containers. + https://bugzilla.gnome.org/show_bug.cgi?id=773092 + +2013-05-02 10:09:29 +0200 Stian Selnes + + * gst/gst.c: + * gst/gstregistry.c: + registry: set env GST_REGISTRY_DISABLE=yes to disable registry + If GST_REGISTRY_DISABLE=yes the registry is disabled similar to + compile time switch GST_DISABLE_REGISTRY. + https://bugzilla.gnome.org/show_bug.cgi?id=773089 + +2015-11-11 16:43:40 +0100 Stian Selnes + + * gst/gstvalue.c: + gstvalue: Make GValueArray serializable + For instance very useful for logging GValueArray with GST_PTR_FORMAT + https://bugzilla.gnome.org/show_bug.cgi?id=761918 + +2016-04-29 16:26:49 +0900 Wonchul Lee + + * gst/gstelement.c: + * gst/gstpadtemplate.c: + * tests/check/gst/gstelement.c: + * tests/check/gst/gstpad.c: + element: Allow multiple conversion specifiers for request pads + This allows pad template names like "src_%u_%u", but it does not allow + multiple specifiers of string type %s as that would lead to ambiguities. + https://bugzilla.gnome.org/show_bug.cgi?id=761225 + +2015-11-05 17:13:25 -0300 Thiago Santos + + * gst/gstpad.c: + * gst/gstpad.h: + pad: add no-reconfigure link check + Enable it to prevent sending reconfigure when linking elements. + Useful for autoplugging when we know caps or bufferpools shouldn't change + to save doing caps renegotiation to end up with the same final scenario. + The no-reconfigure is not a proper check, it is a flag. It is implemented + as a GstPadLinkCheck to avoid creating another gst_pad_link variant. + https://bugzilla.gnome.org/show_bug.cgi?id=757653 + +2016-11-01 18:08:18 +0000 Tim-Philipp Müller + + * meson.build: + meson: update version + +2016-11-01 17:35:18 +0000 Tim-Philipp Müller + + * configure.ac: + * docs/Makefile.am: + * docs/manual/.gitignore: + * docs/manual/Makefile.am: + * docs/manual/README: + * docs/manual/advanced-autoplugging.xml: + * docs/manual/advanced-buffering.xml: + * docs/manual/advanced-clocks.xml: + * docs/manual/advanced-dataaccess.xml: + * docs/manual/advanced-dparams.xml: + * docs/manual/advanced-interfaces.xml: + * docs/manual/advanced-metadata.xml: + * docs/manual/advanced-position.xml: + * docs/manual/advanced-threads.xml: + * docs/manual/appendix-checklist.xml: + * docs/manual/appendix-compiling.xml: + * docs/manual/appendix-integration.xml: + * docs/manual/appendix-licensing.xml: + * docs/manual/appendix-porting.xml: + * docs/manual/appendix-programs.xml: + * docs/manual/appendix-quotes.xml: + * docs/manual/base.css: + * docs/manual/basics-bins.xml: + * docs/manual/basics-bus.xml: + * docs/manual/basics-data.xml: + * docs/manual/basics-elements.xml: + * docs/manual/basics-helloworld.xml: + * docs/manual/basics-init.xml: + * docs/manual/basics-pads.xml: + * docs/manual/basics-plugins.xml: + * docs/manual/bin-element-ghost.png: + * docs/manual/bin-element-noghost.png: + * docs/manual/bin-element.png: + * docs/manual/clocks.png: + * docs/manual/communication.png: + * docs/manual/diagrams-clocks.svg: + * docs/manual/diagrams-general.svg: + * docs/manual/diagrams-pipelines.svg: + * docs/manual/filter-element-multi.png: + * docs/manual/filter-element.png: + * docs/manual/gstreamer-overview.png: + * docs/manual/hello-world.png: + * docs/manual/highlevel-playback.xml: + * docs/manual/highlevel-xml.xml: + * docs/manual/images/.gitignore: + * docs/manual/intro-basics.xml: + * docs/manual/intro-gstreamer.xml: + * docs/manual/intro-motivation.xml: + * docs/manual/intro-preface.xml: + * docs/manual/linked-elements.png: + * docs/manual/manual.xml: + * docs/manual/mime-world.png: + * docs/manual/outline.txt: + * docs/manual/simple-player.png: + * docs/manual/sink-element.png: + * docs/manual/src-element.png: + * docs/manual/state-diagram.svg: + * docs/manual/thread-buffering.png: + * docs/manual/thread-synchronizing.png: + * docs/manual/titlepage.xml: + * docs/pwg/.gitignore: + * docs/pwg/Makefile.am: + * docs/pwg/advanced-allocation.xml: + * docs/pwg/advanced-clock.xml: + * docs/pwg/advanced-dparams.xml: + * docs/pwg/advanced-events.xml: + * docs/pwg/advanced-interfaces.xml: + * docs/pwg/advanced-negotiation.xml: + * docs/pwg/advanced-qos.xml: + * docs/pwg/advanced-request.xml: + * docs/pwg/advanced-scheduling.xml: + * docs/pwg/advanced-tagging.xml: + * docs/pwg/advanced-types.xml: + * docs/pwg/appendix-checklist.xml: + * docs/pwg/appendix-licensing.xml: + * docs/pwg/appendix-porting.xml: + * docs/pwg/appendix-python.xml: + * docs/pwg/base.css: + * docs/pwg/building-boiler.xml: + * docs/pwg/building-chainfn.xml: + * docs/pwg/building-eventfn.xml: + * docs/pwg/building-pads.xml: + * docs/pwg/building-props.xml: + * docs/pwg/building-queryfn.xml: + * docs/pwg/building-signals.xml: + * docs/pwg/building-state.xml: + * docs/pwg/building-testapp.xml: + * docs/pwg/intro-basics.xml: + * docs/pwg/intro-preface.xml: + * docs/pwg/other-base.xml: + * docs/pwg/other-manager.xml: + * docs/pwg/other-ntoone.xml: + * docs/pwg/other-oneton.xml: + * docs/pwg/other-sink.xml: + * docs/pwg/other-source.xml: + * docs/pwg/pwg.xml: + * docs/pwg/titlepage.xml: + * tests/examples/Makefile.am: + * tests/examples/manual/.gitignore: + * tests/examples/manual/Makefile.am: + * tests/examples/manual/extract.pl: + docs: remove app dev manual and plugin writer's guide + They have moved to gst-docs and will be maintained there in future. + +=== release 1.11.0 === + +2016-11-01 18:53:15 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.10.0 === + +2016-11-01 17:50:24 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstversion.h: + Release 1.10.0 + +2016-11-01 17:40:11 +0200 Sebastian Dröge + + * po/nb.po: + Update .po files + +2016-11-01 17:38:43 +0200 Sebastian Dröge + + * po/nb.po: + po: Update translations + +2016-11-01 17:36:02 +0200 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 + +2016-10-25 12:21:07 +0530 Nirbheek Chauhan + + * meson.build: + * meson_options.txt: + meson: Add an option to explicitly disable gtk-doc + Similar to how Autotools provides an option, default is 'enabled'. + +2016-10-24 11:45:38 -0400 Nicolas Dufresne + + * libs/gst/base/gstcollectpads.c: + Revert "collectpads: Assume PTS is equal DTS if PTS is missing" + This reverts commit 9b0d42ceecb3198399d7e05e3d5f080a7ca27ca9. + https://bugzilla.gnome.org/show_bug.cgi?id=762207 + +2016-10-18 11:59:25 -0400 Nicolas Dufresne + + * gst/gstallocator.c: + allocator: Mark registered allocator for leak + +2016-06-21 08:00:30 -0500 Andrew Eikum + + * gst/gstmessage.h: + gstmessage.h: Avoid gcc bit shift overflow compiler warning + Avoids bit shift overflow warning with gcc6. + https://bugzilla.gnome.org/show_bug.cgi?id=767882 (glib) + https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71803 (gcc) + https://bugzilla.gnome.org/show_bug.cgi?id=767883 + +2016-10-23 22:11:08 +0100 Tim-Philipp Müller + + * gst/parse/grammar.y: + parse: fix erroneous use of _("") + Fixes xgettext warnings when doing 'make update-po': + gst/parse/grammar.y:217: warning: Empty msgid. It is reserved by GNU gettext: + gettext("") returns the header entry with + meta information, not the empty string. + +2016-10-22 17:05:44 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-docs.sgml: + * docs/libs/gstreamer-libs-docs.sgml: + docs: add index for API new in 1.10 + +2016-10-22 17:05:25 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-docs.sgml: + * docs/libs/gstreamer-libs-docs.sgml: + docs: add index for API new in 1.8 + +2016-10-21 15:40:47 +0200 Jesper Larsen + + * libs/gst/base/gstadapter.c: + adapter: Fix mix-up between DTS and PTS + https://bugzilla.gnome.org/show_bug.cgi?id=773319 + +2016-10-21 15:22:28 +0300 Sebastian Dröge + + * plugins/elements/gstqueue.c: + Revert "queue: Fix race when calculating cur_level.time" + This reverts commit d03bd547809f849405a3f706920091d9b03147b0. + It breaks the unit test, although it ensures that only correct values + are used for calculations. Needs to be fixed up. + https://bugzilla.gnome.org/show_bug.cgi?id=773096 + +2016-10-20 17:19:25 -0300 Thibault Saunier + + * gst/printf/meson.build: + * libs/gst/check/libcheck/meson.build: + * meson.build: + Revert "meson: Use the new `pic` argument on static libs" + This reverts commit a5752240a178c2c651ed10167025fad8b9c4e7bd. + pic was added after 0.35 and will be present in 0.36 (meson + documentation was wrong). + +2016-10-20 15:38:46 -0300 Thibault Saunier + + * gst/printf/meson.build: + * libs/gst/check/libcheck/meson.build: + * meson.build: + meson: Use the new `pic` argument on static libs + We depend on meson 0.35 which makes it simpler to handle + Removes a meson warning + +2016-09-14 14:23:56 +0200 Stian Selnes + + * plugins/elements/gstqueue.c: + queue: Fix race when calculating cur_level.time + On the first buffer, it's possible that sink_segment is set but + src_segment has not been set yet. If this is the case, we should not + calculate cur_level.time since sink_segment.position may be large and + src_segment.position default is 0, with the resulting diff being larger + than max-size-time, causing the queue to start leaking (if + leaky=downstream). + One potential consequence of this is that the segment event may be + stored on the srcpad before the caps event is pushed downstream, causing + a g_warning ("Sticky event misordering, got 'segment' before 'caps'"). + https://bugzilla.gnome.org/show_bug.cgi?id=773096 + +2016-09-27 00:00:30 +1000 Matthew Waters + + * gst/gstelement.c: + element: use g_strcmp0 in set_context + It's NULL-safe while the libc implementation may not be. + https://bugzilla.gnome.org/show_bug.cgi?id=771773 + +2016-09-26 23:59:29 +1000 Matthew Waters + + * gst/gstelement.c: + element: check for invalid gstcontext's being provided to set_context + https://bugzilla.gnome.org/show_bug.cgi?id=771773 + +2016-10-18 09:38:04 +0530 Nirbheek Chauhan + + * configure.ac: + * meson.build: + build: Apply XCode 8 workaround for iOS too + clock_gettime was also added for iOS 10.0, so don't use it if we're + targetting an older version. That would've caused the symbol to not be + found at runtime on older devices. + +2016-10-15 21:49:21 +0530 Nirbheek Chauhan + + * meson.build: + meson: Don't use c_std=c99 + Just use the default c_std used by the compiler. With GCC on Linux this + is gnu89. + Tons of errors related to time.h, signal.h, etc when using c99: + FAILED: libs/gst/check/libcheck/check@sta/check_run.c.o + cc '-Ilibs/gst/check/libcheck/check@sta' '-fdiagnostics-color=always' '-I../libs/gst/check/libcheck' '-Ilibs/gst/check/libcheck' '-I.' '-I../.' '-Ilibs/gst/check/libcheck/..' '-I../libs/gst/check/libcheck/..' '-pipe' '-Wall' '-Winvalid-pch' '-std=c99' '-DHAVE_CONFIG_H' '-fPIC' '-O2' '-g' '-fPIC' '-MMD' '-MQ' 'libs/gst/check/libcheck/check@sta/check_run.c.o' '-MF' 'libs/gst/check/libcheck/check@sta/check_run.c.o.d' -o 'libs/gst/check/libcheck/check@sta/check_run.c.o' -c ../libs/gst/check/libcheck/check_run.c + In file included from ../libs/gst/check/libcheck/check_run.c:21:0: + ../libs/gst/check/libcheck/libcompat.h:167:18: warning: ‘struct itimerspec’ declared inside parameter list will not be visible outside of this definition or declaration + const struct itimerspec *new_value, struct itimerspec *old_value); + ^~~~~~~~~~ + ../libs/gst/check/libcheck/check_run.c:98:25: error: array type has incomplete element type ‘struct sigaction’ + static struct sigaction old_action[3]; + ^~~~~~~~~~ + ../libs/gst/check/libcheck/check_run.c:99:25: error: array type has incomplete element type ‘struct sigaction’ + static struct sigaction new_action[3]; + ^~~~~~~~~~ + [...] + ninja: build stopped: subcommand failed. + The change was originally made because gnu99 was causing issues on OS X. + +2016-10-14 11:59:24 +0200 Thibault Saunier + + * plugins/tracers/gststats.c: + stats: Fix warning + +2016-10-04 09:20:37 -0300 Thibault Saunier + + * libs/gst/helpers/meson.build: + * meson.build: + * tests/check/meson.build: + meson: Make use of new environment object and set plugin path to builddir + - Properly set where to find gst-plugin-scanner + - Use GST_LOADING_WHITELIST so that only core plugins are used + Bump meson requirement to 0.35 + +2016-10-13 18:20:58 +0200 Sebastian Dröge + + * gst/gstcontrolbinding.c: + * gst/gstcontrolbinding.h: + controlbinding: Store object in a thread-safe GWeakRef + g_object_weak_ref() is not thread-safe. + +2016-10-13 18:02:38 +0200 Sebastian Dröge + + * libs/gst/controller/gstargbcontrolbinding.c: + argbcontrolbinding: gst_object_replace() is transfer none + +2016-10-13 18:01:14 +0200 Sebastian Dröge + + * libs/gst/controller/gstdirectcontrolbinding.c: + directcontrolbinding: Clarify in the documentation what the difference between absolute and not is + +2016-10-13 17:55:45 +0200 Sebastian Dröge + + * gst/gstcontrolsource.c: + controlsource: Remove misleading sentence from the documentation + control sources are not required to return values between 0.0 and 1.0. + This is completely up to the control binding that is used. + +2016-10-13 17:21:30 +0200 Sebastian Dröge + + * gst/gstobject.c: + object: Fix broken sentence structure in docs + +2016-10-13 12:18:12 +0100 Vincent Penquerc'h + + * plugins/tracers/gststats.c: + tracers: fix structure leak + https://bugzilla.gnome.org/show_bug.cgi?id=772851 + +2016-10-13 12:03:20 +0200 Edward Hervey + + * gst/gststreams.h: + streams: Extend GstStreamType documentation + Users shouldn't assume it will be a single value since it's a flag. + +2016-10-03 20:22:53 +0530 Nirbheek Chauhan + + * configure.ac: + * m4/check-checks.m4: + * meson.build: + build: Fix clock_gettime check with XCode 8 + With XCode 8, clock_gettime will be incorrectly detected as being + available regardless of what OS X version we're targetting because the + symbol is available in the .tbd library as a weak symbol. + See: https://github.com/Homebrew/homebrew-core/issues/3727#issue-170086273 + It's only starting from macOS 10.12 that clock_gettime is actually + available, so we can unconditionally disable it when targetting older + versions. We cannot simply do AC_CHECK_FUNCS with -Wl,-no_weak_imports + because the autoconf check does its own prototype declaration that + doesn't trigger that compiler flag. + https://bugzilla.gnome.org/show_bug.cgi?id=772451 + +2016-10-11 12:12:57 +0200 Edward Hervey + + * gst/gstbin.h: + bin: Add a new GST_BIN_FLAG_STREAMS_AWARE flag + This flag is to indicate to child elements that they can add and + remove pads at any point in time without re-adding existing ones. + Elements should post before-hand a GST_MESSAGE_STREAM_COLLECTION + https://bugzilla.gnome.org/show_bug.cgi?id=772741 + +2016-10-10 10:59:26 +0100 Tim-Philipp Müller + + * docs/gst/running.xml: + docs: paths in env vars are separated by semicolons on windows + https://bugzilla.gnome.org/show_bug.cgi?id=772431 + +2016-10-07 17:02:47 +0200 Guillaume Desmottes + + * docs/design/part-tracing.txt: + docs: fix GST_LEAKS_TRACER_SIG doc + The documentation wasn't mentioning the SIGUSR2 signal. + https://bugzilla.gnome.org/show_bug.cgi?id=772571 + +2016-10-08 17:23:08 +0200 Edward Hervey + + * gst/gstbin.c: + bin: Fix iterator resync'ing + When we get GST_ITERATOR_RESYNC, we need to call gst_iterator_resync() + otherwise we will always get GST_ITERATOR_RESYNC (and that loop would + run forever). + +2016-10-08 13:54:42 +0200 Edward Hervey + + * plugins/elements/gstqueue2.c: + queue2: Implement gst_event_full_func handling + Same as we do for queue + +2016-10-08 13:20:58 +0200 Stefan Sauer + + * plugins/tracers/gstrusage.c: + tracer/rusage: fix format string args + The format string contains a process id, but we did not provice one. This + caused us to log garbage since all args got shifted. + +2016-10-01 16:47:05 +0300 Sebastian Dröge + + * gst/gstmessage.c: + message: Fix typo in gst_message_new_progress() docs + test -> text + +2016-09-30 09:57:57 -0300 Thibault Saunier + + * hooks/pre-commit.hook: + * meson.build: + meson: Setup pre-commit hooks when configuring + +2016-09-30 11:38:37 +0100 Tim-Philipp Müller + + * meson.build: + meson: update version + +=== release 1.9.90 === + +2016-09-30 13:01:17 +0300 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstversion.h: + Release 1.9.90 + +2016-09-30 12:08:52 +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 + +2016-09-30 11:41:14 +0300 Sebastian Dröge + + * po/de.po: + po: Update translations + +2016-09-27 18:00:47 +0100 Tim-Philipp Müller + + * meson.build: + * plugins/tracers/meson.build: + meson: tracers: signal availability of libunwind and backtrace() to code + Not setting cdata here on purpose because of .. complications. + +2016-09-26 18:21:19 -0300 Thibault Saunier + + * config.h.meson: + * meson.build: + * plugins/meson.build: + * plugins/tracers/meson.build: + meson: Build tracers + +2016-09-23 20:40:39 -0300 Thibault Saunier + + * docs/gst/meson.build: + * docs/libs/meson.build: + * docs/meson.build: + meson: Fix gtkdoc using new meson features + +2016-09-26 12:14:14 +0100 Tim-Philipp Müller + + * tests/check/gst/gstbuffer.c: + * tests/check/gst/gstmemory.c: + * tests/check/gst/gstmeta.c: + tests: remove unused valgrind stuff + Code was also checking the wrong define anyway. + +2016-09-26 12:12:12 +0100 Tim-Philipp Müller + + * tests/check/Makefile.am: + * tests/check/pipelines/parse-launch.c: + tests: parse-launch: looks clean nowadays, so re-enable for valgrind + Also, the valgrind bits weren't hooked up properly anyway, + checking the wrong define. + +2016-09-24 18:22:26 +0100 Tim-Philipp Müller + + * config.h.meson: + * meson.build: + meson: remove incorrect and unneeded check for ptrdiff_t + Need to include stddef.h for it, so this would've worked: + if cc.has_type('ptrdiff_t', prefix: '#include ') + +2016-09-24 18:06:31 +0100 Tim-Philipp Müller + + * gst/printf/meson.build: + meson: fix internal printf for %ll format modifier on 32-bit systems + gst/gstprintf unit test would fail on 32-bit x86 with: + gstprintf.c:83:printf_I32_I64:0: 'str' (64-bit x value = b5a6978f) is not equal to '"64-bit x value = f1e2d3c4b5a6978f"' + +2016-09-23 04:19:47 +0530 Nirbheek Chauhan + + * gst/meson.build: + Revert "meson: Force gstenum_h to be built when using gst_dep" + This reverts commit cfc565e2d88a8e7d656b68c5c2a1b7acb08cdb7f. + The commit was redundant since gst_gen_sources already contains + gstenum_h. We're still investigating why some people are still seeing + a racy build failure. + +2016-09-23 00:28:53 +0530 Nirbheek Chauhan + + * gst/meson.build: + meson: Force gstenum_h to be built when using gst_dep + This forces gstenumtypes.h to be built whenever something uses gst_dep + as a subproject dependency. This is needed since gst/gst.h includes + gstenumtypes.h + Closes https://github.com/mesonbuild/meson/issues/714 which is not + actually a Meson bug. + +2016-09-19 10:07:51 -0400 Sebastian Dröge + + * gst/gstbin.c: + bin: Add forgotten "git commit --amend" for last commit + Need to cast away the const as g_queue_foreach() takes a non-const GQueue* + +2016-09-19 10:04:55 -0400 Kouhei Sutou + + * gst/gstbin.c: + bin: When copying the sort iterator, also copy its internal queue + Otherwise both iterators share the same references, the second one + usually resulting in a crash when being freed. + https://bugzilla.gnome.org/show_bug.cgi?id=771649 + +2016-09-11 15:28:43 +0200 Carlos Rafael Giani + + * tests/check/elements/queue2.c: + queue2: Fix watermark test + This carries over code for a similar test from multiqueue to ensure full + control over the dataflow while testing. (The previous attempt was racy + since the fill level changed without any thread sync with the test code.) + https://bugzilla.gnome.org/show_bug.cgi?id=771210 + +2016-09-11 15:26:26 +0200 Carlos Rafael Giani + + * plugins/elements/gstqueue2.c: + queue2: Update buffering if its enabled and low/high watermarks are changed + https://bugzilla.gnome.org/show_bug.cgi?id=771210 + +2016-09-15 17:38:49 +0530 Arun Raghavan + + * gst/gstmessage.c: + message: Fix documentation for gst_message_new_duration() + Seems like there was some documentation left over from when this was + gst_message_new_duration(). + +2016-09-12 17:41:16 +0200 Sebastian Dröge + + * libs/gst/base/gstbasesink.c: + basesink: Remove unused fields and always use the buffer timestamp difference for calculating the QoS proportion + The buffer timestamps are only hints and more often than not have + nothing to do with reality. + https://bugzilla.gnome.org/show_bug.cgi?id=771306 + +2016-09-08 12:58:54 +0530 Nirbheek Chauhan + + * configure.ac: + * gst/gstconfig.h.in: + * meson.build: + gstconfig: Use __declspec when built with MinGW and linking with MSVC + Earlier we were only using __declspec(dllexport/import) when we were + built with MSVC because when built with MinGW and linking with MinGW we + don't need it (and we get linker errors because of it). + However, when we're built with MinGW and someone wants to link to us + with MSVC, we still need the prototypes to have __declspec(dllimport) + since MSVC cannot do auto-import like GCC can. + https://bugzilla.gnome.org/show_bug.cgi?id=771029 + +2016-09-12 17:07:09 +0200 Sebastian Dröge + + * gst/gstbin.c: + bin: Also don't *unset* element flags if they're in the suppressed flags + Otherwise our bin might lose various flags that were explicitly set on + it at arbitrary times. + +2016-09-10 11:59:11 -0300 Thiago Santos + + * tests/check/gst/gstbin.c: + tests: gstbin: add tests for suppressed flags + Some simple tests to make sure it keeps working + +2016-09-02 17:39:17 +0900 Wonchul Lee + + * gst/gstbin.c: + * gst/gstbin.h: + * win32/common/libgstreamer.def: + bin: Add setter and getter to suppress element flags + Suppress-flags is for preventing propagation of child element's specific + flag when it is added to the bin. + https://bugzilla.gnome.org/show_bug.cgi?id=770627 + +2016-09-10 20:50:48 +1000 Jan Schmidt + + * autogen.sh: + * common: + Automatic update of common submodule + From b18d820 to f980fd9 + +2015-11-13 16:00:02 +0000 Graham Leggett + + * gst/gst.c: + gst: Ensure gst_value is initialised before gst_tag + Otherwise GST_TYPE_FRACTION will work correctly in tags. + https://bugzilla.gnome.org/show_bug.cgi?id=753922 + +2016-09-09 11:46:11 +0300 Sebastian Dröge + + * gst/gstutils.c: + element: Reset the stop position to NONE in seek_simple() + When using seek_simple() in combination with other kinds of seeks, this + becomes problematic. seek_simple() does not reset the stop position to + GST_CLOCK_TIME_NONE but keeps whatever a previous seek did. So for example + when doing a seek_simple() after a rate=-1 seek, we would usually get + assertions that start>stop (and stop being the old stop from the rate=1 seek). + https://bugzilla.gnome.org/show_bug.cgi?id=771104 + +2016-09-10 09:53:42 +1000 Jan Schmidt + + * autogen.sh: + * common: + Automatic update of common submodule + From f49c55e to b18d820 + +2016-09-09 09:36:40 -0300 Thibault Saunier + + * tests/check/meson.build: + meson:tests: Bump timeout to 3 minutes + Basically we already have each test with a 20sec timeout, + and testsuite can last more than the default 30secs from + meson. 3 minutes is another arbitrary timeout but should + be good enough. + +2016-09-08 15:19:38 +0300 Sebastian Dröge + + * libs/gst/base/gstbasesink.c: + basesink: Use the average durations based on timestamps for the QoS proportion when doing trickmodes + The durations of the buffers are (usually) assuming that no frames are being + dropped and are just the durations coming from the stream. However if we do + trickmodes, frames are being dropped regularly especially if only key units + are supposed to be played. + Fixes completely bogus QoS proportion values in the above case. + +2016-09-05 18:07:49 -0300 Thibault Saunier + + * meson.build: + meson: Fix building with meson 0.34 + +2016-08-26 20:06:59 -0300 Thibault Saunier + + * gst/meson.build: + * meson.build: + * meson_options.txt: + meson: Allow others to build GIR files when using GStreamer as subproject + And add a way to disable the introspection and bump version to 1.9.2 + +2016-09-05 11:11:29 +0300 Sebastian Dröge + + * gst/gstconfig.h.in: + gstconfig.h.in: Add another version of the SH4 #define and S390x + https://bugzilla.gnome.org/show_bug.cgi?id=770731 + +2016-09-05 09:50:17 +0200 Wim Taymans + + * gst/gstconfig.h.in: + config: newer gcc doesn't know __ppc__ and __ppc64__ anymore + __ppc__ and __ppc64__ are non-standard defines, we should use + __powerpc__ and __powerpc64__ instead because newer gcc doesn't know + them anymore. + +2016-09-04 20:39:31 +0100 Tim-Philipp Müller + + * tools/gst-inspect.c: + tools: gst-inspect: add * for pointer signal arguments where needed + Print GObject argument properly with pointer marker: + "client-added" : void user_function (GstElement* object, + GObject* arg0, + gpointer user_data); + instead of + "client-added" : void user_function (GstElement* object, + GObject arg0, + gpointer user_data); + for gst-inspect-1.0 tcpserversink. + +2016-09-02 23:22:17 +0100 Tim-Philipp Müller + + * tests/Makefile.am: + tests: don't build misc subdir if both examples and benchmarks have been disabled + https://bugzilla.gnome.org/show_bug.cgi?id=770740 + +2016-09-01 14:13:40 +0200 Wim Taymans + + * gst/gstconfig.h.in: + config: support System z + +2016-09-01 12:25:23 +0300 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.9.2 === + +2016-09-01 12:24:45 +0300 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/gstreamer-plugins.args: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstversion.h: + Release 1.9.2 + +2016-09-01 11:22:45 +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: + po: Update translations + +2016-08-31 09:49:03 +0200 Carlos Rafael Giani + + * plugins/elements/gstmultiqueue.c: + * tests/check/elements/multiqueue.c: + multiqueue: Add higher-resolution low/high-watermark properties + low/high-watermark are of type double, and given in range 0.0-1.0. This + makes it possible to set low/high watermarks with greater resolution, + which is useful with large multiqueue max sizes and watermarks like 0.5%. + Also adding a test to check the fill and watermark level behavior. + https://bugzilla.gnome.org/show_bug.cgi?id=770628 + +2016-08-31 09:48:53 +0200 Carlos Rafael Giani + + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstmultiqueue.h: + multiqueue: Distinguish between buffering percentage and buffering level + To make the code clearer, and to facilitate future improvements, introduce + a distinction between the buffering level and the buffering percentage. + Buffering level: the queue's current fill level. The low/high watermarks + are in this range. + Buffering percentage: percentage relative to the low/high watermarks + (0% = low watermark, 100% = high watermark). + To that end, get_percentage() is renamed to get_buffering_level(). Also, + low/high_percent are renamed to low/high_watermark to avoid confusion. + mq->buffering_percent values are now normalized in the 0..100 range for + buffering messages inside update_buffering(), and not just before sending + the buffering message. Finally the buffering level range is parameterized + by adding a new constant called MAX_BUFFERING_LEVEL. + https://bugzilla.gnome.org/show_bug.cgi?id=770628 + +2016-08-31 09:48:38 +0200 Carlos Rafael Giani + + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstmultiqueue.h: + multiqueue: Rename percent/percent_changed to buffering_percent(_changed) + This is a prerequisite for subsequent commits, and makes queue2 and + multiqueue code a little more consistent. + https://bugzilla.gnome.org/show_bug.cgi?id=770628 + +2016-08-23 14:57:33 +0900 Edward Hervey + + * plugins/elements/gstmultiqueue.c: + multiqueue: Fix high_time wakeup logic + When calculating the high_time, cache the group value in each singlequeue. + This fixes the issue by which wake_up_next_non_linked() would use the global + high-time to decide whether to wake-up a waiting thread, instead of the group + one, resulting in those threads constantly spinning. + Tidy up a bit the waiting logic while we're at it. + With this patch, we go from 212% playing a 8 audio / 8 video file down to less + than 10% (most of it being the video decoding). + https://bugzilla.gnome.org/show_bug.cgi?id=770225 + +2016-08-28 16:02:14 +0100 Tim-Philipp Müller + + * tools/gst-inspect.c: + tools: gst-inspect: don't print internal pad request function name + This just confuses people, they look at it and try to call it + directly by name, instead of using the public GstElement API. + It stands to reason that it goes without saying that when an + element provides request pads that they can actually be + requested using the standard API, and there's no point in + printing internal implementation details of the element. + +2016-08-23 13:27:58 -0300 Thibault Saunier + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * plugins/elements/gstdownloadbuffer.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gsttypefindelement.c: + Make use of the new GST_ELEMENT_FLOW_ERROR API all around. + https://bugzilla.gnome.org/show_bug.cgi?id=770158 + +2016-08-23 13:27:20 -0300 Thibault Saunier + + * docs/gst/gstreamer-sections.txt: + * gst/gstelement.h: + element: Add API to more easily post messages about flowing issues + In many parts of the code we raise streaming error when the flow + goes wrong, and each time we create more or less similare error + message. Also that message does not let the application know what + has actually gone wrong. In the new API we add a "flow-return" detail + field inside the GstMessage so that the application has all the information + if it needs it. + API: + GST_ELEMENT_FLOW_ERROR + https://bugzilla.gnome.org/show_bug.cgi?id=770158 + +2016-08-26 19:27:22 +0530 Nirbheek Chauhan + + * configure.ac: + * gst/gstconfig.h.in: + * meson.build: + gstconfig: Decide GST_EXPORT declaration style at build time + We only use GST_EXPORT consistently when building with MSVC by using the + visual studio definitions files (win32/common/*.def), so always disable + it when building with Autotools and only enable it with Meson when + building with MSVC. + This allows you to use MinGW to link to a GStreamer built with MSVC and + get the correct function prototypes to find functions and variables in + DLLs. + +2016-08-26 16:21:30 +0900 Wonchul Lee + + * docs/design/part-stream-selection.txt: + docs: fix typo in stream selection docs + https://bugzilla.gnome.org//show_bug.cgi?id=770428 + +2016-08-26 12:55:04 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstelement.c: + * gst/gstelement.h: + * win32/common/libgstreamer.def: + element: rename gst_element_message_new_details() to gst_make_element_message_details() + Fixes g-i warning "Gst: Constructor return type mismatch + symbol='gst_element_message_new_details' constructed='Gst.Element' + return='Gst.Structure'". + This is a newly-added function in git that has not been in a stable + release yet, so it's fine to rename it. It's also only used indirectly + via macros. + +2016-08-26 12:35:23 +0100 Tim-Philipp Müller + + * gst/gstelement.c: + * gst/gstmessage.c: + * gst/gsttracerutils.c: + docs: fix various gtk-doc warnings + e.g. "warning: multi-line since docs found" + +2016-08-26 12:04:33 +0100 Tim-Philipp Müller + + * gst/gstinfo.c: + g-i: info: allow passing NULL to gst_debug_remove_log_function() + Useful for removing the default handler from bindings. + +2016-08-25 15:04:06 -0300 Thibault Saunier + + * docs/gst/meson.build: + * docs/libs/meson.build: + * meson.build: + meson: doc: Fix building documentation when using subprojects + and check the presence of gtk-doc before building the documentation + +2016-08-26 03:17:41 +1000 Jan Schmidt + + * gst/gstvalue.c: + * tests/check/gst/gstvalue.c: + value: Implement can_intersect for GstFlagSet types + Make sure that gst_value_can_intersect returns TRUE + for GstFlagSet combinations that can successfully + intersect + +2016-08-03 15:20:20 +0200 Carlos Rafael Giani + + * plugins/elements/gstqueue2.c: + * plugins/elements/gstqueue2.h: + * tests/check/elements/queue2.c: + queue2: Add higher-resolution low/high-watermark properties + low/high-watermark are of type double, and given in range 0.0-1.0. This + makes it possible to set low/high watermarks with greater resolution, + which is useful with large queue2 max sizes and watermarks like 0.5%. + Also adding a test to check the fill and watermark level behavior. + https://bugzilla.gnome.org/show_bug.cgi?id=769449 + +2016-08-03 15:27:40 +0200 Carlos Rafael Giani + + * plugins/elements/gstqueue2.c: + queue2: Distinguish between buffering percentage and buffering level + To make the code clearer, and to facilitate future improvements, introduce + a distinction between the buffering level and the buffering percentage. + Buffering level: the queue's current fill level. The low/high watermarks + are in this range. + Buffering percentage: percentage relative to the low/high watermarks + (0% = low watermark, 100% = high watermark). + To that end, get_buffering_percent() is renamed to get_buffering_level(), + and the code at the end that transforms to the buffering percentage is + factored out into a new convert_to_buffering_percent() function. Also, + the buffering level range is parameterized by adding a new constant called + MAX_BUFFERING_LEVEL. + https://bugzilla.gnome.org/show_bug.cgi?id=769449 + +2016-08-23 10:52:32 +0100 Tim-Philipp Müller + + * docs/random/release: + docs: release: add tag signing command + +2016-07-07 08:01:24 +0200 Arjen Veenhuizen + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * win32/common/libgstreamer.def: + buffer: add explicit getters and setters for buffer flags + These can be used from bindings. + https://bugzilla.gnome.org/show_bug.cgi?id=768301 + +2016-08-22 00:01:46 +0100 Tim-Philipp Müller + + * libs/gst/check/meson.build: + meson: install libgstcheck-1.0 and add api version to name + +2016-08-20 08:54:27 +0900 Hoonhee Lee + + * gst/gststreams.c: + streams: update and emit notify signal only if taglist actually changed + https://bugzilla.gnome.org/show_bug.cgi?id=770161 + +2016-08-12 20:25:17 +0530 Nirbheek Chauhan + + * .gitignore: + * config.h.meson: + * docs/gst/meson.build: + * docs/libs/meson.build: + * docs/meson.build: + * gst/build_mkenum.py: + * gst/meson.build: + * gst/parse/gen_grammar.py.in: + * gst/parse/gen_lex.py.in: + * gst/parse/meson.build: + * gst/printf/meson.build: + * libs/gst/base/meson.build: + * libs/gst/check/libcheck/meson.build: + * libs/gst/check/meson.build: + * libs/gst/controller/meson.build: + * libs/gst/helpers/meson.build: + * libs/gst/meson.build: + * libs/gst/net/meson.build: + * libs/meson.build: + * meson.build: + * meson_options.txt: + * pkgconfig/meson.build: + * plugins/elements/meson.build: + * plugins/meson.build: + * po/meson.build: + * tests/benchmarks/meson.build: + * tests/check/meson.build: + * tests/examples/adapter/meson.build: + * tests/examples/controller/meson.build: + * tests/examples/helloworld/meson.build: + * tests/examples/memory/meson.build: + * tests/examples/meson.build: + * tests/examples/netclock/meson.build: + * tests/examples/ptp/meson.build: + * tests/examples/stepping/meson.build: + * tests/examples/streamiddemux/meson.build: + * tests/examples/streams/meson.build: + * tests/meson.build: + * tests/misc/meson.build: + * tools/meson.build: + Add support for Meson as alternative/parallel build system + https://github.com/mesonbuild/meson + With contributions from: + Tim-Philipp Müller + Mathieu Duponchelle + Jussi Pakkanen (original port) + Highlights of the features provided are: + * Faster builds on Linux (~40-50% faster) + * The ability to build with MSVC on Windows + * Generate Visual Studio project files + * Generate XCode project files + * Much faster builds on Windows (on-par with Linux) + * Seriously fast configure and building on embedded + ... and many more. For more details see: + http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.html + http://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html + Building with Meson should work on both Linux and Windows, but may + need a few more tweaks on other operating systems. + +2016-08-13 13:55:15 +0100 Tim-Philipp Müller + + * gst/Makefile.am: + * pkgconfig/gstreamer.pc.in: + Move gstconfig.h back to normal include dir + Now that it's arch-independent again. Will need fixes in cerbero too. + +2016-06-21 18:59:49 +0530 Nirbheek Chauhan + + * configure.ac: + * gst/gstconfig.h.in: + gstconfig.h: Detect unaligned access support at compile-time + This makes gstconfig.h completely arch-independent. Should cover all + compilers that gstreamer is known to build on, and all architectures + that I could find information on. People are encouraged to file bugs if + their platform/arch is missing. + +2016-08-13 09:55:46 +0100 Tim-Philipp Müller + + * Makefile.am: + * configure.ac: + * docs/gst/gstreamer-sections.txt: + * gst/Makefile.am: + * gst/gst.c: + * gst/gstclock.c: + * gst/gstconfig.h.in: + * gst/gstminiobject.c: + * gst/gstobject.c: + * gst/gsttrace.c: + * gst/gsttrace.h: + * po/POTFILES.in: + * tests/check/Makefile.am: + * win32/common/gstconfig.h: + * win32/common/libgstreamer.def: + Remove old alloc tracing code now that we have a GstTracer-based replacement + It's been internal API only in 1.x. + +2016-08-12 16:15:25 +0200 Edward Hervey + + * plugins/elements/gstqueue2.c: + queue2: Post buffering messages earlier in ringbuffer mode + In ringbuffer mode we need to make sure we post buffering messages *before* + blocking to wait for data to be drained. + Without this, we would end up in situations like this: + * pipeline is pre-rolling + * Downstream demuxer/decoder has pushed data to all sinks, and demuxer thread + is blocking downstream (i.e. not pulling from upstream/queue2). + * Therefore pipeline has pre-rolled ... + * ... but queue2 hasn't filled up yet, therefore the application waits for + the buffering 100% messages before setting the pipeline to PLAYING + * But queue2 can't post that message, since the 100% message will be posted + *after* there is room available for that last buffer. + https://bugzilla.gnome.org/show_bug.cgi?id=769802 + +2016-08-08 16:42:06 +0200 Josep Torra + + * plugins/elements/gstmultiqueue.c: + multiqueue: removed redundant call to g_thread_self + Remove an unneeded call to g_thread_self and minor coding style fix. + +2016-03-16 18:00:15 +1100 Jan Schmidt + + * plugins/elements/gstinputselector.c: + inputselector: Handle stream-group-done + Handle the new stream-group-done message to unblock pads which + are waiting for the running time to advance on that group. + https://bugzilla.gnome.org/show_bug.cgi?id=768995 + +2016-03-14 14:20:42 +1100 Jan Schmidt + + * docs/gst/gstreamer-sections.txt: + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstpad.c: + * gst/gstquark.c: + * gst/gstquark.h: + * tests/check/gst/gstevent.c: + * win32/common/libgstreamer.def: + events: Implement the stream-group-done event + A new event which precedes EOS in situations where we + need downstream to unblock any pads waiting on a stream + before we can send EOS. E.g, decodebin draining a chain + so it can switch pads. + https://bugzilla.gnome.org/show_bug.cgi?id=768995 + +2016-07-25 11:22:36 +0200 Carlos Rafael Giani + + * docs/gst/gstreamer-sections.txt: + * gst/gstmessage.c: + * gst/gstmessage.h: + * gst/gstquark.c: + * gst/gstquark.h: + * tests/check/gst/gstmessage.c: + * win32/common/libgstreamer.def: + message: Add redirect message + Redirection messages are already used in fragmented sources and in + uridecodebin, so it makes sense to introduce these as an official message + type. + https://bugzilla.gnome.org/show_bug.cgi?id=631673 + +2016-07-25 19:15:15 +1000 Jan Schmidt + + * plugins/elements/gstinputselector.c: + inputselector: Wake other pads when selected goes EOS + Other pads that are waiting for the stream on the selected + pad to advance before they finish waiting themselves + should be given the chance to do so when the selected pad + goes EOS. Fixes problems where input streams can end up + waiting forever if the active stream goes EOS earlier than + their own end time. + +2016-07-24 01:35:41 +0100 Tim-Philipp Müller + + * gst/gstelement.h: + element: fix GST_ELEMENT_ERROR() error code expansion + In some corner cases, the error 'code' part passed to + GST_ELEMENT_ERROR() is a valid define as well, in which + case it won't survive two levels of macro expansion, but + only one. Fixes: + oss4-sink.c: In function ‘gst_oss4_sink_open’: + error: ‘GST_RESOURCE_ERROR_0x00000002’ undeclared (first use in this function) + GST_ ## domain ## _ERROR_ ## code, __txt, __dbg, __FILE__, + which is from GST_ELEMENT_ERROR(el,RESOURCE,OPEN_WRITE,..) + and OPEN_WRITE happens to be defined to 2 here. + https://bugzilla.gnome.org/show_bug.cgi?id=756806 + https://bugzilla.gnome.org/show_bug.cgi?id=769117 + +2016-07-22 17:32:33 +0100 Tim-Philipp Müller + + * gst/gstmessage.c: + message: fix some nonsensical annotations + +2016-07-22 15:25:09 +0100 Vincent Penquerc'h + + * docs/gst/gstreamer-sections.txt: + docs: add GST_ELEMENT_*_WITH_DETAILS to doc list + +2016-07-22 15:04:58 +0100 Vincent Penquerc'h + + * docs/gst/gstreamer-sections.txt: + docs: list new message details apis where they seem to belong + +2016-07-22 14:59:56 +0100 Vincent Penquerc'h + + * win32/common/libgstreamer.def: + libgstreamer.def: fix mentions of new message details api + I had not updated it after the review changes + +2016-03-02 11:22:23 +0000 Vincent Penquerc'h + + * gst/gstelement.c: + * gst/gstelement.h: + * gst/gstmessage.c: + * gst/gstmessage.h: + * tests/check/gst/gstmessage.c: + * win32/common/libgstreamer.def: + message: new API for additional custom data to error messages + https://bugzilla.gnome.org/show_bug.cgi?id=756806 + +2016-07-20 12:22:10 +0200 Guillaume Desmottes + + * plugins/tracers/gstleaks.c: + * plugins/tracers/gstleaks.h: + tracers: leaks: update type filter later for unknown types + This allow us to filter using an object type which is implemented + by a plugin like, say, GstGtkGLSink. + https://bugzilla.gnome.org/show_bug.cgi?id=768989 + +2016-07-19 14:45:53 +0200 Aurélien Zanelli + + * libs/gst/base/gstcollectpads.c: + collectpads: add g-i transfer annotations to peek/pop/read_buffer/take_buffer functions + https://bugzilla.gnome.org/show_bug.cgi?id=768948 + +2016-07-19 23:18:24 +1000 Jan Schmidt + + * tests/check/libs/gstnetclientclock.c: + tests: Use gst_clock_wait_for_sync () for net client clock + Instead of looping, use the gst_clock_wait_for_sync() function + to give clocks up to 1 second to synchronise + +2016-07-13 15:43:21 +0200 Guillaume Desmottes + + * gst/gstmessage.c: + message: fix annotation of parse_stream_{collection,streams_selected} + gst_structure_id_get() returns a new reference so the returned object is + actually (transfer full). + The unit tests was already unreffing the objects. + https://bugzilla.gnome.org/show_bug.cgi?id=768776 + +2016-07-13 15:43:21 +0200 Guillaume Desmottes + + * gst/gstdevicemonitor.c: + * gst/gstmessage.c: + message: fix annotation of parse_device_{added,removed} + gst_structure_id_get() returns a new reference so the returned device is + actually (transfer full). + The code using this API was already correct but the code example in + comments was not. + https://bugzilla.gnome.org/show_bug.cgi?id=768776 + +2016-07-14 16:40:22 +0200 Guillaume Desmottes + + * gst/gstpad.c: + pad: add g-i transfer annotatation to _store_sticky_event() + For clarity. + https://bugzilla.gnome.org/show_bug.cgi?id=768810 + +2016-07-12 12:32:56 +0300 Sebastian Dröge + + * libs/gst/base/gstbasesrc.c: + basesrc: Fix automatic-eos=false mode if a segment.stop is given + If segment.stop was given, and the subclass provides a size that might be + smaller than segment.stop and also smaller than the actual size, we would + already stop there. + Instead try reading up to segment.stop, the goal is to ignore the (possibly + inaccurate) size the subclass gives and finish until segment.stop or when the + subclass tells us to stop. + +2016-07-11 21:13:28 +0200 Stefan Sauer + + * common: + Automatic update of common submodule + From f363b32 to f49c55e + +2016-07-11 18:45:49 +0530 Nirbheek Chauhan + + * tests/benchmarks/capsnego.c: + benchmarks: Fix potential stack corruption in capsnego test + flavour_str is a non-const pointer that will be written to if the -f + option is passed + +2016-07-11 11:34:02 +0200 Guillaume Desmottes + + * plugins/tracers/gstleaks.c: + leaks: check return values of libunwind calls + +2016-07-11 09:58:47 +0200 Edward Hervey + + * plugins/elements/gstqueue2.c: + queue2: Fix average input rate calculation on small input range + When dealing with small-ish input data coming into queue2, such as + adaptivedemux fragments, we would never take into account the last + <200ms of data coming in. + The problem is that usually on TCP connection the download rate + gradually increases (i.e. the rate is lower at the beginning of a + download than it is later on). Combined with small download time (less + than a second) we would end up with a computed average input rate + which was sometimes up to 30-50% off from the *actual* average input + rate for that fragment. + In order to fix this, force the average input rate calculation when + we receive an EOS so that we take into account that final window + of data. + https://bugzilla.gnome.org/show_bug.cgi?id=768649 + +2016-07-08 16:31:56 +0200 Guillaume Desmottes + + * gst/gstminiobject.c: + miniobject: weak_unref: display the pointer of the object if failing + That's generally the most useful information to help debugging the + problem. + https://bugzilla.gnome.org/show_bug.cgi?id=768579 + +2016-07-08 16:29:38 +0200 Guillaume Desmottes + + * gst/gstbin.c: + bin: properly display the type of the removed message + Makes debugging easier. + https://bugzilla.gnome.org/show_bug.cgi?id=768579 + +2016-07-08 17:46:06 +0100 Tim-Philipp Müller + + * gst/gstelement.c: + element: re-create threadpool after cleaning up tasks + We don't free this from gst_deinit() but from gst_task_cleanup_all(), + so more GStreamer API may be called. In particular makes unit tests + work again with CK_FORK=no. + https://bugzilla.gnome.org/show_bug.cgi?id=768577 + +2016-07-08 16:53:51 +0200 Guillaume Desmottes + + * plugins/tracers/gstleaks.c: + * plugins/tracers/gstleaks.h: + leaks: warn if object is destroyed while the tracer is disposing + This should not happen and generally means some thread is still running. + https://bugzilla.gnome.org/show_bug.cgi?id=768578 + +2016-07-08 16:36:01 +0200 Guillaume Desmottes + + * gst/gst_private.h: + * gst/gstelement.c: + * gst/gsttask.c: + element: clean up thread pool from gst_task_cleanup_all() + This ensures that all async operations (started from gst_element_call_async()) + have been completed and so there is no extra thread running. + Fix races when checking for leaks on unit tests as some of those + operations were still running when the leaks tracer was checking for + leaked objects. + https://bugzilla.gnome.org/show_bug.cgi?id=768577 + +2016-07-08 11:15:06 +0200 Guillaume Desmottes + + * configure.ac: + * plugins/tracers/gstleaks.c: + leaks tracer: use G_OS_UNIX to check for signal support + Checking for signal.h is not good enough as it's present in Windows. + Those signals are UNIX specific anyway. + https://bugzilla.gnome.org/show_bug.cgi?id=767857 + +2016-06-22 16:25:16 +0200 Guillaume Desmottes + + * configure.ac: + * docs/design/part-tracing.txt: + * plugins/tracers/Makefile.am: + * plugins/tracers/gstleaks.c: + * plugins/tracers/gstleaks.h: + leaks tracer: add creation stack trace support + This allow us to provide the trace of leaked objects making it easier + to debug. + https://bugzilla.gnome.org/show_bug.cgi?id=767862 + +2016-06-01 11:08:39 +0200 Guillaume Desmottes + + * docs/design/part-tracing.txt: + * plugins/tracers/gstleaks.c: + * plugins/tracers/gstleaks.h: + leaks tracer: add checkpoint support using SIGUSR2 + https://bugzilla.gnome.org/show_bug.cgi?id=767857 + +2016-05-31 16:56:26 +0200 Guillaume Desmottes + + * configure.ac: + * docs/design/part-tracing.txt: + * plugins/tracers/gstleaks.c: + leaks tracer: log alive objects when receiving SIGUSR1 + We don't want to automatically catch signals so use an env variable to + enable this feature. + https://bugzilla.gnome.org/show_bug.cgi?id=767857 + +2016-07-07 13:15:51 +0300 Sebastian Dröge + + * plugins/elements/gstfunnel.c: + funnel: Only forward sticky events on GAP events if needed + That is, if the active pad changed and if forwarding of sticky events is + requested at all. We otherwise forward events too often. + +2016-07-05 16:50:16 +0200 Miguel París Díaz + + * gst/gstpad.c: + pad: check query caps answered and caps not NULL + https://bugzilla.gnome.org/show_bug.cgi?id=768450 + +2016-07-06 13:50:56 +0300 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.9.1 === + +2016-07-06 13:05:02 +0300 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/gstreamer-plugins.hierarchy: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstenumtypes.h: + * win32/common/gstversion.h: + Release 1.9.1 + +2016-07-06 11:37:56 +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 + +2016-07-06 10:17:37 +0300 Sebastian Dröge + + * po/da.po: + * po/hr.po: + * po/pt_BR.po: + * po/sk.po: + po: Update translations + +2016-07-05 12:17:18 +0200 Jan Alexander Steffens (heftig) + + * libs/gst/base/gstbaseparse.c: + baseparse: Don't add calculated bitrates until threshold + Waiting before posting calculated bitrates seems to be the + intent of the code, so avoid adding them to the tag list + pushed with the first frame. + When the threshold is reached, gst_base_parse_update_bitrates + sets tags_changed, so this posts the calculated ones right + that moment. + This prevents an insane average calculated from just the + first (key) frame from getting posted. + https://bugzilla.gnome.org/show_bug.cgi?id=768439 + +2016-07-04 10:00:38 +0200 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Make sure to not create an invalid event order when generating the default CAPS event because of a GAP event + There must be a SEGMENT event before the GAP event, and SEGMENT events must + come after any CAPS event. We however did not produce any CAPS yet, so we need + to ensure to insert the CAPS event before the SEGMENT event into the pending + events list. + https://bugzilla.gnome.org/show_bug.cgi?id=766970 + +2016-07-01 22:34:59 +1000 Jan Schmidt + + * gst/gstinfo.h: + gstinfo: Avoid gcc 6 warning that breaks the tests build + gcc 6 has problems detecting and avoiding throwing + a warning for tautological compares in macros (they + should only trigger for compares outside macros). + Avoid them with a nasty cast of one parameter to void * + https://bugzilla.gnome.org/show_bug.cgi?id=764526 + +2016-07-01 09:44:12 +0200 Edward Hervey + + * plugins/elements/gstmultiqueue.c: + multiqueue: Fix behaviour with not-linked and eos pads + This is an update on c9b6848885f4675d447e823c8fb117e247658252 + multiqueue: Fix not-linked pad handling at EOS + While that commit did fix the behaviour if upstream sent a GST_EVENT_EOS, + it would break the same issue when *downstream* returns GST_FLOW_EOS + (which can happen for example when downstream decoders receive data + from after the segment stop). + GST_PAD_IS_EOS() is only TRUE when a GST_EVENT_EOS has flown through it + and not when a GST_EVENT_EOS has gone through it. + In order to handle both cases, also take into account the last flow + return. + https://bugzilla.gnome.org/show_bug.cgi?id=763770 + +2016-06-30 15:07:28 +0100 Tim-Philipp Müller + + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstmessage.c: + * gst/gstmessage.h: + * gst/gststreamcollection.c: + * gst/gststreamcollection.h: + * gst/gststreams.c: + * gst/gstutils.c: + streams: sprinkle some Since: markers for docs + +2016-06-30 14:37:17 +0100 Tim-Philipp Müller + + * plugins/elements/gstmultiqueue.c: + multiqueue: add gtk-doc blurb for new pad property + +2016-02-10 11:42:04 +0100 Edward Hervey + + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstmultiqueue.h: + multiqueue: Add a pad property to "group" streams + When syncing by running time, multiqueue will throttle unlinked streams + based on a global "high-time" and the pending "next_time" of a stream. + The idea is that we don't want unlinked streams to be "behind" the global + running time of linked streams, so that if/when they get linked (like when + switching tracks) decoding/playback can resume from the same position as + the other streams. + The problem is that it assumes elements downstream will have a more or less + equal buffering/latency ... which isn't the case for streams of different + type. Video decoders tend to have higher latency (and therefore consume more + from upstream to output a given decoded frame) compared to audio ones, resulting + in the computed "high_time" being at the position of the video stream, + much further than the audio streams. + This means the unlinked audio streams end up being quite a bit after the linked + audio streams, resulting in gaps when switching streams. + In order to mitigate this issue, this patch adds a new "group-id" pad property + which allows users to "group" streams together. Calculating the high-time will + now be done not only globally, but also per group. This ensures that within + a given group unlinked streams will be throttled by that group's high-time + instead. + This fixes gaps when switching downstream elements (like switching audio tracks). + +2015-06-12 10:53:23 +0200 Edward Hervey + + * docs/design/part-stream-selection.txt: + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + * gst/Makefile.am: + * gst/gst.c: + * gst/gst.h: + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstmessage.c: + * gst/gstmessage.h: + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gststreamcollection.c: + * gst/gststreamcollection.h: + * gst/gststreams.c: + * gst/gststreams.h: + * gst/gstutils.c: + * gst/gstutils.h: + * tests/check/Makefile.am: + * tests/check/gst/.gitignore: + * tests/check/gst/gstevent.c: + * tests/check/gst/gstmessage.c: + * tests/check/gst/gststream.c: + * tests/check/gst/gststream.h: + * win32/common/libgstreamer.def: + gst: New Stream listing/selection system + * GstStream + * GstStreamCollection + * GST_EVENT_SELECT_STREAMS + * GST_MESSAGE_STREAM_COLLECTION + +2016-06-29 23:24:02 +0200 Sebastian Dröge + + * gst/gstbufferpool.c: + * gst/gstbus.c: + * gst/gstpoll.c: + poll: #define EWOULDBLOCK to EAGAIN if it's not defined on Windows + +2016-06-29 14:05:18 +0200 Sebastian Dröge + + * gst/gstbufferpool.c: + bufferpool: Fix handling of the GstPoll + Especially if multiple threads are waiting for buffers to be available again, + the current code was wrong. Fix this and document clearly how the GstPoll is + supposed to be used. + Also fix some potential races with reading from the GstPoll before writing + actually happened. + https://bugzilla.gnome.org/show_bug.cgi?id=767979 + +2016-06-29 14:02:55 +0200 Sebastian Dröge + + * gst/gstbus.c: + bus: Make sure to always read the control after popping a message + It might happen that we popped the message before writing of the control + happened. In this case we just have to retry again a bit later, and failure to + do so will cause an additional byte in the control and the GSource / + gst_poll_wait() to always wake up again immediately. + https://bugzilla.gnome.org/show_bug.cgi?id=750397 + +2016-06-29 13:37:28 +0200 Sebastian Dröge + + * gst/gstsystemclock.c: + systemclock: Improve GstPoll handling and don't check for impossible errno values + Also just read/write control every time, GstPoll is optimized by itself + already to only do I/O if switching between empty and one byte. + https://bugzilla.gnome.org/show_bug.cgi?id=750397 + +2016-06-29 13:35:35 +0200 Sebastian Dröge + + * gst/gstpoll.c: + poll: Clarify when FALSE is returned from read/write_control() + And also mention what the expected values of errno are going to be. + write_control() will only ever return FALSE if there was a critical error. It + will never return because of EINTR, EAGAIN or EWOULDBLOCK. + read_control() will return FALSE if there was no byte to read, in which case + errno would be EWOULDBLOCK. + In all other cases there was a critical error. + https://bugzilla.gnome.org/show_bug.cgi?id=750397 + +2016-06-29 13:26:57 +0200 Sebastian Dröge + + * gst/gstpoll.c: + poll: set_controllable(), restart() and set_flushing() are only valid for non-timer GstPolls + On timer GstPolls it will cause the control socket state to become + inconsistent as now one less read_control() than write_control() be would + needed. + Similarly, read_control() and write_control() are only valid on timer + GstPolls. + https://bugzilla.gnome.org/show_bug.cgi?id=750397 + +2016-06-29 13:11:01 +0200 Sebastian Dröge + + * gst/gstpoll.h: + poll: Warn if the return value of gst_poll_read_control() is unused + This might fail even under correct usage, e.g. if read_control() is called + from another thread before write_control() finished in another. It has to be + retried then, or other measures have to be taken, depending on how it is used + by the surrounding code. + https://bugzilla.gnome.org/show_bug.cgi?id=750397 + +2016-06-29 18:57:42 +0200 Matthew Gruenke + + * gst/gstpoll.c: + poll: Fix various race conditions with read_control() and write_control() + This addresses slightly different race conditions on Linux and Windows, and + fixes gst_poll_read_control() when control_pending == 0. + On Linux, the socketpair() used for control should not be made O_NONBLOCK. + If there's any propagation delay between set->control_write_fd.fd and + set->control_read_fd.fd, even the mutex now held will not be sufficient to + prevent a race condition. There's no benefit to using O_NONBLOCK, here. + Only liabilities. + For Windows, it's necessary to fix the race condition between testing + set->control_pending and performing WAKE_EVENT()/RELEASE_EVENT(). This is + accomplished by acquiring and holding set->lock, for both of these operations. + We could optimize the Linux version by making this Windows-specific. + For consistency with the Linux implementation, Windows' RELEASE_EVENT() + has also been made to block, although it should never happen. + Also, changed release_wakeup() to return TRUE and decrement control_pending + only when > 0. Furthermore, RELEASE_EVENT() is called only when + control_pending == 1. + Finally, changed control_pending to use normal, non-atomic arithmetic + operations, since it's now protected by set->lock. + Note: even though the underlying signaling mechanisms are blocking, + release_wakeup() is effectively non-blocking, as it will only attempt to read + from control_read_fd.fd after a byte has been written to control_write_fd.fd + or WaitForSingleObject() after it's been signaled. + https://bugzilla.gnome.org/show_bug.cgi?id=750397 + +2016-06-28 15:01:17 +0200 Guillaume Desmottes + + * gst/gstbus.c: + bus: chain up GObject::constructed() to the parent class' implementation + Needed so GstBus can be tracked by the leaks tracer. + https://bugzilla.gnome.org/show_bug.cgi?id=768141 + +2016-06-24 05:26:09 +0530 Nirbheek Chauhan + + * gst/gstconfig.h.in: + gstconfig.h: Don't use extern with dllexport + GCC emits an error for this with -Werror: + plugin.c:22:1: error: 'gst_plugin_desc' initialized and declared 'extern' [-Werror] + This matches how glib does symbol exporting. + https://bugzilla.gnome.org/show_bug.cgi?id=767463 + +2016-06-21 19:49:15 +0530 Nirbheek Chauhan + + * configure.ac: + * gst/gstconfig.h.in: + win32: Don't use dllexport/import when only building statically + If the prototypes in the public API have dllimport in them when building + statically on Windows, the compiler will look for symbols with symbol + mangling and indirection corresponding to a DLL. This will cause a build + failure when trying to link tests/examples/etc. + External users of GStreamer also need to define -DGST_STATIC_COMPILATION + if they want to link to static gstreamer libraries on Windows. + A similar version of this patch has been committed to all gstreamer + repositories. + https://bugzilla.gnome.org/show_bug.cgi?id=767463 + +2016-06-21 11:45:26 -0400 Nicolas Dufresne + + * common: + Automatic update of common submodule + From ac2f647 to f363b32 + +2016-06-15 16:24:27 +0100 Vincent Penquerc'h + + * tests/check/elements/queue2.c: + tests: add a test for small ring buffer sizes + https://bugzilla.gnome.org/show_bug.cgi?id=767688 + +2016-06-15 13:43:59 +0100 Vincent Penquerc'h + + * plugins/elements/gstqueue2.c: + queue2: fix crash deleting current region for small ring buffers + Ensure we do not attempt to destroy the current range. Doing so + causes the current one to be left dangling, and it may be dereferenced + later, leading to a crash. + This can happen with a very small queue2 ring buffer (10000 bytes) + and 4 kB buffers. + repro case: + gst-launch-1.0 fakesrc sizetype=2 sizemax=4096 ! \ + queue2 ring-buffer-max-size=1000 ! fakesink sync=true + https://bugzilla.gnome.org/show_bug.cgi?id=767688 + +2016-06-20 11:34:49 +0100 Tim-Philipp Müller + + * tests/check/gst/gstobject.c: + tests: gstobject: fix typo in test name + +2016-06-16 14:08:01 -0700 Reynaldo H. Verdejo Pinochet + + * docs/design/part-tracing.txt: + docs/design/part-tracing: fix reference to renamed func + +2016-06-08 12:34:53 -0400 Nicolas Dufresne + + * plugins/elements/gsttee.c: + tee: Properly handle return value when only 1 pad + This patch handle the case when you have 1 pad (so the fast path is + being used) but this pad is removed. If we are in allow-not-linked, we + should return GST_FLOW_OK, otherwise, we should return GST_FLOW_UNLINKED + and ignore the meaningless return value obtained from pushing. + https://bugzilla.gnome.org/show_bug.cgi?id=767413 + +2016-06-16 15:52:16 +0200 Stefan Sauer + + * scripts/gst-plot-traces.sh: + gst-plot-traces.sh: add a script to plot gst-tracer graphs + The script extracts cpu-usage data from a tracelog and plots it via gnuplot. + +2016-06-15 16:12:23 +0200 Sebastian Dröge + + * gst/gstdevice.c: + device: Fix typo + paramater -> parameter + +2016-06-14 19:16:33 +0100 Tim-Philipp Müller + + * gst/gstinfo.h: + info: flesh out GST_PTR_FORMAT docs a bit + +2016-06-13 18:33:27 +0200 Sebastian Dröge + + * libs/gst/base/gstbasesink.c: + basesink: Update start time when losing state only if we were in PLAYING + If we were in PAUSED, the current clock time and base time don't have much to + do with the running time anymore as the clock might have advanced while we + were PAUSED. The system clock does that for example, audio clocks often don't. + Updating the start time in PAUSED will cause a) the wrong position to be + reported, b) step events to step not just the requested amount but the amount + of time we spent in PAUSED. The start time should only ever be updated when + going from PLAYING to PAUSED to remember the current running time (to be able + to compensate later when going to PLAYING for the clock time advancing while + PAUSED), not when we are already in PAUSED. + Based on a patch by Kishore Arepalli + The updating of the start time when the state is lost was added in commit + ba943a82c0bbfd17c9ee9f5068d44c9d9274fd13 to fix the position reporting when + the state is lost. This still works correctly after this change. + https://bugzilla.gnome.org/show_bug.cgi?id=739289 + +2016-06-11 22:18:06 +0300 Sebastian Dröge + + * gst/gstpad.c: + pad: Log pad offsets as signed times + +2016-06-11 21:56:19 +0300 Sebastian Dröge + + * tests/check/gst/gstpad.c: + pad: Also check the number of segment events and if other serialized events and queries trigger segment updating too + https://bugzilla.gnome.org/show_bug.cgi?id=765049 + +2016-06-11 21:37:47 +0300 Sebastian Dröge + + * tests/check/gst/gstpad.c: + pad: Add unit test for pad offset handling on src pads + https://bugzilla.gnome.org/show_bug.cgi?id=765049 + +2016-06-07 11:32:47 +0300 Sebastian Dröge + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstadapter.h: + * tests/check/libs/adapter.c: + * win32/common/libgstbase.def: + adapter: Rename functions and implement new functions, update test + We don't do calculations with different units (buffer offsets and bytes) + anymore but have functions for: + 1) getting the number of bytes since the last discont + 2) getting the offset (and pts/dts) at the last discont + and the previously added function to get the last offset and its distance from + the current adapter position. + https://bugzilla.gnome.org/show_bug.cgi?id=766647 + +2016-05-19 10:31:02 +0200 Edward Hervey + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstadapter.h: + * tests/check/libs/adapter.c: + * win32/common/libgstbase.def: + adapter: Add methods to query current offset + API: gst_buffer_prev_offset + API: gst_buffer_get_offset_from_discont + The gst_buffer_get_offset_from_discont() method allows retrieving the current + offset based on the GST_BUFFER_OFFSET of the buffers that were pushed in. + The offset will be set initially by the GST_BUFFER_OFFSET of + DISCONT buffers, and then incremented by the sizes of the following + buffers. + The gst_buffer_prev_offset() method allows retrievent the previous + GST_BUFFER_OFFSET regardless of flags. It works in the same way as + the other gst_buffer_prev_*() methods. + https://bugzilla.gnome.org/show_bug.cgi?id=766647 + +2016-06-09 17:42:13 +0100 Tim-Philipp Müller + + * gst/gstconfig.h.in: + gstconfig.h.in: indent #if #else jungle for better readability + +2016-06-08 12:11:19 +0300 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstutils.c: + * gst/gstutils.h: + * win32/common/libgstreamer.def: + utils: Add gst_pad_link_maybe_ghosting() for consistency + We already had a _full() version, but having that alone seems inconsistent. + Add a non-full version that mirrors the behaviour of gst_pad_link() vs + gst_pad_link_full(). + +2016-05-22 13:10:06 +0200 Edward Hervey + + * libs/gst/base/gstbaseparse.c: + baseparse: Make sure DISCONT flags are properly propagated + If we drop a frame that contained a discontinuity, we must remember + that for the next frame that *will* be pushed downstream. + https://bugzilla.gnome.org/show_bug.cgi?id=766795 + +2016-06-04 13:31:58 +0100 Tim-Philipp Müller + + * gst/gstdeviceprovider.c: + deviceprovider: remove base_class_finalize function + It's not going to get called anyway. + https://bugzilla.gnome.org/show_bug.cgi?id=765540 + +2016-06-04 13:11:55 +0100 Tim-Philipp Müller + + * gst/gstelement.c: + element: remove base_class_finalize_func which is never called + Won't be called for static types, so no point keeping it around. + https://bugzilla.gnome.org/show_bug.cgi?id=765540 + +2016-06-03 13:55:44 +0100 Tim-Philipp Müller + + * plugins/tracers/gstleaks.c: + tracers: leaks: some micro-optimisations + - we know number of filter items is not going to change, + but compiler doesn't + - only do GST_IS_TRACER check for GObjects, not mini objects + - use non-type check cast macros in performance critical paths + +2016-05-10 09:29:12 +0200 Guillaume Desmottes + + * docs/design/part-tracing.txt: + * plugins/tracers/Makefile.am: + * plugins/tracers/gstleaks.c: + * plugins/tracers/gstleaks.h: + * plugins/tracers/gsttracers.c: + tracers: add leaks tracer + https://bugzilla.gnome.org/show_bug.cgi?id=765052 + +2016-05-30 12:11:13 +0200 Guillaume Desmottes + + * gst/gstcaps.c: + * gst/gstdeviceproviderfactory.c: + * gst/gstelementfactory.c: + * gst/gstpadtemplate.c: + * gst/gsttask.c: + * libs/gst/net/gstnetclientclock.c: + Use MAY_BE_LEAKED_FLAG + This helps having "make check" passing with the leaks tracer enabled. + https://bugzilla.gnome.org/show_bug.cgi?id=766008 + +2016-05-09 16:31:36 +0200 Guillaume Desmottes + + * gst/gstminiobject.c: + * gst/gstobject.c: + * gst/gsttracerutils.c: + * gst/gsttracerutils.h: + tracing: add hooks when objects or miniobjects are created and destroyed + https://bugzilla.gnome.org/show_bug.cgi?id=765052 + +2016-05-09 16:56:56 +0200 Guillaume Desmottes + + * gst/gst.c: + gst_deinit: move down tracers cleaning + We want the tracer detecting leaks to be finalized as late as possible + to give the chance to other gst components to be properly cleaned first. + https://bugzilla.gnome.org/show_bug.cgi?id=765052 + +2016-05-10 11:06:42 +0200 Guillaume Desmottes + + * tests/check/gst/gstplugin.c: + tests: plugin: remove feature refcount assert + This check fails if one, or more, tracers are loaded while running the + test. The new "leaks" tracer will be able to check for leaks anyway. + https://bugzilla.gnome.org/show_bug.cgi?id=765052 + +2016-04-14 12:25:43 +0300 Guillaume Desmottes + + * gst/gststructure.c: + tracerrecord: allow G_TYPE_POINTER for field types + Tracers may want to display the address of an object. + https://bugzilla.gnome.org/show_bug.cgi?id=765052 + +2016-05-30 13:42:36 +0200 Stefan Sauer + + * tests/check/gst/gstobject.c: + gstobject: split up name tests + It is better to have separate tests: + 1) the test name will tell what is broekn when the test fails + 2) we still run the other tests when one assert fails + 3) the tests are easier to understand + 4) we don't rely on sie effect of previous actions + 5) ... + Also ix the assertion message for the name checks (Gst -> fakeobject). + +2016-05-30 02:06:01 -0700 Stefan Sauer + + * docs/design/part-tracing.txt: + design: update design doc + Some of the api was renamed before the merge. + +2016-05-30 02:04:18 -0700 Stefan Sauer + + * gst/gstquery.c: + docs: xref the free function and expand allocation query docs + Add xrefs for how to parse pool details from an allocation query. + +2016-05-26 14:43:10 -0400 Nicolas Dufresne + + * tests/check/gst/gstobject.c: + object: Add _set_name() test on parented object + This is not allowed, and set_name() should fail. + https://bugzilla.gnome.org/show_bug.cgi?id=766923 + +2016-05-26 14:41:38 -0400 Nicolas Dufresne + + * tests/check/gst/gstobject.c: + object: Check that name change are notified once + GObject allow calling g_object_notify() within set_property() and + won't notify it twice. As it was raised during review, add a unit test to + make sure. + https://bugzilla.gnome.org/show_bug.cgi?id=766923 + +2016-05-26 13:17:37 -0400 Nicolas Dufresne + + * gst/gstobject.c: + object: Notify name change when using _set_name() + There was a 0.11 FIXME about notifying the name change or removing that + function. Clearly we can't remove this function, so let's notify it. + https://bugzilla.gnome.org/show_bug.cgi?id=766923 + +2016-05-25 15:30:21 +0200 Edward Hervey + + * gst/gst_private.h: + gst_private: Fix gstconfig include + Since it's a generated header, we need to specify the gst subdir so + that it gets properly included in out-of-dir compilation + +2016-05-25 10:48:05 +0100 Tim-Philipp Müller + + * gst/gst_private.h: + gst: make sure to include gstconfig.h also in gst_private.h + For GST_EXPORT define and also things like GST_DISABLE_REGISTRY. + Hopefully fixes the following build failure on cerbero-cross-mingw32: + helpers/gst-plugin-scanner.c:50: undefined reference to `_imp___gst_disable_registry_cache' + +2016-05-24 00:40:27 +0100 Tim-Philipp Müller + + * gst/Makefile.am: + * libs/gst/base/Makefile.am: + * libs/gst/check/Makefile.am: + * libs/gst/controller/Makefile.am: + * libs/gst/net/Makefile.am: + g-i: pass compiler env to g-ir-scanner + It's what introspection.mak does as well. Should + fix spurious build failures on gnome-continuous. + +2016-05-23 21:15:48 +0100 Tim-Philipp Müller + + * gst/Makefile.am: + gst: g-i: pass compiler with quotes + So CC="ccache gcc" works properly. + +2016-05-23 21:06:53 +0100 Ray Strode + + * gst/Makefile.am: + gst: attempt to fix/track-down mysterious gnome-continuous build failures + +2016-05-23 18:00:30 +0100 Tim-Philipp Müller + + * gst/gstiterator.c: + iterator: only unset GValue if it was inited + And add some function guards. From GLib 2.48 on it is + allowed to pass an uninitialised GValue to g_value_unset(). + https://bugzilla.gnome.org/show_bug.cgi?id=763762 + +2016-05-23 18:44:01 +0530 Nirbheek Chauhan + + * gst/parse/Makefile.am: + gst/parse: Also pass -DGST_EXPORTS here + This static library gets included directly into libgstreamer-1.0.so, so it needs + the same GST_EXPORTS definition as the rest of the code that's compiled into + that otherwise it will try to find the constants it uses from gstinfo via DLL + importing (__declspec(dllimport)). + Fixes https://ci.gstreamer.net/job/cerbero-cross-mingw32/4393/ + +2016-05-20 00:24:54 +0530 Nirbheek Chauhan + + * gst/gstconfig.h.in: + gstconfig.h: Always use dllexport/import on Windows + __declspec(dllexport/import) are supported by GCC and are needed for + properly generating code that fetches the values of constants from DLLs + built with __declspec(dllexport) which happens when anything using + GST_EXPORT is built with MSVC. + See: https://msdn.microsoft.com/en-us/library/619w14ds.aspx + Essentially, if you built gstreamer with MSVC and then tried to use + constants from it (such as GST_TYPE_CAPS) in a plugin, GCC would + retrieve the address of the value instead of the value itself. + +2016-05-19 11:27:36 -0300 Danilo Cesar Lemes de Paula + + * scripts/git-update.sh: + scripts: make git-update.sh build with all cores available + The git-update.sh now builds with all cores available. In case of + failure it defaults to 1 + The developer can still override this by setting -j to something else + in MAKEFLAGS, as stated by 299605dfe2f97fca330161ff01a392e1a85fe422. + https://bugzilla.gnome.org/show_bug.cgi?id=766666 + +2016-05-04 13:53:56 +0200 Guillaume Desmottes + + * gst/gstminiobject.h: + * gst/gstobject.h: + (mini)object: add MAY_BE_LEAKED flag + https://bugzilla.gnome.org/show_bug.cgi?id=766008 + +2016-05-15 14:15:51 +0100 Tim-Philipp Müller + + * gst/gstbin.c: + * tests/check/gst/gstbin.c: + bin: emit deep-element-{added,removed} for children of newly-added/removed bin + https://bugzilla.gnome.org/show_bug.cgi?id=578933 + +2016-05-14 10:55:53 +0100 Tim-Philipp Müller + + * gst/gstbin.c: + * gst/gstbin.h: + * tests/check/gst/gstbin.c: + bin: add "deep-element-added" and "deep-element-removed" signals + This means applications and bin sub-classes can easily track when + a new child element is added to the pipeline sub-hierarchy or + removed. + Currently doesn't signal deep added/removed for elements inside + a bin if a bin is added/removed. + https://bugzilla.gnome.org/show_bug.cgi?id=578933 + +2016-05-15 15:02:49 +0300 Sebastian Dröge + + * gst/gstpad.h: + pad: Improve IDLE probe docs + Make it explicit that the pad is only blocked while the callback is running, + and the pad will be unblocked again once the callback returned. + If BLOCK and IDLE behaviour is needed, both need to be used. + https://bugzilla.gnome.org/show_bug.cgi?id=766002 + +2016-05-15 13:29:55 +0300 Sebastian Dröge + + * docs/plugins/inspect/plugin-coreelements.xml: + docs: Update for git master + +2016-03-11 16:04:52 +0200 Sebastian Dröge + + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + queue: Only unblock upstream waiting for the query once downstream is finished + ... when flushing and deactivating pads. Otherwise downstream might have a + query that was already unreffed by upstream, causing crashes or other + interesting effects. + https://bugzilla.gnome.org/show_bug.cgi?id=763496 + +2016-05-14 17:31:51 +0300 Sebastian Dröge + + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + basesink/src: Post an error message if ::start() fails + The subclass should do that already, but just in case do it ourselves too as a + fallback. Without this, e.g. playbin will just wait forever if this fails + because it is triggered as part of an ASYNC state change. + +2016-05-14 23:36:43 +1000 Jan Schmidt + + * gst/gstbin.c: + bin: Fix EOS forwarding on PLAYING->PLAYING + When doing a transition from PLAYING to PLAYING, we will fail + to forward an EOS message on the bus, and noone else will ever + send it because there'll be no actual state changed message. + Allow EOS through directly in that case. + +2016-05-13 09:43:14 +0200 Edward Hervey + + * gst/gstpad.c: + pad: Don't drop LATENCY queries with default implementation + If there is only one pad in the internal pads, when folding for + LATENCY queries it will just drop the response if it's not live. + This is maybe not the proper fix, but it will just accept the first + peer responses, and if there are any other pads, it will only take + them into account if the response is live. + This *should* properly handle the aggregation/folding behaviour of + multiple live peer responses, while at the same time handling the + simple one-pad-only-and-forward use-case + https://bugzilla.gnome.org/show_bug.cgi?id=766360 + +2016-04-07 00:46:20 +1000 Jan Schmidt + + * tools/gst-launch.1.in: + Update the examples in the gst-launch-1.0 manpage + Replace elements that don't exist any more with ones + that do, and insert elements like mpegaudioparse where + they are needed. + https://bugzilla.gnome.org/show_bug.cgi?id=727105 + +2016-04-02 01:05:39 +1100 Jan Schmidt + + * gst/gst.c: + debug: Instantiate GType when dumping debug categories. + A lot of debug categories are declared in element class_init + functions, which don't get run until the element is first created + (not just registered in the plugin load function). This means + that --gst-debug-help doesn't print out a lot of categories. + Creating an instance of each element from the element factory + makes them visible, at some extra cost - 2-3 times longer, which can + be a full second or two of extra waiting. Yikes! + https://bugzilla.gnome.org/show_bug.cgi?id=741001 + +2016-05-11 15:06:39 +0300 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Only push a CAPS event downstream if the sinkpad is not in PULL mode + The other signal handlers of the type-found signal might have reactivated + typefind in PULL mode already, pushing a CAPS event at that point would cause + deadlocks and is in general unexpected by elements that are in PULL mode. + https://bugzilla.gnome.org/show_bug.cgi?id=765906 + +2016-05-11 12:16:09 +0900 Wonchul Lee + + * gst/gstdebugutils.c: + debugutils: fix warning on enum properties printing + https://bugzilla.gnome.org/show_bug.cgi?id=766251 + +2016-05-10 15:01:42 +0300 Sebastian Dröge + + * gst/gstpad.c: + pad: Fix pad state when deactivating from one mode and then trying to activate another and failing + When activating a pad in PULL mode, it might already be in PUSH mode. We now + first try to deactivate it from PUSH mode and then try to activate it in PULL + mode. If the activation fails, we would set the pad to flushing and set it + back to its old mode. However the old mode is wrong, the pad is not in PUSH + mode anymore but in NONE mode. + This fixes e.g. typefind in decodebin reactivating PUSH/PULL mode if upstream + actually fails to go into PULL mode after first PUSHING data to typefind. + +2016-03-13 11:05:29 -0400 Anthony G. Basile + + * libs/gst/check/libcheck/strsignal.c: + libcompat.h: strsignal() should be not be decleared const + POSIX standards requires strsignal() to return a pointer to a char, + not a const pointer to a char. [1] On uClibc, and possibly other + libc's, that do not HAVE_DECL_STRSIGNAL, libcompat.h declares + const char *strsignal (int sig) which causes a type error. + [1] man 3 strsignal + https://bugzilla.gnome.org/show_bug.cgi?id=763567 + +2016-05-05 18:50:05 +0100 Tim-Philipp Müller + + * libs/gst/base/gstflowcombiner.c: + flowcombiner: add debug category + Not that it logs much. + +2016-05-05 18:02:21 +0100 Tim-Philipp Müller + + * libs/gst/base/gstflowcombiner.c: + flowcombiner: fix docs for gst_flow_combiner_reset() + +2016-05-04 10:04:30 +0200 Guillaume Desmottes + + * tests/check/pipelines/parse-launch.c: + parse-launch: fix factory leak in test + We get 2 references one from gst_element_factory_find() and the other + from gst_plugin_feature_load(). + https://bugzilla.gnome.org/show_bug.cgi?id=765976 + +2016-05-04 13:46:46 +0200 Guillaume Desmottes + + * tests/check/gst/gstminiobject.c: + miniobject: fix ref count leaks in tests + https://bugzilla.gnome.org/show_bug.cgi?id=765978 + +2016-05-04 09:53:32 +0200 Guillaume Desmottes + + * gst/gstutils.c: + * tests/check/pipelines/parse-launch.c: + utils: fix element leak in find_common_root() + The root element was not unreffed when iterating over ancestors. + https://bugzilla.gnome.org/show_bug.cgi?id=765961 + +2016-05-02 17:35:29 +0200 Guillaume Desmottes + + * tools/gst-inspect.c: + inspect: fix feature leak + https://bugzilla.gnome.org/show_bug.cgi?id=765957 + +2016-05-03 11:49:03 +0200 Guillaume Desmottes + + * gst/gsturi.c: + uri: unref instead of using _gst_uri_free() directly + This confuses gst_tracing as we shortcut the mini object reference + system. + https://bugzilla.gnome.org/show_bug.cgi?id=765958 + +2016-05-02 09:32:47 +0200 Guillaume Desmottes + + * tests/check/pipelines/seek.c: + pipeline: fix bus leak in seek test + gst_bus_add_signal_watch_full() keeps a ref on the bus which should + be released using gst_bus_remove_signal_watch(). + https://bugzilla.gnome.org/show_bug.cgi?id=765903 + +2016-05-02 09:29:31 +0200 Guillaume Desmottes + + * tests/check/elements/streamiddemux.c: + streamiddemux: fix list and event leaks in test + https://bugzilla.gnome.org/show_bug.cgi?id=765903 + +2016-05-02 08:43:04 +0200 Guillaume Desmottes + + * tests/check/elements/selector.c: + selector: fix pad leaks in tests + setup_input_pad() creates a new pad so we should unref it once we're + done. + https://bugzilla.gnome.org/show_bug.cgi?id=765903 + +2016-05-02 08:33:42 +0200 Guillaume Desmottes + + * tests/check/elements/filesrc.c: + filesrc: fix buffer leaks in tests + gst_check_setup_sink_pad() internally uses gst_check_chain_func() so we + should call gst_check_drop_buffers() when tearing down tests to free the + buffers which have been exchanged through the pipeline. + https://bugzilla.gnome.org/show_bug.cgi?id=765903 + +2016-05-02 08:29:00 +0200 Guillaume Desmottes + + * tests/check/elements/fakesink.c: + fakesink: fix pipeline leak in test + https://bugzilla.gnome.org/show_bug.cgi?id=765903 + +2016-05-02 07:35:45 +0200 Guillaume Desmottes + + * tests/check/gst/gstelementfactory.c: + elementfactory: fix factory leak in test + https://bugzilla.gnome.org/show_bug.cgi?id=765903 + +2016-05-02 16:00:42 +0200 Guillaume Desmottes + + * gst/gstdeviceproviderfactory.c: + deviceproviderfactory: fix factory leak + The code path when early returning was leaking the extra reference on + the factory. + https://bugzilla.gnome.org/show_bug.cgi?id=765904 + +2016-04-10 11:42:18 +0100 Tim-Philipp Müller + + * gst/gstquery.c: + query: fix compiler warning + C4146: unary minus operator applied to unsigned type, result still unsigned + +2016-04-28 14:59:51 +0300 Guillaume Desmottes + + * tests/check/gst/gstbin.c: + bin: fix leaks in unit tests + The test rely on bus being flushed when setting the bin to the NULL state which + is not the case. This apply only when setting the pipeline state to + NULL. + https://bugzilla.gnome.org/show_bug.cgi?id=765720 + +2016-04-28 14:56:18 +0300 Guillaume Desmottes + + * tests/check/gst/gstpad.c: + pad: fix buffer leaks in tests + The buffer received through the pad have to be unreffed using + gst_check_drop_buffers(). + https://bugzilla.gnome.org/show_bug.cgi?id=765719 + +2016-04-30 14:15:08 +0100 Tim-Philipp Müller + + * gst/gstbuffer.c: + * gst/gstghostpad.c: + * libs/gst/check/gstharness.c: + Fix some nonsensical g-i annotations + +2016-04-29 14:55:02 +0200 Matej Knopp + + * plugins/elements/gstmultiqueue.c: + multiqueue: Ignore time when determining whether sparse stream limits have been reached + Basically, sq->max_size.visible is never increased for sparse streams in + overruncb when empty queue has been found; + If the queue is sparse it just skip the entire logic determining whether + max_size.visible should be increased, deadlocking the demuxer. + What should be done instead is that when determining if limits have been + reached, to ignore time for sparse streams, as the buffer may be far in the + future. + https://bugzilla.gnome.org/show_bug.cgi?id=765736 + +2016-02-28 12:06:40 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstbin.c: + * gst/gstbin.h: + * gst/gstelement.c: + * gst/gstelement.h: + * win32/common/libgstreamer.def: + element: Add gst_element_call_async() + This calls a function from another thread, asynchronously. This is to be + used for cases when a state change has to be performed from a streaming + thread, directly via gst_element_set_state() or indirectly e.g. via SEEK + events. + Calling those functions directly from the streaming thread will cause + deadlocks in many situations, as they might involve waiting for the + streaming thread to shut down from this very streaming thread. + This is mostly a convenience function around a GThreadPool and is for example + used by GstBin to continue asynchronous state changes. + https://bugzilla.gnome.org/show_bug.cgi?id=760532 + +2016-04-27 09:21:31 +0300 Sebastian Dröge + + * docs/manual/advanced-dataaccess.xml: + manual: Fix buffer memory leak in appsrc example + g_signal_emit_by_name() is not like gst_app_src_push_buffer() due to reference + counting limitations of signals, it does *not* take ownership of the buffer. + +2016-04-26 16:02:14 +0300 Guillaume Desmottes + + * gst/gst.c: + * gst/gst_private.h: + * gst/gstcaps.c: + caps: add cleanup priv function + Those are allocated in _priv_gst_caps_initialize() so it makes + sense to have a symetric cleanup functions called by gst_deinit(). + https://bugzilla.gnome.org/show_bug.cgi?id=765606 + +2016-04-26 16:02:14 +0300 Guillaume Desmottes + + * gst/gst.c: + * gst/gst_private.h: + * gst/gstcapsfeatures.c: + capsfeature: add cleanup priv function + Those are allocated in _priv_gst_caps_features_initialize() so it makes + sense to have a symetric cleanup functions called by gst_deinit(). + https://bugzilla.gnome.org/show_bug.cgi?id=765606 + +2016-04-21 14:45:39 +0100 Alex Ashley + + * libs/gst/check/gsttestclock.c: + testclock: add clock-type property + To allow the GstTestClock to be used as a GstSystemClock, it is + useful to implement the clock-type property that GstSystemClock + provides. This allows GstTestClock to be used as the system clock + with code that expects a GstSystemClock. + https://bugzilla.gnome.org/show_bug.cgi?id=762147 + +2016-04-21 13:49:32 +0300 Sebastian Dröge + + * gst/gstdatetime.c: + datetime: Sanity check year, month and day when parsing ISO-8601 strings + Passing years > 9999, months > 12 or days > 31 to gst_date_time_new() will + cause an assertion and generally does not make much sense. Instead consider it + as a parsing error like hours > 24 and return NULL. + +2016-04-20 11:46:19 +0300 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Remember if we interpolated DTS from PTS and refresh it whenever we update the PTS + Otherwise PTS and DTS will come out of sync if upstream continues to provide + PTS and not DTS, and we have to skip some data from the stream or PTS are not + exactly increasing with the duration of each packet. + https://bugzilla.gnome.org/show_bug.cgi?id=765260 + +2016-04-20 11:45:28 +0300 Sebastian Dröge + + * libs/gst/base/gsttypefindhelper.c: + typefindhelper: Fix gobject-introspection warning about invalid transfer annotation + gsttypefindhelper.c:485: Warning: GstBase: invalid "transfer" annotation for gsize: only valid for array, struct, union, boxed, object and interface types + +2016-04-18 13:05:40 +0300 Guillaume Desmottes + + * gst/gst.c: + * gst/gst_private.h: + * gst/gstallocator.c: + allocator: add cleanup method + Make tracking memory leaks easier. + https://bugzilla.gnome.org/show_bug.cgi?id=765212 + +2016-03-25 15:55:18 +0100 Francisco Velazquez + + * tests/check/gst/gstplugin.c: + tests: plugin: improve debug message + https://bugzilla.gnome.org/show_bug.cgi?id=764199 + +2016-04-14 11:54:32 +0200 Carlos Rafael Giani + + * plugins/elements/gstmultiqueue.c: + * tests/check/elements/multiqueue.c: + multiqueue: Recheck buffering status after changing low threshold + https://bugzilla.gnome.org/show_bug.cgi?id=763757 + +2016-04-14 00:09:44 +0200 Carlos Rafael Giani + + * plugins/elements/gstmultiqueue.c: + * tests/check/elements/multiqueue.c: + multiqueue: Recalculate fill level after changing high-threshold + This ensures the following special case is handled properly: + 1. Queue is empty + 2. Data is pushed, fill level is below the current high-threshold + 3. high-threshold is set to a level that is below the current fill level + Since mq->percent wasn't being recalculated in step #3 properly, this + caused the multiqueue to switch off its buffering state when new data is + pushed in, and never post a 100% buffering message. The application will + have received a <100% buffering message from step #2, but will never see + 100%. + Fix this by recalculating the current fill level percentage during + high-threshold property changes in the same manner as it is done when + use-buffering is modified. + https://bugzilla.gnome.org/show_bug.cgi?id=763757 + +2016-04-15 13:50:30 +0300 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: When initializing DTS from PTS, remember that we did so + If we don't store the value in prev_dts, we would over and over again + initialize the DTS from the last known upstream PTS. If upstream only provides + PTS every now and then, then this causes DTS to be rather static. + For example in adaptive streaming scenarios this means that all buffers in a + fragment will have exactly the same DTS while the PTS is properly updated. As + our queues are now preferring to do buffer fill level calculations on DTS, + this is causing huge problems there. + See https://bugzilla.gnome.org/show_bug.cgi?id=691481#c27 where this part of + the code was introduced. + https://bugzilla.gnome.org/show_bug.cgi?id=765096 + +2016-04-14 09:58:04 +0100 Julien Isorce + + * README: + * common: + Automatic update of common submodule + From 6f2d209 to ac2f647 + +2016-04-13 16:08:30 +0100 Vincent Penquerc'h + + * plugins/elements/gstmultiqueue.c: + multiqueue: catch errors and flushing case after lock + This ensures we can not get into an indefinite wait on the + following cond var wait. + https://bugzilla.gnome.org/show_bug.cgi?id=764999 + +2016-04-13 16:40:43 +0100 Tim-Philipp Müller + + * tools/gst-launch.c: + tools: gst-launch: fix up caps printing in verbose mode + Add missing 'else' and print caps and taglists without the + annoying duplicate string escaping, making both nicer to read. + Fixes string leak and coverity CID 1358492. + +2016-04-13 12:38:05 +0300 Guillaume Desmottes + + * plugins/tracers/gstrusage.c: + rusage: properly free the queue memory + The queue is allocated as part of the tracer struct so we should not + use g_queue_free() to free it. + https://bugzilla.gnome.org/show_bug.cgi?id=764985 + +2016-04-13 10:21:15 +0300 Sebastian Dröge + + * gst/gstbuffer.c: + * gst/gstmeta.c: + meta: Warn if a meta implementation is registered without init function + This previously caused uninitialized memory unless something else was + initializing all the fields explicitly to something. + To be on the safe side, we also allocate metas without init function to all + zeroes now as it was relatively common. + https://bugzilla.gnome.org/show_bug.cgi?id=764902 + +2016-04-12 15:17:36 +0300 Sebastian Dröge + + * libs/gst/base/gstbasesink.c: + Revert "basesink: Take PREROLL_LOCK in wait_event()" + This reverts commit 828a4627db0cb6a6706b96d9be97e5e5c7d22215. + The lock was already taken elsewhere, in gst_base_sink_event(). + +2016-04-12 15:11:30 +0300 Sebastian Dröge + + * libs/gst/base/gstbasesink.c: + basesink: Take PREROLL_LOCK in wait_event() + It is calling do_sync(), which requires the STREAM_LOCK and PREROLL_LOCK to be + taken. The STREAM_LOCK is already taken in all callers, the PREROLL_LOCK not. + https://bugzilla.gnome.org/show_bug.cgi?id=764939 + +2016-02-11 09:33:28 +0100 Julien Isorce + + * tests/check/Makefile.am: + tests: add PTHREAD_CFLAGS for make check to pass on OS X + Currently "make check" fails with: + "error: argument unused during compilation: '-pthread'" + PTHREAD_CFLAGS now contains -Qunused-arguments to fix that. + Explanation here: http://savannah.gnu.org/patch/?8186#comment21 + https://bugzilla.gnome.org/show_bug.cgi?id=747954 + +2016-04-11 10:44:22 +0100 Tim-Philipp Müller + + * tests/check/libs/baseparse.c: + tests: baseparse: make work with CK_FORK=no + https://bugzilla.gnome.org/show_bug.cgi?id=623469 + +2016-04-11 10:27:56 +0100 Tim-Philipp Müller + + * tests/check/libs/test_transform.c: + * tests/check/libs/transform1.c: + * tests/check/libs/transform2.c: + tests: transform1: make test work with CK_FORK=no + We need to clear some global state and register a new test + basetransform subclass for each test because we do things + in class_init base on global state. + https://bugzilla.gnome.org/show_bug.cgi?id=623469 + +2016-04-10 20:45:24 +0100 Tim-Philipp Müller + + * tests/check/libs/collectpads.c: + tests: collectpads: fix for CK_FORK=no + Reset global state when done, and unref sink pads too + in teardown function to make it valgrind clean. + https://bugzilla.gnome.org/show_bug.cgi?id=623469 + +2016-04-10 20:25:44 +0100 Tim-Philipp Müller + + * tests/check/elements/streamiddemux.c: + tests: streamiddemux: fix with CK_FORK=no + Clear global state when done. + https://bugzilla.gnome.org/show_bug.cgi?id=623469 + +2016-04-10 20:04:07 +0100 Tim-Philipp Müller + + * tests/check/gst/gstbufferpool.c: + tests: bufferpool: fix wrong assumptions about pointers and object lifecycles + The test assumed that if a buffer has the same pointer address as + before it is in fact the same mini object and has been re-used by + the pool. This seems to be mostly true, but not always. The buffer + might be destroyed and when a new buffer is created the allocator + might return the same memory that we just freed. + Instead attach a qdata with destroy notify function to buffer + instances we want to track to make sure the buffer actually + gets finalized rather than resurrected and put back into the pool. + +2016-04-10 18:37:31 +0100 Tim-Philipp Müller + + * docs/pwg/building-boiler.xml: + * docs/pwg/pwg.xml: + docs: pwg: remove broken references to example code + We point to gst-template at the beginning that shoul be + enough. + https://bugzilla.gnome.org/show_bug.cgi?id=623575 + +2016-04-08 13:26:48 +0100 Tim-Philipp Müller + + * tests/check/Makefile.am: + tests: don't run tracerrecord in valgrind for now + Because of the way we implement logging and adding/removing + log functions currently (we leak a GList on purpose) this + test leaks. + +2016-03-05 17:51:01 +0000 Tim-Philipp Müller + + * tools/gst-launch.c: + tools: gst-launch: use new async property change notification API + https://bugzilla.gnome.org/show_bug.cgi?id=763142 + +2016-03-05 14:12:36 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstelement.c: + * gst/gstelement.h: + * gst/gstmessage.c: + * gst/gstmessage.h: + * gst/gstquark.c: + * gst/gstquark.h: + * tests/check/gst/gstelement.c: + * win32/common/libgstreamer.def: + element: add API to get property change notifications via messages + Be notified in the application thread via bus messages about + notify::* and deep-notify::* property changes, instead of + having to deal with it in a non-application thread. + API: gst_element_add_property_notify_watch() + API: gst_element_add_property_deep_notify_watch() + API: gst_element_remove_property_notify_watch() + API: gst_message_new_property_notify() + API: gst_message_parse_property_notify() + API: GST_MESSAGE_PROPERTY_NOTIFY + https://bugzilla.gnome.org/show_bug.cgi?id=763142 + +2016-04-07 20:29:10 +0300 Sebastian Dröge + + * tests/check/gst/gstcpp.cc: + * tests/check/libs/gstlibscpp.cc: + tests: Add C++ tests for the other INIT macros we have + +2016-04-06 17:19:28 +0100 Tim-Philipp Müller + + * tests/check/gst/gstcpp.cc: + tests: gstcpp: flesh out C++ test so we can add more bits + Like a check for GST_MAP_INFO_INIT. + +2016-04-06 16:48:38 +0100 Tim-Philipp Müller + + * tests/check/libs/gstlibscpp.cc: + tests: use catch-all includes for c++ gst libs include test + So we get any new header files as well as they're added. + +2016-04-06 17:23:20 +0100 Tim-Philipp Müller + + * gst/gstmemory.h: + memory: fix C++ compiler warnings with GST_MAP_INFO_INIT + +2016-04-04 10:28:18 +0000 Matthew Waters + + * gst/gstutils.c: + * tests/check/gst/gstutils.c: + utils: check the correct element's state on ghosting pads + Checking the current element's state when we're adding pads to + the parent element is checking the wrong thing. + Silences a 'attempting to add an inactive pad to a running element' + warning when adding a ghost pad to a running parent bin of the parent + bin of the element. + https://bugzilla.gnome.org/show_bug.cgi?id=764176 + +2016-03-25 01:28:18 +0000 Matthew Waters + + * docs/gst/gstreamer-sections.txt: + * gst/gstutils.c: + * gst/gstutils.h: + * win32/common/libgstreamer.def: + utils: expose pad_link_maybe_ghosting + This is a useful function to automatically add ghost pads when linking + two elements across bin boundaries without know their exact parentage. + e.g. when using gst_parse_bin_from_description (with or without it ghosting pads), + one can simply retreive the src/sink pads from the bin to link to another pad. + Similar functionality is provided by gst_element_link_pads{_full}() however only + by pad name rather than by actual pads. + API: gst_pad_link_maybe_ghosting_full + https://bugzilla.gnome.org/show_bug.cgi?id=764176 + +2016-04-03 23:35:46 -0700 Reynaldo H. Verdejo Pinochet + + * docs/design/part-states.txt: + docs/design/part-states.txt: spelling fix + +2015-05-15 13:36:04 +0100 Mark Combellack + + * gst/gstbin.c: + * gst/gstbufferpool.c: + * gst/gstelement.c: + * gst/gstobject.c: + * gst/gstpad.c: + * gst/gstpipeline.c: + GST_REFCOUNTING: Add logging of pointer address for dispose, finalize, etc messages + Updated the GST_REFCOUNTING logging so that it includes the pointer + address of the object that is being disposed or finalized. + With this change is is then possible to match up GST_REFCOUNTING log messages + for object allocation/disposal/finalization. This can help with diagnosing + "memory leaks" in applications that have not correctly disposed of all the + GStreamer objects it creates. + https://bugzilla.gnome.org/show_bug.cgi?id=749427 + +2016-03-31 11:46:03 +0100 Luis de Bethencourt + + * gst/gstinfo.c: + info: only open log file when adding it to the log function + This avoids the leak of opening it and then not passing it or closing it + before it goes out of scope. + +2016-04-01 22:41:51 +0300 Sebastian Dröge + + * gst/gstclock.c: + clock: Return FALSE in all paths that don't set out parameters in gst_clock_add_observation_unapplied() + It returned TRUE when regression failed, while not setting any of the out + parameters. This caused uninitialized data from the stack to be used for + setting the clock calibration. + +2016-03-24 17:34:20 -0300 Thiago Santos + + * gst/gstpad.c: + pad: rework probe's hook_marshall function + PUSH and PULL mode have opposite scenarios for IDLE and BLOCK + probes. + For PUSH it will BLOCK with some data type and IDLE won't have a type. + For PULL it will BLOCK before getting some data and will be IDLE when + some data is obtained. + The check in hook_marshall was specific for PUSH mode and would cause + PULL probes to fail to be called. Adding different checks for the mode + to fix this issue. + https://bugzilla.gnome.org/show_bug.cgi?id=761211 + +2016-03-24 17:34:40 -0300 Thiago Santos + + * tests/check/gst/gstpad.c: + tests: pad: extra tests for pad pull probes + For BUFFER and IDLE probes + https://bugzilla.gnome.org/show_bug.cgi?id=761211 + +2016-01-28 16:22:17 +0100 Matej Knopp + + * tests/check/gst/gstpad.c: + pad: Add test for blocking pull probe + https://bugzilla.gnome.org/show_bug.cgi?id=761211 + +2016-03-24 12:13:39 -0300 Thiago Santos + + * gst/gstpad.c: + pad: consider PROBE_TYPE_EVENT_FLUSH when using PROBE_TYPE_ALL_BOTH + When GST_PAD_PROBE_EVENT_FLUSH is used, the probes already have + a data type and it is not needed to automatically add the default + types. + https://bugzilla.gnome.org/show_bug.cgi?id=762330 + +2016-02-19 16:18:12 +0100 Linus Svensson + + * tests/check/gst/gstpad.c: + gstpad tests: Add a test for flush event only probes + https://bugzilla.gnome.org/show_bug.cgi?id=762330 + +2016-03-26 17:21:51 +0000 Tim-Philipp Müller + + * gst/gstdebugutils.c: + debugutils: fix enum/flag properties printing for elements + We want to use the flag/enum nicks here, not only because they + are shorter but also because in case of element-specific enums + and flags we abuse the enum/flag name field for the description, + and we don't want that printed in the dot file. + https://bugzilla.gnome.org/show_bug.cgi?id=763814 + +2016-03-23 10:31:46 +0000 Tim-Philipp Müller + + * gst/gsttrace.c: + alloctrace: print size and allocator details for buffers and memories + +2016-02-29 19:04:16 +0000 Tim-Philipp Müller + + * gst/gstinfo.c: + info: make it possible to remove default log handler before gst_init() + Make sure it's not even added then, so that we never output + anything via the default log handler then. + https://bugzilla.gnome.org/show_bug.cgi?id=751538 + +2016-03-05 14:27:35 +0000 Tim-Philipp Müller + + * gst/gstmemory.h: + * gst/gstminiobject.h: + * gst/gsturi.h: + miniobject, memory, uri: warn on unused return value of some funcs + Make compiler issue a warning for common beginner mistakes such as: + ... + gst_buffer_make_writable (buf); + gst_buffer_map (buf, &map, GST_MAP_WRITE); + ... + and similar. Only do this for some functions for now. + +2016-03-26 11:17:02 +0000 Tim-Philipp Müller + + * .gitignore: + .gitignore new netclock-replay testing tool binary + +2015-10-17 18:01:47 +0100 Tim-Philipp Müller + + * gst/gstregistry.c: + registry: allow plugin and feature filter funcs to call registry API + Don't keep the registry locked whilst iterating over the plugins + or features with a filter function. This would deadlock if the + callback tried to access the registry from the function. Instead, + make a copy of the feature/plugin list and then filter it without + holding the registry lock. This is still considerably faster than + the alternative which would be to use a GstIterator. + https://bugzilla.gnome.org/show_bug.cgi?id=756738 + +2016-03-25 12:59:57 +0200 Sebastian Dröge + + * configure.ac: + configure: Remove unneeded parenthesis from AG_GST_CHECK_CHECKS + +2016-03-25 12:05:41 +0200 Sebastian Dröge + + * tests/check/elements/valve.c: + valve: Fix unit test by sending caps before buffers + Unexpected critical/warning: gstpad.c:4400:gst_pad_push_data:<'':src> Got data flow before segment event + https://bugzilla.gnome.org/show_bug.cgi?id=763753 + +2016-03-25 10:23:46 +0200 Sebastian Dröge + + * tests/misc/Makefile.am: + netclock: Link the replay example to GIO + +2016-03-03 21:45:54 +0530 Arun Raghavan + + * tests/misc/Makefile.am: + * tests/misc/netclock-replay.c: + tests: Add some code to replay and analyse netclientclock + This takes readings in the form of ... + + ... with one observation per line, and then replays it using the + netclientclock code. + The output is the statistics structure emitted by the netclientclock, + which can then be analysed and tuned once we get those readings for + potential edge-cases. + It should be possible to find some inputs with "bad" data and convert + this into a unit test for future tweaks to run against. + +2016-03-03 21:44:35 +0530 Arun Raghavan + + * libs/gst/net/gstnetclientclock.c: + netclientclock: Always dump clock observations in logs + This makes it possible to examine what values we get in logs, and + potentially tune our filtering/extrapolation in various scenarios. + +2016-03-04 15:50:26 +0900 Vineeth TM + + * plugins/elements/gstdataurisrc.c: + bad: use new gst_element_class_add_static_pad_template() + https://bugzilla.gnome.org/show_bug.cgi?id=763081 + +2016-03-16 15:13:39 +0100 Havard Graff + + * plugins/elements/gstvalve.c: + * tests/check/elements/valve.c: + valve: don't send sticky events as a direct response to upstream events + Also refactor the existing valve test to actually test the valve, + and not just test the EOS mechanism of a pad. + https://bugzilla.gnome.org/show_bug.cgi?id=763753 + +2016-03-11 09:23:04 +0100 Carlos Rafael Giani + + * gst/gstparse.c: + * gst/gstparse.h: + * gst/parse/grammar.y: + parse-launch: Add flag for placing elements in a bin instead of a pipeline + By default, gst_parse_launch_full() creates a GstPipeline if there's more + than one toplevel element. Add a flag to let it use a GstBin instead. + Also fix the parser to let it use this flag for GST_TYPE_ELEMENT property + values, to avoid having GstPipelines inside other GstPipelines. + https://bugzilla.gnome.org/show_bug.cgi?id=763457 + +2016-03-08 19:08:16 +0000 Tim-Philipp Müller + + * plugins/elements/gstcapsfilter.c: + * plugins/elements/gstcapsfilter.h: + capsfilter: optimisation: avoid unnecessary gst_pad_has_current_caps() checks + No need to do this for every input buffer, since it involves + locking and iterating of the sticky events array and such. + https://bugzilla.gnome.org/show_bug.cgi?id=763337 + +2016-03-03 14:15:00 +0900 Vineeth TM + + * gst/gstpadtemplate.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * tests/check/elements/fakesink.c: + * tests/check/gst/gstpad.c: + * tests/check/gst/gstprotection.c: + * tests/check/gst/gstutils.c: + * tests/check/libs/baseparse.c: + * tests/check/libs/collectpads.c: + * tests/check/libs/test_transform.c: + * tests/check/pipelines/parse-launch.c: + * tests/check/pipelines/seek.c: + gstreamer: use new gst_element_class_add_static_pad_template() + https://bugzilla.gnome.org/show_bug.cgi?id=763020 + +2016-03-02 17:47:33 +0100 Edward Hervey + + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue.h: + queue: Use full running time for level calculation + Ensures we have proper time level estimation for the cases where + the incoming buffers have PTS/DTS outside of the segment start/stop + values. + https://bugzilla.gnome.org/show_bug.cgi?id=762995 + +2016-01-27 11:46:06 +0100 Stian Selnes + + * gst/gstpad.c: + pad: Fix race between gst_element_remove_pad and state change + When going from READY to NULL all element pads are deactivated. If + simultaneously the pad is being removed from the element with + gst_element_remove_pad() and the pad is unparented, there is a race + where the deactivation will assert (g_critical) if the parent is lost at + the wrong time. + The proposed fix will check parent only once and retain it to avoid the + race. + https://bugzilla.gnome.org/show_bug.cgi?id=761912 + +2016-03-02 21:11:51 -0500 Nicolas Dufresne + + * libs/gst/base/gstcollectpads.c: + collectpads: Assume PTS is equal DTS if PTS is missing + This is the best guess we can make if such a buffer reached the collect + pad. This is uncommon, we do expect parsers to have tried and fixed that + if possible (or needed). + https://bugzilla.gnome.org/show_bug.cgi?id=762207 + +2016-03-24 13:32:41 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +2016-03-24 11:49:44 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Remove redundant assignment + CID 1357158 + +=== release 1.8.0 === + +2016-03-24 11:49:08 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstversion.h: + Release 1.8.0 + +2016-03-24 11:35:26 +0200 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 + +2016-03-13 11:05:29 -0400 Anthony G. Basile + + * libs/gst/check/libcheck/libcompat.h: + libcompat.h: strsignal() should be not be decleared const + POSIX standards requires strsignal() to return a pointer to a char, + not a const pointer to a char. [1] On uClibc, and possibly other + libc's, that do not HAVE_DECL_STRSIGNAL, libcompat.h declares + const char *strsignal (int sig) which causes a type error. + [1] man 3 strsignal + https://bugzilla.gnome.org/show_bug.cgi?id=763567 + +2016-03-22 19:04:59 +0200 Sebastian Dröge + + * gst/gstpreset.c: + preset: Use GST_PRESET_PATH as an extension of the system path, not a replacement of the user path + First load all system presets, then all from the environment variable, then + from the app directory, then from the user directory. Any one in the chain + with the highest version completely replaces all previous ones, later ones + with lower versions are merged in without replacing existing presets. + This is basically the same behaviour as before, just that GST_PRESET_PATH is + inserted as another source of directories between the system and app presets. + It was added in ca08af1f17d2ce36b83998a0ba3a7b8bcafd7872, but was + accidentially overriding the user preset path there. Which caused inconsistent + behaviour as new presets were still stored in the system path, just not loaded + from there. Meaning you could store a new preset (in the user path), just for + GstPreset to not find it anymore later (because it only looked in the + GST_PRESET_PATH instead of the user path). + https://bugzilla.gnome.org/show_bug.cgi?id=764034 + +2016-03-19 12:55:09 +0100 Aurélien Zanelli + + * gst/gstutils.c: + utils: add 'transfer full' annotation to gst_pad_peer_query_caps + https://bugzilla.gnome.org/show_bug.cgi?id=763912 + +2016-03-19 12:39:18 +0100 Aurélien Zanelli + + * gst/gstpad.c: + pad: add 'transfer full' and 'nullable' annotations to gst_pad_get_current_caps + and also change the description accordingly since function returns an + incremented caps object or NULL if there is no caps set. + https://bugzilla.gnome.org/show_bug.cgi?id=763912 + +2016-03-18 16:02:43 -0400 Ben Iofel + + * gst/gstutils.c: + utils: fix gir annotation for gst_element_query_convert() + https://bugzilla.gnome.org/show_bug.cgi?id=763895 + +2016-03-17 01:42:55 +1100 Jan Schmidt + + * tests/check/elements/multiqueue.c: + tests: Check multiqueue not-linked EOS handling + Add a test which checks that not-linked pads continue + to output data after linked pads have gone EOS + https://bugzilla.gnome.org/show_bug.cgi?id=763770 + +2016-03-18 03:08:39 +1100 Jan Schmidt + + * plugins/elements/gstmultiqueue.c: + multiqueue: Fix not-linked pad handling at EOS + Ensure that not-linked pads will drain out at EOS by + correctly detecting the EOS condition based on the EOS + pad flag (which indicates we actually pushed an EOS), + and make sure that not-linked pads are woken when doing + EOS processing on linked pads. + https://bugzilla.gnome.org/show_bug.cgi?id=763770 + +2016-03-15 16:37:33 +0100 Romain Picard + + * plugins/elements/gsttypefindelement.c: + typefind: Allow caps query in "have-type" signal handlers + If an application calls gst_pad_query_caps from its "have-type" signal handler, + then the query fails because typefind->caps has not been set yet. + This patch sets typefind->caps in the object method handler, before the signal + handlers are called. + https://bugzilla.gnome.org/show_bug.cgi?id=763491 + +=== release 1.7.91 === + +2016-03-15 11:56:10 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstversion.h: + Release 1.7.91 + +2016-03-15 11:44:03 +0200 Sebastian Dröge + + * po/af.po: + * po/az.po: + * po/be.po: + * po/bg.po: + * po/ca.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/gl.po: + * po/hr.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/rw.po: + * po/sk.po: + * po/sl.po: + * po/sq.po: + * po/tr.po: + * po/zh_TW.po: + Update .po files + +2016-03-15 11:39:42 +0200 Sebastian Dröge + + * po/cs.po: + * po/fr.po: + * po/hu.po: + * po/ru.po: + * po/sr.po: + * po/sv.po: + * po/uk.po: + * po/vi.po: + * po/zh_CN.po: + po: Update translations + +2016-03-11 14:17:13 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Store caps on the pad before emitting have-type but send it downstream only in the default signal handler + https://bugzilla.gnome.org/show_bug.cgi?id=763491 + +2016-03-13 10:33:53 +0200 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Recheck after pre_push_frame() if there are tags pending + Many parsers are storing tags only in pre_push_frame(), if we wouldn't check + afterwards we would push buffers before those tags and a lot of code assumes that + tags are available before preroll. + https://bugzilla.gnome.org/show_bug.cgi?id=763553 + +2016-03-14 11:15:07 +0100 Carlos Rafael Giani + + * plugins/elements/gstconcat.c: + concat: Fix comment typo + +2016-03-12 12:56:28 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + Revert "typefind: Store caps on the pad before emitting have-type but send it downstream only in the default signal handler" + This reverts commit 0835c3d6569dde0ec9e5524436367c7678cc4a4a. + It causes deadlocks in decodebin, which currently would deadlock if the caps + are already on the pad in have-type and are forwarded while copying the sticky + events (while holding the decodebin lock)... as that might cause the next + element to expose pads, which then calls back into decodebin and takes the + decodebin lock. + This needs some more thoughts. + +2016-03-11 14:17:13 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Store caps on the pad before emitting have-type but send it downstream only in the default signal handler + https://bugzilla.gnome.org/show_bug.cgi?id=763491 + +2016-03-10 10:35:40 +0100 Carlos Rafael Giani + + * gst/gstelement.h: + * gst/gstobject.h: + docs: Flesh out element and object macro accessor docs a bit + https://bugzilla.gnome.org/show_bug.cgi?id=763213 + +2016-03-09 16:06:58 +0200 Sebastian Dröge + + * libs/gst/net/gstnetclientclock.c: + netclientclock: Remove some obsolete code that can cause warnings + +2016-03-09 13:44:24 +0200 Sebastian Dröge + + * libs/gst/net/gstnetclientclock.c: + netclientclock: Don't reset calibration of internal clock whenever a new netclient clock is created + https://bugzilla.gnome.org/show_bug.cgi?id=763325 + +2016-03-04 18:23:18 +0100 Víctor Manuel Jáquez Leal + + * gst/gstbuffer.h: + * tests/check/gst/gstbuffer.c: + gstbuffer: fix GstParentBufferMeta GType name + The alias define GST_TYPE_PARENT_BUFFER_META_API_TYPE is wrong and + breaks the usage of gst_buffer_get_parent_buffer_meta(). + This patch fixes the GType alias and make another alias to keep the API + compatibility guarded by GST_DISABLE_DEPRECATED. + Also added a unit test. + https://bugzilla.gnome.org/show_bug.cgi?id=763112 + +2016-03-02 10:37:09 +0200 Sebastian Dröge + + * gst/gsttracerrecord.c: + tracerrecord: Remove useless NULL check and add assertion for making assumptions explicit + gst_structure_new_empty() is not returning NULL in any valid scenarios, + checking for NULL here is useless. Especially because we would dereference any + NULL right after the NULL check again. + CID 1352037. + We previously check if the string ends on .class, as such strrchr() should + return something non-NULL. Add an assertion for that. + CID 1349642. + +2016-03-01 19:50:26 +0000 Tim-Philipp Müller + + * gst/gstelement.c: + element: minor docs fix + Make gtk-doc happy. + +=== release 1.7.90 === + +2016-03-01 18:14:03 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstversion.h: + Release 1.7.90 + +2016-03-01 16:52:41 +0200 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: + po: Update translations + +2016-02-29 23:33:03 +0200 Sebastian Dröge + + * gst/gstbus.c: + * tests/check/gst/gstpipeline.c: + Revert "bus: change GstBusSource to hold a weak ref to GstBus" + This reverts commit 894c67e642c0f858b5b18097fa7c995bf3cc50c1. + +2016-02-29 23:32:58 +0200 Sebastian Dröge + + * gst/gstbus.c: + Revert "bus: Make sure to remove the GPollFD from the GSources when destroying the bus" + This reverts commit 05700a7082c145057ccc0be763067bcc263239eb. + +2016-02-29 17:06:36 +0200 Sebastian Dröge + + * gst/gstelement.h: + element: Remove GST_STATE_LOCK_FULL() / UNLOCK_FULL() + There is no corresponding API for that in GLib and nobody could've ever used + these macros without compiler errors anyway. + +2016-02-29 10:01:50 +0200 Sebastian Dröge + + * gst/gstbus.c: + bus: Make sure to remove the GPollFD from the GSources when destroying the bus + Otherwise the GSource can look into our already destroyed bus where the + GPollFD is stored. + https://bugzilla.gnome.org/show_bug.cgi?id=762849 + +2016-02-29 11:06:50 +0900 Vineeth TM + + * tests/check/gst/gstghostpad.c: + tests: ghostpad: Fix memory leaks + https://bugzilla.gnome.org/show_bug.cgi?id=762845 + +2016-02-28 13:59:48 +0000 Tim-Philipp Müller + + * gst/gsttaglist.c: + taglist: add guard to check writability when removing tags from a taglist + https://bugzilla.gnome.org/show_bug.cgi?id=762793 + +2016-02-27 15:36:28 +0000 Tim-Philipp Müller + + * plugins/elements/gstcapsfilter.c: + * plugins/elements/gstconcat.c: + * plugins/elements/gstdownloadbuffer.c: + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstfdsink.c: + * plugins/elements/gstfdsrc.c: + * plugins/elements/gstfilesink.c: + * plugins/elements/gstfilesrc.c: + * plugins/elements/gstfunnel.c: + * plugins/elements/gstidentity.c: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstoutputselector.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gststreamiddemux.c: + * plugins/elements/gsttee.c: + * plugins/elements/gsttypefindelement.c: + * plugins/elements/gstvalve.c: + elements: use new gst_element_class_add_static_pad_template() + https://bugzilla.gnome.org/show_bug.cgi?id=762778 + +2016-02-27 15:28:49 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstelement.c: + * gst/gstelement.h: + * win32/common/libgstreamer.def: + element: add gst_element_class_add_static_pad_template() + Pretty much every single element does + gst_element_class_add_pad_template (element_class, + gst_static_pad_template_get (&some_templ)); + which is both confusing and unnecessary. We might just + as well add a function to do that in one step. + https://bugzilla.gnome.org/show_bug.cgi?id=762778 + +2016-02-27 15:32:19 +0000 Tim-Philipp Müller + + * plugins/elements/gsttypefindelement.c: + typefind: fix indentation + +2016-02-26 12:40:55 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From b64f03f to 6f2d209 + +2016-02-25 22:36:14 +0000 James Stevenson + + * gst/gstbus.c: + bus: Prevent gst_bus_add_watch_full_unlocked from a segfault if priv->poll == NULL + This happens if the process runs out of file descriptors. Better print + a critical warning instead of just crashing. + https://bugzilla.gnome.org/show_bug.cgi?id=762702 + +2016-02-24 10:56:24 -0300 Thiago Santos + + * gst/gstbus.c: + * tests/check/gst/gstpipeline.c: + bus: change GstBusSource to hold a weak ref to GstBus + When holding a regular ref it will cause the GstBus to never + reach 0 references and it won't be destroyed unless the application + explicitly calls gst_bus_remove_signal_watch(). + Switching to weakref will allow the GstBus to be destroyed. + The application is still responsible for destroying the + GSource. + https://bugzilla.gnome.org/show_bug.cgi?id=762552 + +2016-02-25 14:11:34 +0200 Sebastian Dröge + + * plugins/elements/gstidentity.c: + identity: Add a " " after pts: in the silent=false output + +2014-04-16 11:42:18 +0200 Edward Hervey + + * docs/manual/advanced-dataaccess.xml: + manual: Fix examples to check for gst_buffer_map return values + Otherwise people reading the manual will expect it to always + succeed :) + https://bugzilla.gnome.org/show_bug.cgi?id=728326 + +2014-04-16 11:40:46 +0200 Edward Hervey + + * libs/gst/check/gstcheck.c: + gstcheck: Check return value of gst_buffer_map + We can't check contents if we don't have access to it + https://bugzilla.gnome.org/show_bug.cgi?id=728326 + +2014-04-16 11:39:15 +0200 Edward Hervey + + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstfdsrc.c: + * plugins/elements/gstfilesrc.c: + * plugins/elements/gstidentity.c: + * plugins/elements/gstqueue2.c: + plugins: Check return values of gst_buffer_map() + They can fail for various reasons. + For non-fatal cases (such as the dump feature of identiy and fakesink), + we just silently skip it. + For other cases post an error message. + https://bugzilla.gnome.org/show_bug.cgi?id=728326 + +2016-02-23 17:23:43 +0100 Edward Hervey + + * gst/gstbuffer.c: + buffer: Check return value of gst_memory_map() + Only do memory operations if the memory was succesfully map'ed + https://bugzilla.gnome.org/show_bug.cgi?id=728326 + +2016-02-23 18:17:42 +0200 Sebastian Dröge + + * plugins/elements/gstdataurisrc.c: + dataurisrc: 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-10 15:32:27 +0100 Adam Miartus + + * gst/gsttaglist.c: + * gst/gsttaglist.h: + taglist: add GST_TAG_CONDUCTOR + This is useful for metadata which explicitely distinguishes + between artist/composer and conductor. + https://bugzilla.gnome.org/show_bug.cgi?id=762450 + +2016-02-22 14:09:56 +0100 Mark Nauwelaerts + + * gst/gstevent.c: + event: add some more documentation on stream-id + ... where it might end up being used for. + +2016-01-22 11:25:30 +0100 Thibault Saunier + + * gst/gsttracerutils.c: + tracer: Initialize GstTracer _priv_tracers and quarks unconditionnally + Some people might use tracer hooks even if GST_TRACER_PLUGINS is not + set. + https://bugzilla.gnome.org/show_bug.cgi?id=760979 + +2016-02-20 10:18:06 +0000 Tim-Philipp Müller + + * docs/manual/appendix-integration.xml: + docs: manual: remove dead link from integration page + +2016-02-20 10:13:38 +0000 Tim-Philipp Müller + + * docs/manual/advanced-dataaccess.xml: + docs: manual: fix formatting + advanced-dataaccess.xml:1210: element listitem: validity error : Element + listitem content does not follow the DTD, expecting (...), + got (para CDATA para ) + + +2016-02-20 00:55:30 +0000 Tim-Philipp Müller + + * scripts/create-uninstalled-setup.sh: + scripts: check for git in create-uninstalled-setup.sh as well + +2016-02-19 20:26:26 +0530 Nirbheek Chauhan + + * gst/glib-compat.c: + * gst/gsttask.c: + * libs/gst/net/gstptpclock.c: + Whenever we include windows.h, also define WIN32_LEAN_AND_MEAN + This reduces the number of symbols and code pulled in drastically + +2016-02-13 06:53:24 +0530 Nirbheek Chauhan + + * gst/printf/gst-printf.h: + printf: On MSVC, also define HAVE_STDINT_H_WITH_UINTMAX + MSVC provides stdint.h but not inttypes.h, and we need to include stdint.h to + get intmax_t + +2016-02-13 06:42:06 +0530 Nirbheek Chauhan + + * libs/gst/net/gstptpclock.c: + ptpclock: Only include unistd.h if found + unistd.h is not provided by the Microsoft Visual C++ compiler. It instead + provides the necessary defines through io.h + +2016-02-13 06:19:52 +0530 Nirbheek Chauhan + + * gst/gstplugin.c: + plugin: Only check for S_IFBLK if it is defined + Windows does not define S_IFBLK since it doesn't have block devices + +2016-02-19 20:17:02 +0000 Tim-Philipp Müller + + * win32/MANIFEST: + * win32/README.txt: + * win32/common/dirent.c: + * win32/common/dirent.h: + * win32/common/gtchar.h: + * win32/common/libgstdataprotocol.def: + * win32/vs10/Common.props: + * win32/vs10/Library.props: + * win32/vs10/Plugin.props: + * win32/vs10/ReadMe.txt: + * win32/vs10/Tool.props: + * win32/vs10/base/base.vcxproj: + * win32/vs10/base/base.vcxproj.filters: + * win32/vs10/controller/controller.vcxproj: + * win32/vs10/controller/controller.vcxproj.filters: + * win32/vs10/generated/generated.vcxproj: + * win32/vs10/generated/generated.vcxproj.filters: + * win32/vs10/gst-inspect/gst-inspect.vcxproj: + * win32/vs10/gst-inspect/gst-inspect.vcxproj.filters: + * win32/vs10/gst-launch/gst-launch.vcxproj: + * win32/vs10/gst-launch/gst-launch.vcxproj.filters: + * win32/vs10/gst-typefind/gst-typefind.vcxproj: + * win32/vs10/gst-typefind/gst-typefind.vcxproj.filters: + * win32/vs10/gstcoreelements/gstcoreelements.vcxproj: + * win32/vs10/gstcoreelements/gstcoreelements.vcxproj.filters: + * win32/vs10/gstreamer.sln: + * win32/vs10/gstreamer/gstreamer.vcxproj: + * win32/vs10/gstreamer/gstreamer.vcxproj.filters: + * win32/vs10/net/net.vcxproj: + * win32/vs10/net/net.vcxproj.filters: + * win32/vs6/grammar.dsp: + * win32/vs6/gst_inspect.dsp: + * win32/vs6/gst_launch.dsp: + * win32/vs6/gstreamer.dsw: + * win32/vs6/libgstbase.dsp: + * win32/vs6/libgstcontroller.dsp: + * win32/vs6/libgstcoreelements.dsp: + * win32/vs6/libgstnet.dsp: + * win32/vs6/libgstreamer.dsp: + * win32/vs7/grammar.vcproj: + * win32/vs7/gst-inspect.vcproj: + * win32/vs7/gst-launch.vcproj: + * win32/vs7/gstreamer.sln: + * win32/vs7/libgstbase.vcproj: + * win32/vs7/libgstcontroller.vcproj: + * win32/vs7/libgstcoreelements.vcproj: + * win32/vs7/libgstreamer.vcproj: + * win32/vs8/grammar.vcproj: + * win32/vs8/gst-inspect.vcproj: + * win32/vs8/gst-launch.vcproj: + * win32/vs8/gstreamer.sln: + * win32/vs8/libgstbase.vcproj: + * win32/vs8/libgstcontroller.vcproj: + * win32/vs8/libgstcoreelements.vcproj: + * win32/vs8/libgstreamer.vcproj: + win32: update README and remove outdated build cruft + This hasn't been touched for generations, doesn't work, + and is just causing confusion. We also don't want to + maintain these files manually. + +2016-02-19 08:43:00 +0000 George Yunaev + + * docs/manual/advanced-dataaccess.xml: + manual: Explain what happens if upstream elements are removed from the pipeline without draining them first + https://bugzilla.gnome.org/show_bug.cgi?id=762302 + +2016-02-19 14:41:55 +0000 Tim-Philipp Müller + + * tests/check/elements/identity.c: + * tests/check/libs/gstharness.c: + tests: fix indentation + +2016-02-19 12:38:21 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.7.2 === + +2016-02-19 11:47:52 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/gstreamer-plugins.args: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstenumtypes.h: + * win32/common/gstversion.h: + Release 1.7.2 + +2016-02-19 10:29:40 +0200 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: + po: Update translations + +2016-02-18 14:20:17 +0000 Julien Isorce + + * pkgconfig/gstreamer-base-uninstalled.pc.in: + * pkgconfig/gstreamer-check-uninstalled.pc.in: + * pkgconfig/gstreamer-controller-uninstalled.pc.in: + * pkgconfig/gstreamer-net-uninstalled.pc.in: + * pkgconfig/gstreamer-uninstalled.pc.in: + uninstalled.pc: add support for non libtool build systems + Currently the .la path is provided which requires to use libtool as + mentioned in the GStreamer manual section-helloworld-compilerun.html. + It is fine as long as the application is built using libtool. + So currently it is not possible to compile a GStreamer application + within gst-uninstalled with CMake or other build system different + than autotools. + This patch allows to do the following in gst-uninstalled env: + gcc test.c -o test $(pkg-config --cflags --libs gstreamer-1.0) + Previously it required to prepend libtool --mode=link + https://bugzilla.gnome.org/show_bug.cgi?id=720778 + +2016-02-18 11:43:22 +0200 Sebastian Dröge + + * gst/gstpad.c: + Revert "pad: PULL probes are called without a buffer so don't require any of the data flags to be set" + This reverts commit b89fa4786b3df6cb79f662c037dee74b3f7428d6. + The changes break various tests. + +2016-02-18 11:43:04 +0200 Sebastian Dröge + + * tests/check/gst/gstpad.c: + Revert "pad: Add test for blocking pull probe" + This reverts commit 17d30e944be0425ebb4fb6046f82d1f61701fe8f. + The PULL probe changes break various tests. + +2016-02-18 11:09:36 +0200 Sebastian Dröge + + * gst/gstbuffer.c: + buffer: Protect against failing to map input memory when merging memories + https://bugzilla.gnome.org/show_bug.cgi?id=762239 + +2016-01-28 16:22:17 +0100 Matej Knopp + + * tests/check/gst/gstpad.c: + pad: Add test for blocking pull probe + https://bugzilla.gnome.org/show_bug.cgi?id=761211 + +2016-02-17 16:57:27 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: PULL probes are called without a buffer so don't require any of the data flags to be set + https://bugzilla.gnome.org/show_bug.cgi?id=761211 + +2016-02-17 16:41:02 +0200 Sebastian Dröge + + * gst/gstelement.c: + Revert "element: Don't hold state lock all the time while sending an event" + This reverts commit b427997119a2b6aacbeb550f729936f8b963e24b. + It breaks things that used to work before, even if the change by itself is + correct and the previous code is just working around deeper bugs in the async + state change code. Let's go back to what previously worked and then fix async + state changes in general. + https://bugzilla.gnome.org/show_bug.cgi?id=760532 + +2016-02-17 15:26:49 +0100 Edward Hervey + + * gst/gstghostpad.c: + Revert "ghostpad: Do nothing in _internal_activate_push_default" + That commit would break scheduling reconfiguration with ghostpads + This reverts commit ab55ad7eaad4fa2c0b16c789350e882cf70a27ed. + +2016-02-17 15:25:08 +0100 Edward Hervey + + * tests/check/gst/gstghostpad.c: + check: Add test for checking scheduling reconfiguration with ghostpads + Showcases the regression introduced by this commit: + Commit: ab55ad7eaad4fa2c0b16c789350e882cf70a27ed + Author: Stian Selnes + Date: Wed Jan 27 13:20:23 2016 +0100 + ghostpad: Do nothing in _internal_activate_push_default + +2016-02-17 11:02:34 +0100 Havard Graff + + * tests/check/gst/gstghostpad.c: + ghostpad: add some tests for activation + https://bugzilla.gnome.org/show_bug.cgi?id=761913 + +2016-01-27 13:20:23 +0100 Stian Selnes + + * gst/gstghostpad.c: + ghostpad: Do nothing in _internal_activate_push_default + When calling gst_pad_activate_mode() on a ghostpad + gst_ghost_pad_activate_push_default() will be called. This will call + gst_pad_activate_mode() on the proxypad (which is internal of the + ghostpad), calling gst_ghost_pad_internal_activate_push_default(), which + again will call gst_pad_activate_mode() on the original ghostpad. + By simply returning TRUE in + gst_ghost_pad_internal_activate_push_default() the redundant call to + gst_pad_activate_mode() (for the same pad) is avoided. + https://bugzilla.gnome.org/show_bug.cgi?id=761913 + +2016-02-16 17:53:10 -0300 Thiago Santos + + * gst/gstregistrychunks.c: + registrychunks: remove unused macro + macro was added in 2011 and isn't used anymore + +2016-02-16 19:11:59 +0200 Sebastian Dröge + + * plugins/elements/gstqueue2.c: + * plugins/elements/gstqueue2.h: + * tests/check/elements/queue2.c: + Revert "queue2: add overrun signal" + This reverts commit 8ae8b2723d0cf179a4f09b2f6c5f797e2d97034d. + It's not used anymore by anything and was considered a bad idea in general. + +2014-06-05 13:27:28 -0700 Evan Nemerson + + * gst/gstbuffer.c: + * gst/gstcaps.c: + * gst/gstcapsfeatures.c: + * gst/gstclock.h: + * gst/gstevent.c: + * gst/gstinfo.c: + * gst/gstinfo.h: + * gst/gstiterator.c: + * gst/gstmessage.c: + * gst/gstpadtemplate.c: + * gst/gstpluginfeature.c: + * gst/gstquery.c: + * gst/gststructure.c: + * gst/gsttagsetter.c: + * gst/gsttypefindfactory.c: + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + docs: annotate C examples as such + https://bugzilla.gnome.org/show_bug.cgi?id=731292 + +2016-02-15 11:13:40 -0300 Thiago Santos + + * tests/benchmarks/tracerserialize.c: + benchmark: tracerserialize: add missing return statement + tracerserialize.c:117:1: error: control reaches end of + non-void function [-Werror=return-type] + +2016-02-15 10:06:09 -0300 Thiago Santos + + * gst/gstprotection.c: + * libs/gst/check/gstharness.c: + * tests/check/gst/gstsystemclock.c: + protection/harness/systemclock: move declaration out of for loop initialization + C90 compilers complain about it + error: ‘for’ loop initial declarations are only allowed in C99 or C11 mode + Also run gst-indent on systemclock tests. + +2016-01-27 15:16:03 +0100 Havard Graff + + * libs/gst/check/gstharness.c: + harness: always set our test-clock on the harnessed element + The integration is already so tight, there is no reason to + not further formalize it! + https://bugzilla.gnome.org/show_bug.cgi?id=761914 + +2016-02-13 16:10:27 +0000 Tim-Philipp Müller + + * libs/gst/check/gstharness.c: + harness: fix compilation + Was supposed to be squashed with 336c7bb6 + https://bugzilla.gnome.org/show_bug.cgi?id=761910 + +2016-02-13 16:10:11 +0000 Tim-Philipp Müller + + * libs/gst/check/gstharness.c: + harness: fix indentation + +2016-01-21 13:33:15 +0100 Stian Selnes + + * libs/gst/check/gstharness.c: + * tests/check/libs/gstharness.c: + harness: Fix MT issues when forwarding event/query to sink harness + https://bugzilla.gnome.org/show_bug.cgi?id=761910 + +2016-02-13 10:04:42 +0000 Tim-Philipp Müller + + * scripts/gst-uninstalled: + gst-uninstalled: add new -bad libraries audio, player and wayland to paths + And remove egl which no longer exists. + +2016-02-12 11:57:55 -0800 Martin Kelly + + * libs/gst/base/gstpushsrc.h: + pushsrc: fix minor typos in header + https://bugzilla.gnome.org/show_bug.cgi?id=761970 + +2016-01-21 13:28:23 +0100 Stian Selnes + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/check/Makefile.am: + * libs/gst/check/gstharness.c: + * libs/gst/check/gstharness.h: + harness: Add event stress test functions with callback + Similar to the stress test functions for buffers that has a callback to + create the buffer to be pushed, it's useful to have functions that use a + callback to create the event to be pushed. + API: gst_harness_stress_push_event_with_cb_start() + API: gst_harness_stress_push_event_with_cb_start_full() + API: gst_harness_stress_send_upstream_event_with_cb_start() + API: gst_harness_stress_push_upstream_event_with_cb_start_full() + https://bugzilla.gnome.org/show_bug.cgi?id=761932 + +2016-01-14 21:54:42 +0100 Havard Graff + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/check/Makefile.am: + * libs/gst/check/gstharness.c: + * libs/gst/check/gsttestclock.c: + * libs/gst/check/gsttestclock.h: + * tests/check/libs/gsttestclock.c: + testclock: add crank method + And use it inside GstHarness + API: gst_test_clock_crank() + https://bugzilla.gnome.org/show_bug.cgi?id=761906 + +2015-12-09 13:43:38 +1100 Havard Graff + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/check/Makefile.am: + * libs/gst/check/gstharness.c: + * libs/gst/check/gstharness.h: + harness: enable empty harness creation and refactor around this + Also make the testclock a member of the harness, allowing some + more interactions with the clock prior to adding elements. + https://bugzilla.gnome.org/show_bug.cgi?id=761905 + +2016-02-12 15:12:43 +0100 Stian Selnes + + * libs/gst/check/gstcheck.h: + check: fix unused parameter compiler warning + https://bugzilla.gnome.org/show_bug.cgi?id=761919 + +2015-08-04 17:09:35 +0200 Mikhail Fludkov + + * libs/gst/check/gstharness.c: + harness: fix the race in blocking push mode + Depending on when gst_harness_pull was called - before the buffer reached + gst_harness_chain or after we can get different behaviors of the test + with enabled blocking push mode. The fix makes the behavior always the + same. In pull function we get the buffer first, thus making sure + gst_harness_chain waits for the signal, and emitting the signal after. + https://bugzilla.gnome.org/show_bug.cgi?id=761931 + +2016-02-04 15:16:41 +0100 Stian Selnes + + * libs/gst/check/gstcheck.h: + check: Add tcase_skip_broken_loop_test + https://bugzilla.gnome.org/show_bug.cgi?id=761917 + +2016-01-21 13:25:40 +0100 Stian Selnes + + * libs/gst/check/gstharness.c: + harness: Fix docs for stress test functions + notify is not called per buffer, but when the thread is freed. + Comment about serialized events and OOB does not make sense for upstream + events. + https://bugzilla.gnome.org/show_bug.cgi?id=761909 + +2015-12-08 14:18:21 +0100 Stian Selnes + + * libs/gst/check/gstharness.c: + harness: Unset sink_forward_pad before tearing down sink_harness + Set the sink_forward_pad to NULL before tearing down sink_harness to + avoid that the harness tries to forward events/queries to it while it's + tearing down. + https://bugzilla.gnome.org/show_bug.cgi?id=761904 + +2015-09-29 12:12:24 +0200 Havard Graff + + * libs/gst/check/gstharness.c: + harness: fix up docs to reference functions properly + https://bugzilla.gnome.org/show_bug.cgi?id=761901 + +2016-02-10 14:01:54 +0100 Víctor Manuel Jáquez Leal + + * gst/gstbufferpool.c: + bufferpool: pass acquire params to alloc_buffer + When allocating a new buffer in the pool, both the do_alloc_buffer() and the + vmethod, alloc_buffer(), receive the parameter GstBufferPoolAcquireParams. + Nonetheless, when default_acquire_buffer() calls the do_alloc_buffer() it does + not pass the received GstBufferPoolAcquireParams, so when the user pass those + parameters they are ignored by alloc_buffer() vmethod. + This one-liner patch pass the received acquire params to do_alloc_buffer(). + https://bugzilla.gnome.org/show_bug.cgi?id=761824 + +2016-02-10 09:09:29 +0100 Stian Selnes + + * gst/gstsystemclock.c: + * tests/check/gst/gstsystemclock.c: + systemclock: Fix wait/unschedule race + Fixes a race where an entry is set to BUSY in + gst_system_clock_id_wait_jitter() and is UNSCHEDULED before + gst_system_clock_id_wait_jitter_unlocked() starts processing it. The + wakeup added by gst_system_clock_id_unschedule() must be cleaned up. + Two stress tests are added. One test that triggers the specific issue + described above. The second stresses the code path where a wait is + rescheduled because the poll returned early. + https://bugzilla.gnome.org/show_bug.cgi?id=761586 + +2016-02-05 15:34:47 -0300 Thiago Santos + + * gst/gstsystemclock.c: + systemclock: handle unschedule of late entries + If the clockentry is too late and is unscheduled before it gets + a change to detect its lateness the wakeup count and the poll are + used but never properly cleaned up. This leaves it in a dirty state + that is going to mess with the next clock entry waiting requests. + https://bugzilla.gnome.org/show_bug.cgi?id=761586 + +2016-02-05 19:08:18 -0300 Thiago Santos + + * tests/check/Makefile.am: + tests: extend the AM_TESTS_ENVIRONMENT from check.mak + To get the CK_DEFAULT_TIMEOUT defined for all tests + https://bugzilla.gnome.org/show_bug.cgi?id=761472 + +2016-02-05 18:01:52 -0300 Thiago Santos + + * autogen.sh: + * common: + Automatic update of common submodule + From 86e4663 to b64f03f + +2016-02-04 10:07:22 +0000 Tim-Philipp Müller + + * libs/gst/base/gstbaseparse.c: + baseparse: fix stray discont flag set on outgoing buffers in push mode + We have no guarantees about what flags are set on buffers we take + out of the GstAdapter. If we push out multiple buffers from the + first input buffer (which will have discont set), only the first + buffer we push out should be flagged as discont, not all of the + buffers produced from that first initial input buffer. + Fixes issue where the first few mp3 frames/seconds of data in push + mode were skipped or garbled in some cases, and the discont flags + would also trip up decoders which were getting drained/flushed for + every buffer. This was a regression introduced in 1.6 apparently. + +2016-02-02 16:35:34 +0100 Thibault Saunier + + * libs/gst/controller/gstdirectcontrolbinding.c: + controller: Do not unset uninitiallized GValue + In case the property was not interpollable we might never initialize + the GValue, we should thus never unset it. + +2016-02-02 16:34:51 +0000 Tim-Philipp Müller + + * docs/pwg/advanced-allocation.xml: + docs: pwg: fix missing end of line semicolon in custom meta example + +2016-02-02 10:56:35 +0000 Tim-Philipp Müller + + * gst/gsturi.c: + uri: add guard to make sure gstreamer is initialized + https://bugzilla.gnome.org/show_bug.cgi?id=761448 + +2016-02-01 18:41:55 +0000 Tim-Philipp Müller + + * scripts/gst-uninstalled: + gst-uninstalled: add new rtsp server plugin location to plugins path + +2016-01-25 16:30:04 +0900 HoonHee Lee + + * libs/gst/base/gstbaseparse.c: + baseparse: Try to generate caps on the srcpad before forwarding GAP event + To configure downstream elements and complete initial pre-rolling, + ensure we have default output caps before forwarding GAP event. + https://bugzilla.gnome.org/show_bug.cgi?id=753899 + +2016-01-28 20:18:55 -0700 Alex Henrie + + * plugins/elements/gsttypefindelement.c: + typefindelement: Improve English grammar + https://bugzilla.gnome.org/show_bug.cgi?id=761273 + +2016-01-27 12:45:20 +0000 Luis de Bethencourt + + * docs/manual/advanced-clocks.xml: + docs: fix an other typo in clock chapter + Shockingly I missed this bigger typo in the previos fix + +2016-01-27 12:24:57 +0000 Luis de Bethencourt + + * docs/manual/advanced-clocks.xml: + docs: fix typo in clock chapter + +2016-01-25 12:09:54 +0900 Vineeth TM + + * tests/check/gst/gstinfo.c: + tests:gstinfo: Fix string memory leak + info_fourcc test leaks string. + https://bugzilla.gnome.org/show_bug.cgi?id=761071 + +2016-01-23 16:00:48 +0000 Tim-Philipp Müller + + * tests/check/gst/gstinfo.c: + tests: info: make work without registry + +2016-01-22 12:50:08 +0000 Tim-Philipp Müller + + * docs/design/part-tracing.txt: + * gst/gsttracerutils.c: + * tests/benchmarks/tracing.sh: + tracer: rename GST_TRACER_PLUGINS env var to GST_TRACERS + +2016-01-21 08:12:01 +0100 Stefan Sauer + + * gst/gsttracerrecord.c: + * gst/gsttracerrecord.h: + * plugins/tracers/gstlatency.c: + * plugins/tracers/gstrusage.c: + * plugins/tracers/gststats.c: + * tests/check/gst/gsttracerrecord.c: + tracerrecord: don't leak the spec structures + Change the gst_tracer_record_new() api to take the parameters the make the + spec structure directly. This allows us to own the top-level structure and + also collect the args so that we can take ownership of the sub-structures. + https://bugzilla.gnome.org/show_bug.cgi?id=760821 + +2016-01-21 15:45:30 +0000 Tim-Philipp Müller + + * gst/gstdevice.c: + device: fix comparison in _has_classesv() + We're comparing a pointer type with '\0' here, which + probably isn't right, and the loop condition made sure + that classes[0] is != NULL already, so it's pointless. + Was probaby meant to check if the string pointed to is + not empty, so make it do that instead. + +2016-01-20 20:32:24 +0100 Stefan Sauer + + * tests/check/gst/gsttracerrecord.c: + test/tracerrecord: unref objects and free string + +2016-01-18 22:45:58 +0000 Florin Apostol + + * tests/check/gst/gstsystemclock.c: + systemclock: tests: added stress test for async order + Keep inserting alarms at the beginning of the list. Due to + https://bugzilla.gnome.org/show_bug.cgi?id=760757 + alarm thread will get confused and not serve them in order. + +2016-01-18 16:25:20 +0000 Florin Apostol + + * gst/gstsystemclock.c: + systemclock: fixed race condition in handling alarms + When choosing the first entry from the list, gst_system_clock_async_thread + must set the entry state to busy before releasing the clock lock. Otherwise + a new entry could be added to the beginning of the list and + gst_system_clock_async_thread will be unaware and keep waiting on the entry + it has already chosen. + Also improved messages about expected state and bumped them to ERROR level + to detect unexpected state changes. + https://bugzilla.gnome.org/show_bug.cgi?id=760757 + +2016-01-20 11:07:17 +0000 Tim-Philipp Müller + + * gst/gstutils.c: + utils: remove duplicate check + +2016-01-20 09:57:00 +0000 Tim-Philipp Müller + + * plugins/elements/gstmultiqueue.c: + multiqueue: two small fixes for when an existing pad is requested + Unlock when returning NULL from gst_single_queue_new(), and don't + crash with debug logging enabled if NULL is returned. + Spotted by Steven Hoving. + +2016-01-20 10:02:37 +0100 Stefan Sauer + + * gst/gstvalue.c: + gstvalue: remove a half finishesh sentence in the docs + No idea what was the idea here. SO lets just drop it. + +2016-01-19 14:39:06 +0900 Vineeth TM + + * gst/gsttracerrecord.c: + tracerrecord: Fix self->spec structure invalid free + self->spec is got using g_value_get_boxed(), which is a transfer none function. + So the same should not be freed, which is resulting in wrong behavior. + https://bugzilla.gnome.org/show_bug.cgi?id=760821 + +2016-01-20 09:25:44 +0100 Vineeth TM + + * gst/gsttracerrecord.c: + tracerrecord: Initialise flags to avoid wrong comparision + GstTracerValueFlags is not being initialized and the same could result in wrong + comparision and behavior. Hence initializing it to GST_TRACER_VALUE_FLAGS_NONE. + https://bugzilla.gnome.org/show_bug.cgi?id=760821 + +2016-01-20 09:18:01 +0100 Stefan Sauer + + * tests/check/gst/gstinfo.c: + tests/gst/info: Fix messages glist memory leak + +2016-01-19 15:03:55 +0900 Vineeth TM + + * tests/check/gst/gsttracerrecord.c: + tests: tracerrecord: Fix messages glist memory leak + https://bugzilla.gnome.org/show_bug.cgi?id=760821 + +2016-01-18 21:12:53 +0100 Stefan Sauer + + * gst/gst_private.h: + * gst/gstinfo.c: + * gst/gststructure.c: + * gst/gstvalue.c: + tracer: add an internal ptr format for tracer serialisation + We need to apply the string wrapping that value serialisation does also in the + tracer logging, otherwise we can't parse nested structures. + +2016-01-18 21:09:49 +0100 Stefan Sauer + + * plugins/tracers/gststats.c: + * tools/gst-stats.c: + tracer/gststats: fix mismatch between '.class' and tracer args + Clean up from the recent changes. The logging descriptiors did not match what we logged. + +2015-11-12 01:14:34 +1100 Jan Schmidt + + * plugins/elements/gstqueue2.c: + * plugins/elements/gstqueue2.h: + queue2: Add use-tags-bitrate property + The use-tags-bitrate property makes queue2 look at + tag events in the stream and extract a bitrate for the + stream to use when calculating a duration for buffers + that don't have one explicitly set. + This lets queue2 sensibly buffer to a time threshold + for any bytestream for which the general bitrate is known. + +2016-01-19 12:04:16 +0000 Luis de Bethencourt + + * gst/gsttracerrecord.c: + tracerrecord: avoid overwriting value + res value is overwritten, remove the assignment. + priv__gst_structure_append_template_to_gstring () always returns TRUE + anyway. + CID 1349645 + +2016-01-19 11:11:25 +0100 Edward Hervey + + * tests/benchmarks/Makefile.am: + benchmarks: Disable tracerserialize benchmark on GST_DISABLE_GST_DEBUG + no gst-debugging => no tracer logging (and no pony either) + +2016-01-19 11:10:30 +0100 Edward Hervey + + * gst/gsttracerrecord.c: + * gst/gsttracerrecord.h: + tracerrecord: Disable logging if GST_DISABLE_GST_DEBUG + Make the gst_tracer_record_log() a no-op if the gst-debug subsystem + is disabled. + +2016-01-18 19:17:16 +0000 Tim-Philipp Müller + + * gst/gstvalue.c: + * tests/check/gst/gstvalue.c: + value: fail flag deserialization on invalid flag names + +2016-01-18 19:10:48 +0000 Tim-Philipp Müller + + * tests/check/gst/gststructure.c: + tests: structure: fix wrong flag name in deserialization test + There is no GST_SEEK_FLAGS_NONE only GST_SEEK_FLAG_NONE (but + the deserializer silently skips bad flag names currently). + +2016-01-17 23:49:27 +0000 Tim-Philipp Müller + + * plugins/tracers/gstrusage.c: + * plugins/tracers/gststats.c: + * tools/gst-stats.c: + tracers: fix thread-id casts to 64-bit ints on 32-bit systems + https://bugzilla.gnome.org/show_bug.cgi?id=760762 + +2016-01-18 10:13:02 +0900 Vineeth TM + + * gst/gst.c: + gst: ref/unref new enum types in gst_init/deinit + https://bugzilla.gnome.org/show_bug.cgi?id=760767 + +2016-01-17 00:08:33 +0000 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: update exports for new flags get_type() + +2016-01-16 22:43:23 +0100 Philip Van Hoof + + * gst/gsttracer.c: + * gst/gsttracer.h: + tracer.h: don't include private noinst header gsttracerutils.h in a public header + https://bugzilla.gnome.org/show_bug.cgi?id=760732 + +2016-01-16 21:24:19 +0100 Stefan Sauer + + * tests/benchmarks/tracing.sh: + benchmark: improve script + Use a temp file for the log and fix one env-var. + +2016-01-16 21:23:10 +0100 Stefan Sauer + + * plugins/tracers/gststats.c: + tracer/stats: use the right log template + When porting we used the wrong record (copy and paste). + +2016-01-16 21:04:46 +0100 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + * gst/gsttracerrecord.h: + tracer: update the docs + Add the new enum and flags. Remove the GstTracerRecordPrivate. + +2016-01-16 21:02:39 +0100 Stefan Sauer + + * tools/gst-stats.c: + gst-stats: update to latest tarcer api + The thread-ids are serialized as uint64. The 'elem-ix' got changed to + 'element-ix'. Make the code a bit more robust. + +2016-01-16 18:55:07 +0100 Stefan Sauer + + * gst/gsttracerrecord.c: + * gst/gsttracerrecord.h: + * plugins/tracers/gststats.c: + tracer: use the new flags to create the optional field in the format string + This spares us explicitly listing the field in the spec. and thus hide this + implementation detail. + +2016-01-16 18:52:32 +0100 Stefan Sauer + + * docs/design/part-tracing.txt: + * gst/gsttracerrecord.h: + * plugins/tracers/gstlatency.c: + * plugins/tracers/gstrusage.c: + * plugins/tracers/gststats.c: + tracer: add a GstTracerValueFlags and replace strings + This allows us to document the flags and makes the logs a bit smaller. + +2016-01-16 16:01:38 +0000 Tim-Philipp Müller + + * gst/gstmessage.c: + message: add function guard to gst_message_set_buffering_stats() + https://bugzilla.gnome.org/show_bug.cgi?id=760704 + +2016-01-16 14:51:37 +0000 Tim-Philipp Müller + + * configure.ac: + * docs/gst/Makefile.am: + * gst/gst.h: + * gst/gsttracer.c: + * gst/gsttracer.h: + * gst/gsttracerrecord.c: + * gst/gsttracerrecord.h: + * gst/gsttracerutils.c: + * plugins/tracers/Makefile.am: + * tests/check/Makefile.am: + gst.h: Don't spew warnings if GST_USE_UNSTABLE_API is not defined + Only hide GstTracer and GstTracerRecord API behind GST_USE_UNSTABLE_API, + but don't spew any warnings, otherwise everyone has to define this + to avoid compiler warnings. + This reverts parts of commit 89ee5d948dff560204e6edd210c44ed2b8654b8e. + +2016-01-16 13:30:34 +0100 Stefan Sauer + + * tests/benchmarks/tracerserialize.c: + * tests/benchmarks/tracing.sh: + benchmarks: update the tracer benchmark and add a shell benchmark + +2016-01-16 13:28:32 +0100 Stefan Sauer + + * docs/design/part-tracing.txt: + docs/design: update tracerspec examples + +2016-01-16 13:27:59 +0100 Stefan Sauer + + * docs/design/draft-tagreading.txt: + docs/design: spell checking + +2016-01-16 13:24:16 +0100 Stefan Sauer + + * configure.ac: + * docs/gst/Makefile.am: + * gst/gst.h: + * gst/gsttracer.c: + * gst/gsttracerrecord.c: + * gst/gsttracerrecord.h: + * gst/gsttracerutils.c: + * plugins/tracers/Makefile.am: + * plugins/tracers/gstlatency.c: + * plugins/tracers/gstrusage.c: + * plugins/tracers/gststats.c: + * tests/check/Makefile.am: + * win32/common/libgstreamer.def: + tracer: add a GFlag for the tracer scope + Port all tracers. Add the GST_USE_UNSTABLE_API flag to the internal CFLAGS so + that we don't have to specify this for gir, docs, mkenum, ... + +2016-01-16 10:48:02 +0100 Sebastian Dröge + + * plugins/elements/gstoutputselector.c: + output-selector: Make access to the active pad and last buffer thread-safe + Both can be modified from different threads at the same time. + +2016-01-16 10:47:36 +0100 Sebastian Dröge + + * plugins/elements/gstoutputselector.c: + output-selector: Notify when the active-pad property is changing + +2016-01-12 14:59:04 +0100 Stefan Sauer + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + * docs/gst/gstreamer.types.in: + * gst/Makefile.am: + * gst/gst_private.h: + * gst/gststructure.c: + * gst/gsttracer.c: + * gst/gsttracer.h: + * gst/gsttracerrecord.c: + * gst/gsttracerrecord.h: + * plugins/tracers/gstlatency.c: + * plugins/tracers/gstrusage.c: + * plugins/tracers/gststats.c: + * tests/check/Makefile.am: + * tests/check/gst/.gitignore: + * tests/check/gst/gsttracerrecord.c: + * win32/common/libgstreamer.def: + tracerrecord: add a log record class + We use this class to register tracer log entry metadata and build a log + template. With the log template we can serialize log data very efficiently. + This also simplifies the logging code, since that is now a simple varargs + function that is not exposing the implementation details. + Add docs for the new class and basic tests. + Remove the previous log handler. + Fixes #760267 + +2016-01-15 09:48:32 +0100 Sebastian Dröge + + * libs/gst/net/gstnetclientclock.c: + netclientclock: Check return value of g_socket_close() + CID 1348452 + +2016-01-15 09:02:42 +0100 Sebastian Dröge + + * libs/gst/net/gstnetclientclock.c: + netclientclock: Free data after removing it from the list + Does not matter here but makes Coverity more happy. It can't + know that g_list_remove() only looks at the pointer value but + does not dereference it. + CID 1348454 + +2016-01-15 00:30:59 +0530 Nirbheek Chauhan + + * gst/gstdevicemonitor.c: + GstDeviceMonitor: Clarify the behaviour of gst_device_monitor_add_filter + +2016-01-15 00:25:05 +0530 Nirbheek Chauhan + + * gst/gstdevicemonitor.c: + GstDeviceMonitor: Don't remove unmatched class filters + If no providers for a particular class could be found, then removing unmatched + filters would cause all devices to be returned instead which is not at all what + the user intended. We still return 0 for unmatched filters. + +2016-01-13 21:32:20 +0000 Florin Apostol + + * libs/gst/net/gstnetclientclock.c: + netclientclock: Fix GError memory leak in handling NTP response + Error was not released if gst_ntp_packet_receive failed. + https://bugzilla.gnome.org/show_bug.cgi?id=760598 + +2016-01-13 13:10:10 +1100 Matthew Waters + + * win32/common/libgstreamer.def: + win32: update exports for API additions + +2016-01-11 16:31:39 +1100 Matthew Waters + + * docs/gst/gstreamer-sections.txt: + * gst/gstinfo.c: + * gst/gstinfo.h: + info: expose debugging printf functions + Other gst libraries and/or elements may want to add some debug logging to an + external debug system or implement delayed debugging for performance reasons. + Exposes the internal __gst_vasprintf as gst_info_vasprintf which has a fallback + to g_vasprintf if the debug system is disabled. + API: gst_info_vasprintf + API: gst_info_strdup_vprintf + API: gst_info_strdup_printf + https://bugzilla.gnome.org/show_bug.cgi?id=760421 + +2016-01-11 21:17:25 +0100 Carlos Rafael Giani + + * libs/gst/base/gstbasesrc.c: + basesrc: Only set duration/position query values in case of query success + Currently, the query values are being set even if the query itself was + determined to have failed. Fix this to ensure the values are only set in + case of a query success. + https://bugzilla.gnome.org/show_bug.cgi?id=760479 + +2016-01-10 14:30:05 +0100 Stefan Sauer + + * plugins/tracers/gstlatency.c: + * plugins/tracers/gststats.c: + tracers: code clean ups + Drop some trailing whilespace. Make field order consistent. + +2016-01-08 23:35:53 +0100 Stefan Sauer + + * tests/benchmarks/tracerserialize.c: + benchmark: fix copy'n'past of the file-description comment + +2016-01-08 23:06:55 +0100 Stefan Sauer + + * tests/benchmarks/.gitignore: + * tests/benchmarks/Makefile.am: + * tests/benchmarks/tracerserialize.c: + benchmark: add a benchmark for bgo/760267 + Big suprise - GstStructure is faster than GVariant. + +2015-03-10 13:07:18 +0900 HoonHee Lee + + * plugins/elements/gstfunnel.c: + funnel: improve debug message + https://bugzilla.gnome.org/show_bug.cgi?id=745939 + +2016-01-08 19:25:24 +0000 Tim-Philipp Müller + + * gst/gstinfo.c: + * tests/check/gst/gstinfo.c: + info: add buffer list support to GST_PTR_FORMAT + +2015-11-25 17:36:25 +0100 Aurélien Zanelli + + * gst/gstcontrolsource.h: + controlsource: fix GetValue and GetValueArray documentation + GstControlSourceGetValue() value paramater is a gdouble, not a GValue + and GstControlSourceGetValueArray doesn't return a GstValueArray but + an array of double. + https://bugzilla.gnome.org/show_bug.cgi?id=758668 + +2016-01-07 23:03:48 +0100 Stefan Sauer + + * gst/gstelement.c: + * gst/gstpad.c: + * gst/gsttracerutils.h: + * plugins/tracers/gstlog.c: + * plugins/tracers/gststats.c: + tracer: harmonize the query hooks + In post hooks always pass the return value as the last param. Pass the query + also to post hooks since it is still alive. + +2016-01-07 22:47:37 +0100 Stefan Sauer + + * plugins/tracers/gststats.c: + tracers/stats: add missing parameters to callback functions + +2016-01-07 22:43:58 +0100 Stefan Sauer + + * gst/gsttracerutils.c: + tracerutils: update #endif comment + We changed the define, but left the comment inconsistent. + +2016-01-07 19:13:03 +0100 Stefan Sauer + + * docs/gst/Makefile.am: + * docs/gst/gstreamer-sections.txt: + * gst/gsttracerutils.h: + tracerutils: document the tracer hook functions + Document all tracer hook function pointer together with the detail string that + one needs to use with gst_tracing_register_hook(). + +2016-01-07 18:46:21 +0200 Sebastian Dröge + + * gst/gsttracerutils.c: + tracer: Use GST_DISABLE_GST_TRACER_HOOKS instead of GST_DISABLE_GST_DEBUG everywhere + Previously we used the latter one still for the tracer utility code, causing + undefined references in the resulting binary if the debugging system was + disabled but the tracer system not. + +2016-01-07 18:41:25 +0200 Sebastian Dröge + + * gst/gst.c: + * gst/gst_private.h: + * gst/gstdebugutils.c: + * gst/gstinfo.c: + * gst/gsttracerutils.h: + gst: Rename _priv_gst_info_start_time to _priv_gst_start_time and initialize it centrally + It's used by the debugging and tracer subsystem and in various files, make it + a central thing that is initialized independ of the existence of those + subsystems. + +2016-01-06 21:42:30 +0100 Stefan Sauer + + * win32/common/libgstreamer.def: + win32: update win32 exports + Remove the _hook_id() methods we made internal in the prev commit. + +2016-01-06 21:17:16 +0100 Stefan Sauer + + * gst/gststructure.c: + structure: log a warning if we can't serialize a field + The function always returns TRUE right now, so atleast log something. + +2015-10-06 12:49:00 +0000 Aleksander Wabik + + * tests/check/elements/queue2.c: + tests: queue2: add test for fill level arithmetic overflow + https://bugzilla.gnome.org/show_bug.cgi?id=755971 + +2016-01-06 19:51:44 +0000 Tim-Philipp Müller + + * plugins/elements/gstqueue2.c: + queue2: avoid calculating fill levels multiple times + Macro expansion means we might calculate the fill level once + for the check and then possibly again for the return value. + +2016-01-06 19:50:21 +0000 Tim-Philipp Müller + + * plugins/elements/gstqueue2.c: + queue2: fix fill level arithmetic overflow with large values + Based on patch by: Aleksander Wabik + https://bugzilla.gnome.org/show_bug.cgi?id=755971 + +2016-01-06 20:41:26 +0100 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + * gst/gsttracer.h: + * gst/gsttracerutils.c: + * plugins/tracers/gstrusage.c: + tracer: make gst_tracing_register_hook_id static + We don't need to expose this as public API. Change the only plugin that was + using it. + +2016-01-06 18:56:38 +0000 Tim-Philipp Müller + + * docs/design/Makefile.am: + docs: design: update list of disted files after file rename + +2016-01-06 19:42:49 +0200 Sebastian Dröge + + * docs/libs/Makefile.am: + * docs/libs/gstreamer-libs-sections.txt: + docs: Hide NTP packet API and add GST_PTP_STATISTICS_* defines to the docs + +2016-01-06 18:17:27 +0100 Stefan Sauer + + * libs/gst/net/gstptpclock.h: + docs: remove parent docs for GstPtpClock + Instance docs don't need to docuemnt the parent (first member). + +2016-01-06 18:14:06 +0100 Stefan Sauer + + * docs/libs/Makefile.am: + * docs/libs/gstreamer-libs-sections.txt: + docs: cleanup -unused.txt report for libs + The IGNORE_H_FILES can only contain files or dirs. + +2016-01-06 17:58:11 +0100 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + docs: add more core api to the right sections + Add new and documented api reported in -unused.txt to -section.txt. + +2016-01-06 17:54:44 +0100 Stefan Sauer + + * docs/gst/Makefile.am: + docs: exclude more header from doc-scan + Exclude gst/printf/*.h and a few generated .h files from the api-scan. This + makes -unused.txt report file from gtkdoc useful again. + +2016-01-06 16:21:40 +0200 Sebastian Dröge + + * gst/gstclock.c: + clock: adjust/unadjust_with_calibration() have a clock parameter but it's useless + Document this, for 2.0 we should just remove that parameter. + +2016-01-06 16:19:22 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstclock.c: + * gst/gstclock.h: + * win32/common/libgstreamer.def: + clock: Add gst_clock_unadjust_with_calibration() + We already have gst_clock_adjust_with_calibration() and + gst_clock_unadjust_unlocked(), having the other variant is useful. + +2016-01-06 13:33:39 +0100 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + docs: add new pad-event function to the docs + +2016-01-06 13:26:27 +0100 Stefan Sauer + + * docs/gst/Makefile.am: + * docs/gst/gstreamer-sections.txt: + * docs/gst/gstreamer.types.in: + docs: hide internal tracer api from docs + Also address warnigns regarding the unstable tracer api. + +2016-01-06 12:47:26 +0100 Stefan Sauer + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + * docs/gst/gstreamer.types.in: + * gst/gsttracer.c: + docs: add the tracer to the docs + Add GstTracer and GstTracerFactory to the core docs. + +2016-01-06 11:52:53 +0100 Stefan Sauer + + * docs/design/part-tracing.txt: + docs: rename the tracer doc to part since it is now merged + +2016-01-06 11:35:46 +0100 Stefan Sauer + + * gst/Makefile.am: + tracerutils: move header to noinst section + This is internal code, that is only to be used in core. + +2016-01-06 11:31:16 +0100 Stefan Sauer + + * configure.ac: + * gst/gsttracerutils.h: + configure: add a new option to disable the tracer hooks + This was previously done via {enable,disable}-gst-debug. Since both subsystems + are independent having separate options is better. + +2016-01-05 16:44:53 +0200 Sebastian Dröge + + * gst/gstclock.c: + * libs/gst/net/gstnetclientclock.c: + clock: Fix typo + clocked -> clock + +2016-01-05 14:59:34 +0200 Sebastian Dröge + + * libs/gst/net/gstnetclientclock.c: + netclientclock: Disconnect the "synced" signal handler from the internal clock + Not from the external one. + +2016-01-05 13:57:12 +0100 Stefan Sauer + + * libs/gst/controller/gstinterpolationcontrolsource.c: + * libs/gst/controller/gstinterpolationcontrolsource.h: + * libs/gst/controller/gsttimedvaluecontrolsource.h: + controller: rename new cubic interpolation mode + Don't abbreviate to 'mono' and use 'monotonic' instead. + +2016-01-05 14:23:26 +0200 Sebastian Dröge + + * gst/gstclock.c: + clock: Don't allow setting an unsynced clock as master + +2016-01-05 14:21:58 +0200 Sebastian Dröge + + * gst/gstclock.c: + clock: Don't try to slave unsynced clocks + They will return useless values from get_time(). + +2016-01-05 13:41:08 +0200 Sebastian Dröge + + * libs/gst/net/gstnetclientclock.c: + ntp: The clock inherits from GstNetClientClock, not just GstSystemClock + +2016-01-04 17:18:07 +0200 Sebastian Dröge + + * libs/gst/net/gstnetclientclock.c: + netclientclock: Destroy a cached clock 60 seconds after its last use + There's not much lost by having the clock idle around a bit longer but it will + potentially allow anybody wanting to use the same clock server again to sync + much faster. + +2016-01-04 16:31:23 +0200 Sebastian Dröge + + * libs/gst/net/gstnetclientclock.c: + netclientclock: Only ever run one clock against a specific server + If multiple net/NTP clocks are created for the same server, reuse the same + internal clock for all of them. This makes sure that we don't flood the server + with too many requests and also possibly allows faster synchronization if + there already was an earlier synchronized clock when creating a new one. + +2016-01-04 10:39:27 +0200 Sebastian Dröge + + * libs/gst/net/gstnettimeprovider.c: + nettimeprovider: Use GInitable instead of having a new() function that can return NULL + Bindings don't like that much and as we're using GIO here anyway we can as + well use GInitable for possibly failing initialization. + +2016-01-03 14:06:16 +0200 Sebastian Dröge + + * libs/gst/net/gstnettimeprovider.c: + nettimeprovider: Mark address, port and clock properties CONSTRUCT_ONLY + They can't sensibly be changed after construction. + +2016-01-03 22:55:48 +0100 Stefan Sauer + + * gst/parse/grammar.y: + parse_launch: make nicer log messages + Add two macros to build nicer element/pad name strings. The macros avoid + printing "(NULL)" and print the element type in addition to the name. + +2016-01-02 19:42:17 +0100 Stefan Sauer + + * gst/gstparse.h: + * gst/parse/grammar.y: + parse-launch: warn when still waiting to plug sub-pipelines after no-more-pads + The parse-launch API automagically handles dynamic pads and performs delayed + linking as needed, without any feedback about whether the linking succeeded or + not however. If a delayed dynamic link can't be completed for whatever reason, + parse-launch will simply wait in case a suitable pad appears later. This may + never happen though, in which case the pipeline may just hang forever. + Try to improve this by connecting to the "no-more-pads" signal of any element + with dynamic pads and posting a warning message for the related outstanding + dynamic links when "no-more-pads" is emitted. + Fixes #760003 + +2015-12-31 19:27:12 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.h: + * gst/gstpad.c: + * gst/gstpad.h: + * gst/gsttracer.c: + * gst/gsttracerfactory.c: + * gst/gsttracerfactory.h: + docs: fix some warnings and add some since markers + +2016-01-03 11:39:24 +0100 Stefan Sauer + + * docs/design/draft-tracing.txt: + tracing: add some pointers about memory tracing + +2016-01-03 11:37:57 +0100 Stefan Sauer + + * gst/parse/grammar.y: + grammar.y: remove trailing whitespace + +2015-12-31 00:04:09 +0000 Tim-Philipp Müller + + * tests/check/gst/gstvalue.c: + tests: value: test buffer serialisation/deserialisation more thoroughly + Tests data/strings as well, not just that we received + something non-NULL back. + +2015-12-31 10:57:37 +0000 Tim-Philipp Müller + + * gst/gst.c: + gst: fix typo in comment + +2015-12-30 16:57:29 +0200 Sebastian Dröge + + * libs/gst/net/gstnetclientclock.c: + netclientclock: Implement resolval of hostnames + Just allowing IPs here is not ideal and implementing DNS resolval is easy. + +2015-12-29 16:28:02 +0200 Sebastian Dröge + + * libs/gst/net/gstptpclock.c: + ptpclock: Add read-only properties to get the master and grandmaster clock ids + +2015-12-29 14:32:47 +0200 Sebastian Dröge + + * gst/gstcaps.c: + caps: Add (transfer full) annotation to simplify() and subtract() return value + https://bugzilla.gnome.org/show_bug.cgi?id=759948 + +2015-12-29 11:06:39 +0100 Aurélien Zanelli + + * gst/gstcaps.c: + caps: add 'transfer full' annotation to caps returned by interserction functions + To make clear caller is responsible to unref them. + https://bugzilla.gnome.org/show_bug.cgi?id=759948 + +2015-12-28 19:41:38 +0200 Sebastian Dröge + + * docs/libs/gstreamer-libs.types: + net: Add NTP and PTP clock types to the docs + This gives us the property documentation for example. + +2015-12-27 19:42:37 +0100 Stefan Sauer + + * libs/gst/check/gstcheck.c: + check: don't memcmp twice + Simply call fail() in the condition after the first memcmp. + +2015-12-24 15:27:12 +0100 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.7.1 === + +2015-12-24 13:58:52 +0100 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstversion.h: + Release 1.7.1 + +2015-12-24 12:50:33 +0100 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 + +2015-12-24 12:21:21 +0100 Sebastian Dröge + + * po/cs.po: + * po/de.po: + * po/fr.po: + * po/hu.po: + * po/nb.po: + * po/nl.po: + * po/pl.po: + * po/ru.po: + * po/sv.po: + * po/uk.po: + * po/vi.po: + * po/zh_CN.po: + po: Update translations + +2015-12-21 00:43:49 +0100 Koop Mast + + * configure.ac: + configure: Make -Bsymbolic check work with clang. + Update the -Bsymbolic check with the version glib has. This version + works with clang. + https://bugzilla.gnome.org/show_bug.cgi?id=759713 + +2015-12-16 09:35:18 +0100 Sebastian Dröge + + * docs/plugins/gstreamer-plugins.args: + * docs/plugins/gstreamer-plugins.hierarchy: + * docs/plugins/gstreamer-plugins.signals: + * docs/plugins/inspect/plugin-coreelements.xml: + docs: update to git + +2015-12-14 11:09:46 +0900 Vineeth TM + + * plugins/elements/gstdataurisrc.c: + plugins-bad: Fix example pipelines + rename gst-launch --> gst-launch-1.0 + replace old elements with new elements(ffmpegcolorspace -> videoconvert, ffenc_** -> avenc_**) + fix caps in examples + https://bugzilla.gnome.org/show_bug.cgi?id=759432 + +2015-11-10 12:38:59 -0500 Xavier Claessens + + * gst/gstallocator.h: + * gst/gstatomicqueue.h: + * gst/gstbin.h: + * gst/gstbuffer.h: + * gst/gstbufferlist.h: + * gst/gstbus.h: + * gst/gstcaps.h: + * gst/gstcapsfeatures.h: + * gst/gstclock.h: + * gst/gstcontext.h: + * gst/gstcontrolbinding.h: + * gst/gstcontrolsource.h: + * gst/gstdatetime.h: + * gst/gstdevice.h: + * gst/gstdevicemonitor.h: + * gst/gstdeviceprovider.h: + * gst/gstdeviceproviderfactory.h: + * gst/gstelement.h: + * gst/gstelementfactory.h: + * gst/gstevent.h: + * gst/gstghostpad.h: + * gst/gstiterator.h: + * gst/gstmemory.h: + * gst/gstmessage.h: + * gst/gstobject.h: + * gst/gstpad.h: + * gst/gstpadtemplate.h: + * gst/gstparse.h: + * gst/gstpipeline.h: + * gst/gstplugin.h: + * gst/gstpluginfeature.h: + * gst/gstquery.h: + * gst/gstregistry.h: + * gst/gstsample.h: + * gst/gstsegment.h: + * gst/gststructure.h: + * gst/gstsystemclock.h: + * gst/gsttaglist.h: + * gst/gsttask.h: + * gst/gsttaskpool.h: + * gst/gsttoc.h: + * gst/gsttracer.h: + * gst/gsttracerfactory.h: + * gst/gsttypefindfactory.h: + * gst/gsturi.h: + * libs/gst/base/gstadapter.h: + * libs/gst/base/gstbaseparse.h: + * libs/gst/base/gstbasesink.h: + * libs/gst/base/gstbasesrc.h: + * libs/gst/base/gstbasetransform.h: + * libs/gst/base/gstcollectpads.h: + * libs/gst/base/gstdataqueue.h: + * libs/gst/base/gstflowcombiner.h: + * libs/gst/base/gstpushsrc.h: + * libs/gst/check/gsttestclock.h: + * libs/gst/controller/gstargbcontrolbinding.h: + * libs/gst/controller/gstdirectcontrolbinding.h: + * libs/gst/controller/gstinterpolationcontrolsource.h: + * libs/gst/controller/gstlfocontrolsource.h: + * libs/gst/controller/gsttimedvaluecontrolsource.h: + * libs/gst/controller/gsttriggercontrolsource.h: + * libs/gst/net/gstnetclientclock.h: + * libs/gst/net/gstnettimepacket.h: + * libs/gst/net/gstnettimeprovider.h: + * libs/gst/net/gstptpclock.h: + core: Add g_autoptr() support to all types + https://bugzilla.gnome.org/show_bug.cgi?id=754464 + +2015-12-14 13:06:57 +0100 Sebastian Dröge + + * plugins/elements/gsttee.c: + tee: Check if parsing the name template with sscanf() was successful + If not, go back to the automatic pad numbering. + CID 1195129 + +2015-12-14 11:20:43 +0100 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstqueue.c: + queue/multiqueue: Don't special-case CAPS events in the event handlers + For CAPS events we will never ever have a FALSE return value here, so just + remove the dead code instead of causing future confusion. + +2015-12-14 11:16:50 +0100 Sebastian Dröge + + * plugins/elements/gstqueue.c: + Revert "queue: Illegal memory access of sink event" + This reverts commit 78614c505a2a761cb4dcb7f4e5f3e9f97c9a8e88. + The code it was fixing does not have any effect anyway and will be removed in + the next commit. + +2015-12-14 10:32:14 +0900 Vineeth TM + + * plugins/elements/gstqueue.c: + queue: Illegal memory access of sink event + Once event is pushed to pad, then queue should not access the event. + This is leading to invalid read valgrind errors + https://bugzilla.gnome.org/show_bug.cgi?id=759430 + +2015-12-14 10:10:04 +0100 Sebastian Dröge + + * gst/gstelement.c: + element: Unref event if GstElement::send_event() is not implemented + Otherwise we'll take ownership of the event only if it's implemented, and + leak the event in all other situations. + +2015-12-14 10:04:19 +0100 Sebastian Dröge + + * docs/manual/advanced-dataaccess.xml: + manual: Fix dynamic pipeline example + Use GST_PAD_PROBE_PASS to pass through all events other than EOS instead of + blocking on the first non-EOS event forever. Also fix a typo in a comment in + that function. + Thanks to David Jaggard for reporting this on the mailing list. + +2015-12-13 00:37:39 +0000 Luis de Bethencourt + + * docs/pwg/building-boiler.xml: + docs: typo in the location of make_element tool + https://bugzilla.gnome.org/show_bug.cgi?id=759352 + +2015-12-12 01:13:59 -0800 Reynaldo H. Verdejo Pinochet + + * plugins/elements/gstdownloadbuffer.c: + downloadbuffer: drop unneeded macros for G_OS_WIN32 + +2015-12-12 01:09:20 -0800 Reynaldo H. Verdejo Pinochet + + * plugins/elements/gstfdsrc.c: + fdsrc: drop unneeded macros for G_OS_WIN32 + +2015-12-12 01:06:43 -0800 Reynaldo H. Verdejo Pinochet + + * plugins/elements/gstfdsrc.c: + fdsrc: enable large file support in Android + https://bugzilla.gnome.org/show_bug.cgi?id=758980 + +2015-12-11 22:14:32 -0800 Reynaldo H. Verdejo Pinochet + + * plugins/elements/gstfdsink.c: + fdsink: enable large file support in Android + https://bugzilla.gnome.org/show_bug.cgi?id=758980 + +2015-12-11 20:52:57 -0800 Reynaldo H. Verdejo Pinochet + + * plugins/elements/gstqueue2.c: + queue2: fix some typos + +2015-12-11 20:42:05 -0800 Reynaldo H. Verdejo Pinochet + + * plugins/elements/gstqueue2.c: + queue2: enable large file support on Android + https://bugzilla.gnome.org/show_bug.cgi?id=758980 + +2015-12-11 19:11:01 -0800 Reynaldo H. Verdejo Pinochet + + * plugins/elements/gstdownloadbuffer.c: + downloadbuffer: fix some typos + +2015-12-11 18:59:32 -0800 Reynaldo H. Verdejo Pinochet + + * plugins/elements/gstdownloadbuffer.c: + downloadbuffer: enable large file support on Android + https://bugzilla.gnome.org/show_bug.cgi?id=758980 + +2015-12-11 14:36:29 -0800 Reynaldo H. Verdejo Pinochet + + * plugins/elements/gstsparsefile.c: + sparsefile: drop bogus reference to file descriptor + +fix typo on return value comment + +2015-12-11 14:07:27 -0800 Reynaldo H. Verdejo Pinochet + + * plugins/elements/gstsparsefile.c: + sparsefile: enable large file support on Android + https://bugzilla.gnome.org/show_bug.cgi?id=758980 + +2015-12-10 14:32:27 +0100 Aurélien Zanelli + + * gst/gstelement.c: + element: unref message in _post_message when there is no implementation + 'gst_element_post_message' takes the ownership of the message, so it + shall unref it when there is no post_message implementation. Otherwise + message is leaked. + https://bugzilla.gnome.org/show_bug.cgi?id=759300 + +2015-12-10 11:35:05 +0200 Sebastian Dröge + + * gst/gstelement.c: + element: Don't hold state lock all the time while sending an event + This lock seems to exist only to prevent elements from changing states while + events are being processed. However events are going to be processed + nonetheless in those elements if sent directly via pads, so protection must + already be implemented inside the elements for event handling if it is needed. + As such having the lock here is not very useful and is actually causing + various deadlocks in different situations as described in + https://bugzilla.gnome.org/show_bug.cgi?id=744040 + +2015-12-07 20:27:45 -0800 Reynaldo H. Verdejo Pinochet + + * plugins/elements/gstfilesrc.c: + filesrc: enable large file support in Android + https://bugzilla.gnome.org/show_bug.cgi?id=758980 + +2015-12-03 15:04:32 -0800 Reynaldo H. Verdejo Pinochet + + * plugins/elements/gstfilesink.c: + filesink: enable large file support on Android + https://bugzilla.gnome.org/show_bug.cgi?id=758980 + +2015-12-03 15:01:27 -0800 Reynaldo H. Verdejo Pinochet + + * plugins/elements/gstfilesink.c: + * plugins/elements/gstfilesink.h: + filesink: indentation fixes + +2015-12-09 17:40:02 +0100 Edward Hervey + + * plugins/elements/gstmultiqueue.c: + multiqueue: Don't use random segment.position from upstream + segment.position is meant for internal usage only, but the various + GST_EVENT_SEGMENT creationg/parsing functions won't clear that field. + Use the appropriate segment boundary as an initial value instead + +2015-12-07 17:25:02 +0200 Sebastian Dröge + + * gst/gstbin.c: + bin: Post a LATENCY message with async-handling=TRUE if the PLAYING state is reached + Otherwise each bin might have a different latency in the end, causing + synchronization problems. + The bin will still first handle latency internally as before, but gives the + overall pipeline the opportunity to update the latency of the whole pipeline + afterwards. + https://bugzilla.gnome.org/show_bug.cgi?id=759125 + +2015-12-07 18:20:35 +0200 Athanasios Oikonomou + + * libs/gst/base/gstbaseparse.c: + baseparse: post tag list when avg bitrate changes at least 2% + Watching videos with variant bitrate is common to have delta + more than 10 kbps, resulting in tag list spam. + Instead of relying on fixed 10 kpbs delta, it is better to + calculale the difference in percentage and update tag list + only when bitrate changes more than 2%. + https://bugzilla.gnome.org/show_bug.cgi?id=759055 + +2015-12-07 09:08:01 -0500 Nicolas Dufresne + + * autogen.sh: + * common: + Automatic update of common submodule + From b319909 to 86e4663 + +2015-12-07 12:59:39 +0200 Sebastian Dröge + + * gst/gstelement.c: + element: Check for an activated pad before adding, not a non-flushing one + The pad could be activated but flushing because of a FLUSH_START event. That's + not what we're looking for here, we want to check for activated pads. + https://bugzilla.gnome.org/show_bug.cgi?id=758928 + +2015-11-19 15:33:06 -0300 Thiago Santos + + * tests/check/elements/funnel.c: + tests: funnel: remove state change from stress tests + Changing states up and down while buffers are being pushed is not + a valid use case. If a pad is deactivated and reactivated during + a buffer push it is racy with the check of pushed sticky events + and the actual chainfunction call. As it might call the chain + without noticing the peer pad lost its previous sticky events. + https://bugzilla.gnome.org/show_bug.cgi?id=758340 + +2015-12-04 10:22:56 -0500 Nicolas Dufresne + + * tools/gst-launch.c: + gst-launch: Fix process return value on error + In case of a run-time error message, the process return value was left + unset. This would lead to error not being caught at shell level. + https://bugzilla.gnome.org/show_bug.cgi?id=759019 + +2015-12-04 10:45:25 -0500 Nicolas Dufresne + + * tools/gst-launch.c: + Revert "tools: gst-launch: return non-0 exit code on async error" + This reverts commit 2ee4cba2485d7f1646d48e4559426aed4ba99c85. + +2015-12-04 15:09:39 +0000 Tim-Philipp Müller + + * tools/gst-launch.c: + tools: gst-launch: return non-0 exit code on async error + When an error happens in playing state, still return a + non-0 exit code. + https://bugzilla.gnome.org/show_bug.cgi?id=759019 + +2015-12-04 14:39:29 +0000 Ross Burton + + * libs/gst/helpers/Makefile.am: + helpers: really fix install race + My previous fix for #758029 wasn't quite right and simply made the race rarer. + Some of the files are installed by install-exec and others by install-exec, so + the hooks need to be split too. + https://bugzilla.gnome.org/show_bug.cgi?id=758029 + +2015-12-04 11:56:45 +0100 Wim Taymans + + * gst/gstquery.c: + query: fix docs + The allocation query has parameters with the meta API, not flags. + +2015-12-02 15:02:25 -0800 Reynaldo H. Verdejo Pinochet + + * libs/gst/base/Makefile.am: + * libs/gst/check/Makefile.am: + * libs/gst/controller/Makefile.am: + * libs/gst/net/Makefile.am: + Drop usage of deprecated g-ir-scanner --strip-prefix flag + +2015-12-02 16:28:23 +0100 Edward Hervey + + * plugins/elements/gstmultiqueue.c: + multiqueue: Fix set/get property + Blame it on the rebasing :) + +2015-11-12 17:15:37 +0100 Edward Hervey + + * gst/gstpad.c: + * gst/gstpad.h: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstqueue.c: + * win32/common/libgstreamer.def: + pad: Implement GstPadEventFullFunction + API: GstPadEventFullFunction + Returns a GstFlowReturn, allows asynchronous elements to properly + propagate flow returns + https://bugzilla.gnome.org/show_bug.cgi?id=757821 + +2015-11-30 17:09:43 +0100 Edward Hervey + + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstmultiqueue.h: + multiqueue: Use signed clock values for running time calculation + This improves the accuracy of queue levels and when to push buffers + for buffers falling outside of the segment + https://bugzilla.gnome.org/show_bug.cgi?id=757193 + +2015-11-27 09:45:29 +0100 Edward Hervey + + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstmultiqueue.h: + multiqueue: Add an extra cache time for unlinked streams + When synchronizing the output by time, there are some use-cases (like + allowing gapless playback downstream) where we want the unlinked streams + to stay slightly behind the linked streams. + The "unlinked-cache-time" property allows the user to specify by how + much time the unlinked streams should wait before pushing again. + +2015-10-26 08:06:01 +0100 Edward Hervey + + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstmultiqueue.h: + multiqueue: Optimize multiqueue sizes based on interleave + Multiqueue should only be used to cope with: + * decoupling upstream and dowstream threading (i.e. having separate threads + for elementary streams). + * Ensuring individual queues have enough space to cope with upstream interleave + (distance in stream time between co-located samples). This is to guarantee + that we have enough room in each individual queues to provide new data in + each, without being blocked. + * Limit the queue sizes to that interleave distance (and an extra minimal + buffering size). This is to ensure we don't consume too much memory. + Based on that, multiqueue now continuously calculates the input interleave + (per incoming streaming thread). Based on that, it calculates a target + interleave (currently 1.5 x real_interleave + 250ms padding). + If the target interleave is greater than the current max_size.time, it will + update it accordingly (to allow enough margin to not block). + If the target interleave goes down by more than 50%, we re-adjust it once + we know we have gone past a safe distance (2 x current max_size.time). + This mode can only be used for incoming streams that are guaranteed to be + properly timestamped. + Furthermore, we ignore sparse streams when calculating interleave and maximum + size of queues. + For the simplest of use-cases (single stream), multiqueue acts as a single + queue with a time limit of 250ms. + If there are multiple inputs, but each come from a different streaming thread, + the maximum time limit will also end up being 250ms. + On regular files (more than one input stream from the same upstream streaming + thread), it can reduce the total memory used as much as 10x, ending up with + max_size.time around 500ms. + Due to the adaptive nature, it can also cope with changing interleave (which + can happen commonly on some files at startup/pre-roll time) + +2013-01-08 21:16:42 +0000 Vincent Penquerc'h + + * plugins/elements/gstmultiqueue.c: + multiqueue: use new stream-start event sparse flag to avoid overreading subtitles + This will mean a much lower delay before a subtitles track changes take + effect. Also avoids excessive memory usage in many cases. + This will also consider sparse streams as (individually) never full, so + as to avoid blocking all playback due to one sparse stream. + https://bugzilla.gnome.org/show_bug.cgi?id=600648 + +2015-10-30 10:22:20 +0100 Edward Hervey + + * plugins/elements/gstmultiqueue.c: + multiqueue: Fix high_time computation + * Avoid the computation completely if we know we don't need it (not in + sync time mode) + * Make sure we don't override highest time with GST_CLOCK_TIME_NONE on + unlinked pads + * Ensure the high_time gets properly updated if all pads are not linked + * Fix the comparision in the loop whether the target high time is the same + as the current time + * Split wake_up_next_non_linked method to avoid useless calculation + https://bugzilla.gnome.org/show_bug.cgi?id=757353 + +2015-11-06 03:02:42 +1100 Jan Schmidt + + * plugins/elements/gstqueue2.c: + queue2: Don't report 0% unless empty + When preparing a buffering message, don't report 0% if there + is any bytes left in the queue at all. We still have something + to push, so don't tell the app to start buffering - maybe + we'll get more data before actually running dry. + +2015-11-30 17:11:33 +0100 Edward Hervey + + * gst/gstclock.h: + gstclock: Fix GST_STIME_ARGS + It wasn't properly handling GST_CLOCK_STIME_NONE and always use the + sign marker (+/-) to make it easier to identify signed values in + logs + https://bugzilla.gnome.org/show_bug.cgi?id=758870 + +2015-11-30 23:08:50 +0100 Thibault Saunier + + * gst/gstcontrolsource.c: + controlsource: Annotate get_value[_array] as (method) + As the names clash with gst_object_get_value[_array] + https://bugzilla.gnome.org/show_bug.cgi?id=756950 + +2015-11-13 17:32:57 -0500 Nicolas Dufresne + + * gst/gstplugin.c: + * gst/gstplugin.h: + plugin: Add prefix support to dependencies + This adds a new flags, GST_PLUGIN_DEPENDENCY_FLAG_FILE_NAME_IS_PREFIX, + which allow using the names as prefix for plugin depencies. + https://bugzilla.gnome.org/show_bug.cgi?id=758083 + +2015-11-13 16:32:31 -0500 Nicolas Dufresne + + * gst/gstplugin.c: + plugin: Allow device nodes as dependency + This is useful for feature that are produced after probing a specific + node. You want to reload this plugin if the specific node(s) have been + removed, added, or reloaded. + https://bugzilla.gnome.org/show_bug.cgi?id=758080 + +2015-11-13 16:20:42 -0500 Nicolas Dufresne + + * gst/gstplugin.c: + plugin: Don't do lossy shift on hash + In plugin is responsible for calculating a hash of the dependencies + in order to determine if the cache should be invalidated or not. + Currently, the hash combining method removes a bit of the original + have before combining with an addition. As we use 32bits for our hash + and shift 1 bit for each file and directory, that resulting hash only + account for the last 32 files. And is more affected by the last file. + Rotating technique (shifting, and adding back the ending bit), can be + use to make the addition non-commutative. In a way that different order + gives different hashes. In this case, I don't preserve this behaviour + because the order in which the files are provided by the OS is + irrelevant. + In most cases, the XOR operation is used to combine hashes. In this + code we use the addition. I decided to preserve the addition because + we make use of non-random hash ((guint) -1) in the algorithm for + matching files that are not really part of the hash (symlinks, special + files). Doing successive XOR on this value, will simply switch from + full ones, to full zero. The XOR used with whitelist has been preserved + as it's based on a fairly randomized hash (g_str_hash). + https://bugzilla.gnome.org/show_bug.cgi?id=758078 + +2015-11-23 21:40:34 +0000 Lukasz Forynski + + * gst/gstinfo.h: + info: fix compiler warning with -Wpedantic and gcc 5 + Gstreamer compiled with gcc 5.2 and -Wpedantic produces the + following warning: + 'ISO C does not support '__FUNCTION__' predefined identifier [-Wpedantic] + const char *s = __FUNCTION__;' + Since gcc 5 enables C99 by default, use __func__ if it's available + instead of the non-standard __FUNCTION__ (as suggested in [2]). + [1]: https://gcc.gnu.org/gcc-5/changes.html + [2]: https://gcc.gnu.org/gcc-5/porting_to.html + https://bugzilla.gnome.org/show_bug.cgi?id=758541 + +2015-11-20 19:45:39 +0000 Tim-Philipp Müller + + controller: fix annotation to make g-ir-scanner happy + gstinterpolationcontrolsource.h:59: Warning: GstController: missing ":" at column 51: + * @GST_INTERPOLATION_MODE_CUBIC_MONO: (Since 1.8) monotonic cubic interpolation, will not + gstinterpolationcontrolsource.h:59: Warning: GstController: unknown annotation: since + +2014-09-29 14:03:13 +0530 Ravi Kiran K N + + * gst/gsttaglist.c: + * gst/gsttaglist.h: + tags: add GST_TAG_PRIVATE_DATA + Can be used to represent private data that may be + contained in tags, such as ID3v2 PRIV frames. + https://bugzilla.gnome.org/show_bug.cgi?id=730926 + +2015-11-19 17:24:53 +0000 Luis de Bethencourt + + * plugins/elements/gstdataurisrc.c: + * tests/check/elements/dataurisrc.c: + docs: update gst-launch-0.10 lines + Update references to gst-launch-0.10 to gst-launch-1.0 + +2015-11-19 00:51:44 -0300 Thiago Santos + + * libs/gst/base/gstbaseparse.c: + Revert "baseparse: do not overwrite header buffer timestamps" + This reverts commit 2c475a035543efc0202ecdc52070295a421ed4b4. + This causes issues with h264parse. It breaks timestamps as + there are headers in the middle of the stream and this patch + makes the timestamps for those differ from the ones that + are adjusted, creating a discontinuity and leading to sync + issues. + +2015-11-17 18:47:48 -0300 Thiago Santos + + * libs/gst/base/gstbaseparse.c: + Revert "baseparse: simplify code a bit" + This reverts commit 3984f7159a72c2eebe01905ee53716e3b2abcb30. + +2015-11-18 11:46:45 +0000 Tim-Philipp Müller + + * plugins/elements/gstqueue2.c: + queue2: don't print criticals when receiving custom events in ring buffer mode + Downgrade from g_warning to GST_WARNING log message. + https://bugzilla.gnome.org/show_bug.cgi?id=758276 + +2015-11-18 09:21:23 +0200 Sebastian Dröge + + * libs/gst/helpers/gst-ptp-helper.c: + ptp-helper: Disable multicast loopback + We're not really interested in our own packets and ignore them anyway. + +2015-11-17 09:17:58 +0900 Vineeth TM + + * gst/gstdebugutils.c: + debugutils: Fix string memory leak + https://bugzilla.gnome.org/show_bug.cgi?id=758207 + +2015-11-16 08:22:14 -0300 Thiago Santos + + * libs/gst/base/gstbaseparse.c: + baseparse: simplify code a bit + Avoid repeated checks for testing if a buffer is a header + +2015-11-13 20:44:57 -0300 Thiago Santos + + * libs/gst/base/gstcollectpads.c: + collectpads: handle buffer with dts-only when mapping to running time + Otherwise the buffer was left with the original values and later would + be compared with other buffers that were converted to runninn time, + leading to bad interleaving of multiple streams. + https://bugzilla.gnome.org/show_bug.cgi?id=757961 + +2015-11-13 16:31:06 -0300 Thiago Santos + + * libs/gst/base/gstbaseparse.c: + baseparse: do not overwrite header buffer timestamps + baseparse tries to preserve timestamps from upstream if + it is running on a time segment and write that to + output buffers. It assumes the first DTS is going to be + segment.start and sets that to the first buffers. In case + the buffer is a header buffer, it had no timestamps and + will have only the DTS set due to this mechanism. + This patch prevents this by skipping this behavior for + header buffers. + https://bugzilla.gnome.org/show_bug.cgi?id=757961 + +2015-06-18 13:56:53 -0700 Aleix Conchillo Flaqué + + * plugins/elements/gstidentity.c: + * plugins/elements/gstidentity.h: + identity: add drop-buffer-flags property + New property drop-buffer-flags that will discard buffers that have the + given flags set. + https://bugzilla.gnome.org/show_bug.cgi?id=751182 + +2015-11-12 19:46:44 +0000 Ross Burton + + * libs/gst/helpers/Makefile.am: + helpers: fix install race + The install hook needs to be a install-data-hook not an install-exec-hook as the + helpers are installed into helperdir which is considered data (only path + variables with "exec" in are considered executables). + The explicit dependency on install-helpersPROGRAMS was an attempt at solving + this, but this causes occasional races where install-helpersPROGRAMS can run + twice in parallel (once via install-all, once via the hook's dependency). + https://bugzilla.gnome.org/show_bug.cgi?id=758029 + +2015-11-12 16:14:18 +0100 Heinrich Fink + + * tests/check/gst/gstsystemclock.c: + systemclock: Add test for gst_clock_get_resolution + In a series of time measurements, the diff between now and previous + timestamps is either 0 or at least as long as get_resolution returned. + https://bugzilla.gnome.org/show_bug.cgi?id=758012 + +2015-11-12 11:26:56 +0100 Heinrich Fink + + * gst/gstsystemclock.c: + systemclock: Use mach_time on Apple platforms + On iOS/OSX g_get_current_time was used by default. However, mach_time is + the preferred high-resolution monotonic clock to be used on Apple + platforms. + https://bugzilla.gnome.org/show_bug.cgi?id=758012 + +2015-11-11 11:11:23 -0300 Thiago Santos + + * plugins/tracers/gstlog.c: + tracers: log: add missing hooks + Log all possible hooks + +2015-10-29 08:40:32 -0300 Thiago Santos + + * gst/gstelement.c: + * gst/gsttracerutils.c: + * gst/gsttracerutils.h: + tracer: add element-change-state-pre/post hook + Helps catching when a state change is starting and ending. + It is also possible to track the end of state changes by checking the + async-done or state-change messages. + This is particularly important for elements that do async state changes. + +2015-11-11 14:32:44 +0100 Miguel París Díaz + + * tests/check/gst/gstpad.c: + pad: test for checking the order of the probe calls + https://bugzilla.gnome.org/show_bug.cgi?id=757197 + +2015-11-10 14:41:35 -0300 Thiago Santos + + * gst/gstcontext.c: + context: fix some copy and paste leftover in docs + +2015-11-10 14:37:27 -0300 Thiago Santos + + * gst/gstcontext.c: + context: add some more documentation + Add a short paragraph on what means for a context to be persistent + +2015-11-09 18:02:09 +0000 Tim-Philipp Müller + + * gst/gstutils.h: + utils: use 'static inline' instead of 'inline static' for gtk-doc + gtk-doc doesn't seem to recognise the former variant. + +2015-11-09 17:59:16 +0000 Tim-Philipp Müller + + * gst/gstbuffer.h: + * gst/gstbufferlist.h: + * gst/gstcaps.h: + * gst/gstcontext.h: + * gst/gstevent.h: + * gst/gstmemory.h: + * gst/gstmessage.h: + * gst/gstquery.h: + * gst/gstsample.h: + * gst/gsttaglist.h: + * gst/gsturi.h: + * gst/gstutils.h: + * libs/gst/base/gstbytewriter.h: + docs: remove dummy function declarations with G_INLINE_FUNCTION for gtk-doc + gtk-doc can handle static inline functions just fine these days, + there's no need for this stuff any more. + +2015-02-23 13:16:19 +1000 Duncan Palmer + + * plugins/elements/gstqueue2.c: + * plugins/elements/gstqueue2.h: + queue2: Add the avg-in-rate property. + https://bugzilla.gnome.org/show_bug.cgi?id=733959 + +2015-11-04 12:02:51 +0100 Philippe Normand + + * plugins/elements/gstqueue2.c: + * plugins/elements/gstqueue2.h: + * tests/check/elements/queue2.c: + queue2: add overrun signal + Notifies that the queue2 is full, same as queue does + https://bugzilla.gnome.org/show_bug.cgi?id=733959 + +2015-09-29 21:14:19 -0300 Thiago Santos + + * tests/check/gst/gstpad.c: + pad: tests for accept-caps handling with proxy pads + Adds 3 new tests for testing accept-caps behavior with + proxy-caps pads. + 1) A scenario where there is no proxy. The caps should be compared to the + template caps of the pad + 2) A scenario where there is a compatible pad. The caps should be compared + to the proxied pad caps (and also with the template) + 3) A scenario where there is an incompatible proxy pad. No caps should be + possible at all. + https://bugzilla.gnome.org/show_bug.cgi?id=754112 + +2015-11-05 16:15:22 -0300 Thiago Santos + + * gst/gstpad.c: + pad: check template caps for proxy pads in accept-caps + Validate that the proxy pad indeed accepts the caps by also + comparing with the pad template caps, otherwise when the pad + had no internally linked pads it would always return true. + https://bugzilla.gnome.org/show_bug.cgi?id=754112 + +2015-11-06 12:58:42 +0100 Thibault Saunier + + * gst/gstpreset.c: + Fix build with -Werror=maybe-uninitialized + +2015-11-06 12:05:18 +0100 Thibault Saunier + + * gst/gstpreset.c: + * scripts/gst-uninstalled: + preset: Add a GST_PRESET_PATH env variable for presets to be usable uninstalled + And start setting the various uninstalled presets paths. + +2015-11-05 08:56:43 +0100 Anton Bondarenko + + * plugins/elements/gstfilesink.c: + filesink: continue element cleanup even if fclose fails + Sometimes filesink cleanup during stop may fail due to fclose error. + In this case object left partial cleanup with no file opened + but still holding old file descriptor. + It's not possible to change location property in a such state, + so next start will cause old file overwrite if 'append' does not set. + According to man page and POSIX standard about fclose behavior(extract): + ------------------------------------------------------------------------ + The fclose() function shall cause the stream pointed to by stream + to be flushed and the associated file to be closed. + ... + Whether or not the call succeeds, the stream shall be disassociated + from the file and any buffer set by the setbuf() or setvbuf() + function shall be disassociated from the stream. + ... + The fclose() function shall perform the equivalent of a close() + on the file descriptor that is associated with the stream + pointed to by stream. + After the call to fclose(), any use of stream results + in undefined behavior. + ------------------------------------------------------------------------ + So file is in 'closed' state no matter if fclose succeed or not. + And cleanup could be continued. + https://bugzilla.gnome.org/show_bug.cgi?id=757596 + +2015-11-01 00:04:27 +1100 Jan Schmidt + + * gst/gstpad.c: + pad: Mark sticky events as sent on not-linked + Instead of re-sending sticky events over and over to a not-linked + pad, mark them as sent the first time. If the not-linked came from + downstream, it already received the events. If the pad is actually + not-linked, the sticky events will be rescheduled when the + pad is linked anyway. + +2015-10-29 18:53:29 +1100 Jan Schmidt + + * gst/gstghostpad.c: + ghostpad: Allow deactivation with no peer. + Allow deactivation in pull-mode, since that implies we + had a peer, activated in pull mode, then the peer disa-peer-ed ;) + +2015-10-28 17:31:07 -0300 Thiago Santos + + * gst/gstelement.c: + * gst/gstelementfactory.c: + element: emit tracer's element-new hook from 'constructed' + It allows to properly emitting it for all newly created elements + https://bugzilla.gnome.org/show_bug.cgi?id=757045 + +2015-10-28 06:03:39 -0300 Thiago Santos + + * plugins/tracers/gststats.c: + stats: log the element-new hook properly + To be able to get the time the elements were created instead of + just logging them without a time + +2015-10-28 18:04:46 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Unblock blocking pad probes when receiving FLUSH_START in send_event() too + Without this, flushing might not unblock the streaming thread and cause deadlocks. + https://bugzilla.gnome.org/show_bug.cgi?id=757257 + +2015-10-28 13:04:25 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Document the order in which pad probes are called + https://bugzilla.gnome.org/show_bug.cgi?id=757197 + +2015-10-27 18:05:05 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Append hooks instead of prepending to call them in the order they were added + https://bugzilla.gnome.org/show_bug.cgi?id=757197 + +2015-10-26 12:50:12 +0100 Stian Selnes + + * libs/gst/net/gstnetaddressmeta.c: + * libs/gst/net/gstnetaddressmeta.h: + * win32/common/libgstnet.def: + netaddressmeta: gst_buffer_get_net_address_meta() as function + Implement gst_buffer_get_net_address_meta() as a function instead + of a macro in order to get gobject-introspection to work. + https://bugzilla.gnome.org/show_bug.cgi?id=702921 + +2015-10-26 18:07:11 +0530 Nirbheek Chauhan + + * gst/gstbuffer.h: + buffer: flesh out docs for gst_buffer_make_writable() a little + There is a similar explanation in gst_caps_make_writable, but the existing + documentation can be misleading since it does not define what 'is already + writable' means. + Also note when this function is meant to be used. + +2015-10-26 17:35:34 +0530 Nirbheek Chauhan + + * gst/gstcaps.c: + caps: clarify docs for a few functions that they don't update things in-place + It is not necessarily clear from the existing introspection tags and + documentation alone. + +2015-10-27 08:48:07 +0100 Edward Hervey + + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + queue/queue2: Use GST_BUFFER_DTS_OR_PTS + The input of queue/queue2 might have DTS set, in which cas we want + to take that into account (instead of the PTS) to calculate position + and queue levels. + https://bugzilla.gnome.org/show_bug.cgi?id=756507 + +2015-10-13 17:20:26 +0200 Edward Hervey + + * plugins/elements/gstmultiqueue.c: + multiqueue: Use buffer DTS if present, else PTS + In order to accurately determine the amount (in time) of data + travelling in queues, we should use an increasing value. + If buffers are encoded and potentially reordered, we should be + using their DTS (increasing) and not PTS (reordered) + https://bugzilla.gnome.org/show_bug.cgi?id=756507 + +2015-10-27 08:33:41 +0100 Edward Hervey + + * libs/gst/base/gstcollectpads.c: + collectpads: Use GST_BUFFER_DTS_OR_PTS + Simplifies code a bit + +2015-10-26 07:59:54 +0100 Edward Hervey + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.h: + buffer: Add a GST_BUFFER_DTS_OR_PTS macro + API: GST_BUFFER_DTS_OR_PTS + Many scenarios/elements require dealing with streams of buffers that + might have DTS set (i.e. encoded data, potentially reordered) + To simplify getting the increasing "timestamp" of those buffers, create + a macro that will return the DTS if valid, and if not the PTS + +2015-10-06 12:21:04 +0200 Guillaume Desmottes + + * docs/gst/gstreamer-sections.txt: + doc: add GST_{PTR,SEGMENT}_FORMAT + Very useful formats in debug output so best to have them in the + generated doc. + https://bugzilla.gnome.org/show_bug.cgi?id=756115 + +2015-10-26 10:53:35 +0200 Sebastian Dröge + + * gst/gstsegment.c: + segment: Return -1 if gst_segment_to_stream_time_full() considers the position not inside the segment + Fixes GstPipeline unit test. + https://bugzilla.gnome.org/show_bug.cgi?id=756564 + +2015-10-24 16:52:44 +0100 Florin Apostol + + * gst/gsturi.c: + uri: fix behaviour for merging uris ending in .. without following / + https://bugzilla.gnome.org/show_bug.cgi?id=757065 + +2015-10-24 16:43:59 +0100 Florin Apostol + + * tests/check/gst/gsturi.c: + uri: tests: added unit test for streams ending in .. without following / + https://bugzilla.gnome.org/show_bug.cgi?id=757065 + +2015-08-27 12:43:28 +0200 Thibault Saunier + + * gst/gstdebugutils.c: + debug: Dump pad properties values + Currently we only show element properties values, we should also show + pad properties values + https://bugzilla.gnome.org/show_bug.cgi?id=754166 + +2015-10-23 20:04:42 +0300 Sebastian Dröge + + * gst/gstsegment.c: + segment: Remove leftover debug g_print() + +2015-10-15 14:49:37 +0300 Vivia Nikolaidou + + * docs/design/part-synchronisation.txt: + * docs/gst/gstreamer-sections.txt: + * gst/gstsegment.c: + * gst/gstsegment.h: + * tests/check/gst/gstsegment.c: + * win32/common/libgstreamer.def: + segment: Add _full variants of all stream/running_time from/to segment position functions + See formula clarifications in design docs for calculation details. + https://bugzilla.gnome.org/show_bug.cgi?id=756564 + +2015-09-26 01:29:07 +0300 Vivia Nikolaidou + + * scripts/gst-uninstalled: + gst-uninstalled: Added env var for uninstalled PTP helper + https://bugzilla.gnome.org/show_bug.cgi?id=755651 + +2015-10-22 12:00:42 +0200 Guillaume Desmottes + + * libs/gst/base/gstbasesink.h: + basesink: rename argument of PREROLL_{COND,LOCK} macros + They take a GstBaseSink instance as argument at not a GstPad. Rename the + argument to 'obj' which is not miss leading and in line with + GST_BASE_SINK_PAD(obj). + https://bugzilla.gnome.org/show_bug.cgi?id=756954 + +2015-10-22 10:05:14 +0200 Mathieu Duponchelle + + * gst/gstcontrolsource.c: + gstcontrolsource: Add missing (out) annotation + +2015-10-21 14:34:47 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From b99800a to b319909 + +2015-10-21 14:49:49 +0300 Sebastian Dröge + + * gst/gstpad.c: + pad: Fix docs/annotation of gst_pad_probe_info_get_buffer_list() + It's not get_bufferlist(). Because of that it was ignored by the docs and + G-I, leading to crashes because of broken ownership transfer. + https://bugzilla.gnome.org/show_bug.cgi?id=756898 + +2015-10-20 17:29:42 +0300 Sebastian Dröge + + * configure.ac: + * gst/gstpad.c: + * libs/gst/base/gstbasetransform.c: + Use new GST_ENABLE_EXTRA_CHECKS #define + https://bugzilla.gnome.org/show_bug.cgi?id=756870 + +2015-10-21 14:25:40 +0300 Sebastian Dröge + + * README: + * common: + Automatic update of common submodule + From 9aed1d7 to b99800a + +2015-10-20 13:46:24 +0100 Luis de Bethencourt + + * tools/gst-stats.c: + stats: always free log + We always want to free the open file log if fopen() succeeded. Independently + of if fgets() succeeds or fails. + CID 1326055 + https://bugzilla.gnome.org/show_bug.cgi?id=756864 + +2015-10-19 16:50:51 +0300 Vivia Nikolaidou + + * gst/gstsegment.c: + * tests/check/gst/gstsegment.c: + segment: Correct stream_time calc for negative applied rate + Updated gst_segment_position_from_stream_time and gst_segment_to_stream_time to reflect correct calculations for the case when the applied rate is negative. + Pasting from design docs: + =============================== + Stream time is calculated using the buffer times and the preceding SEGMENT + event as follows: + stream_time = (B.timestamp - S.start) * ABS (S.applied_rate) + S.time + For negative rates, B.timestamp will go backwards from S.stop to S.start, + making the stream time go backwards. + =============================== + Therefore, the calculation for applied_rate < 0 should be: + stream_time = (S.stop - B.timestamp) * ABS (S.applied_rate) + S.time + and the reverse: + B.timestamp = S.stop - (stream_time - S.time) / ABS (S.applied_rate) + https://bugzilla.gnome.org/show_bug.cgi?id=756810 + +2015-10-19 21:39:19 +0200 Stefan Sauer + + * docs/design/draft-tracing.txt: + * docs/plugins/gstreamer-plugins-docs.sgml: + * gst/gsttracerutils.c: + tracer: rename the envvar to GST_TRACER_PLUGINS + The subsystem reused the GST_TRACE var that is allready in use by the alloc tracer. + Fixes #756760 + +2015-10-15 16:32:42 +0200 Edward Hervey + + * plugins/elements/gstmultiqueue.c: + multiqueue: Improve incoming SEGMENT handling + Previously this code was just blindly setting the cached flow return + of downstream to GST_FLOW_OK when we get a SEGMENT. + The problem is that this can not be done blindly. If downstream was + not linked, the corresponding sinqlequeue source pad thread might be + waiting for the next ID to be woken up upon. + By blindly setting the cached return value to GST_FLOW_OK, and if that + stream was the only one that was NOT_LINKED, then the next time we + check (from any other thread) to see if we need to wake up a source pad + thread ... we won't even try, because none of the cached flow return + are equal to GST_FLOW_NOT_LINKED. + This would result in that thread never being woken up + https://bugzilla.gnome.org/show_bug.cgi?id=756645 + +2015-09-26 18:16:07 +0800 Ting-Wei Lan + + * gst/gstutils.h: + gstutils: Fix build with clang -Werror=cast-align + https://bugzilla.gnome.org/show_bug.cgi?id=755657 + +2015-10-17 22:13:08 +0300 Sebastian Dröge + + * gst/gstbin.c: + bin: Make sure to free all cached messages when going to NULL + An ASYNC READY->PAUSED might have failed without the bin code noticing during + the state change, in which case we will never get PAUSED->READY and would leak + messages. + https://bugzilla.gnome.org/show_bug.cgi?id=756611 + +2015-10-16 15:59:49 +0100 Tim-Philipp Müller + + * docs/gst/running.xml: + * gst/gstdebugutils.h: + * tools/gst-launch.1.in: + docs: mention xdot utility to view .dot files directly + +2015-10-16 12:00:50 +0100 Tim-Philipp Müller + + * gst/gsttrace.c: + alloctrace: show details of events and messages leaked + So it's clearer what leaked. + +2015-10-16 11:54:18 +0100 Tim-Philipp Müller + + * docs/manual/advanced-metadata.xml: + docs: manual: improve advanced metadata example a bit + Accept both filename and a URI as argument, and print + the error from the error message if there's an error. + https://bugzilla.gnome.org/show_bug.cgi?id=756630 + +2015-10-15 19:05:21 -0300 Thiago Santos + + * gst/gstmemory.h: + memory: fix typo in documentation + It should be 1.2 unless this is a flag from the future + +2015-09-15 18:08:18 +0200 Edward Hervey + + * plugins/elements/gstmultiqueue.c: + multiqueue: Accept STREAM_START after EOS + In the same way core now allows STREAM_START to remove the flushing + state from pads, we need to do the same thing in multiqueue + +2015-10-14 11:03:22 +0300 Sebastian Dröge + + * tests/check/gst/gstsegment.c: + segment: Convert function to macro in unit test to get proper line numbers on failures + https://bugzilla.gnome.org/show_bug.cgi?id=748316 + +2015-10-12 17:29:26 +0200 Edward Hervey + + * libs/gst/base/gstbaseparse.c: + baseparse: Update internal position even if not linked + Our current position has nothing to do with being linked or not. + Avoids having stray segment updates fired every 2s + +2015-10-07 22:55:44 +0100 Florin Apostol + + * gst/gstpad.c: + pad: fix memory leak when sending events to an EOS pad + https://bugzilla.gnome.org/show_bug.cgi?id=756208 + +2015-10-07 12:01:16 +0100 Sebastian Dröge + + * plugins/tracers/Makefile.am: + tracers: Only link against libgstprintf.la if the debugging system is enabled + It does not exist otherwise and linking will fail. + +2015-10-07 11:25:52 +0100 Sebastian Dröge + + * libs/gst/helpers/gst-ptp-helper.c: + gst-ptp-helper: #include to fix net/if.h include on OSX 10.6 + In file included from gst-ptp-helper.c:40:0: + /usr/include/net/if.h:265:19: error: field 'ifru_addr' has incomplete type + struct sockaddr ifru_addr; + https://bugzilla.gnome.org/show_bug.cgi?id=756136 + +2015-10-07 12:22:34 +0200 Stefan Sauer + + * configure.ac: + * plugins/tracers/Makefile.am: + * plugins/tracers/gstrusage.c: + * plugins/tracers/gsttracers.c: + Revert "tracers: Only build getrusage() tracer if RUSAGE_THREAD is available" + This reverts commit 8ddbf76626a48420306869db1d171f854cc25310. + +2015-10-07 12:21:56 +0200 Stefan Sauer + + * plugins/tracers/gstrusage.c: + tracers/rusage: ifdef the RUSAGE_THREAD usage + Some versions of andoid don't seem to have it. + +2015-10-07 11:11:30 +0100 Sebastian Dröge + + * configure.ac: + * plugins/tracers/Makefile.am: + * plugins/tracers/gstrusage.c: + * plugins/tracers/gsttracers.c: + tracers: Only build getrusage() tracer if RUSAGE_THREAD is available + +2015-10-06 21:46:55 +0200 Stefan Sauer + + * win32/common/libgstreamer.def: + win32: remove gst_tracer_quark_id_get_type + Revert addition from 777bbeea605051ae3d2fa7e02ad8589001e78ce0. + +2015-10-06 18:52:38 +0200 Stefan Sauer + + * gst/gsttracer.h: + * gst/gsttracerutils.h: + tracer: move prototype to the right header + Fixes the build when the tracing subsystem is disabled. + +2015-10-06 18:49:46 +0200 Stefan Sauer + + * gst/gst.c: + * gst/gsttracerutils.h: + tracer: mark GstTracerQuarkId as non GEnum + This reverts 72ca02b1de4066eeae35c891e275386770117778 and marks the enum + accordingly. + +2015-10-06 18:46:24 +0200 Stefan Sauer + + * plugins/tracers/Makefile.am: + * plugins/tracers/gsttracers.c: + tracers: disable the log tracer if debug logging is disabled + +2015-10-06 18:45:41 +0200 Stefan Sauer + + * plugins/tracers/Makefile.am: + makefile.am: Remove obsolete Android build cruft + This is not needed any longer. + +2015-10-06 14:01:03 +0200 Stefan Sauer + + * gst/gsttracerutils.h: + tracer: fix the build with debug (tracer) disabled + Sync the macro definitions. The dummy defines has argument mismatches. + +2015-10-06 11:39:33 +0200 Stefan Sauer + + * gst/gsttracerutils.h: + tracer: fix the build with debug (tracer) disabled + Remove commas at the end of the macros. + +2015-09-01 16:39:30 -0300 Thiago Santos + + * plugins/tracers/gststats.c: + tracers: stats: add message structure to output + The name of the message is not enough. For example, state-change + is not enough to know the transition. + https://bugzilla.gnome.org/show_bug.cgi?id=754496 + +2015-10-05 19:05:58 -0300 Thiago Santos + + * gst/gst.c: + gst: adding tracer quark id to gst init and deinit + Fixes issues at make check + +2015-10-05 18:50:48 -0300 Thiago Santos + + * win32/common/libgstreamer.def: + win32: libgstreamer: add tracer functions + +2015-10-05 21:29:49 +0200 Stefan Sauer + + * tests/check/gst/gsttag.c: + tests: fix the tag test + The previous change (see bgo #756069) was causing us to free the same pointer + multiple times. If we actually get a sample back, the test fails, no need to + free anything in that case. + +2015-06-04 01:50:34 +0200 Marcin Kolny + + * docs/design/draft-tracing.txt: + * gst/gstbin.c: + * gst/gstelement.c: + * gst/gstelementfactory.c: + * gst/gstpad.c: + * gst/gsttracerutils.c: + * gst/gsttracerutils.h: + tracer: add missing hooks + Add following hooks: element-new, element-add-pad, element-remove-pad, + bin-add-pre, bin-add-post, bin-remove-pre, bin-remove-post, pad-link-pre, + pad-link-post, pad-unlink-pre, pad-unlink-post. + https://bugzilla.gnome.org/show_bug.cgi?id=733187 + +2015-03-13 18:31:40 +0000 Thiago Santos + + * plugins/tracers/gststats.c: + tracer: gststats: add thread-id to log line + +2015-03-13 13:10:42 +0000 Thiago Santos + + * gst/gstpad.c: + * gst/gsttracerutils.c: + * gst/gsttracerutils.h: + * plugins/tracers/gststats.c: + tracer: add pad query hooks + +2015-01-15 06:32:48 +0100 Mathieu Duponchelle + + * gst/gsttracer.c: + tracer: strdup the passed parameters. + +2015-01-13 22:11:34 +0100 Mathieu Duponchelle + + * plugins/tracers/gstlog.c: + tracer: Use GST_TIME_ARGS when printing with GST_TIME_FORMAT. + +2014-10-16 10:42:05 +0200 Stefan Sauer + + * docs/design/draft-tracing.txt: + tracing: update docs + +2014-10-02 19:52:03 +0200 Stefan Sauer + + * plugins/tracers/gststats.c: + * tools/gst-stats.c: + stats: TIMESTAMP -> PTS + +2014-09-22 09:55:56 +0200 Stefan Sauer + + * gst/gst.c: + * gst/gsttracer.h: + * gst/gsttracerutils.c: + * gst/gsttracerutils.h: + * plugins/tracers/gstlatency.c: + * plugins/tracers/gstlog.c: + * plugins/tracers/gstrusage.c: + * plugins/tracers/gststats.c: + tracing: rename the global api to gst_tracing + This makes it more obvious what is the api for tracer elements and what is api + for the global state. + +2014-09-18 08:28:48 +0200 Stefan Sauer + + * tools/gst-stats.c: + stats: fix cpu stats printing + Only print them if we have them. Also scale them by 10.0 as the are in + per-mille now. + +2014-09-18 08:26:19 +0200 Stefan Sauer + + * gst/gsttracer.h: + * gst/gsttracerutils.c: + * gst/gsttracerutils.h: + * plugins/tracers/gstlatency.c: + * plugins/tracers/gstlog.c: + * plugins/tracers/gstrusage.c: + * plugins/tracers/gststats.c: + tracers: eliminate var_args + Register tracer hooks as GCallback. Use macros for hook dispatch and cast the + hook functions back to the appropriate type. + +2014-09-17 09:41:46 +0200 Stefan Sauer + + * tools/gst-stats.c: + stats: don't warn on ".class" log lines + +2014-09-17 08:38:02 +0200 Stefan Sauer + + * plugins/tracers/gstlatency.c: + * plugins/tracers/gstrusage.c: + * plugins/tracers/gstrusage.h: + * plugins/tracers/gststats.c: + * plugins/tracers/gststats.h: + tracers: code cleanups + Move static variables to instance variables. Add finalize methods. Remove code + that is commented out. Cleanup locking code. + +2014-09-15 22:27:11 +0200 Stefan Sauer + + * gst/gsttracer.h: + * gst/gsttracerutils.c: + * gst/gsttracerutils.h: + * plugins/tracers/gstlatency.c: + * plugins/tracers/gstlog.c: + * plugins/tracers/gstrusage.c: + * plugins/tracers/gststats.c: + tracer: use GQuark or strings for the hook id + This way one can define new tracing probes without changing the core. We are + using our own quark table, as 1) we only want to initialize them if we're + tracing, 2) we want to share them with the tracers. + +2014-09-15 13:15:17 +0200 Stefan Sauer + + * gst/gsttracer.c: + * gst/gsttracer.h: + * gst/gsttracerutils.c: + * gst/gsttracerutils.h: + * plugins/tracers/gstlatency.c: + * plugins/tracers/gstlog.c: + * plugins/tracers/gstrusage.c: + * plugins/tracers/gststats.c: + tracer: simplify hook api + Instead of a single invoke() function and a 'mask', register to individual + hooks. This avoids one level of indirection and allows us to remove the + hook enums. The message enms are now renamed to hook enums. + +2014-09-12 18:43:52 +0200 Stefan Sauer + + * gst/gsttracer.c: + * gst/gsttracer.h: + * gst/gsttracerutils.c: + * plugins/tracers/gstlatency.c: + * plugins/tracers/gstlog.c: + * plugins/tracers/gstrusage.c: + * plugins/tracers/gststats.c: + tracer: drop the HookId hid from the invoke method + The MessageId is more detailed and anyway needed to interpret the varargs. + +2014-09-12 11:17:41 +0200 Stefan Sauer + + * plugins/tracers/gststats.c: + stats: fixup doc name and remove commented code + +2014-09-12 08:40:01 +0200 Stefan Sauer + + * plugins/tracers/gstlatency.c: + * plugins/tracers/gstrusage.c: + * plugins/tracers/gststats.c: + tracers: add metadata for the logged values + +2014-09-11 13:02:51 +0200 Stefan Sauer + + * plugins/tracers/gstrusage.c: + rusage: improve cpu load meassurements + Get the number of cpus and scale process cpu-load accordingly. Switch the + cpuload to be per-mille to get smoother graphs. Add a bit more logging and use + the _OBJECT variant. + +2014-09-11 13:00:59 +0200 Stefan Sauer + + * gst/gsttracer.c: + tracer: remove commented code + +2014-09-10 08:33:38 +0200 Stefan Sauer + + * docs/design/draft-tracing.txt: + design: update tracer design + Update the tracer event classes section. Add a performance section. + +2014-09-10 08:32:18 +0200 Stefan Sauer + + * gst/gsttracer.c: + tracer: use GST_PTR_FORMAT to log the structure + This way we only expand the structure when we're logging. This allows us to + meassure the pure tracing seperately from the logging. + Also add some comments on further improvements. + +2014-09-10 07:55:33 +0200 Stefan Sauer + + * plugins/tracers/gstrusage.c: + * tools/gst-stats.c: + rusage: implement windowing of cpuload + Add a local help to the rusage plugin that supports windowing of values. We want + to generalize this for use in other plugins. + +2014-09-04 10:11:52 +0200 Stefan Sauer + + * plugins/tracers/gstrusage.c: + * tools/gst-stats.c: + rusage: announce the data format + Rusage will now announce what is meassures and how it is logged. Use the new format in stats. + Cleanup the the code and naming. + +2014-07-28 22:08:49 +0200 Stefan Sauer + + * plugins/tracers/gstrusage.c: + * tools/gst-stats.c: + stats: improve cpu load meassurements + Rename variables for clarity. Handle the initial disparity between debug time + and the time already spent in the proc and main thread. + +2014-07-18 08:09:32 +0200 Stefan Sauer + + * docs/design/draft-tracing.txt: + design: update tracer design + +2014-07-28 08:49:38 +0200 Stefan Sauer + + * gst/gstquark.c: + * gst/gstquark.h: + quarks: revert the quark changes, we not using them anymore + +2014-07-18 07:49:38 +0200 Stefan Sauer + + * gst/Makefile.am: + * gst/gst.h: + * gst/gst_private.h: + * gst/gstelement.c: + * gst/gstpad.c: + * gst/gstregistrychunks.c: + * gst/gsttracer.c: + * gst/gsttracer.h: + * gst/gsttracerfactory.c: + * gst/gsttracerfactory.h: + * gst/gsttracerutils.c: + * gst/gsttracerutils.h: + * plugins/tracers/Makefile.am: + * plugins/tracers/gstlatency.h: + * plugins/tracers/gstlog.h: + * plugins/tracers/gstrusage.h: + * plugins/tracers/gststats.h: + tracer: split into tracer and tracerutils + Keep tracer base class in tracer and move core support into the utils module. + Add a unstable-api guard to the tracer.h so that external modules would need to + acknowledge the status by setting GST_USE_UNSTABLE_API. + +2014-07-16 18:48:52 +0200 Stefan Sauer + + * gst/gsttracer.c: + * gst/gsttracerfactory.c: + * plugins/tracers/gstlatency.c: + * plugins/tracers/gstlog.c: + * plugins/tracers/gstrusage.c: + * plugins/tracers/gststats.c: + docs: add gtk-doc blobs + +2014-02-20 11:15:20 +0100 Stefan Sauer + + * plugins/tracers/gstlatency.c: + latency: take stop time when buffer is handled + Now we meassure time from 'before buffer transfer on src' to when the 'buffer is processed on sink'. + +2014-07-15 09:49:23 +0200 Stefan Sauer + + * gst/gsttracer.c: + * gst/gsttracer.h: + * plugins/tracers/gstlatency.c: + * plugins/tracers/gstrusage.c: + * plugins/tracers/gststats.c: + tracers: add a logging helper to remove identical copies from the tracers + +2014-02-18 16:15:44 +0100 Stefan Sauer + + * plugins/tracers/gstlatency.c: + * plugins/tracers/gststats.c: + tracers: tweak the get_real_pad_parent() + By using the we ended up on the actual element, not the parent. + +2014-02-18 11:06:10 +0100 Stefan Sauer + + * plugins/tracers/Makefile.am: + * plugins/tracers/gstlatency.c: + * plugins/tracers/gstlatency.h: + * plugins/tracers/gsttracers.c: + tracers: add a new latency tracer + Add a new tracer with pushes extra events to meassure src-to-sink processing latency. + +2014-02-17 18:30:24 +0100 Stefan Sauer + + * docs/design/draft-tracing.txt: + design: update design docs + Add new tracer idea. + +2013-11-22 19:10:04 +0100 Stefan Sauer + + * tools/gst-stats.c: + gst-stats: use the rusage stats + Add cpuload info from rusage traces. + +2013-11-20 08:22:58 +0100 Stefan Sauer + + * configure.ac: + * plugins/tracers/Makefile.am: + * plugins/tracers/gstrusage.c: + * plugins/tracers/gstrusage.h: + * plugins/tracers/gsttracers.c: + rusage: add a new rusage tracer + The tracer hooks up to all probes and logs resource usage figures. + +2014-07-15 10:20:22 +0200 Stefan Sauer + + * tools/gst-stats.c: + gst-stats: filter complete thread section if we have no pads + +2013-11-19 08:04:38 +0100 Stefan Sauer + + * plugins/tracers/gststats.c: + * tools/gst-stats.c: + stats: improve the handling of parentage + Log new object after we did the check for parents. + +2013-11-17 11:37:14 +0100 Stefan Sauer + + * tools/gst-stats.c: + stats: print thread key for stats and filter empty pad-sections + +2013-11-17 11:15:36 +0100 Stefan Sauer + + * tools/gst-stats.c: + stats: update buffer flags + Remove some buffer flags that were leftovers from 0.10 and handle new 1.0 buffer + flags. + +2013-11-04 20:11:09 +0100 Stefan Sauer + + * plugins/tracers/gststats.c: + * plugins/tracers/gststats.h: + * tools/.gitignore: + * tools/Makefile.am: + * tools/gst-stats.c: + stats: add a stats frontend + Parse the log and collect data from tracer messages. + +2013-11-15 09:36:21 +0100 Stefan Sauer + + * gst/gsttracer.h: + tracer: use the same timebase as the logging + +2014-07-16 09:22:37 +0200 Stefan Sauer + + * docs/design/draft-tracing.txt: + design: update design + +2014-07-16 09:41:48 +0200 Stefan Sauer + + * plugins/tracers/gstlog.c: + log: add query log category + +2013-11-02 18:24:56 +0100 Stefan Sauer + + * gst/gsttracer.c: + tracer: parse parameters + +2014-07-16 09:22:14 +0200 Stefan Sauer + + * gst/gstelement.c: + * gst/gstpad.c: + * gst/gsttracer.h: + * plugins/tracers/Makefile.am: + * plugins/tracers/gstlog.c: + * plugins/tracers/gststats.c: + tracer: add more hooks and handle it in the plugins + +2013-10-30 08:19:41 +0100 Stefan Sauer + + * plugins/tracers/gststats.c: + stats: handle buffer lists + +2013-10-30 08:04:27 +0100 Stefan Sauer + + * docs/design/draft-tracing.txt: + * plugins/tracers/gstlog.c: + log: make the log tracer more verbose again + Define log formats per message type and print details. + +2013-10-28 21:59:19 +0100 Stefan Sauer + + * gst/gsttracer.c: + * gst/gsttracer.h: + * plugins/tracers/gstlog.c: + * plugins/tracers/gststats.c: + tracer: use a macros for the enabled check + Avoid a function call and check the variables from the macro. + +2013-10-28 21:39:52 +0100 Stefan Sauer + + * docs/design/draft-tracing.txt: + * gst/gstpad.c: + * gst/gsttracer.c: + * gst/gsttracer.h: + tracer: use macros for hooks + Wrap the hook with a pre and post macro. This looks less intrusive than the + previous version, although it is a little less optimized. + +2013-10-28 21:28:18 +0100 Stefan Sauer + + * gst/gstpad.c: + * gst/gstquark.c: + * gst/gsttracer.c: + * gst/gsttracer.h: + * plugins/tracers/gstlog.c: + * plugins/tracers/gststats.c: + tracer: pass the timestamp directly + Avoid the structure mashalling (and weird field naming). + +2013-10-28 08:08:20 +0100 Stefan Sauer + + * plugins/tracers/Makefile.am: + * plugins/tracers/gststats.c: + * plugins/tracers/gststats.h: + * plugins/tracers/gsttracers.c: + stats: add a tracer that collects pipeline statistics + This is more or less equiv to the the statistics in gst-tracelib. + +2013-10-28 08:07:52 +0100 Stefan Sauer + + * plugins/tracers/gstlog.h: + log: add cast macro + +2013-10-27 20:43:25 +0100 Stefan Sauer + + * gst/gsttracer.c: + * gst/gsttracer.h: + * plugins/tracers/gstlog.c: + tracer: pass the instance to the vmethod + +2013-10-27 17:05:52 +0100 Stefan Sauer + + * docs/design/draft-tracing.txt: + * plugins/tracers/gstlog.c: + design: more planning + +2013-10-27 17:04:32 +0100 Stefan Sauer + + * gst/gstpad.c: + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gsttracer.c: + * gst/gsttracer.h: + tracer: switch to quarks and add another hook for buffer flow + Use pre-defines quarks as this will be called quite often. + +2013-10-27 12:45:54 +0100 Stefan Sauer + + * docs/design/draft-tracing.txt: + * gst/gsttracer.c: + * gst/gsttracer.h: + * plugins/tracers/gstlog.c: + tracer: add the hook-id to the invoke signature + Tracers that subscribe to multiple hooks can know what hook was used. + +2013-10-26 22:05:13 +0200 Stefan Sauer + + * tools/gst-inspect.c: + inspect: add support for the new factory + Handle tracer modules. + +2013-10-24 14:47:48 +0200 Stefan Sauer + + * configure.ac: + * docs/design/draft-tracing.txt: + * gst/Makefile.am: + * gst/gst.c: + * gst/gst.h: + * gst/gst_private.h: + * gst/gstpad.c: + * gst/gstregistrybinary.h: + * gst/gstregistrychunks.c: + * gst/gsttracer.c: + * gst/gsttracer.h: + * gst/gsttracerfactory.c: + * gst/gsttracerfactory.h: + * plugins/Makefile.am: + * plugins/tracers/.gitignore: + * plugins/tracers/Makefile.am: + * plugins/tracers/gstlog.c: + * plugins/tracers/gstlog.h: + * plugins/tracers/gsttracers.c: + tracer: initial prototype for the tracing subsystem + +2015-10-05 11:12:47 +0900 Vineeth TM + + * tests/check/gst/gsttag.c: + * tools/gst-launch.c: + tests/gst-launch: Fix sample memory leak + When sample is got using gst_tag_list_get_sample_index, it should + be free'd. + https://bugzilla.gnome.org/show_bug.cgi?id=756069 + +2015-10-02 22:17:04 +0300 Sebastian Dröge + + * configure.ac: + * gst/gst.c: + * gst/gsturi.c: + * gst/gstvalue.c: + Update GLib dependency to 2.40.0 + +2015-08-20 16:21:59 +0900 Vineeth TM + + * docs/manual/advanced-dataaccess.xml: + * docs/manual/appendix-integration.xml: + * docs/manual/basics-init.xml: + * libs/gst/helpers/gst-completion-helper.c: + * libs/gst/helpers/gst-ptp-helper.c: + * tests/benchmarks/capsnego.c: + * tests/examples/ptp/ptp-print-times.c: + * tools/gst-inspect.c: + * tools/gst-launch.c: + * tools/gst-typefind.c: + gstreamer: Fix memory leaks when context parse fails + When g_option_context_parse fails, context and error variables are not getting free'd + which results in memory leaks. Free'ing the same. + And replacing g_error_free with g_clear_error, which checks if the error being passed + is not NULL and sets the variable to NULL on free'ing. + https://bugzilla.gnome.org/show_bug.cgi?id=753851 + +2015-09-23 23:03:29 +0200 Jan Alexander Steffens (heftig) + + * libs/gst/controller/gsttimedvaluecontrolsource.c: + timedvaluecontrolsource: Use g_sequence_lookup where possible + When looking for exact matches in the sequence, this results + in much simpler code than when using g_sequence_search. + https://bugzilla.gnome.org/show_bug.cgi?id=755498 + +2015-10-01 22:09:58 +0200 Stefan Sauer + + * libs/gst/controller/gstinterpolationcontrolsource.c: + interpolationcontrolsource: fix write over the array size + The '++' got incidentially added during the refactoring in + 2fe3939ce7ea84c45dd922e7f1097dd07f11fc5d. + +2015-09-30 17:29:16 +0200 Stefan Sauer + + * libs/gst/controller/gsttimedvaluecontrolsource.h: + * tests/check/libs/struct_arm.h: + * tests/check/libs/struct_hppa.h: + * tests/check/libs/struct_i386.h: + * tests/check/libs/struct_ppc32.h: + * tests/check/libs/struct_ppc64.h: + * tests/check/libs/struct_sparc.h: + * tests/check/libs/struct_x86_64.h: + controlpoint: change the padding to be of arch-independent size + The default padding I introduced in d4f81fb4e62d34a4c1dabc65b23ede7ce7694c63 is + actually only 4 pointers and on 32bit platforms already smaller than the union. + Replace it with a fixed 64byte padding. Don't add the normal padding for now. + Fixes #755822 + +2015-08-21 17:42:52 +0100 Luis de Bethencourt + + * scripts/gst-uninstalled: + gstreamer-uninstalled: add path for OpenCV haar cascade files + Some OpenCV plugins use haar cascade files that are included in the + GStreamer sources. To be able to use these from uninstalled, they need + to be found through an environment variable. + Adding this environment variable pointing to haar cascade files to + gst-uninstalled. + +2015-09-28 16:01:55 +0100 Tim-Philipp Müller + + * libs/gst/check/gstcheck.c: + check: fix 'format string is not a string literal' warning with clang + Broke this when I removed the G_GNUC_PRINTF in a previous + commit to fix indentation, since it was not really needed. + Turns out unlike gcc clang warns though if a non-literal + format string is passed then. Fix indentation differently. + http://clang.llvm.org/docs/AttributeReference.html#format-gnu-format + +2015-09-28 16:45:47 +0200 Stefan Sauer + + * tests/examples/manual/Makefile.am: + tests: fix the manual tests by setting the right env-vars + +2015-09-28 16:22:36 +0200 Stefan Sauer + + * libs/gst/controller/gstdirectcontrolbinding.h: + directcontrolbinding: fix formatting + +2015-09-28 16:21:55 +0200 Stefan Sauer + + * libs/gst/base/gstindex.h: + index: mark two structs that don't have abi padding + +2015-09-28 16:19:40 +0200 Stefan Sauer + + * libs/gst/controller/gsttimedvaluecontrolsource.h: + * tests/check/libs/struct_arm.h: + * tests/check/libs/struct_hppa.h: + * tests/check/libs/struct_i386.h: + * tests/check/libs/struct_ppc32.h: + * tests/check/libs/struct_ppc64.h: + * tests/check/libs/struct_sparc.h: + * tests/check/libs/struct_x86_64.h: + controller: add the missing abi padding + While this technically is an abi break, we decided to do this: + 1) the struct is documented to be internal + 2) the struct is alloced and freed inside the library + 3) there are no public methods that receive or return instances + 4) the only code known to use this struct are classes containd here + +2015-09-24 00:04:48 +1000 Matthew Waters + + * docs/gst/gstreamer-sections.txt: + * gst/gstbin.c: + * gst/gstelement.c: + * gst/gstelement.h: + * tests/check/gst/gstcontext.c: + * win32/common/libgstreamer.def: + bin: implement context propagation when adding elements + When adding an element to a bin we need to propagate the GstContext's + to/from the element. + This moves the GstContext list from GstBin to GstElement and adds + convenience functions to get the currently set list of GstContext's. + This does not deal with the collection of GstContext's propagated + using GST_CONTEXT_QUERY. Element subclasses are advised to call + gst_element_set_context if they need to propagate GstContext's + received from the context query. + https://bugzilla.gnome.org/show_bug.cgi?id=705579 + +2015-09-07 09:39:32 +0200 Stefan Sauer + + * libs/gst/controller/gstinterpolationcontrolsource.c: + * libs/gst/controller/gstinterpolationcontrolsource.h: + * libs/gst/controller/gsttimedvaluecontrolsource.h: + interpolationcontrolsource: add cubic_mono interpolation + This new mode won't overshoot the min/max y values set by the control-points. + Fixes #754678 + API: GST_INTERPOLATION_MODE_CUBIC_MONO + +2015-09-07 09:37:05 +0200 Stefan Sauer + + * libs/gst/controller/gstinterpolationcontrolsource.c: + interpolationcontrolsource: refactor code + Extract common code that looks up the control-points around the timestamp. Add + some comments for future investigation. + +2015-09-04 16:38:37 +0200 Stefan Sauer + + * configure.ac: + * tests/examples/controller/.gitignore: + * tests/examples/controller/Makefile.am: + * tests/examples/controller/controller-graph.c: + tests/examples: add a demo for the interpolation control source modes + This is in preparation for new modes to be added. In particullar it demonstrates + how the cubic splines overshoot the range. + +2015-09-09 11:55:28 -0300 Thiago Santos + + * plugins/elements/gstcapsfilter.c: + capsfilter: remove proxying of accept-caps downstream + The design is to only do a local check + +2015-08-25 19:37:30 -0300 Thiago Santos + + * gst/gstpad.c: + pad: don't fallback to caps queries with proxy pads + A proxy-pad should always proxy the caps related queries + and events to its down or upstream peers on the other side + of the element. Falling back to a caps query seems wrong. + https://bugzilla.gnome.org/show_bug.cgi?id=754112 + +2015-09-26 11:03:24 +0100 Tim-Philipp Müller + + * libs/gst/check/gstharness.c: + harness: minor doc fixes + +2015-09-02 17:58:38 +0300 Vivia Nikolaidou + + * docs/gst/gstreamer-sections.txt: + * gst/gstsegment.c: + * gst/gstsegment.h: + * libs/gst/base/gstbasesink.c: + * tests/check/gst/gstsegment.c: + * win32/common/libgstreamer.def: + segment: Replaced gst_segment_to_position with gst_segment_position_from_running_time + gst_segment_to_position might cause confusion, especially with the addition of + gst_segment_position_from_stream_time . Deprecated gst_segment_to_position + now, and replaced it with gst_segment_position_from_running_time. + Also added unit tests. + +2015-09-02 17:38:25 +0300 Vivia Nikolaidou + + * tests/check/gst/gstsegment.c: + segment: Added unit tests for gst_segment_position_from_stream_time + +2015-09-25 15:57:16 +0300 Vivia Nikolaidou + + * gst/gstsegment.c: + segment: gst_segment_to_stream_time: Renamed 'result' to 'stream_time' + Renamed the "result" variable to "stream_time" for better readability. + +2015-09-25 15:56:45 +0300 Vivia Nikolaidou + + * docs/gst/gstreamer-sections.txt: + * gst/gstsegment.c: + * gst/gstsegment.h: + * win32/common/libgstreamer.def: + segment: Added gst_segment_position_from_stream_time() + gst_segment_position_from_stream_time() will convert stream time into a + position in the segment so that gst_segment_to_stream_time() with that + position returns the same stream time. It will return -1 if the stream time + given is not inside the segment. + +2015-09-02 16:36:35 +0300 Vivia Nikolaidou + + * docs/design/part-synchronisation.txt: + * gst/gstsegment.h: + segment: Rewording of struct field descriptions + The new wording makes it easier to understand exactly what each field of the + GstSegment struct represents. + +2015-08-31 15:35:11 +0300 Sebastian Dröge + + * gst/gstevent.c: + event: Make sure that timestamp + diff in QoS events is never smaller than 0 + When a running-time-offset is stored in the event, it could become smaller + than 0 although the event is otherwise correct. This can happen when pad + offsets are used. + To prevent this, we set the timestamp to -diff, so that in the end the sum of + both is exactly 0. + https://bugzilla.gnome.org/show_bug.cgi?id=754356 + +2015-09-16 23:40:44 +0200 Sebastian Dröge + + * tests/check/gst/gsturi.c: + uri: Add test for correct absolute URI handling in gst_uri_from_string_with_base() + If the second parameter is an absolute URI, the base should have no effect and + the second parameter should be returned again. + https://bugzilla.gnome.org/show_bug.cgi?id=755134 + +2015-09-25 23:51:03 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.6.0 === + +2015-09-25 23:14:33 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstversion.h: + Release 1.6.0 + +2015-09-25 22:41:16 +0200 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 + +2015-09-25 10:18:07 +0900 Vineeth TM + + * libs/gst/net/gstptpclock.c: + ptpclock: Fix error leak during failures + https://bugzilla.gnome.org/show_bug.cgi?id=755607 + +2015-09-21 13:58:51 +0200 Stian Selnes + + * plugins/elements/gstfunnel.c: + * tests/check/elements/funnel.c: + funnel: Fix racy state change + Iterator may need to be resynced, for instance if pads are released + during state change. + got_eos should be protected by the object lock of the element, not of + the pad, as is the case throughout the rest of the funnel code. + https://bugzilla.gnome.org/show_bug.cgi?id=755343 + +2015-09-21 15:22:19 +0200 Stian Selnes + + * gst/gstbin.c: + * gst/gstelement.c: + bin: element: Ignore activate result for removed pads on state change + This fixes a race where a state change may return failure if it has + request pads that are deactivated and removed (and thus have no + parent) at the same time as the element changes state and (de)activates + its pads. + https://bugzilla.gnome.org/show_bug.cgi?id=755342 + +2015-09-24 10:23:14 +0200 Havard Graff + + * libs/gst/check/gstharness.c: + * tests/check/libs/gstharness.c: + harness: don't crash when adding a sink-harness without h->sinkpad + https://bugzilla.gnome.org/show_bug.cgi?id=755511 + +2015-09-23 20:31:48 +0200 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + basetransform: Print buffer PTS when submitting an input buffer + +2015-09-21 14:58:46 +0900 Eunhae Choi + + * plugins/elements/gstinputselector.c: + inputselector: Fix buffer leak in sync_streams & cache_buffers mode + After doing gst_pad_push() in case of sync_streams and cache_buffers, + if the buffer can not be kept in cache, it should be unreffed to avoid + memory leackage. + https://bugzilla.gnome.org/show_bug.cgi?id=755141 + +2015-09-19 16:57:26 +0530 Vikram Fugro + + * gst/gstcaps.c: + * gst/gstpad.h: + gst: Documentation typo fix in caps & pad APIs + gst_caps_can_intersect() & GST_PAD_IS_ACCEPT_INTERSECT() + documentation typo fix. + https://bugzilla.gnome.org/show_bug.cgi?id=755257 + +=== release 1.5.91 === + +2015-09-18 19:07:18 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstversion.h: + Release 1.5.91 + +2015-09-18 19:07:10 +0200 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 + +2015-09-18 11:49:03 +0200 Sebastian Dröge + + * po/zh_CN.po: + po: Update translations + +2015-09-15 10:56:40 +0900 Vineeth TM + + * libs/gst/check/gstcheck.c: + * plugins/elements/gstdownloadbuffer.c: + * tests/benchmarks/gstbufferstress.c: + * tests/benchmarks/gstclockstress.c: + * tests/benchmarks/gstpollstress.c: + downloadbuffer, benchmarks: fix error leaks in failure code paths + https://bugzilla.gnome.org/show_bug.cgi?id=755019 + +2015-09-15 10:52:55 +0900 Vineeth TM + + * libs/gst/check/gstcheck.c: + check: Fix indentation + https://bugzilla.gnome.org/show_bug.cgi?id=755019 + +2015-09-15 18:05:11 +0100 Tim-Philipp Müller + + * gst/gstbufferpool.c: + bufferpool: sprinkle some allow-none and out annotations for g-i + +2015-09-14 11:01:11 +0900 Vineeth TM + + * gst/gstbin.c: + bin: fix typo in log message when threadpool alloc fails + https://bugzilla.gnome.org/show_bug.cgi?id=754975 + +2015-09-11 17:58:48 +0300 Igor Rondarev + + * configure.ac: + * gst/Makefile.am: + configure: Check for socketpair() in -lsocket too + On e.g. QNX it is in an external library, not libc. + https://bugzilla.gnome.org/show_bug.cgi?id=754875 + +2015-09-09 13:10:04 +0530 Arun Raghavan + + * docs/gst/gstreamer-sections.txt: + Revert "docs: Make sure gst_debug_bin_to_dot_data() is documented" + This reverts commit 0dffeb03018d12be522c2d97aaaf8102153bd7c0. + The commit is erroneous and documents the function twice. + +2015-07-23 12:18:51 +0530 Arun Raghavan + + * docs/gst/gstreamer-sections.txt: + docs: Make sure gst_debug_bin_to_dot_data() is documented + Thanks to Nirbheek Chauhan for pointing this + out. + +2015-08-05 10:07:50 +0200 Stian Selnes + + * libs/gst/check/gstharness.c: + * tests/check/libs/gstharness.c: + harness: Fix race for gst_harness_element_ref + In order for gst_harness_new_full to be MT-safe the increase and + decrease of HARNESS_REF must be MT-safe. This allows for creating + multiple harnesses from different threads wrapping the same element. + https://bugzilla.gnome.org/show_bug.cgi?id=754661 + +2015-08-05 09:59:39 +0200 Stian Selnes + + * libs/gst/check/gstharness.c: + harness: Allow-none for custom stress init func + It should be allowed to not have a function to initialize the user data + since it's often not necessary; it may already be initialized. + https://bugzilla.gnome.org/show_bug.cgi?id=754661 + +2015-09-06 09:58:09 +0100 Tim-Philipp Müller + + * docs/plugins/gstreamer-plugins.signals: + docs: remove signal that no longer exists from docs + +2015-09-05 11:20:49 +0100 Tim-Philipp Müller + + * 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: + po: update for translated string changes + +2015-09-05 11:18:27 +0100 Tim-Philipp Müller + + * tools/gst-launch.c: + tools: gst-launch: fix --exclude command line option + This has not worked (as in: crashed) since 2005, so + perhaps it should just be removed instead. + +2015-08-31 12:07:10 +0100 Tim-Philipp Müller + + * plugins/elements/gstqueue2.c: + Revert "queue2: Process SEEKING query" + This caused problems with oggdemux when queue2 was + operating in queue mode and the souphttpsrc upstream + is not seekable because the server doesn't support + range requests. It would then still claim seekability + and then things go wrong from there. + This reverts commit 7b0b93dafe4ac547552cdb66ade5d8aa0405e7b4. + https://bugzilla.gnome.org/show_bug.cgi?id=753887 + +2015-08-29 20:14:44 +0200 Havard Graff + + * libs/gst/check/gstharness.c: + harness: misc bugfixes + 1. Get a list of pad templates from the element class, not the + factory. This allows us to interact with test-elements that does + not have a factory. + 2. Use the pad_template_caps in caps-queries when caps is not set + explicitly on the pad. Not doing so is simply wrong, and prohibits + interactions with special templates used for testing. + https://bugzilla.gnome.org/show_bug.cgi?id=754193 + +2015-08-26 09:29:05 -0300 Thiago Santos + + * tests/check/gst/gstevent.c: + tests: event: fix build failure + gst/gstevent.c:250:5: error: ‘for’ loop initial declarations are only + allowed in C99 or C11 mode + +2015-08-24 21:04:37 +0300 Vivia Nikolaidou + + * gst/gstbin.c: + * tests/check/gst/gstbin.c: + bin: Make sure we don't add/remove a bin to/from itself + Doing so would deadlock from trying to acquire the object lock twice + https://bugzilla.gnome.org/show_bug.cgi?id=754036 + +2015-08-21 14:28:48 -0700 Nicolas Dufresne + + * libs/gst/base/gstbasetransform.c: + basetransform: Reconfigure before propose_allocation + There exist cases where a reconfigure event was propagated from + downstream, but caps didn't change. In this case, we would + reconfigure only when the next buffer arrives. The problem is that + due to the allocation query being cached, the return query parameters + endup outdated. + In this patch we refactor the reconfigurating code into a function, and + along with reconfiguring when a new buffer comes in, we also reconfigure + when a query allocation arrives. + https://bugzilla.gnome.org/show_bug.cgi?id=753850 + +2015-08-07 15:39:59 -0400 Nicolas Dufresne + + * tests/check/libs/basesrc.c: + basesrc-test: Fix race testing segment update + As this test is using a short sleep (GST_USECOND, which is 10ms + in microsecond), sometimes that EOS event is received before the + loop in basesrc have run _do_seek() and pushed the update segment. + To solve this issue, we wait for the initial segment (and flush it) + then we wait for the second segment before sending EOS. + https://bugzilla.gnome.org/show_bug.cgi?id=753365 + +2015-08-19 11:46:07 +0200 Thibault Saunier + + * scripts/gst-uninstalled: + bin: Add NLE to GST_PLUGIN_PATH + +=== release 1.5.90 === + +2015-08-19 12:50:56 +0300 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/gstreamer-plugins.args: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstversion.h: + Release 1.5.90 + +2015-08-19 12:33:41 +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 + +2015-08-19 11:17:29 +0300 Sebastian Dröge + + * po/zh_CN.po: + po: Update translations + +2015-08-18 15:44:02 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbaseparse.c: + baseparse: avoid tag list spam if upstream provides bitrate tags already + Explicitly keep track again whether upstream tags or parser tags + already contain bitrate information, and only force a tag update + for a bitrate if we are actually going to add the bitrate to the + taglist later. This fixes constant re-sending of the same taglist, + because upstream provided a bitrate already and we didn't add it, + so we didn't save the 'posted' bitrate, which would then in turn + again trigger the 'bitrate has changed too much, update tags' + code path. Fixes tag spam with m4a files for example. + https://bugzilla.gnome.org/show_bug.cgi?id=679768 + +2015-08-17 22:06:11 +0200 Stefan Sauer + + * gst/gstdebugutils.c: + debugutils: bring the dot style a bit closer to what we use in the docs + Use round corners for bins and elements. Put sink pads on the left and src pads + on the right of elements. + +2015-08-15 18:30:15 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbaseparse.c: + baseparse: fix tag handling + In 0.10 there were no sticky events, and all tag events + sent would just be merged with the previously-received + tags. In 1.x we have sticky events, and the tags in the + tag event(s) should at all times carry the complete tags, + so we can't just push some tags and then just push tags + with just bitrates to update the bitrates, etc. + Instead we need to keep track of the upstream stream tags + received, of the tags set by the video decoder subclass, + and send an updated tag event with the combined tags + including our own bitrate tags (if applicable) whenever + the upstream tags, the subclass tags or any of our bitrates + change. + https://bugzilla.gnome.org/show_bug.cgi?id=679768 + +2015-08-16 10:15:56 +0100 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbaseparse.h: + * win32/common/libgstbase.def: + baseparse: add API for subclass to set tags + This is needed so that we can do proper tag handling + all around, and combine the upstream tags with the + tags set by the subclass and any extra tags the + base class may want to add. + API: gst_base_parse_merge_tags() + https://bugzilla.gnome.org/show_bug.cgi?id=679768 + +2015-08-15 16:01:28 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbaseparse.c: + baseparse: save upstream stream tags + We'll need those later. + https://bugzilla.gnome.org/show_bug.cgi?id=679768 + +2015-08-15 16:39:40 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbaseparse.c: + baseparse: minor code simplification + Use gst_pad_peer_query_duration() and remove a few + unnecessary levels of indentation. Rest of code might + looks a bit questionable, but leave it as is for now. + +2015-08-15 17:59:21 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Break sticky event array iterations if the type is bigger than the one we look for + Microoptimization we can do because the array is sorted by type. + +2015-04-29 15:49:17 +0200 Edward Hervey + + * gst/gstpad.c: + * gst/gstpad.h: + * tests/check/gst/gstpad.c: + gstpad: Add a new GST_PROBE_HANDLED return value for probes + In some cases, probes might want to handle the buffer/event/query + themselves and stop the data from travelling further downstream. + While this was somewhat possible with buffer/events and using + GST_PROBE_DROP, it was not applicable to queries, and would result + in the query failing. + With this new GST_PROBE_HANDLED value, the buffer/event/query will + be considered as successfully handled, will not be pushed further + and the appropriate return value (TRUE or GST_FLOW_OK) will be returned + This also allows probes to return a non-default GstFlowReturn when dealing + with buffer push. This can be done by setting the + GST_PAD_PROBE_INFO_FLOW_RETURN() field accordingly + https://bugzilla.gnome.org/show_bug.cgi?id=748643 + +2015-08-15 13:25:35 +0200 Mathieu Duponchelle + + * gst/gstversion.h.in: + gstversion: Add missing include in .in file. + +2015-08-11 00:35:21 +0200 Mathieu Duponchelle + + * gst/glib-compat.h: + * gst/gstallocator.h: + * gst/gstatomicqueue.h: + * gst/gstcapsfeatures.h: + * gst/gstclock.h: + * gst/gstcompat.h: + * gst/gstcontext.h: + * gst/gstdeviceprovider.h: + * gst/gstelementmetadata.h: + * gst/gstmacros.h: + * gst/gstmemory.h: + * gst/gstmeta.h: + * gst/gstpad.h: + * gst/gstpluginloader.h: + * gst/gstquark.h: + * gst/gsttrace.h: + Headers: add missing includes. + +2015-08-15 06:41:14 -0300 Thiago Santos + + * docs/gst/gstreamer-sections.txt: + docs: add the new pad accept-template flag to the docs + +2015-08-14 22:44:50 +0530 Nirbheek Chauhan + + * docs/libs/gstreamer-libs-sections.txt: + docs: section entry missing for gst_direct_control_binding_new_absolute + +2015-08-14 08:14:52 -0300 Thiago Santos + + * tests/check/gst/gstpad.c: + tests: pad: tests for accept-caps default handling + Check if all the default 4 accept-caps possibilities are working: + subset or intersect check and query-caps or template caps comparisons. + https://bugzilla.gnome.org/show_bug.cgi?id=753623 + +2015-08-14 07:51:07 -0300 Thiago Santos + + * gst/gstpad.c: + * gst/gstpad.h: + pad: add GST_PAD_FLAG_ACCEPT_TEMPLATE + It will make the default accept-caps handler use the pad template + caps instead of the query-caps result to check if the caps is + acceptable. This is aligned with what the design docs says the + accept-caps should do (be non-recursive) and should be faster. It + is *not* enabled by default, though. + API: GST_PAD_FLAG_ACCEPT_TEMPLATE + API: GST_PAD_IS_ACCEPT_TEMPLATE + API: GST_PAD_SET_ACCEPT_TEMPLATE + API: GST_PAD_UNSET_ACCEPT_TEMPLATE + https://bugzilla.gnome.org/show_bug.cgi?id=753623 + +2015-08-14 11:10:03 +0200 Edward Hervey + + * tests/check/generic/states.c: + check: Rename states unit test + Makes it easier to differentiate from other modules states unit test + +2015-08-13 13:08:03 -0300 Thiago Santos + + * libs/gst/base/gstbasetransform.c: + basetransform: rework accept-caps + According to the design docs: + The ACCEPT_CAPS query is not required to work recursively, it can simply + return TRUE if a subsequent CAPS event with those caps would return + success. + So make it a shallow check instead of recursivelly check downstream. + https://bugzilla.gnome.org/show_bug.cgi?id=748635 + +2015-08-13 12:44:29 -0300 Thiago Santos + + * libs/gst/base/gstbasetransform.c: + basetransform: remove some dead code + Doesn't seem like it is going to get back to life anytime soon + Also removes a {} block that was likely used to keep the dead + code around. + +2015-08-11 08:07:53 -0300 Thiago Santos + + * libs/gst/base/gstbasetransform.c: + basetransform: respect accept-caps intersect flag + GstPad has a flag for suggesting if the accept-caps + query should use intersect instead of the default + subset caps operation to verify if the caps would be + acceptable. + basetransform currently always uses the subset check and + this patch makes it honor the flag for using intersect + if it is set. + https://bugzilla.gnome.org/show_bug.cgi?id=748635 + +2015-08-12 13:12:38 +0900 Vineeth TM + + * libs/gst/base/gstbasetransform.c: + basetransform: remove unreachable return statement + https://bugzilla.gnome.org/show_bug.cgi?id=753538 + +2015-08-11 11:09:24 +0100 Tim-Philipp Müller + + * tests/check/libs/.gitignore: + tests: ignore new harness test binary + +2015-08-10 15:31:37 +0300 Vivia Nikolaidou + + * gst/gstdatetime.c: + * tests/check/gst/gstdatetime.c: + datetime: accept just a time as ISO 8601 string and use today's date then + If no date and only a time is given in gst_date_time_new_from_iso8601_string(), + assume that it is "today" and try to parse the time-only string. "Today" is + assumed to be in the timezone provided by the user (if any), otherwise Z - + just like the behavior of the existing code. + https://bugzilla.gnome.org/show_bug.cgi?id=753455 + +2015-07-24 00:41:57 +0200 Havard Graff + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/check/Makefile.am: + * libs/gst/check/gstharness.c: + * libs/gst/check/gstharness.h: + * tests/check/Makefile.am: + * tests/check/libs/gstharness.c: + harness: add _set_forwarding function + To be able to disable the slightly "magic" forwarding of the + necessary events between the harnesses. + Also introduce a new test-suite for GstHarness, that documents the + feature, and should hopefully expand into documenting most of the + features the harness possesses. + https://bugzilla.gnome.org/show_bug.cgi?id=752746 + +2015-08-08 17:59:51 +0200 Wim Taymans + + * gst/gstdevicemonitor.c: + devicemonitor: fix provider leak + +2015-08-08 15:28:19 +0200 Edward Hervey + + * gst/gstpad.c: + pad: Fix previous commit + We want to get the caps query *result* + +2015-07-16 18:56:00 +0200 Wim Taymans + + * gst/gstdevicemonitor.c: + * gst/gstdevicemonitor.h: + * gst/gstdeviceprovider.c: + * gst/gstdeviceprovider.h: + * win32/common/libgstreamer.def: + deviceprovider: Add method to hide devices from a provider + Add methods to add/remove the providers that should be hidden by this + provider. Also make a method to get a list of hidden providers. + This makes it possible to have multiple systems monitor the same devices + and remove duplicates. + Add a property to see all devices, even duplicate ones from hidden + providers. + +2015-08-08 14:42:52 +0200 Edward Hervey + + * gst/gstpad.c: + pad: get_allowed_caps() should go through both pads + The previous implementation was doing a direct call to the peer pad, + which resulted in query probes never being called on the original pad. + Instead of that, get the peer pad caps by using gst_pad_peer_query() + which will call probes in the expected fashion. + +2015-08-07 10:08:21 +0900 Vineeth TM + + * gst/gstvalue.c: + value: free caps during failure + While calling gst_value_deserialize_sample, if there is a failure + after caps is ref'ed, then caps is getting leaked. Hence checking for + caps in fail: goto condition and unref'ing it + https://bugzilla.gnome.org/show_bug.cgi?id=753338 + +2015-07-21 13:35:33 +0200 Thibault Saunier + + * gst/gst_private.h: + * gst/gstplugin.c: + * gst/gstregistry.c: + registry: Add plugins to the registry we are loading and not default one + When running gst_registry_scan_plugin_file we were losing the + information about the registry being loaded and ended up adding the + plugin to the default registry which was not correct. + https://bugzilla.gnome.org/show_bug.cgi?id=752662 + +2015-08-05 15:51:27 -0400 Nicolas Dufresne + + * libs/gst/base/gstbasesink.c: + basesink: Only drop buffer if their PTS is out of segment + As of now, even for stream completly inside segment, there is no + guarantied that the DTS will be inside the segment. Specifically + for H.264 with B-Frames, the first few frames often have DTS that + are before the segment. + Instead of using the sync timestamp to clip out of segment buffer, + take the duration from the start/stop provided by the sub-class, and + check if the pts and pts_end is out of segment. + https://bugzilla.gnome.org/show_bug.cgi?id=752791 + +2015-08-05 14:05:25 +0100 Luis de Bethencourt + + * libs/gst/check/gstharness.c: + harness: don't run code inside g_assert + Even though asserts can't be disabled in GstHarness, Coverity still + complains about running code inside them. Moving the code to outside the + g_asserts(). + CID #1311326, #1311327, #1311328 + +2015-07-17 10:18:02 +0200 Wim Taymans + + * gst/gstdevicemonitor.c: + * gst/gstdevicemonitor.h: + * win32/common/libgstreamer.def: + devicemonitor: get a list of currently monitored providers + Get a list of the currently monitored providers. + +2015-08-02 17:38:14 +0200 George Kiagiadakis + + * gst/gstpad.c: + pad: fix invalid unref after IDLE probe on non-OK flow return + In case there is an IDLE probe fired from gst_pad_push_data and it + doesn't return GST_FLOW_OK, the code jumps to the probe_stopped + label which tries to unref the data object. However, at this point + the data object belongs downstream and must not be touched. + By setting data = NULL, the code skips this unref. + https://bugzilla.gnome.org//show_bug.cgi?id=753151 + +2015-08-04 20:08:04 +1000 Jan Schmidt + + * gst/gstbuffer.c: + buffer: Fix the name of the parentbuffermeta debug category. + Don't use 'glbufferrefmeta' as the debug category for the + parent buffer meta. + +2015-08-04 13:45:09 +0900 Eunhae Choi + + * plugins/elements/gstqueue2.c: + queue2: not update upstream size with negative value + upstream_size can be negative but queue->upstream_size is unsigned type. + to get a chance to update queue->upstream_size in gst_queue2_get_range() + it should keep the default value. + https://bugzilla.gnome.org/show_bug.cgi?id=753011 + +2015-08-04 19:59:28 +1000 Jan Schmidt + + * gst/gstbuffer.c: + * win32/common/libgstreamer.def: + buffer: Remove extra debug symbol from exports + Don't export the debug variable for the parent_buffer_meta. + This was accidentally exported and shouldn't be public + +2015-08-04 00:11:24 +0200 Stefan Sauer + + * plugins/elements/gstfilesink.c: + filesink: use GST_INFO_OBJECT for more detail + Helps to distiguish multiple filesinks. + +2015-07-30 17:29:25 +0100 Tim-Philipp Müller + + * gst/gstinfo.h: + docs: info: remove 0.8 terminology from log level description + We don't "iterate" bins or pipelines any more. + +2015-07-30 12:17:16 +0100 Tim-Philipp Müller + + * tests/check/libs/baseparse.c: + tests: baseparse: fix buffer leak in unit test + Fixes make check-valgrind + +2015-07-28 21:14:22 -0400 Nicolas Dufresne + + * gst/gstsegment.h: + doc/seekflags: Fix cross references + This fixes miss-use of @ instead of % to refer to enumeration + values. + +2015-07-28 22:30:54 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + docs: add a few more new symbols and defines + +2015-07-28 16:57:43 -0400 Nicolas Dufresne + + * plugins/elements/gstcapsfilter.h: + doc/capsfilter: Document filtering modes + This is documentation for the HTML documentation. + +2015-07-28 16:50:55 -0400 Nicolas Dufresne + + * docs/plugins/gstreamer-plugins-sections.txt: + * plugins/elements/gstfilesink.c: + * plugins/elements/gstfilesink.h: + doc/filesink: Add BufferMode enumeration + This is purely for documentation purpose. This way the values will + show up in the HTML documentation. + +2015-07-28 15:50:40 -0400 Nicolas Dufresne + + * libs/gst/check/gstharness.c: + doc/gsthardness: Fix typo in GstAllocationParams + It's not GstAllocatorParams but GstAllocationParams. + +2015-07-28 15:46:09 -0400 Nicolas Dufresne + + * libs/gst/check/gstharness.c: + doc/gstharness: Remove unknown parameter + sink_elenment_name is not a parameter of gst_harness_add_sink_harness() + function, but still it show up in documentation. + +2015-07-28 12:19:04 +0300 Sebastian Dröge + + * plugins/elements/gstcapsfilter.c: + * plugins/elements/gstcapsfilter.h: + capsfilter: Only remember previous filter caps if they were actually used for something + If nobody ever saw the previous filter caps, nothing could've negotiated with + them and we can just pretend they never existed at all. + +2015-07-28 12:16:12 +0300 Sebastian Dröge + + * plugins/elements/gstcapsfilter.c: + capsfilter: When switching caps change modes, forget all previous caps + +2015-07-23 18:15:05 -0400 Olivier Crête + + * libs/gst/base/gstbasetransform.c: + basetransform: Return FLOW_FLUSHING if negotiation fails during shutdown + https://bugzilla.gnome.org/show_bug.cgi?id=752800 + +2015-07-22 18:55:29 -0400 Olivier Crête + + * libs/gst/check/gstharness.c: + harness: Fix indendation + +2015-07-21 13:14:59 -0400 Nicolas Dufresne + + * libs/gst/base/gstbasetransform.c: + basetransform: Avoid increasing query reference + gst_query_find_allocation_meta() requires the query to be + writable to work. This patch ensure avoids taking a reference + on the query, so we can now check if a certain allocation meta + is present. + https://bugzilla.gnome.org/show_bug.cgi?id=752661 + +2015-07-22 15:38:06 +0100 Tim-Philipp Müller + + * gst/gstbuffer.c: + docs: fix description of gst_buffer_extract_dup() + No GBytes involved. + +2015-07-21 00:17:28 -0300 Thiago Santos + + * plugins/elements/gstconcat.c: + concat: dot not reset pad states too early + Resetting the flushing state of the pads at the end of the + PAUSED_TO_READY transition will make pads handle serialized + queries again which will wait for non-active pads and might + cause deadlocks when stopping the pipeline. + Move the reset to the READY_TO_PAUSED instead. + https://bugzilla.gnome.org/show_bug.cgi?id=752623 + +2015-07-20 16:18:06 +0200 Havard Graff + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/check/Makefile.am: + * libs/gst/check/gstharness.c: + * libs/gst/check/gstharness.h: + harness: add functions for adding sub-harnesses directly + By introducing gst_harness_add_src_harness and gst_harness_add_sink_harness + we collect all sub-harness setup in one function, making the previous + sub-harness creation functions now calls these directly, and making it + much easier (and less error-prone) to add your own src or sink-harness + using the more generic harness-creation functions. + +2015-07-17 17:44:52 -0400 Nicolas Dufresne + + * libs/gst/base/gstbaseparse.c: + baseparse: Don't override gst_segment_do_seek() + This line has no purpose, clearly gst_segment_do_seek() is doing + the right job, also, having the start time (a timestamp) be that + same as time (the stream time) is quite odd. + https://bugzilla.gnome.org/show_bug.cgi?id=750783 + +2015-07-17 17:43:26 -0400 Nicolas Dufresne + + * libs/gst/base/gstbaseparse.c: + baseparse: Fix extrapolation of seeksegment.stop + The stop shall be relative to start if extrapolated from the + duration. + https://bugzilla.gnome.org/show_bug.cgi?id=750783 + +2015-07-16 18:47:20 +0200 Wim Taymans + + * gst/gstdevicemonitor.c: + devicemonitor: do start and stop outside of the lock + Release the monitor lock when calling the provider start/stop methods. + Because we release the lock now, We need to make sure we check the + cookie again and keep track of started and removed providers. + +2015-07-16 18:43:06 +0200 Wim Taymans + + * gst/gstdeviceprovider.c: + * gst/gstdeviceprovider.h: + deviceprovider: small cleanups + Protect against wrong arguments. + Clean up the header file indentation. + +2015-07-16 17:25:24 +0200 Wim Taymans + + * gst/gstdevicemonitor.c: + devicemonitor: keep order of providers and devices + The deviceproviders are added to the array sorted by their rank. Make + sure we keep this ordering when removing a provider. + We use _prepend to collect the devices, use g_list_reverse to get the + devices in the right order; sorted by rank and in the same order as + returned by the provider. + +2015-07-16 17:50:49 +0100 Tim-Philipp Müller + + * libs/gst/check/gstharness.c: + harness: fix indentation + +2015-07-16 17:50:06 +0100 Tim-Philipp Müller + + * libs/gst/check/gstharness.c: + harness: fix pad template leak + +2015-07-16 17:13:35 +0100 Tim-Philipp Müller + + * gst/gstplugin.c: + docs: drop reference to sourceforge mailing list adress + +2015-07-16 17:53:40 +0200 Havard Graff + + * libs/gst/check/gstharness.c: + harness: don't re-establish the harness sink and src pads + Given that the element has the possibility to have one, they should + already be there. + https://bugzilla.gnome.org/show_bug.cgi?id=752498 + +2015-07-13 11:03:13 +0200 Stian Selnes + + * libs/gst/check/gstharness.c: + * libs/gst/check/gstharness.h: + harness: Improve detection of element type + The element flag does not indicate wether a bin should be tested as a + source or as a sink, eg. a bin with the sink flag may still have a + source pad and a bin with the source flag may have a sink pad. In this + case it is better to determine the element type by looking at the + available pads and pad templates. + Also rename srcpad and sinkpad where it actually represents + element_srcpad_name and element_sinkpad_name. + https://bugzilla.gnome.org/show_bug.cgi?id=752493 + +2015-07-13 11:10:49 +0200 Stian Selnes + + * libs/gst/check/gstharness.c: + harness: Forward sticky events to sink harness + Fixes issue where if a sink harness was added late the sticky events + would not be forwared. + https://bugzilla.gnome.org/show_bug.cgi?id=752494 + +2015-07-16 12:36:14 +0100 Tim-Philipp Müller + + * libs/gst/check/gstharness.h: + harness: make header nicer to read + +2015-07-16 10:36:36 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + docs: add new function to API docs + +2015-07-15 18:21:13 +0200 Wim Taymans + + * gst/gstdevice.c: + * gst/gstdevice.h: + * win32/common/libgstreamer.def: + device: add generic struct with properties + Add a generic structure to hold any additional properties about the + device. + +2015-07-14 12:44:12 +0100 Tim-Philipp Müller + + * plugins/elements/gsttee.c: + tee: fix typo in allow-not-linked property description + +2015-07-13 14:24:34 +0100 Tim-Philipp Müller + + * gst/gstbus.c: + docs: bus: mention main loop requirement in gst_bus_add_watch() docs + +2015-03-18 16:05:34 +0530 Prashant Gotarne + + * gst/gsttask.c: + task: add function guard for _set_lock() and fix guard for _join() + Should only access the object structure after checking + it's valid in gst_task_join(). + https://bugzilla.gnome.org/show_bug.cgi?id=746385 + https://bugzilla.gnome.org/show_bug.cgi?id=746431 + +2015-05-19 18:58:11 +0200 Philippe Normand + + * gst/gstprotection.c: + protection: implement meta transform function + Copy the GstMeta contents over to the new buffer. + https://bugzilla.gnome.org/show_bug.cgi?id=749590 + +2015-07-10 09:12:15 +0900 Vineeth TM + + * libs/gst/base/gstbaseparse.c: + baseparse: estimate duration on EOS + For files which are smaller than 1.5 seconds, the duration + estimation does not happen. So the duration will always be + displayed as 0. Updating the duration on EOS when the estimation + has not happened already + https://bugzilla.gnome.org/show_bug.cgi?id=750131 + +2015-07-10 11:01:21 +0900 Hyunjun Ko + + * libs/gst/base/gstadapter.c: + adapter: change log message properly + https://bugzilla.gnome.org/show_bug.cgi?id=752116 + +2015-07-09 00:12:51 +0900 Justin Joy + + * plugins/elements/gststreamiddemux.c: + * plugins/elements/gststreamiddemux.h: + docs: add StreamidDemux to documentation + https://bugzilla.gnome.org/show_bug.cgi?id=749873 + +2015-07-09 00:21:42 +0900 Hyunjun Ko + + * libs/gst/base/gstadapter.c: + adapter: fix to get valid (buffer_)list + get_list/get_buffer_list should be done with buffers in adapter remaining + while take_list/take_buffer_list flushes each buffer one by one. + https://bugzilla.gnome.org/show_bug.cgi?id=752116 + +2015-07-08 20:06:27 +0900 Hyunjun Ko + + * tests/check/libs/adapter.c: + adapter: unit test for new get_(buffer_)list + +2015-07-08 12:00:56 +0200 Arnaud Vrac + + * libs/gst/base/gstbaseparse.c: + baseparse: put buffer in a correct state after gst_adapter_get_buffer call + We must make the buffer writable to write its PTS and DTS, and also + reset its duration. + The behaviour is now the same as before commit c3bcbadd, except metas + might still be attached to the buffer extracted from the adapter. + https://bugzilla.gnome.org/show_bug.cgi?id=752092 + +2015-07-07 15:02:45 +0100 Tim-Philipp Müller + + * libs/gst/check/gstharness.c: + harness: fix indentation and replace stress test function macros + These screw with indentation and seem a bit trivial. Just copy'n'paste. + +2015-07-07 10:46:48 +0900 Hyunjun Ko + + * gst/gstbuffer.c: + * libs/gst/net/gstnetaddressmeta.c: + * libs/gst/net/gstnetcontrolmessagemeta.c: + * tests/check/gst/gstmeta.c: + meta: transform_func: return FALSE if not supported or failed + https://bugzilla.gnome.org/show_bug.cgi?id=751778 + +2015-07-07 11:53:07 +0200 Havard Graff + + * plugins/elements/gstidentity.c: + * tests/check/elements/identity.c: + identity: refactor and add tests using GstHarness + Writing a test for unscheduling the gst_clock_id_wait inside the + identity element, found an invalid read, caused by removing the clock-id + when calling _unschedule instead of letting the code calling _wait remove + the clock-id after being unscheduled. + https://bugzilla.gnome.org/show_bug.cgi?id=752055 + +2014-04-12 19:48:15 +0100 Tim-Philipp Müller + + * libs/gst/check/Makefile.am: + * libs/gst/check/gstharness.c: + harness: make sure g_assert() statements are always active + We have code with side effects inside g_assert()s, so make + sure those are always enabled here (they might otherwise + get disabled for release builds). + +2015-07-07 00:56:41 +0100 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/check/gstharness.c: + * libs/gst/check/gstharness.h: + harness: rename GstHarnessPrepareBuffer -> GstHarnessPrepareBufferFunc + https://bugzilla.gnome.org/show_bug.cgi?id=751916 + +2015-07-07 00:53:48 +0100 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-docs.sgml: + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/check/check.h: + * libs/gst/check/gstharness.c: + * libs/gst/check/gstharness.h: + docs: add GstHarness to documentation + https://bugzilla.gnome.org/show_bug.cgi?id=751916 + +2013-12-16 10:47:47 +0100 Havard Graff + + * libs/gst/check/Makefile.am: + * libs/gst/check/gstharness.c: + * libs/gst/check/gstharness.h: + check: Add GstHarness convenience API for unit tests + http://gstconf.ubicast.tv/videos/gstharness-again-a-follow-up/ + https://bugzilla.gnome.org/show_bug.cgi?id=751916 + +2015-07-06 09:26:58 +0900 Vineeth TM + + * libs/gst/base/gstbaseparse.c: + baseparse: reverse playback in pull mode + right now reverse playback is disabled in pull mode. + enabling the code for the same and changing a bit of logic + to make reverse playback work. + https://bugzilla.gnome.org/show_bug.cgi?id=750783 + +2015-06-20 08:33:26 +0900 Vineeth T M + + * tests/check/libs/baseparse.c: + baseparse: add reverse playback test in pull mode + add test for reverse playback in pull mode and compare + the buffers being received in sink chain to make sure + the playback is allright + https://bugzilla.gnome.org/show_bug.cgi?id=750783 + +2015-07-06 14:31:24 +0530 Arun Raghavan + + * scripts/git-update.sh: + Revert "scripts: Allow passing make flags to git-update.sh" + This reverts commit ab5fdd72129ea61e8dff51cdc0afcccac03ebc2b. + We can use the MAKEFLAGS environment variable to pass options to make, + so avoid adding another mechanism that could be confusing. + +2015-07-06 11:16:27 +0530 Arun Raghavan + + * gst/gstpad.h: + pad: Clarify pad probe return type documentation + +2015-07-02 14:32:21 +0800 Song Bing + + * libs/gst/base/gstbasesink.c: + basesink: Shouldn't drop buffer when sync=false + Shouldn't drop buffer when sync=false + https://bugzilla.gnome.org/show_bug.cgi?id=751819 + +2015-07-06 11:25:50 +0530 Arun Raghavan + + * scripts/git-update.sh: + scripts: Allow passing make flags to git-update.sh + Mostly adding this for add a -jN as appropriate while building. + +2015-05-30 14:27:05 +0100 Tim-Philipp Müller + + * plugins/elements/gstqueue.c: + queue: avoid slice allocs/frees for each item + Microoptimisation: Let GstQueueArray store our + item struct. That way we don't have to alloc/free + temporary QueueItem slices for every item we want + to put into the queue. + https://bugzilla.gnome.org/show_bug.cgi?id=750149 + +2015-05-30 13:07:50 +0100 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstqueuearray.c: + * libs/gst/base/gstqueuearray.h: + * win32/common/libgstbase.def: + queuearray: allow storing of structs in addition to pointers + This way we don't have to allocate/free temporary structs + for storing things in the queue array. + API: gst_queue_array_new_for_struct() + API: gst_queue_array_push_tail_struct() + API: gst_queue_array_peek_head_struct() + API: gst_queue_array_pop_head_struct() + API: gst_queue_array_drop_struct() + https://bugzilla.gnome.org/show_bug.cgi?id=750149 + +2015-07-03 21:57:55 +0200 Stefan Sauer + + * common: + Automatic update of common submodule + From f74b2df to 9aed1d7 + +2015-06-19 00:05:44 -0400 Olivier Crête + + * gst/gstpad.c: + * tests/check/gst/gstbin.c: + pad: Enforce NEED_PARENT flag also for chain + The check for the presence of the parent in the presence of + the NEED_PARENT flag was missing for the chain function. Also keep + a ref on the parent in case the pad is removed mid-chain. + +2015-07-03 15:55:08 +0200 Stefan Sauer + + * docs/plugins/gstreamer-plugins-docs.sgml: + * docs/plugins/gstreamer-plugins-sections.txt: + * docs/plugins/gstreamer-plugins.args: + * docs/plugins/inspect/plugin-coreelements.xml: + docs: update for two missing elements + Concat was not linked and streamiddemux was missing. + +2015-07-03 12:37:54 +0200 Stefan Sauer + + * docs/plugins/gstreamer-plugins-sections.txt: + * plugins/elements/gstcapsfilter.c: + * plugins/elements/gstcapsfilter.h: + * plugins/elements/gstfakesrc.c: + docs: another sweep canonicalizing the plugin docs sections file + Use underscores for capsfilter macros. Correct the type-name for fakesrc + if we ever implement the enum. + +2015-07-03 11:45:19 +0200 Stefan Sauer + + * docs/plugins/gstreamer-plugins-sections.txt: + * plugins/elements/gsttypefindelement.h: + docs: order and canonicalize the -sections.txt file + Have all sections in alphabetical order. Also make the macro order consistent. + This is a preparation for generating the file. Remove GET_CLASS macro for + typefine element, since it is not used and the header is not installed. + +2013-12-16 11:24:17 +0100 Stian Selnes + + * gst/gstmemory.h: + memory: Add missing field initializers to GstMapInfo + https://bugzilla.gnome.org/show_bug.cgi?id=751881 + +2015-07-02 15:10:43 +0100 Luis de Bethencourt + + * plugins/elements/gstinputselector.c: + inputselector: remove always-true check + event can't be NULL, it has been dereferenced by GST_EVENT_TYPE (), and no + case frees the pointer. Remove unnecessary check which will always be True. + CID #1308955 + +2015-07-01 10:50:19 +0200 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + transform: Also copy POOL metas and make sure to copy over metas when creating subbuffers + POOL meta just means that this specific instance of the meta is related to a + pool, a copy should be made when reasonable and the flag should just not be + set in the copy. + +2015-07-01 10:45:01 +0200 Sebastian Dröge + + * libs/gst/base/gstadapter.c: + adapter: Also copy POOL metas and make sure to copy over metas when creating subbuffers + POOL meta just means that this specific instance of the meta is related to a + pool, a copy should be made when reasonable and the flag should just not be + set in the copy. + +2015-07-01 10:36:36 +0200 Sebastian Dröge + + * gst/gstbuffer.c: + buffer: Don't copy "memory" metas unconditionally + Don't copy memory metas if we only copied part of the buffer, didn't + copy memories or merged memories. In all these cases the memory + structure has changed and the memory meta becomes meaningless. + https://bugzilla.gnome.org/show_bug.cgi?id=751712 + +2015-07-01 10:25:15 +0200 Sebastian Dröge + + * gst/gstbuffer.c: + Revert "buffer: Don't copy POOLED and memory metadata unconditionally" + This reverts commit 7a08fa5ec4804f104e9aa9f458322f6eb49a7e49. + +2015-06-30 13:38:10 +0200 Sebastian Dröge + + * gst/gstbuffer.c: + buffer: Don't copy POOLED and memory metadata unconditionally + https://bugzilla.gnome.org/show_bug.cgi?id=751712 + +2015-06-30 11:18:24 +0200 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Use new gst_adapter_get_buffer() API instead of gst_adapter_map() + This preserves GstMeta properly unless the subclass does special things. It's + enough to make h264parse's stream-format/alignment conversion pass through + metas as needed. + https://bugzilla.gnome.org/show_bug.cgi?id=742385 + +2015-06-30 11:11:25 +0200 Sebastian Dröge + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstadapter.h: + * win32/common/libgstbase.def: + adapter: Add get variants of the buffer based take functions + Main difference to gst_adapter_map() for all practical purposes is that + GstMeta of the buffers will be preserved. + https://bugzilla.gnome.org/show_bug.cgi?id=742385 + +2015-06-29 17:03:10 +0200 Sebastian Dröge + + * libs/gst/base/gstadapter.c: + adapter: Copy over GstMeta from the input buffers to the output + All functions that return a GstBuffer or a list of them will now copy + all GstMeta from the input buffers except for meta with GST_META_FLAG_POOLED + flag or "memory" tag. + This is similar to the existing behaviour that the caller can't assume + anything about the buffer flags, timestamps or other metadata. And it's + also the same that gst_adapter_take_buffer_fast() did before, and what + gst_adapter_take_buffer() did if part of the first buffer or the complete + first buffer was requested. + https://bugzilla.gnome.org/show_bug.cgi?id=742385 + +2015-06-29 20:27:12 -0400 Olivier Crête + + * libs/gst/net/gstptpclock.c: + ptp: Init function can take a NULL interfaces array + +2015-06-29 13:57:11 +0900 Vineeth TM + + * tests/check/gst/gstcaps.c: + tests: caps: fix test_intersect_flagset failure + test_intersect_flagset fails because when caps is being + created, flags and mask are being cast to uint64 while + they should be uint. This results in invalid memory access + or a segfault. + https://bugzilla.gnome.org/show_bug.cgi?id=751628 + +2015-06-29 14:22:46 +0200 Thibault Saunier + + * scripts/gst-uninstalled: + scripts: Fix GST_VALIDATE_PLUGIN_PATH + It moved recently + +2015-06-29 13:58:04 +0200 Sebastian Dröge + + * libs/gst/base/gstbasetransform.h: + basetransform: Fix up documentation of transform_meta vfunc + By default we copy all metas that have no tags. + +2015-06-29 10:41:27 +0100 Tim-Philipp Müller + + * libs/gst/controller/gstdirectcontrolbinding.c: + * libs/gst/controller/gstdirectcontrolbinding.h: + directcontrolbinding: fix ABI break + Structure size was increased without adjustment of the padding. + https://bugzilla.gnome.org/show_bug.cgi?id=751622 + https://bugzilla.gnome.org/show_bug.cgi?id=740502 + +2015-03-19 15:55:14 +0530 Prashant Gotarne + + * gst/gsttask.c: + task: guard against NULL task function + https://bugzilla.gnome.org/show_bug.cgi?id=746439 + +2015-05-14 11:48:45 +0200 Miguel París Díaz + + * plugins/elements/gstfunnel.c: + * plugins/elements/gstfunnel.h: + funnel: add "forward-sticky-events" property + It is useful to avoid sending sticky event on stream changes. + https://bugzilla.gnome.org/show_bug.cgi?id=749315 + +2015-06-25 00:04:07 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.5.2 === + +2015-06-24 22:49:17 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/gstreamer-plugins.args: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstversion.h: + Release 1.5.2 + +2015-06-24 22:45:00 +0200 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 + +2015-06-22 23:37:27 -0300 Thiago Santos + + * tests/check/gst/gstutils.c: + tests: gstutils: fix wrong description of test element + It is a fakesink with request pads, not a source + +2015-06-24 15:35:16 +0200 Jonas Holmberg + + * gst/gstbufferpool.c: + bufferpool: Fixed compiler warning + The pool variable was unused when buidling with debug disabled. + +2015-06-24 11:13:40 +0200 Sebastian Dröge + + * po/cs.po: + * po/de.po: + * po/hu.po: + * po/nl.po: + * po/pl.po: + * po/ru.po: + * po/uk.po: + * po/vi.po: + po: Update translations + +2015-06-24 11:12:03 +0200 Sebastian Dröge + + * win32/common/libgstreamer.def: + win32: Update .def file for new API + +2015-06-24 14:19:04 +0900 Hyunjun Ko + + * libs/gst/base/gstbasesink.c: + basesink: need to deep-copy last buffer list in drain + https://bugzilla.gnome.org/show_bug.cgi?id=751420 + +2015-06-24 10:52:02 +0200 Sebastian Dröge + + * gst/gstbufferlist.c: + bufferlist: Warn if copying a buffer fails in gst_buffer_list_copy_deep() + +2015-06-24 14:18:47 +0900 Hyunjun Ko + + * docs/gst/gstreamer-sections.txt: + * gst/gstbufferlist.c: + * gst/gstbufferlist.h: + * tests/check/gst/gstbufferlist.c: + * win32/common/libgstreamer.def: + bufferlist: add new api gst_buffer_list_copy_deep + https://bugzilla.gnome.org/show_bug.cgi?id=751420 + +2015-06-23 16:58:56 +0200 Jonas Holmberg + + * libs/gst/check/gstcheck.c: + * tests/check/gst/gstobject.c: + gstcheck: Print newline in message handler + The message handler is supposed to print a newline after the message + just like the default message handler. + +2015-06-12 16:54:32 +0800 Song Bing + + * plugins/elements/gstinputselector.c: + inputselector: Handle different duration track selection + Support track switch from EOS track to non-EOS one. + https://bugzilla.gnome.org/show_bug.cgi?id=750761 + +2015-06-12 16:52:46 +0800 Song Bing + + * gst/gstpad.c: + pad: Clear EOS flag after received STREAM_START event + Clear EOS flag after received STREAM_START event + https://bugzilla.gnome.org/show_bug.cgi?id=750761 + +2015-06-22 14:30:49 -0300 Thiago Santos + + * tests/check/gst/gstutils.c: + tests: gstutils: add tests for gst_element_get_compatible_pad + Adds tests for gst_element_get_compatible_pad for when it has to + request pads. + Note that these tests don't cover the case when it has to request + a pad that already exists. + https://bugzilla.gnome.org/show_bug.cgi?id=751235 + +2015-06-19 15:46:56 -0300 Thiago Santos + + * gst/gstutils.c: + utils: use caps when getting a compatible pad by template + Do not ignore the caps argument when requesting a pad by template. + This is particularly harmful when the pad caps query by default + returns ANY so it will match the first template instead of the + one that actually intersects with the caps. + https://bugzilla.gnome.org/show_bug.cgi?id=751235 + +2015-06-23 00:14:30 +1000 Jan Schmidt + + * gst/gstsample.h: + gstsample.h: Include gstbufferlist.h now that it uses GstBufferList + +2015-06-17 16:12:13 +0200 Mathieu Duponchelle + + * plugins/elements/gstconcat.c: + concat: when releasing pad, send EOS appropriately. + Previously, concat sent an EOS if there was a next pad. + https://bugzilla.gnome.org/show_bug.cgi?id=751107 + +2015-06-16 16:14:18 +0200 Carlos Rafael Giani + + * plugins/elements/gstconcat.c: + * plugins/elements/gstconcat.h: + concat: Add adjust-base property + This disables the segment.base adjustments, which is useful if downstream + takes care of base adjustments already (example: a combination of concat + and streamsynchronizer) + https://bugzilla.gnome.org/show_bug.cgi?id=751047 + +2015-06-22 14:04:45 +0200 Sebastian Dröge + + * libs/gst/base/gstbasesink.c: + basesink: Unset the last buffer list if we only got a buffer + Also remember any preroll buffer list. + +2015-06-22 13:33:29 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * win32/common/libgstreamer.def: + sample: Add new API to the docs + +2015-06-22 20:02:55 +0900 Hyunjun + + * libs/gst/base/gstbasesink.c: + basesink: enable to get last sample including buffer list if needed + In case of a buffer list rendering, last-sample is not updated. + It needs to be updated and enable to get buffer list from last-sample. + https://bugzilla.gnome.org/show_bug.cgi?id=751026 + +2015-06-22 19:35:40 +0900 Hyunjun + + * gst/gstsample.c: + * gst/gstsample.h: + sample: add gst_sample_set/get_buffer_list apis + Allowed to set/get buffer list to sample if needed + https://bugzilla.gnome.org/show_bug.cgi?id=751026 + +2015-06-19 10:52:10 +0100 Tim-Philipp Müller + + * test.py: + test.py: remove accidentally committed file + +2015-06-18 11:51:48 -0400 Nicolas Dufresne + + * gst/gstbuffer.c: + * gst/gstelementfactory.h: + * gst/gstsegment.h: + * gst/gstsystemclock.h: + * libs/gst/base/gstbasetransform.h: + doc: Unify Since mark for attribute and enum + As this show up as prose in the doc, simply make it consistent + and "arguable" nicer to read. + +2015-06-18 11:48:50 -0400 Nicolas Dufresne + + * gst/gstbuffer.h: + doc: Remove parenthesis around Since: + This confuse the parser, hence it does not endup in the doc and the + index properly. + +2015-05-06 16:44:48 +1000 Jan Schmidt + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * win32/common/libgstreamer.def: + Add GstParentBufferMeta + A core meta which helps implement the old concept + of sub-buffering in some situations, by making it + possible for a buffer to keep a ref on a different + parent buffer. The parent buffer is unreffed when + the Meta is freed. + This meta is used to ensure that a buffer whose + memory is being shared to a child buffer isn't freed + and returned to a buffer pool until the memory + is. + https://bugzilla.gnome.org/show_bug.cgi?id=750039 + +2015-06-16 18:08:24 -0400 Nicolas Dufresne + + * gst/Makefile.am: + * libs/gst/base/Makefile.am: + * libs/gst/check/Makefile.am: + * libs/gst/controller/Makefile.am: + * libs/gst/net/Makefile.am: + * test.py: + gi: Use INTROSPECTION_INIT for --add-init-section + This new define was added to common. The new init section fixed + compilation warning found in the init line that was spread across + all files. + +2015-06-16 17:46:44 -0400 Nicolas Dufresne + + * common: + Automatic update of common submodule + From 6015d26 to f74b2df + +2015-06-15 10:06:00 -0400 Nicolas Dufresne + + * gst/gstclock.h: + clock: Fix _STIME_FORMAT macros + This macro didn't work well as it relied on the sign on the last + divided number (number of days). This value is most of the time + zero, and zero is considered positive in printf. Instead, deal with + the sign manually, and resuse the original macros for the rest. This + actually simplify the macro a lot. + +2015-06-14 20:48:29 +0100 Tim-Philipp Müller + + * plugins/elements/gsttypefindelement.c: + typefindelement: reset segment only once streaming has stopped + Fixes the occasional criticals in the discoverer unit test. + https://bugzilla.gnome.org/show_bug.cgi?id=745073 + https://bugzilla.gnome.org/show_bug.cgi?id=750823 + +2015-06-14 11:23:22 -0400 Nicolas Dufresne + + * docs/libs/gstreamer-libs-sections.txt: + doc: Add more missing symbols in lib-sections.txt + These where causing broken links. + +2015-06-14 11:22:54 -0400 Nicolas Dufresne + + * libs/gst/net/gstnetaddressmeta.c: + doc: Fix reference to unknown type GstNetAddress + +2015-06-14 11:22:36 -0400 Nicolas Dufresne + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/controller/gsttimedvaluecontrolsource.h: + doc: Include and fix GstControlPoint + +2015-06-14 11:21:26 -0400 Nicolas Dufresne + + * docs/libs/gstreamer-libs-docs.sgml: + doc: Add GstNetControlMessageMeta to the doc + This is being referenced elsewhere, but results in broken links. + It seems to be public API, so I think it should be in the doc. + +2015-06-14 10:59:51 -0400 Nicolas Dufresne + + * libs/gst/base/gstpushsrc.h: + doc: Document GstPushSrcClass + +2015-06-14 10:58:18 -0400 Nicolas Dufresne + + * libs/gst/base/gstcollectpads.h: + doc: Better document new GstCollectData.ABI.abi.dts + The doc generator get confused with the inline structure. So + workaround by wrapping the inner of the structure with + public/private mark, and document that GST_COLLECT_PADS_DTS macro + shall be used to access this. + +2015-06-14 10:56:28 -0400 Nicolas Dufresne + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstbaseparse.h: + * libs/gst/net/gstnetcontrolmessagemeta.h: + * libs/gst/net/gstptpclock.h: + doc: Various doc fixes for libgstreamer-base + * Fix function name in sections.txt + * Add few missing or fix miss-named + * Workaround gtk-doc being confused with non typedef + types (loose track of public/private + +2015-06-14 10:25:52 -0400 Nicolas Dufresne + + * gst/gstdevicemonitor.c: + * gst/gsturi.c: + * gst/gsturi.h: + * gst/gstvalue.c: + doc: More doc warning fixes + So from this point, the remaining warning for libgstreamer are about + protected member not showing in the doc. This may need some discussion + with upstream gtk-doc people. + * Remove % in from of none macro + * Fixed GST_TYPE_FAGS -> GST_TYPE_FAG_SET + * Minor wording fix + * Can't link to GstUri.port, so split the .port part + +2015-06-14 09:17:21 -0400 Nicolas Dufresne + + * gst/gsturi.c: + doc: In GstUri we meant nul-terminated, not %NULL + %NULL refers to the pointer. I've written it this way in one + word as this is what GLib uses. + +2015-06-13 21:02:20 -0400 Nicolas Dufresne + + * gst/gstplugin.h: + doc: Cannot reference GST_PACKAGE_RELEASE_DATETIME + So simply remove the % sign. + +2015-06-13 20:52:01 -0400 Nicolas Dufresne + + * gst/gstclock.c: + doc: Fix typo in ref _clock_wait_for_sync() + +2015-06-13 20:37:34 -0400 Nicolas Dufresne + + * gst/gsturi.c: + doc: Fix GstUri doc typos + * Use &perctn; instead of reserved character % + * NULL take two L + +2015-06-13 20:19:59 -0400 Nicolas Dufresne + + * gst/gstallocator.h: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstbufferpool.h: + * gst/gstclock.h: + * gst/gsterror.h: + * gst/gstmemory.h: + * gst/gstmessage.h: + * gst/gstprotection.h: + * libs/gst/base/gstcollectpads.h: + * libs/gst/controller/gsttimedvaluecontrolsource.c: + doc: Fix Since: marks + There was few Since: mark missing their column. Also unify the way + we set the Since mark on enum value and structure members. These + sadly don't show up in the index. + +2015-06-13 20:01:27 -0400 Nicolas Dufresne + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.c: + doc: Add gst_buffer_copy_deep() + +2015-06-13 19:47:45 -0400 Nicolas Dufresne + + * libs/gst/check/gstconsistencychecker.c: + gi: Skip gst_consitency_checker_new + This non boxed type cannot be allocated safely. + +2015-06-13 19:46:21 -0400 Nicolas Dufresne + + * docs/gst/gstreamer-docs.sgml: + * docs/libs/gstreamer-libs-docs.sgml: + doc: Add indexes of added APIs + One of the nice feature in GTK doc is that it generate indexes + of added APIs base on the since marker. Include that in our doc + while fixing the issue of duplicate ID (produce xml contains that + id it seems) + +2015-06-13 15:10:53 -0400 Nicolas Dufresne + + * libs/gst/controller/gsttimedvaluecontrolsource.c: + doc: Make ..._source_find_control_point_iter transfer none + +2015-06-13 14:40:43 -0400 Nicolas Dufresne + + * libs/gst/net/gstntppacket.c: + doc: Silence warning about unused gstntppacket section + This API is internal. + +2015-06-13 14:37:42 -0400 Nicolas Dufresne + + * docs/libs/gstreamer-libs-docs.sgml: + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/net/gstntppacket.c: + Revert "doc: Add GstNtpPacket to the doc" + This reverts commit c4eb876961aba1092c4831a8feaf48d7be1e38ae. + Oops, this is not a public API + +2015-06-13 14:21:41 -0400 Nicolas Dufresne + + * docs/libs/gstreamer-libs-docs.sgml: + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/net/gstntppacket.c: + doc: Add GstNtpPacket to the doc + +2015-06-13 13:55:27 -0400 Nicolas Dufresne + + * libs/gst/base/gstindex.c: + doc: Remove gstindex from doc comment + Moving that to normal comment to silence the generator. GstIndex + is not in GStreamer library at the moment (removed from 0.10). + +2015-06-13 13:48:03 -0400 Nicolas Dufresne + + * libs/gst/base/gstcollectpads.c: + gi: Set collectpads function param scope + +2015-06-13 13:42:58 -0400 Nicolas Dufresne + + * libs/gst/base/gstbitreader.c: + * libs/gst/base/gstbytereader.c: + * libs/gst/base/gstbytewriter.c: + gi: Skip allocator of non-boxed structure + These are not usable as they are, and can easily lead to crash + or leaks. This also silence warning from the scanner. If we manage to + make this usable, we can then remove that mark, it will require + to make this type boxed. + +2015-06-13 13:24:13 -0400 Nicolas Dufresne + + * docs/gst/gstreamer-sections.txt: + doc: Give gstconfig a nice name + As all other section do have a nice came case name, it seems + more consistent. + +2015-06-13 13:19:21 -0400 Nicolas Dufresne + + * docs/gst/gstreamer-sections.txt: + doc: Add missing gst_event_new/parse_protection + +2015-06-13 13:19:05 -0400 Nicolas Dufresne + + * docs/gst/gstreamer-sections.txt: + doc: Give gstprotection section a nice title + +2015-06-13 13:14:30 -0400 Nicolas Dufresne + + * gst/gstevent.c: + doc: Remove uneeded protectionevent section + These functions are part of gstevent section already. Keep the doc, + since it's good. + +2015-06-13 12:32:49 -0400 Nicolas Dufresne + + * gst/gsttaglist.c: + taglist: Add missing scope to func param + This tell GI if this function is for actions (call) or is the + answer of this method being asynchronous (async). In this case + it's a call. This also silence warning from the GI scanner. + +2015-06-13 12:27:31 -0400 Nicolas Dufresne + + * gst/gstprotection.h: + gstprotection: Add missing Since 1.6 mark + +2015-06-13 12:26:13 -0400 Nicolas Dufresne + + * gst/gstprotection.c: + gstprection: _add_protection_meta() is transfer none + Just like gst_buffer_add_meta() this function should also be + transfer none. This also silence a gi warning about returning + a copy of a non boxed bare structure. + +2015-06-13 12:25:19 -0400 Nicolas Dufresne + + * gst/gstprotection.c: + * gst/gstprotection.h: + * tests/check/gst/gstprotection.c: + gstprotection: Add missing namespace to macro + GST_PROTECTION_SYSTEM_ID_CAPS_FIELD was missing the GST_ namespace. + Add it before its too late. + +2015-06-13 11:55:10 -0400 Nicolas Dufresne + + * gst/gstversion.h.in: + doc: Keep SECTION: after the ifdef + Otherwise GTK doc will see it as often as we include that files + and warn about duplicated SECTION: + +2015-06-13 10:23:52 -0400 Nicolas Dufresne + + * gst/gstminiobject.c: + gi: Skip mini object method that play with refcounting + It make no sense to allow using that. Any use would lead to leak + of crash. Note that GMiniObject is entirely unusable as you cannot + cast from let's say GstBuffer to GstMiniObject. + +2015-06-13 15:05:05 +0100 Tim-Philipp Müller + + libs: more doc scanner fixes + gstbasetransform.h:196: Warning: GstBase: "@submit_input_buffer" parameter unexpected at this location: + * @submit_input_buffer: Function which accepts a new input buffer and pre-processes it. + gstnetcontrolmessagemeta.c:103: Warning: GstNet: gst_buffer_add_net_control_message_meta: unknown parameter 'message' in documentation comment, should be 'addr' + +2015-06-13 09:37:46 -0400 Nicolas Dufresne + + * gst/gstminiobject.h: + doc: Fix annoation for GstMiniObject + Replacing reprecated "Ref Func:", "Unref Fun:" etc. comment block + with appropriate (ref-func name) etc. annotation. + +2015-06-13 09:34:06 -0400 Nicolas Dufresne + + * gst/gstelementfactory.h: + doc: Fix unbalanced parenthesis + +2015-06-13 09:30:24 -0400 Nicolas Dufresne + + * gst/gstclock.h: + doc: Fix more typo + +2015-06-13 09:22:41 -0400 Nicolas Dufresne + + * gst/gstclock.h: + doc: Fix type in previous commit + Marker is (value .. not (alue. + +2015-06-13 09:19:27 -0400 Nicolas Dufresne + + * gst/gstclock.h: + * gst/gstelementfactory.h: + doc: Don't use deprecated Value: and Type: comment + Instead use appropriate annotation. Annotations can be added + to the right of the constant name in a comment block. + +2015-06-12 17:07:38 -0400 Nicolas Dufresne + + * docs/libs/gstreamer-libs-sections.txt: + collectpads: Add new macro to the doc + https://bugzilla.gnome.org/show_bug.cgi?id=740575 + +2015-06-12 17:07:26 -0400 Nicolas Dufresne + + * docs/gst/gstreamer-sections.txt: + clock: Add new signed time macro to the doc + https://bugzilla.gnome.org/show_bug.cgi?id=740575 + +2015-06-10 14:17:01 -0400 Nicolas Dufresne + + * libs/gst/base/gstcollectpads.c: + collectpads: Don't initially send an invalid DTS + Sending a possibly invalid DTS may confuse the muxers, which will + then think the DTS is going backward. + https://bugzilla.gnome.org/show_bug.cgi?id=740575 + +2015-04-03 17:54:50 -0400 Nicolas Dufresne + + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstcollectpads.h: + * tests/check/libs/collectpads.c: + collectpads: Add negative DTS support + Make gst_collect_pads_clip_running_time() function also store the + signed DTS in the CollectData. This signed DTS value can be used by + muxers to properly handle streams where DTS can be negative initially. + https://bugzilla.gnome.org/show_bug.cgi?id=740575 + +2015-06-12 12:06:05 -0400 Nicolas Dufresne + + * gst/gstclock.h: + clock: Add signed time utilities + Add utility to print signed value of time. This is useful to + trace running time values in gint64 or GstClockTimeDiff values. + Additionally, define GST_CLOCK_STIME_NONE to indicate an invalid + signed time value and validation macro. New macros are: + GST_CLOCK_STIME_NONE + GST_CLOCK_STIME_IS_VALID + GST_STIME_FORMAT + GST_STIME_ARGS + https://bugzilla.gnome.org/show_bug.cgi?id=740575 + +2015-06-10 20:44:26 -0300 Thiago Santos + + * gst/gstmessage.c: + message: add allow-none to gst_message_new_ function + No restriction for creating messages without a source + +2015-06-12 13:45:33 +0100 Tim-Philipp Müller + + * win32/common/libgstcontroller.def: + win32: update .def file for new API + +2015-05-27 12:29:41 +0300 Lazar Claudiu + + * libs/gst/controller/gstdirectcontrolbinding.c: + * libs/gst/controller/gstdirectcontrolbinding.h: + * tests/check/libs/controller.c: + * tests/examples/controller/.gitignore: + * tests/examples/controller/Makefile.am: + * tests/examples/controller/absolute-example.c: + controller: Added absolute direct control binding, example and test + Fixes: 740502 + API: gst_direct_control_binding_new_absolute + +2015-06-04 00:03:16 +1000 Matthew Waters + + * docs/gst/gstreamer-sections.txt: + * gst/gstallocator.h: + * gst/gstmemory.c: + * gst/gstmemory.h: + memory: provide a mem_map_full that takes the GstMapInfo + Follow up of 7130230ddb349d0ca7942abdba26b7558df055d1 + Provide the memory implementation the GstMapInfo that will be used to + map/unmap the memory. This allows the memory implementation to use + some scratch space in GstMapInfo to e.g. track different map/unmap + behaviour or store extra implementation defined data about the map + in use. + https://bugzilla.gnome.org/show_bug.cgi?id=750319 + +2015-04-08 14:21:43 -0700 Alison Chaiken + + * docs/manual/basics-pads.xml: + docs: manual: fix name reversal in basics-pads + https://bugzilla.gnome.org/show_bug.cgi?id=747532 + +2015-06-11 23:06:26 +0100 Tim-Philipp Müller + + * plugins/elements/gstelements_private.c: + gst_writev: define UIO_MAXIOV on iOS/OSX + Apparently it's only seton iOS/OSX if defined(KERNEL). + +2015-06-12 01:15:19 +1000 Jan Schmidt + + * plugins/elements/gstelements_private.c: + gst_writev: Respect UIO_MAXIOV limit for the iov array + If we receive more than UIO_MAXIOV (1024 typically) buffers + in a single writev call, fall back to consolidating them + into one output buffer or multiple write calls. + This could be made more optimal, but let's wait until it's + ever a bottleneck for someone + +2015-06-11 12:34:04 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstpipeline.c: + * gst/gstpipeline.h: + * win32/common/libgstreamer.def: + pipeline: Add gst_pipeline_set_latency(), getter and GObject property + This overrides the default latency handling and configures the specified + latency instead of the minimum latency that was returned from the LATENCY + query. + https://bugzilla.gnome.org/show_bug.cgi?id=750782 + +2015-06-11 11:37:30 +0200 Carlos Rafael Giani + + * plugins/elements/gstconcat.c: + concat: Add active-pad property + https://bugzilla.gnome.org/show_bug.cgi?id=746949 + +2015-06-11 11:05:53 +0200 Sebastian Dröge + + * plugins/elements/gstconcat.c: + concat: Also reset the current start offset when receiving a FLUSH_STOP on the srcpad + +2015-06-11 11:05:38 +0200 Sebastian Dröge + + * plugins/elements/gstconcat.c: + concat: Add some newlines to event handling code to make the code look a bit less dense + +2015-06-11 10:53:30 +0200 Carlos Rafael Giani + + * plugins/elements/gstconcat.c: + concat: Reset segment base offset after FLUSH_STOP with reset_time = TRUE + If the reset_time value of a FLUSH_STOP event is set to TRUE, the pipeline + will have the base_time of its elements reset. This means that the concat + element's current_start_offset has to be reset to 0, since it was + calculated with the old base-time in mind. + Only FLUSH_STOP events coming from the active pad are looked at. + Signed-off-by: Carlos Rafael Giani + +2015-03-28 16:46:32 +0100 Carlos Rafael Giani + + * plugins/elements/gstconcat.c: + concat: Forward FLUSH_START and FLUSH_STOP events + Without this, seeking deadlocks if performed while the pipeline is paused. + Only flush events coming from the active pad are forwarded. + https://bugzilla.gnome.org/show_bug.cgi?id=745366 + +2015-06-09 14:28:30 +0200 Stefan Sauer + + * Makefile.am: + cruft: add the obsolete tmpl dir to cruft-dirs + +2015-06-09 11:30:10 +0200 Edward Hervey + + * common: + Automatic update of common submodule + From d9a3353 to 6015d26 + +2015-06-09 11:01:53 +0200 Edward Hervey + + * plugins/elements/gstfilesink.c: + filesink: Fix fsync/_commit usage + _MSC_VER will only be defined when building *on* windows and not just + *for* windows. Instead, use the G_OS_WIN32 define + +2015-06-09 10:59:42 +0200 Sebastian Dröge + + * configure.ac: + * libs/gst/helpers/gst-ptp-helper.c: + ptp: Check for the actual API we use instead of just looking for __APPLE__ + Should fix the build on FreeBSD, DragonFly and other BSDs. + https://bugzilla.gnome.org/show_bug.cgi?id=750530 + +2015-06-08 17:10:56 +0200 Sebastian Dröge + + * libs/gst/net/gstnetclientclock.c: + netclientclock: Use the new GST_CLOCK_FLAG_NEEDS_STARTUP_SYNC flag + https://bugzilla.gnome.org/show_bug.cgi?id=750574 + +2015-06-08 17:04:55 +0200 Sebastian Dröge + + * libs/gst/net/gstnetclientclock.c: + netclientclock: Make the clock a wrapper clock around an internal clock + The internal clock is only used for slaving against the remote clock, while + the user-facing GstClock can be additionally slaved to another clock if + desired. By default, if no master clock is set, this has exactly the same + behaviour as before. If a master clock is set (which was not allowed before), + the user-facing clock is reporting the remote clock as internal time and + slaves this to the master clock. + This also removes the weirdness that the internal time of the netclientclock + was always the system clock time, and not the remote clock time. + https://bugzilla.gnome.org/show_bug.cgi?id=750574 + +2015-06-08 23:07:40 +0200 Stefan Sauer + + * common: + Automatic update of common submodule + From d37af32 to d9a3353 + +2015-06-08 20:00:47 +0100 Tim-Philipp Müller + + * tests/check/elements/fakesink.c: + tests: fakesink: fix string leak in unit test + +2015-06-09 00:52:34 +1000 Jan Schmidt + + * plugins/elements/gstfilesink.c: + filesink: Fix Windows build by using _commit instead of fsync. + +2015-06-08 12:22:56 +0200 Sebastian Dröge + + * libs/gst/net/gstptpclock.c: + ptp: Make sure to always initialize the variables we put into the statistics structure later + CID 1304676, 1304677, 1304678, 1304679. + +2015-06-08 12:02:39 +0200 Sebastian Dröge + + * libs/gst/helpers/gst-ptp-helper.c: + ptp: Ensure that not too much is read from or written to struct ifreq.ifr_name + +2015-06-08 19:33:03 +1000 Jan Schmidt + + * libs/gst/base/gstbasetransform.h: + basetransform: Add Since markers for new vfuncs + Add Since: 1.6 markers for the new submit_input_buffer() and + generate_output() vfuncs + +2015-05-23 01:08:29 +1000 Jan Schmidt + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + * tests/check/Makefile.am: + * tests/check/libs/.gitignore: + * tests/check/libs/test_transform.c: + * tests/check/libs/transform2.c: + basetransform: Split input buffer processing from output generation + Allow for sub-classes which want to collate incoming buffers or + split them into multiple output buffers by separating the input + buffer submission from output buffer generation and allowing + for looping of one of the phases depending on pull or push mode + operation. + https://bugzilla.gnome.org/show_bug.cgi?id=750033 + +2015-04-16 10:32:02 +1000 Jan Schmidt + + * gst/gstbuffer.h: + * plugins/elements/gstfilesink.c: + Add GST_BUFFER_FLAG_SYNC_AFTER flag, and implement in filesink. + Makes it possible to get filesink to fsync() after rendering + a buffer. + +2015-06-08 10:46:24 +0200 Руслан Ижбулатов + + * libs/gst/net/gstptpclock.c: + ptp: Fix build on Windows, and in general the GI build when PTP support was not available + It's not going to work on Windows still, the helper process needs to be + ported. + +2015-06-07 23:05:53 +0200 Stefan Sauer + + * common: + Automatic update of common submodule + From 21ba2e5 to d37af32 + +2015-06-07 17:31:50 +0200 Stefan Sauer + + * common: + Automatic update of common submodule + From c408583 to 21ba2e5 + +2015-06-07 16:58:40 +0200 Stefan Sauer + + * docs/gst/Makefile.am: + * docs/libs/Makefile.am: + * docs/plugins/Makefile.am: + docs: remove variables that we define in the snippet from common + This is syncing our Makefile.am with upstream gtkdoc. + +2015-06-07 17:16:06 +0200 Stefan Sauer + + * autogen.sh: + * common: + Automatic update of common submodule + From d676993 to c408583 + +2015-06-07 16:44:26 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +2015-06-07 10:52:33 +0200 Sebastian Dröge + + * libs/gst/net/gstntppacket.c: + netclientclock: The NTP poll interval is a signed int8, not unsigned + +=== release 1.5.1 === + +2015-06-07 09:41:28 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/gstreamer-plugins.args: + * docs/plugins/gstreamer-plugins.hierarchy: + * docs/plugins/gstreamer-plugins.signals: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstversion.h: + Release 1.5.1 + +2015-06-07 09:33:52 +0200 Sebastian Dröge + + * po/cs.po: + * po/de.po: + * po/fr.po: + * po/tr.po: + po: Update translations + +2015-06-07 09:32:39 +0200 Sebastian Dröge + + * libs/gst/net/gstnetclientclock.c: + netclientclock: Add Since marker to the docs for gst_ntp_clock_new() + +2015-06-07 09:32:12 +0200 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 + +2015-06-07 09:08:35 +0200 Sebastian Dröge + + * tests/check/gst/gstmemory.c: + memory: Fix compiler warnings in unit test + gst/gstmemory.c:570:38: error: implicit conversion from enumeration type 'GstMapFlags' to different enumeration + type 'GstLockFlags' [-Werror,-Wenum-conversion] + fail_unless (gst_memory_lock (mem, GST_MAP_WRITE)); + ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ + +2015-06-07 08:59:23 +0200 Sebastian Dröge + + * libs/gst/net/gstptpclock.c: + ptpclock: Use the current path delay for calculation the local/remote clock times + The mean might currently be changing, and the current path delay is the + closest we can get to the actual delay around the current SYNC message. + +2015-06-06 23:05:32 +0200 Sebastian Dröge + + * libs/gst/net/gstnetclientclock.c: + netclientclock: Add some copyright stuff + +2015-06-06 21:43:05 +0200 Sebastian Dröge + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/net/Makefile.am: + * libs/gst/net/gstnetclientclock.c: + * libs/gst/net/gstnetclientclock.h: + * libs/gst/net/gstntppacket.c: + * libs/gst/net/gstntppacket.h: + * win32/common/libgstnet.def: + netclientclock: Add NTPv4 support + This uses all of the netclientclock code, except for the generation and + parsing of packets. Unfortunately some code duplication was necessary + because GstNetTimePacket is public API and couldn't be extended easily + to support NTPv4 packets without breaking API/ABI. + +2015-06-06 20:39:47 +0200 Sebastian Dröge + + * libs/gst/net/gstnetclientclock.c: + netclientclock: Preparation for NTPv4 support + We extend our calculations to work with local send time, remote receive time, + remote send time and local receive time. For the netclientclock protocol, + remote receive and send time are assumed to be the same value. + For the results, this modified calculation makes absolutely no difference + unless the two remote times are different. + +2015-06-06 19:01:06 +0200 Sebastian Dröge + + * libs/gst/net/gstnetclientclock.c: + netclientclock. Fix last commit + Apparently I failed at git add -i. + +2015-06-06 18:42:18 +0200 Sebastian Dröge + + * libs/gst/net/gstnetclientclock.c: + netclientclock: Make gst_net_client_clock_new() a thing wrapper around g_object_new() + Bindings will like this, and also it fixes a FIXME comment. + +2015-06-06 14:34:39 +0200 Sebastian Dröge + + * libs/gst/net/gstptpclock.c: + ptpclock: Use #define everywhere instead of G_N_ELEMENTS() + +2015-06-06 14:31:16 +0200 Sebastian Dröge + + * libs/gst/net/gstnetclientclock.c: + netclientclock: Filter RTTs based on the median of the last RTTs before considering them at all + This improves accuracy on wifi or similar networks, where the RTT can go very + high up for a single observation every now and then. Without filtering them + away completely, they would still still modify the average RTT, and thus all + clock estimations. + +2015-06-06 14:19:21 +0200 Sebastian Dröge + + * libs/gst/net/gstptpclock.c: + ptpclock: Use a system clock for the time observations instead of gst_util_get_timestamp() + They don't necessarily use the same underlying clocks (e.g. on Windows), or + might be configured to a different clock type (monotonic vs. real time clock). + We need the values a clean system clock returns, as those are the values used + by the internal clocks. + +2015-06-06 12:35:58 +0200 Sebastian Dröge + + * libs/gst/net/gstptpclock.c: + ptpclock: Fix documentation a bit + +2015-06-05 19:35:29 +0100 Tim-Philipp Müller + + * tests/check/elements/fakesink.c: + tests: fakesink: test notify::last-message and deep-notify::last-message + deep-notify::last-message seems to cause some problems, so disable for now. + https://bugzilla.gnome.org/show_bug.cgi?id=681642 + +2015-06-05 10:02:04 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Post an error if we can't typefind the data until EOS + https://bugzilla.gnome.org/show_bug.cgi?id=750439 + +2015-06-04 19:05:44 +0200 Sebastian Dröge + + * libs/gst/helpers/gst-ptp-helper.c: + ptp-helper: Make sure to use g_poll() for the main context + The modified main context from https://bugzilla.gnome.org/show_bug.cgi?id=741054 + somehow calls setugid(), which abort()s setuid root applications on OSX. + +2015-06-04 18:32:14 +0200 Sebastian Dröge + + * libs/gst/helpers/gst-ptp-helper.c: + ptp-helper: Make sure that we are running setuid root if configured that way + +2015-06-04 18:00:50 +0200 Sebastian Dröge + + * libs/gst/helpers/gst-ptp-helper.c: + ptp-helper: Fix interface listing and MAC retrieval on OSX + +2015-06-03 19:04:15 +0300 Vivia Nikolaidou + + * tools/gst-indent: + gst-indent: Add support for gindent as executable name + gst-indent used to support gnuindent and indent as executable names. + However, on OSX one can "brew install gnu-indent" and then the + executable name will be gindent. Added support for that. + https://bugzilla.gnome.org/show_bug.cgi?id=750351 + +2015-06-03 16:42:57 +0100 Luis de Bethencourt + + * libs/gst/helpers/.gitignore: + gitignore: add libs/gst/helpers/gst-ptp-helper + +2015-06-03 16:34:58 +0100 Luis de Bethencourt + + * libs/gst/helpers/Makefile.am: + ptp: ignore permission errors in Makefile + To satisfy the buildslaves ignore permission errors in chown, chmod and setcap + +2015-06-03 17:06:09 +0200 Sebastian Dröge + + * libs/gst/helpers/gst-ptp-helper.c: + ptp: Don't use SIOCGIFHWADDR on Apple + Just #ifdef the code for now, this should be implemented around + IOKit later instead of using ioctls. + +2015-06-03 16:28:44 +0200 Philippe Normand + + * libs/gst/helpers/Makefile.am: + build: make install-exec-hooks depend on install-helpersPROGRAMS + To avoid race conditions where make would try to change ownership and + permissions of the not-yet-installed ptp helper. + +2015-06-03 16:08:43 +0200 Sebastian Dröge + + * libs/gst/net/gstptpclock.c: + ptp: Fix debug output to print the difference instead of absolute values + +2015-06-03 15:22:31 +0200 Wim Taymans + + * libs/gst/net/gstptpclock.c: + ptpclock: fix compilation + Don't put code between declarations. + Fix use of uninitialized variables + +2015-06-03 11:04:48 +0200 Sebastian Dröge + + * libs/gst/net/gstptpclock.c: + ptp: Add median based pre-filtering of delays + If the delay measurement is too far away from the median of the window of last + delay measurements, we discard it. This increases accuracy on wifi a lot. + https://bugzilla.gnome.org/show_bug.cgi?id=749391 + +2015-06-02 15:24:06 +0200 Sebastian Dröge + + * libs/gst/net/gstptpclock.c: + ptp: Add #define to only use SYNC messages for which we can send DELAY_REQ + https://bugzilla.gnome.org/show_bug.cgi?id=749391 + +2015-05-15 16:58:51 +0300 Sebastian Dröge + + * libs/gst/net/gstptpclock.c: + ptp: Add #defines to enable/disable improvements for unreliable networks + We should do some more measurements with all these and check how much sense + they make for PTP. Also enabling them means not following IEEE1588-2008 by the + letter anymore. + https://bugzilla.gnome.org/show_bug.cgi?id=749391 + +2015-05-14 12:18:25 +0200 Sebastian Dröge + + * configure.ac: + * docs/libs/gstreamer-libs-docs.sgml: + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/helpers/Makefile.am: + * libs/gst/helpers/gst-ptp-helper.c: + * libs/gst/net/Makefile.am: + * libs/gst/net/gstptp_private.h: + * libs/gst/net/gstptpclock.c: + * libs/gst/net/gstptpclock.h: + * libs/gst/net/net.h: + * tests/examples/Makefile.am: + * tests/examples/ptp/.gitignore: + * tests/examples/ptp/Makefile.am: + * tests/examples/ptp/ptp-print-times.c: + * win32/common/libgstnet.def: + ptp: Initial implementation of a PTP clock + GstPtpClock implements a PTP (IEEE1588:2008) ordinary clock in + slave-only mode, that allows a GStreamer pipeline to synchronize + to a PTP network clock in some specific domain. + The PTP subsystem can be initialized with gst_ptp_init(), which then + starts a helper process to do the actual communication via the PTP + ports. This is required as PTP listens on ports < 1024 and thus + requires special privileges. Once this helper process is started, the + main process will synchronize to all PTP domains that are detected on + the selected interfaces. + gst_ptp_clock_new() then allows to create a GstClock that provides the + PTP time from a master clock inside a specific PTP domain. This clock + will only return valid timestamps once the timestamps in the PTP domain + are known. To check this, the GstPtpClock::internal-clock property and + the related notify::clock signal can be used. Once the internal clock + is not NULL, the PTP domain's time is known. Alternatively you can wait + for this with gst_ptp_clock_wait_ready(). + To gather statistics about the PTP clock synchronization, + gst_ptp_statistics_callback_add() can be used. This gives the + application the possibility to collect all kinds of statistics + from the clock synchronization. + https://bugzilla.gnome.org/show_bug.cgi?id=749391 + +2015-06-03 13:16:15 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstclock.c: + * gst/gstclock.h: + * win32/common/libgstreamer.def: + clock: Add GST_CLOCK_FLAG_NEEDS_STARTUP_SYNC and related API + gst_clock_wait_for_sync(), gst_clock_is_synced() and gst_clock_set_synced() + plus a signal to asynchronously wait for the clock to be synced. + This can be used by clocks to signal that they need initial synchronization + before they can report any time, and that this synchronization can also get + completely lost at some point. Network clocks, like the GStreamer + netclientclock, NTP or PTP clocks are examples for clocks where this is useful + to have as they can't report any time at all before they're synced. + https://bugzilla.gnome.org/show_bug.cgi?id=749391 + +2015-06-03 18:03:36 +1000 Matthew Waters + + * gst/gstallocator.h: + * gst/gstmemory.c: + * gst/gstmemory.h: + memory: provide a mem_unmap function that takes the flags to unmap + There are gstmemory's available that operate in two memory domains + and need to ensure consistent access between these domains. + Imagine a scenario where e.g. the GLMemory is mapped twice in both + the GPU and the CPU domain. On unmap or a subsequent map, it would + like to ensure that the most recent data is available in the memory + domain requested. Either by flushing the writes and/or initiating a + DMA transfer. Without knowing which domain is being unmapped, the + memory does not know where the most recent data is to transfer to + the other memory domain. + Note: this still does not allow downgrading a memory map. + https://bugzilla.gnome.org/show_bug.cgi?id=750319 + +2015-06-02 16:14:50 +1000 Matthew Waters + + * gst/gstmemory.c: + * tests/check/gst/gstmemory.c: + memory: gst_memory_share may fail to exclusively lock the parent memory + Now that locking exclusively dows not always succeed, we need to signal + the failure case from gst_memory_init. + Rather than introducing an API or funcionality change to gst_memory_init, + workaround by checking exclusivity in the calling code. + https://bugzilla.gnome.org/show_bug.cgi?id=750172 + +2015-06-02 00:23:37 +1000 Matthew Waters + + * gst/gstbuffer.c: + * tests/check/gst/gstbuffer.c: + buffer: locking memory exclusively may fail + Attempt to return a copy of the memory instead. + https://bugzilla.gnome.org/show_bug.cgi?id=750172 + +2015-05-31 21:25:23 +1000 Matthew Waters + + * gst/gstminiobject.c: + * tests/check/gst/gstmemory.c: + miniobject: disallow a double write/exclusive lock + gst_memory_lock (mem, WRITE | EXCLUSIVE); + gst_memory_lock (mem, WRITE | EXCLUSIVE); + Succeeds when the part-miniobject.txt design doc suggests that this should fail: + "A gst_mini_object_lock() can fail when a WRITE lock is requested and + the exclusive counter is > 1. Indeed a GstMiniObject object with an + exclusive counter 1 is locked EXCLUSIVELY by at least 2 objects and is + therefore not writable." + https://bugzilla.gnome.org/show_bug.cgi?id=750172 + +2015-06-02 20:32:35 +0100 Tim-Philipp Müller + + * gst/gsturi.c: + uri: match return type of get_uri_type() implementation to declaration + https://bugzilla.gnome.org/show_bug.cgi?id=750292 + +2015-06-03 00:12:36 +1000 Jan Schmidt + + * gst/gstbuffer.c: + gstbuffer: Add a note about metas needing to be copied last + +2015-05-27 22:23:00 +1000 Jan Schmidt + + * gst/gstvalue.c: + * tests/check/gst/gstvalue.c: + gstvalue: Implement gst_value_is_subset() for flagsets + +2015-06-02 16:33:48 +0200 Edward Hervey + + * tests/check/gst/gstprotection.c: + check: Use GST_CHECK_MAIN macro + +2015-05-20 21:18:08 +0900 eunhae choi + + * plugins/elements/gstdownloadbuffer.c: + downloadbuffer: release lock before posting msg + to avoid the deadlock in playbin2, + send msg after release the download buffer lock. + https://bugzilla.gnome.org/show_bug.cgi?id=749535 + +2015-05-31 20:21:42 -0300 Reynaldo H. Verdejo Pinochet + + * gst/gststructure.c: + structure: add note about missing field creation on _set() + +2015-05-30 13:01:09 +0100 Tim-Philipp Müller + + * tests/check/gst/gstcaps.c: + * tests/check/gst/gststructure.c: + tests: fix some leaks in new flagset checks + +2015-05-30 12:39:19 +0100 Tim-Philipp Müller + + * libs/gst/base/gstqueuearray.c: + queuearray: remove duplicate assignment + We've already done this earlier in the function, + and nothing has changed since we first read it. + +2015-05-27 17:22:28 +0530 Nirbheek Chauhan + + * gst/gst.c: + gst/gst.c: Add a warning about DllMain to prevent misuse + DllMain should not be relied on for anything except storing the DLL handle. + It should also not be defined for static builds, but doing so is not + straightforward and is mostly harmless, so let's just add a comment about that + for now. + +2015-05-27 13:54:25 +0200 Sebastian Dröge + + * plugins/elements/gstfunnel.c: + funnel: Improve debug output a bit + +2015-05-26 14:46:16 +0100 Luis de Bethencourt + + * docs/design/draft-klass.txt: + docs: fix typo in draft-klass.txt + +2015-05-26 14:03:25 +0100 Luis de Bethencourt + + * docs/code-reviews/README: + * docs/code-reviews/gstbin.c-1.41: + code-reviews: remove obsolete code reviews + This obsolete folder hasn't been touched since 2001 and has no purpose. It + confuses new developers. + +2015-05-25 21:02:28 +1000 Matthew Waters + + * libs/gst/base/gstbasesink.c: + basesink: use the slightly more correct take_sample for last-sample + gst_value_take_buffer() and gst_value_take_sample() both resolve to + g_value_take_boxed(). Use the method with the correct name if we + ever change that. + +2015-05-25 16:23:33 +1000 Jan Schmidt + + * docs/gst/gstreamer-sections.txt: + * gst/gststructure.c: + * gst/gststructure.h: + * gst/gstvalue.c: + * gst/gstvalue.h: + * tests/check/gst/capslist.h: + * tests/check/gst/gstcaps.c: + * tests/check/gst/gststructure.c: + * tests/check/gst/gstvalue.c: + * win32/common/libgstreamer.def: + gstvalue: Add GstFlagSet type + GstFlagSet is a new type designed for negotiating sets + of boolean capabilities flags, consisting of a 32-bit + flags bitfield and 32-bit mask field. The mask field + indicates which of the flags bits an element needs to have + as specific values, and which it doesn't care about. + This allows efficient negotiation of arrays of boolean + capabilities. + The standard serialisation format is FLAGS:MASK, with + flags and mask fields expressed in hexadecimal, however + GstFlagSet has a gst_register_flagset() function, which + associates a new GstFlagSet derived type with an existing + GFlags gtype. When serializing a GstFlagSet with an + associated set of GFlags, it also serializes a human-readable + form of the flags for easier debugging. + It is possible to parse a GFlags style serialisation of a + flagset, without the hex portion on the front. ie, + +flag1/flag2/flag3+flag4, to indicate that + flag1 & flag4 must be set, and flag2/flag3 must be unset, + and any other flags are don't-care. + https://bugzilla.gnome.org/show_bug.cgi?id=746373 + +2015-05-20 20:19:29 +0200 Thibault Saunier + + * gst/gstvalue.c: + gstvalue: Add a comparision function for GstStructures + +2015-05-19 14:34:04 +0100 Tim-Philipp Müller + + * libs/gst/net/gstnetclientclock.c: + * libs/gst/net/gstnettimeprovider.c: + net: keep GCancellable fd around instead of re-creating it constantly + Just create the cancellable fd once and keep it around instead + of creating/closing it for every single packet. Since we spend + most time waiting for packets, an fd is alloced and in use pretty + much all the time anyway. + +2015-05-18 12:52:00 +0100 Tim-Philipp Müller + + * plugins/elements/gstfdsrc.c: + Revert "doc: Workaround gtkdoc issue" + This reverts commit 460a7bf68292d057c77e84d1ea86b8e73fc081f3. + This should be fixed by the gtk-doc 1.23 release. + cannot contain : + http://www.docbook.org/tdg/en/html/para.html + http://www.docbook.org/tdg/en/html/refsect2.html + +2015-05-11 10:52:23 +0200 Wim Taymans + + * plugins/elements/gstsparsefile.c: + sparsefile: small cleanup + The error path unrefs file->file so make sure we only go there when + there is a non-NULL file->file. + +2015-05-16 23:29:03 -0400 Nicolas Dufresne + + * plugins/elements/gstfdsrc.c: + doc: Workaround gtkdoc issue + With gtkdoc 1.22, the XML generator fails when a itemizedlist is + followed by a refsect2. Workaround the issue by wrapping the refsect2 + into para. + +2015-05-13 13:28:05 -0300 Reynaldo H. Verdejo Pinochet + + * docs/design/part-negotiation.txt: + docs/design/part-negotiation.txt: minor corrections + +2015-05-16 12:57:12 +0200 Thibault Saunier + + * libs/gst/controller/gsttimedvaluecontrolsource.c: + timedvaluecontrolsource: Check that the only iter is the end iter in the GSequence + Previous patch was assuming that if the returned iter was the last iter + the GSequence was empty, which is obviously wrong. + +2015-05-16 11:17:40 +0200 Thibault Saunier + + * libs/gst/controller/gsttimedvaluecontrolsource.c: + timedvaluecontrolsource: Fix removing all keyframes, and adding one back + We were segfaulting because g_sequence_search was returning the iter_end, + and that iterator does not contain anything and thus should not be used + directly + +2015-05-15 20:44:08 +0100 Tim-Philipp Müller + + * plugins/elements/gstfakesrc.c: + fakesrc: fix property description + We're enterprise now folks. + +2015-05-15 14:57:14 +0100 Vincent Penquerc'h + + * gst/gstpad.c: + pad: bump chain function call logs from LOG to DEBUG + They're really useful compared to other LOG stuff in there, so + there is value is including them and not the rest. + +2015-05-15 13:43:12 +0200 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + * gst/gstobject.c: + * gst/gstobject.h: + * tests/check/gst/gstobject.c: + * win32/common/libgstreamer.def: + gstobject: add gst_object_has_as_ancestor and deprecate previous function + The old gst_object_has_ancestor will call the new code. This establishes the + symetry with the new gst_object_has_as_parent. + API: gst_object_has_as_ancestor() + +2015-05-15 08:05:50 +0200 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + * gst/gstobject.c: + * gst/gstobject.h: + * tests/check/gst/gstobject.c: + * win32/common/libgstreamer.def: + gstobject: rename gst_object_has_parent to gst_object_has_as_parent + This avoid confusion with a potential punction that check if a gstobject has-a + parent. + API: gst_object_has_as_parent() + +2015-05-14 15:49:43 +0800 Jian + + * libs/gst/base/gstbasesink.c: + basesink: Fix QoS/lateness checking if subclass implements prepare/prepare_list vfuncs + In basesink functions gst_base_sink_chain_unlocked(), below code is used to + checking if buffer is late before doing prepare call to save some effort: + if (syncable && do_sync) + late = + gst_base_sink_is_too_late (basesink, obj, rstart, rstop, + GST_CLOCK_EARLY, 0, FALSE); + if (G_UNLIKELY (late)) + goto dropped; + But this code has problem, it should calculate jitter based on current media + clock, rather than just passing 0. I found it will drop all the frames when + rewind in slow speed, such as -2X. + https://bugzilla.gnome.org/show_bug.cgi?id=749258 + +2015-05-11 17:14:50 +0200 Víctor Manuel Jáquez Leal + + * plugins/elements/gstfdsrc.c: + fdsrc: docs: fix and update documentation + Update example to use gst-launch-1.0 and fix a paragraph. + https://bugzilla.gnome.org/show_bug.cgi?id=749233 + +2015-05-09 11:53:49 +0100 Tim-Philipp Müller + + * Makefile.am: + Add removed example directories to CRUFT_DIRS + +2015-05-08 14:08:42 +0100 Tim-Philipp Müller + + * gst/gstparse.c: + * plugins/elements/gstcapsfilter.c: + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstfilesink.c: + * plugins/elements/gstfilesrc.c: + * plugins/elements/gsttee.c: + docs: gst-launch -> gst-launch-1.0 in example pipelines + And some small example pipeline fix-ups. + +2015-05-09 22:10:30 -0300 Reynaldo H. Verdejo Pinochet + + * docs/design/part-conventions.txt: + docs/design/part-conventions.txt: minor corrections + +2015-05-09 22:04:52 -0300 Reynaldo H. Verdejo Pinochet + + * docs/design/part-context.txt: + docs/design/part-context.txt: minor corrections + +2015-05-09 22:01:04 -0300 Reynaldo H. Verdejo Pinochet + + * docs/design/part-clocks.txt: + docs/design/part-clocks.txt: minor corrections + +2015-05-02 17:16:38 +0100 Tim-Philipp Müller + + * docs/manual/appendix-porting.xml: + * docs/random/porting-to-1.0.txt: + docs: update porting guides to mention new device probing API + +2015-05-01 20:37:18 -0300 Reynaldo H. Verdejo Pinochet + + * docs/design/part-states.txt: + docs/design/part-states.txt: minor corrections + +2015-05-01 18:32:26 +0900 Jimmy Ohn + + * gst/gstevent.h: + event: remove duplicated include + https://bugzilla.gnome.org/show_bug.cgi?id=748739 + +2015-04-28 19:59:31 +0100 Tim-Philipp Müller + + * configure.ac: + * tests/examples/Makefile.am: + * tests/examples/launch/.gitignore: + * tests/examples/launch/Makefile.am: + * tests/examples/launch/mp3parselaunch.c: + * tests/examples/metadata/.gitignore: + * tests/examples/metadata/Makefile.am: + * tests/examples/metadata/read-metadata.c: + * tests/examples/queue/.gitignore: + * tests/examples/queue/Makefile.am: + * tests/examples/queue/queue.c: + * tests/examples/typefind/.gitignore: + * tests/examples/typefind/Makefile.am: + * tests/examples/typefind/typefind.c: + tests: remove some pointless ancient code examples + +2015-04-28 17:54:51 +0300 Ilya Konstantinov + + * libs/gst/base/gstbaseparse.c: + baseparse: fix GST_BASE_PARSE_FLAG_LOST_SYNC + Since frame->priv->discont was cleared earlier, + GST_BASE_PARSE_FLAG_LOST_SYNC was never being set. + Take the chance to refactor the frame creation a bit to + organize the flags setting and reset. + https://bugzilla.gnome.org/show_bug.cgi?id=738237 + +2015-03-09 19:31:36 -0300 Thiago Santos + + * libs/gst/base/gstbaseparse.c: + baseparse: respect DISCONT flag on buffers + Drain the parser when a DISCONT buffer is received and then mark + the next buffer to be pushed as a DISCONT one + https://bugzilla.gnome.org/show_bug.cgi?id=745927 + +2015-04-28 15:50:46 +0200 Sebastian Dröge + + * gst/gsttaglist.c: + taglist: Copy the tag scope too when copying tag lists + +2015-04-20 20:02:51 -0400 Olivier Crête + + * plugins/elements/gstidentity.c: + identity: Also synchronize GAP events in sync=1 + https://bugzilla.gnome.org/show_bug.cgi?id=601853 + +2015-04-20 19:31:37 -0400 Olivier Crête + + * plugins/elements/gstidentity.c: + * plugins/elements/gstidentity.h: + identity: With sync=true, don't pre-roll + To act like a real live element, block the streaming when paused, and + return NO_PREROLL. + https://bugzilla.gnome.org/show_bug.cgi?id=601853 + +2015-04-20 19:24:45 -0400 Olivier Crête + + * plugins/elements/gstidentity.c: + * plugins/elements/gstidentity.h: + identity: Take upstream latency into account for sync=1 + https://bugzilla.gnome.org/show_bug.cgi?id=601853 + +2015-04-20 19:07:27 -0400 Olivier Crête + + * plugins/elements/gstidentity.c: + identity: Handle PTS and DTS separately + https://bugzilla.gnome.org/show_bug.cgi?id=601853 + +2015-04-26 17:05:48 +0100 Tim-Philipp Müller + + * .gitignore: + * Android.mk: + * gst/Makefile.am: + * gst/parse/Makefile.am: + * libs/Makefile.am: + * libs/gst/Makefile.am: + * libs/gst/base/Makefile.am: + * libs/gst/controller/Makefile.am: + * libs/gst/helpers/Makefile.am: + * libs/gst/net/Makefile.am: + * plugins/Makefile.am: + * plugins/elements/Makefile.am: + * tests/examples/controller/Makefile.am: + * tools/Makefile.am: + Remove obsolete Android build cruft + This is not needed any longer. + +2015-04-24 16:51:24 -0300 Thiago Santos + + * plugins/elements/gstinputselector.c: + * plugins/elements/gstinputselector.h: + inputselector: Only try to push the first EOS received + Subsequent EOS will push on the source pad that already received + EOS and that will make the event function return FALSE. It needs + only to push the first one and only return TRUE for the subsequent + ones. + +2015-04-24 15:19:26 +0100 Tim-Philipp Müller + + * tests/check/gst/gstprintf.c: + tests: printf: add unit test for %% + https://bugzilla.gnome.org/show_bug.cgi?id=748414 + +2015-04-24 15:16:24 +0100 Tim-Philipp Müller + + * gst/printf/vasnprintf.c: + printf: fix invalid memory access in case of %% + https://bugzilla.gnome.org/show_bug.cgi?id=748414 + +2015-04-23 15:55:44 +0100 Tim-Philipp Müller + + * tests/check/Makefile.am: + tests: define GST_CHECK_TEST_ENVIRONMENT_BEACON + +2015-04-23 15:54:08 +0100 Tim-Philipp Müller + + * libs/gst/check/gstcheck.h: + check: optionally check env var for us to make sure test env is set up + If GST_CHECK_TEST_ENVIRONMENT_BEACON is defined, check if the + environment variable it is defined to is set up at the start + of each test. + https://bugzilla.gnome.org//show_bug.cgi?id=747624 + +2015-04-23 09:06:42 +0900 Changbok Chea + + * libs/gst/base/gstbasesrc.c: + basesrc: Remove unused assignment in perform_seek() + https://bugzilla.gnome.org/show_bug.cgi?id=748345 + +2015-04-22 11:44:00 +0530 Prashant Gotarne + + * tests/check/gst/gstmemory.c: + test: memory: Added test to verify the allocation params + New test added to verify the allocation params for the memory + https://bugzilla.gnome.org/show_bug.cgi?id=748277 + +2015-04-22 11:04:06 -0600 Jason Litzinger + + * tests/check/gst/gstinfo.c: + tests: info: add test case to reproduce infinite loop + gst_debug_unset_threshold_for_name() used to go into an + infinite loop when there was more than one category in + the list. This test captures the problem by failing + via timeout. + https://bugzilla.gnome.org/show_bug.cgi?id=748321 + +2015-04-22 12:03:33 -0600 Jason Litzinger + + * gst/gstinfo.c: + gstinfo: fix infinite loop in gst_debug_unset_threshold_for_name() + Ensure iterator is advanced. The current list iteration code only + advances the iterator (walk) if a match is found, which results + in an infinite loop when more than one entry exists in the list. + https://bugzilla.gnome.org/show_bug.cgi?id=748321 + +2015-04-22 10:14:53 +0100 Tim-Philipp Müller + + * scripts/create-uninstalled-setup.sh: + scripts: create-uninstalled-setup: miscellaneous fixes + Error out if required build tools (flex, bison, pkg-config) + are not present, instead of printing a message and then + continuing. + Check out submodules when fetching the repositories, so + they're already there and ready later. + Remove some 0.10 cruft. + +2015-04-22 09:59:24 +0100 Tim-Philipp Müller + + * .gitignore: + Add INSTALL to .gitignore + +2015-04-22 09:56:55 +0100 Tim-Philipp Müller + + * tests/check/generic/states.c: + tests: error out if test environment is not actually set up properly + https://bugzilla.gnome.org//show_bug.cgi?id=747624 + +2015-04-22 09:52:58 +0100 Tim-Philipp Müller + + * configure.ac: + configure: can use AM_SILENT_RULES unconditionally now + https://autotools.io/automake/silent.html + +2015-04-22 09:47:39 +0100 Tim-Philipp Müller + + * configure.ac: + configure: bump automake requirement to 1.14 and autoconf to 2.69 + This is only required for builds from git, people can still + build tarballs if they only have older autotools. + https://bugzilla.gnome.org//show_bug.cgi?id=747624 + +2015-04-22 10:32:57 +0200 Sebastian Dröge + + * INSTALL: + Remove INSTALL file + autotools automatically generate this, and when using different versions + for autogen.sh there will always be changes to a file tracked by git. + +2015-04-20 22:07:34 +0200 Thibault Saunier + + * scripts/gst-uninstalled: + gstreamer-uninstalled: Update path to the GstValidate scenarios + +2015-04-20 09:23:43 +0200 Sebastian Dröge + + * gst/gstbuffer.c: + buffer: Check return value of meta transform function in gst_buffer_copy_into() + ... by printing some debug output whenever copying a GstMeta fails. + https://bugzilla.gnome.org/show_bug.cgi?id=748119 + +2015-04-18 12:31:02 +0100 Tim-Philipp Müller + + * gst/gstevent.h: + event: fix header formatting + +2015-04-18 12:28:15 +0100 Tim-Philipp Müller + + * tests/check/gst/gstprotection.c: + tests: protection: fix leak in unit test + +2015-04-18 12:27:46 +0100 Tim-Philipp Müller + + * gst/gst.h: + gst.h: include the new gstprotection.h header + https://bugzilla.gnome.org/show_bug.cgi?id=705991 + +2015-04-15 15:33:31 +0100 Alex Ashley + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + * gst/Makefile.am: + * gst/gst_private.h: + * gst/gstinfo.c: + * gst/gstprotection.c: + * gst/gstprotection.h: + * tests/check/Makefile.am: + * tests/check/gst/.gitignore: + * tests/check/gst/gstprotection.c: + * win32/common/libgstreamer.def: + protection: add GstProtectionMeta to support protected content + In order to support some types of protected streams (such as those + protected using DASH Common Encryption) some per-buffer information + needs to be passed between elements. + This commit adds a GstMeta type called GstProtectionMeta that allows + protection specific information to be added to a GstBuffer. An example + of its usage is qtdemux providing information to each output sample + that enables a downstream element to decrypt it. + This commit adds a utility function to select a supported protection + system from the installed Decryption elements found in the registry. + The gst_protection_select_system function that takes an array of + identifiers and searches the registry for a element of klass Decryptor that + supports one or more of the supplied identifiers. If multiple elements + are found, the one with the highest rank is selected. + This commit adds a unit test for the gst_protection_select_system + function that adds a fake Decryptor element to the registry and then + checks that it can correctly be selected by the utility function. + This commit adds a unit test for GstProtectionMeta that creates + GstProtectionMeta and adds & removes it from a buffer and performs some + simple reference count checks. + API: gst_buffer_add_protection_meta() + API: gst_buffer_get_protection_meta() + API: gst_protection_select_system() + API: gst_protection_meta_api_get_type() + API: gst_protection_meta_get_info() + https://bugzilla.gnome.org/show_bug.cgi?id=705991 + +2015-03-16 12:35:27 +0000 Alex Ashley + + * gst/gstevent.c: + * gst/gstevent.h: + * tests/check/gst/gstevent.c: + * win32/common/libgstreamer.def: + event: add new GST_EVENT_PROTECTION + In order for a decrypter element to decrypt media protected using a + specific protection system, it first needs all the protection system + specific information necessary (E.g. information on how to acquire + the decryption keys) for that stream. + The GST_EVENT_PROTECTION defined in this commit enables this information + to be passed from elements that extract it (e.g. qtdemux, dashdemux) to + elements that use it (E.g. a decrypter element). + API: GST_EVENT_PROTECTION + API: gst_event_new_protection() + API: gst_event_parse_protection() + https://bugzilla.gnome.org/show_bug.cgi?id=705991 + +2015-04-18 11:42:21 +0100 Tim-Philipp Müller + + * plugins/elements/gsttee.c: + tee: fix use of possibly-freed pad in debug statement + The gst_object_unref() in the block above may be dropping + the last ref to the pad and free the pad. Set pad pointer + to NULL here, so that we don't accidentally use a + possibly-freed pad pointer in the debug log statements + further below, and also use the tee element as log object + since that's more appropriate anyway. + Fixes valgrind warnings and crashes in tee test_stress + unit test when debug logging is enabled. + +2015-04-18 12:00:13 +0100 Tim-Philipp Müller + + * tests/check/gst/gstinfo.c: + tests: info: fix unit test when run with GST_DEBUG=*:9 + Only save the messages we're interested in and expecting. + When run with *:9 we might get additional TRACE level + messages from other categories and then we don't end up + with the number of messages we expect. + +2015-04-18 11:25:16 +0100 Tim-Philipp Müller + + * tests/check/gst/gstpad.c: + tests: pad: fix buffer leak in new blocking_with_probe_type_idle test + +2015-04-18 11:11:26 +0100 Tim-Philipp Müller + + * tests/check/gst/gstpad.c: + tests: pad: fix invalid memory access in debug log message + The string we put in the buffer is not NUL-terminated, so + don't try to print that via %s in a debug log message. + +2015-04-17 15:19:07 +0200 Mathieu Duponchelle + + * libs/gst/helpers/Makefile.am: + helpers: on OSX, MKDIR_P is install-sh -c -d + So we need to call it before cding to the bin directory. + +2015-04-17 13:02:12 +0200 Mathieu Duponchelle + + * libs/gst/helpers/Makefile.am: + helpers: install -D isn't portable, use $(MKDIR_P) instead. + +2015-04-14 10:47:20 -0300 Thiago Santos + + * tests/check/gst/gstpad.c: + tests: pad: test that idle probe will block + This tests add an idle probe on an idle pad from a separate thread + so that the callback is called immediatelly. This callback will sit + still and then we try to push a buffer on this same pad. It verifies + that the idle probe blocks data passing + https://bugzilla.gnome.org/show_bug.cgi?id=747852 + +2015-04-14 17:06:36 -0300 Thiago Santos + + * gst/gstpad.c: + pad: block data flow when idle probe is running + When idle probe runs directly from the gst_pad_add_probe() function + we need to make sure that no data flow happens as idle probe + is a blocking probe. The idle probe will prevent that any + buffer, bufferlist or serialized events and queries are not + flowing while it is running. + https://bugzilla.gnome.org/show_bug.cgi?id=747852 + +2015-04-16 13:41:20 +0100 Tim-Philipp Müller + + * gst/gsturi.c: + docs: clarify that return value of gst_filename_to_uri() must be freed + https://bugzilla.gnome.org/show_bug.cgi?id=747104 + +2015-04-15 11:02:54 +0100 Vincent Penquerc'h + + * gst/gstbin.c: + * tests/check/generic/states.c: + bin: undo upward state changes on children when a child fails + When a bin changes states upwards, and a child fails to change, + any child that was already switched will not be reset to its + original state, leaving its state inconsistent with the bin, + which does not change state due to the failure. + If the state change was from NULL to READY, it means that deleting + this bin will cause those children to be deleted while not in + NULL state, which is a Bad Thing. For other upward changes, it + is less of a problem, as a subsequent switch back to NULL will + cause an actual downwards change on those inconsistent elements, + albeit from the "wrong" state. + We now reset state to the original one when a child fails. + Includes unit test. + https://bugzilla.gnome.org/show_bug.cgi?id=747610 + +2015-04-15 14:45:21 +0200 Mathieu Duponchelle + + * libs/gst/helpers/Makefile.am: + helpers: use $(INSTALL) to ... install the helper. + As it will create the folders and set permissions appropriately, + better than doing it manually. + +2015-04-15 13:02:36 +0200 Mathieu Duponchelle + + * libs/gst/helpers/Makefile.am: + helpers: Fix Makefile.am to install the completion-helper correctly. + + The program is installed at install-exec time, we thus need + to move it in install-exec-hook, not install-data-hook. + +2015-04-15 11:38:35 +0100 Vincent Penquerc'h + + * libs/gst/base/gstbasesrc.c: + Revert "basesrc: fix pool leak on allocation query error path" + This reverts commit 84fdf50b2f98951a32fa14802b62621f1105cd35. + It seems the bug was fixed independently, and the merge was + automagic, yielding two extra free calls. + +2015-04-14 13:42:55 +0900 Suhwang Kim + + * tests/check/gst/gstclock.c: + tests: clock: fix test clock name + Don't call the slave test clock "Master". + https://bugzilla.gnome.org/show_bug.cgi?id=746430 + +2015-04-14 17:47:08 +0100 Tim-Philipp Müller + + * gst/gstelementfactory.c: + * gst/gstelementfactory.h: + elementfactory: add ENCRYPTOR class defines + to go with DECRYPTOR. + +2015-03-16 13:11:59 +0000 Alex Ashley + + * gst/gstelementfactory.c: + * gst/gstelementfactory.h: + elementfactory: add DECRYPTOR class defines + An element that performs decryption does not naturally fit within any + of the existing element factory class types. It is useful to be able + to easily get a list of all elements that support decryption so that + a union can be computed between the protection systems that have a + supported decryptor and the allowed protection systems for a particular + stream. + This commit adds a new GST_ELEMENT_FACTORY_TYPE_DECRYPTOR and its + associated string identifier "Decryptor". It also adds + GST_ELEMENT_FACTORY_TYPE_DECRYPTOR to GST_ELEMENT_FACTORY_TYPE_DECODABLE + so that uridecodebin can auto-plug a decryption element. + https://bugzilla.gnome.org/show_bug.cgi?id=705991 + +2015-04-13 17:01:41 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefindelement: Use gst_event_unref() instead of gst_mini_object_unref() + casting + +2015-04-13 14:40:22 +0200 Guillaume Desmottes + + * plugins/elements/gsttypefindelement.c: + typefind: fix leak in gst_type_find_element_src_event() + gst_type_find_element_src_event() is supposed to consume @event but wasn't + doing so when it was handling the event itself. + https://bugzilla.gnome.org/show_bug.cgi?id=747775 + Signed-off-by: Guillaume Desmottes + +2015-04-11 20:44:02 +0900 Hyunjun Ko + + * gst/gstvalue.c: + gstvalue: reset errno before g_ascii_strtoull call + "errno" already has meaningless value before g_ascii_strtoull call. + This causes invalid error check without reset. + https://bugzilla.gnome.org/show_bug.cgi?id=747690 + +2015-04-12 13:13:32 +0200 Sebastian Dröge + + * libs/gst/base/gstbasesrc.c: + basesrc: Only set DTS to segment.start on the first buffer if subclass did not provide PTS + Otherwise we're going to set a rather arbitrary DTS of segment.start (usually + 0) for live sources, which confuses synchronization if the source started + capturing at a later time. And it's especially wrong for raw media, for which + we should not set any DTS at all. + https://bugzilla.gnome.org/show_bug.cgi?id=747731 + +2014-09-02 17:40:28 +0300 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Run the default have-type handler after all application handlers + Otherwise the CAPS event will already be forwarded downstream and + the application has no way to intervene anymore. + https://bugzilla.gnome.org/show_bug.cgi?id=735896 + +2015-03-10 12:57:44 +1000 Duncan Palmer + + * plugins/elements/gstmultiqueue.c: + multiqueue: Don't automatically enter the buffering state when use-buffering is set. + There is no reason I can see to set mq->buffering = TRUE when + use_buffering is set; the code here also calls update_buffering(), which + will set mq->buffering = TRUE if this is warranted because of low buffer + levels. + https://bugzilla.gnome.org/show_bug.cgi?id=745937 + +2015-04-10 12:32:27 +0200 Guillaume Desmottes + + * plugins/elements/gstinputselector.c: + inputselector: fix cached buffer leak in chain function + gst_selector_pad_chain() was popping cached buffers out of the queue without + freeing those. Make sure we don't steal the GstBuffer as the cached buffer ref + has been passed to the pad chain function. + This can be reproduced by running the + validate.file.playback.switch_subtitle_track_while_paused.test5_mkv scenario + with Valgrind. + https://bugzilla.gnome.org/show_bug.cgi?id=747611 + Signed-off-by: Guillaume Desmottes + +2015-04-08 16:04:11 +0200 Edward Hervey + + * common: + * tests/check/Makefile.am: + * tests/examples/manual/Makefile.am: + tests: Use AM_TESTS_ENVIRONMENT + Needed by the new automake test runner + +2015-04-07 15:00:46 +0530 Prashant Gotarne + + * gst/gstbufferlist.c: + bufferlist: make sure list is writable before adding or removing buffers + https://bugzilla.gnome.org/show_bug.cgi?id=747439 + +2015-04-07 14:34:58 +0530 Prashant Gotarne + + * gst/gstbufferlist.c: + bufferlist: minor docs addition for gst_buffer_list_get() + Return buffer remains valid as long as list is valid + and buffer is not removed from list. + https://bugzilla.gnome.org/show_bug.cgi?id=747438 + +2015-04-07 11:38:31 +0100 Vincent Penquerc'h + + * libs/gst/base/gstbasesrc.c: + basesrc: fix pool leak on allocation query error path + It could be triggered by: + gst-launch-1.0 videotestsrc num-buffers=20 ! videcrop bottom=214748364 ! videoconvert ! autovideosink + Spotted while testing: + https://bugzilla.gnome.org/show_bug.cgi?id=743910 + +2015-04-06 18:45:37 -0700 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Forward SEGMENT_DONE events immediately + There might be no more data coming afterwards, and we just drained everything + that was left to be pushed anyway. + +2015-04-06 18:56:25 +0100 Tim-Philipp Müller + + * gst/gstinfo.c: + docs: fix cross-reference to environment variables in GstInfo + https://bugzilla.gnome.org/show_bug.cgi?id=747416 + +2015-04-06 10:18:15 +0530 Prashant Gotarne + + * gst/gstmemory.c: + memory: add check for writablity in resize + Add guard to gst_memory_resize() to make sure the + memory to be resized is actually writable. + https://bugzilla.gnome.org/show_bug.cgi?id=747392 + +2015-04-05 16:47:26 +0100 Tim-Philipp Müller + + * tests/check/elements/multiqueue.c: + tests: multiqueue: add test to make sure initial events go through without buffers + +2015-04-05 16:06:44 +0100 Tim-Philipp Müller + + * tests/check/elements/queue.c: + tests: queue: check that the initial events are sent on immediately + Add a check that makes sure stream-start, caps, and segment events + are passed on by queue without delay, i.e. even if no buffer is + sent. + +2015-04-04 18:33:18 -0700 Sebastian Dröge + + * gst/gstpad.c: + pad: Print debug output from gst_pad_link_full() if preparing linking failed + Makes it easier to find linking failures in debug logs. + +2015-04-04 19:29:51 +0100 Tim-Philipp Müller + + * gst/gstsegment.h: + segment: small docs addition + https://bugzilla.gnome.org/show_bug.cgi?id=690564 + +2015-04-04 18:18:03 +0100 Tim-Philipp Müller + + * docs/design/part-streams.txt: + * docs/design/part-synchronisation.txt: + docs: design: fix some 0.10-isms in GstSegment docs + 1) segment.accum -> segment.base + 2) Refer to GstSegment members as S.foo instead of + NS.foo, the event is now called a segment event + rather than newsegment event. + 3) There's no more abs_rate field in GstSegment, + and there never was an abs_applied_rate field. + https://bugzilla.gnome.org/show_bug.cgi?id=690564 + +2015-04-04 04:14:50 +0300 Ilya Konstantinov + + * libs/gst/base/gstbasesrc.c: + basesrc: do not leak buffer pool in error case + https://bugzilla.gnome.org/show_bug.cgi?id=747321 + +2015-04-03 19:12:48 -0400 Nicolas Dufresne + + * gst/gsturi.c: + uri: Silence a compiler warning + This is a false positive for use initialized. The variable is set and + used enclosed in the safe if condition. + +2015-04-03 16:32:16 -0400 Nicolas Dufresne + + * docs/gst/gstreamer-sections.txt: + doc: Add gst_segment_to_running_time_full + +2015-04-03 13:19:13 -0700 Sebastian Dröge + + * libs/gst/base/gstbasesrc.c: + basesrc: Fix documentation, buffer pools are unreffed and not freed + +2015-04-03 20:43:15 +0100 Tim-Philipp Müller + + * INSTALL: + Update INSTALL to the automake 1.14 version + +2015-04-03 18:57:36 +0100 Tim-Philipp Müller + + * autogen.sh: + * common: + Automatic update of common submodule + From bc76a8b to c8fb372 + +2015-04-03 16:27:10 +0100 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: fix exports + +2015-03-19 10:45:56 +0000 Vincent Penquerc'h + + * docs/gst/gstreamer-sections.txt: + * gst/gstsegment.c: + * gst/gstsegment.h: + * win32/common/libgstreamer.def: + segment: add gst_segment_is_equal + It beats memcmp due to the 'reserved' fields. + API: gst_segment_is_equal() + Found via, but probably not directly linked to, + https://bugzilla.gnome.org/show_bug.cgi?id=738216 + +2015-04-03 00:36:42 +0100 Tim-Philipp Müller + + * win32/common/libgstbase.def: + * win32/common/libgstreamer.def: + win32: add new API to exports + +2014-08-06 10:32:39 +0100 Tim-Philipp Müller + + * gst/gstpad.c: + * tests/check/gst/gstpad.c: + pad: allow probes to remove the data item whilst returning PROBE_OK + Use case: we want to block the source pad of a leaky queue and + drop the buffer that causes the block. If we return PROBE_DROP + then the buffer gets dropped, but we get called again. If we + return PROBE_OK we can't easily drop the buffer. If we just + replace the item into the GstPadProbeInfo structure with NULL, + GStreamer will push a NULL buffer to the next element when we + unblock the pad probe. This patch ensures it doesn't do that. + https://bugzilla.gnome.org/show_bug.cgi?id=734342 + +2015-02-12 19:39:44 -0500 Olivier Crête + + * gst/gstelement.c: + element: Document when a clock is available from gst_element_get_clock() + https://bugzilla.gnome.org/show_bug.cgi?id=744442 + +2015-02-12 19:40:06 -0500 Olivier Crête + + * docs/gst/gstreamer-sections.txt: + * gst/gstpipeline.c: + * gst/gstpipeline.h: + pipeline: Add binding friendly gst_pipeline_get_pipeline_clock() + Also skip gst_pipeline_get_clock() and gst_pipeline_set_clock() from the + bindings as they are confused with gst_element_*_clock(). + API: gst_pipeline_get_pipeline_clock() + https://bugzilla.gnome.org/show_bug.cgi?id=744442 + +2015-04-02 17:32:42 -0400 Nicolas Dufresne + + * libs/gst/base/gstbasetransform.c: + basetransform: Add Since mark for new method + https://bugzilla.gnome.org/show_bug.cgi?id=734424 + +2015-02-20 17:50:48 +0100 Thibault Saunier + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + basetransform: Add a method to let subclasses cleanly update srcpad caps + API: + gst_base_transform_update_src + https://bugzilla.gnome.org/show_bug.cgi?id=734424 + +2015-04-02 21:18:39 +0100 Tim-Philipp Müller + + * docs/pwg/advanced-scheduling.xml: + * docs/pwg/advanced-types.xml: + docs: pwg: fix missing comma and 0.10-ism in code sample + https://bugzilla.gnome.org/show_bug.cgi?id=747267 + https://bugzilla.gnome.org/show_bug.cgi?id=747266 + +2015-04-02 19:29:46 +0300 Ilya Konstantinov + + * gst/gstmemory.c: + memory: improve docs for _copy() and _share() + +2015-04-02 11:42:20 +0530 Prashant Gotarne + + * tests/check/elements/filesink.c: + test: filesink: add tests for buffers with multiple memory blocks + Update test_seeking testcase to verify the render and render_list + virtual method handle buffers and buffer list containing multiple + memory blocks correctly. + https://bugzilla.gnome.org/show_bug.cgi?id=747223 + +2015-04-02 09:44:33 +0200 Thibault Saunier + + * gst/gstelement.h: + element: Add a FIXME for 2.0 about request_new_pad VS request_pad naming + +2015-04-02 09:34:00 +0200 Thibault Saunier + + * gst/gstelement.c: + element: Fix request_new_pad introspection + Marking gst_element_request_pad as the caller of the ->request_new_pad + virtual method. + +2015-04-01 09:20:24 +0530 Prashant Gotarne + + * tests/check/elements/filesink.c: + tests: filesink: add check for render_list virtual method + GstFileSink implements the render_list virtual method to render + a list of buffers. Update the test_seeking test case to also + check the render_list method implementation. + https://bugzilla.gnome.org/show_bug.cgi?id=747100 + +2015-04-01 12:13:17 +0100 Tim-Philipp Müller + + * gst/gst_private.h: + * gst/gstcaps.c: + * gst/gstdebugutils.c: + debugutils: nicer printing of caps features + Only print interesting caps features, don't + append (memory:SystemMemory) to all caps, + which makes them much more unwieldy and + harder to read. Also use internal function + to get caps features so that our printing + has no side effects on the caps. + https://bugzilla.gnome.org/show_bug.cgi?id=746809 + +2015-03-26 13:05:57 +0100 Lubosz Sarnecki + + * gst/gstdebugutils.c: + debugutils: plot caps features + https://bugzilla.gnome.org/show_bug.cgi?id=746809 + +2015-03-31 23:48:22 +0900 Wonchul Lee + + * gst/gstpad.c: + pad: Fix a typo in a docstring + https://bugzilla.gnome.org/show_bug.cgi?id=747119 + +2015-03-31 11:15:10 +0200 Edward Hervey + + * gst/Makefile.am: + * libs/gst/base/Makefile.am: + * libs/gst/check/Makefile.am: + * libs/gst/controller/Makefile.am: + * libs/gst/net/Makefile.am: + introspection: Don't use g-ir-scanner cache at compile time + It pollutes user directories and we don't need to cache it + https://bugzilla.gnome.org/show_bug.cgi?id=747095 + +2015-03-28 14:45:35 +0000 Tim-Philipp Müller + + * gst/gstpad.c: + pad: fix outdated debug message + Buffer lists don't have groups any more in 1.0 + +2015-03-27 18:20:37 -0400 Nicolas Dufresne + + * libs/gst/base/gstbasesrc.c: + basesrc: Flush-stop starts live task in paused + The flush-stop event should not restart the task for live sources unless + the element is playing. This was breaking seeks in pause with the rtpsrc. + https://bugzilla.gnome.org/show_bug.cgi?id=635701 + +2015-03-27 16:23:40 +0000 Luis de Bethencourt + + * tests/check/elements/filesink.c: + tests: check location isn't truncated + Test covering the recent commit where location='".abc' won't get truncated + to '.ab' anymore + https://bugzilla.gnome.org/show_bug.cgi?id=688625 + +2015-03-26 17:01:06 +0000 Luis de Bethencourt + + * gst/gstvalue.c: + * tests/check/gst/gstvalue.c: + gstvalue: only unwrap string delimited with " + Don't unwrap strings that start but don't finish with a double quote. If a + string is delimited by two quotes we unescape them and any special characters + in the middle (like \" or \\). If the first character or the last character + aren't a quote we assume it's part of an unescaped string. + Moved some deserialize_string unit tests because we don't try to unwrap strings + missing that second quote anymore. + https://bugzilla.gnome.org/show_bug.cgi?id=688625 + +2015-03-27 17:16:03 +0000 Luis de Bethencourt + + * gst/parse/grammar.y: + parse: check before truncating strings + Don't truncate the last character of a string if it isn't necessary. + https://bugzilla.gnome.org/show_bug.cgi?id=688625 + +2015-03-27 10:15:16 +0100 Sebastian Dröge + + * gst/gstbus.c: + bus: Add guards against invalid arguments to set_flushing() and poll() + https://bugzilla.gnome.org/show_bug.cgi?id=746871 + +2015-03-25 10:49:08 -0300 Thiago Santos + + * libs/gst/base/gstbaseparse.c: + * tests/check/libs/baseparse.c: + baseparse: only post 'no valid frames' error if buffers were received + Otherwise baseparse will consider empty streams to be an error while + an empty stream is a valid scenario. With this patch, errors would + only be emitted if the parser received data but wasn't able to + produce any output from it. + This change is only for push-mode operation as in pull mode an + empty file can be considered an error for the one driving the + pipeline + Includes a unit test for it + https://bugzilla.gnome.org/show_bug.cgi?id=733171 + +2015-03-19 10:36:11 +0100 Jose Antonio Santos Cadenas + + * plugins/elements/gsttee.c: + * plugins/elements/gsttee.h: + * tests/check/elements/tee.c: + tee: Add allow-not-linked property + This property avoids not linked error when all the pads are unlinked + or when there are no source pads. This is useful in dynamic pipelines + where it can happen that for a short time there are no pads at all or + all downstream pads are not linked yet. + https://bugzilla.gnome.org/show_bug.cgi?id=746436 + +2015-03-21 17:13:18 -0500 Michael Catanzaro + + * docs/gst/running.xml: + docs: Fix typos + https://bugzilla.gnome.org/show_bug.cgi?id=746585 + +2015-03-21 15:46:50 -0500 Michael Catanzaro + + * gst/gstpluginloader.c: + pluginloader: Fix typos + https://bugzilla.gnome.org/show_bug.cgi?id=746585 + +2015-03-24 16:04:16 -0300 Thiago Santos + + * plugins/elements/gstoutputselector.c: + output-selector: add drain handling + Release the latest buffer, if any, and then just let + the drain be pushed downstream + +2015-03-24 19:32:49 +0100 Mathieu Duponchelle + + * Makefile.am: + Revert "Fix distcheck" + This reverts commit 56dd2d89c4eac460cbc37e2a51c1dd9e792999e8. + Installing completions to a custom prefix is now fixed. + +2015-03-24 19:30:52 +0100 Mathieu Duponchelle + + * libs/gst/helpers/Makefile.am: + helpers: remove completion-helper on uninstall + + And add it to CLEANFILES + +2015-03-18 19:38:15 +0100 Mathieu Duponchelle + + * data/completions/gst-inspect-1.0: + * data/completions/gst-launch-1.0: + * libs/gst/helpers/gst: + completions: remove last unnamespaced symbols. + https://bugzilla.gnome.org/show_bug.cgi?id=744877 + +2015-03-18 14:44:21 +0100 Mathieu Duponchelle + + * data/completions/gst-inspect-1.0: + * data/completions/gst-launch-1.0: + completions: remove deprecated shell syntax. + https://bugzilla.gnome.org/show_bug.cgi?id=744877#c21 + +2015-03-18 14:37:11 +0100 Mathieu Duponchelle + + * data/completions/gst-inspect-1.0: + * data/completions/gst-launch-1.0: + completions: prefix shell functions with _gst + + To make it more difficult for them to conflict in the + global namespace. + https://bugzilla.gnome.org/show_bug.cgi?id=744877#c21 + +2015-03-24 13:13:29 -0400 Nicolas Dufresne + + * configure.ac: + bash-completion: Respect the prefix + Don't try and install the bash helpers outside the defined prefix. + https://bugzilla.gnome.org/show_bug.cgi?id=744877 + +2014-11-19 13:08:45 +0100 Jan Alexander Steffens (heftig) + + * plugins/elements/gstinputselector.c: + input-selector: Rename _activate_sinkpad to _get_active_sinkpad + Removes the now unused 'pad' parameter and renames the function + to something more appropriate. + https://bugzilla.gnome.org/show_bug.cgi?id=739620 + +2014-11-19 13:03:21 +0100 Jan Alexander Steffens (heftig) + + * plugins/elements/gstinputselector.c: + input-selector: Remove pad's 'active' field + This is now never read. + https://bugzilla.gnome.org/show_bug.cgi?id=739620 + +2014-11-19 12:59:12 +0100 Jan Alexander Steffens (heftig) + + * plugins/elements/gstinputselector.c: + input-selector: Use segment-presence for running_time check + When determining whether the running_time of a pad can be + calculated, check if the segment is in TIME format instead + of using the 'active' field. + Since the latter is set through *any* activity, it's not a + reliable indicator of segment presence. + https://bugzilla.gnome.org/show_bug.cgi?id=739620 + +2015-03-23 13:20:34 +0100 Jan Alexander Steffens (heftig) + + * plugins/elements/gstinputselector.c: + * plugins/elements/gstinputselector.h: + input-selector: Remove 'blocked' flag + With the disappearance of the 'block' signal, this + flag cannot be set to TRUE. + gst_input_selector_wait disappears as it never waits + and just returns self->flushing. + https://bugzilla.gnome.org/show_bug.cgi?id=736891 + +2015-03-23 12:12:51 +0100 Jan Alexander Steffens (heftig) + + * plugins/elements/gstinputselector.c: + * plugins/elements/gstinputselector.h: + input-selector: Remove obsolete 'block' signal + This signal blocks the input-selector with no means of unblocking + other than a state change back to READY. It seems this signal was + part of an old way of synchronously switching the selector, + together with the already-removed 'switch' signal. + Removing the signal is safe, as attempting to use it could only + end in deadlocks. Attempting to emit an unknown signal just causes + g_criticals. + https://bugzilla.gnome.org/show_bug.cgi?id=736891 + +2015-03-23 13:05:30 +0100 Jan Alexander Steffens (heftig) + + * plugins/elements/gstinputselector.c: + input-selector: Fix waiting on EOS + This apparently got broken by bc1ec4e. Since self->blocked is always + FALSE, gst_input_selector_wait never actually waits. + Using (!self->eos || self->blocked) && ... as the loop condition would + be incorrect as well, because then the other call to the function in + _chain would block until EOS, so the functions cannot be merged trivially. + Since blocking is obsolete, gst_input_selector_wait will get removed anyway. + As such, just inline the loop. + https://bugzilla.gnome.org/show_bug.cgi?id=746518 + +2015-03-20 07:23:53 -0300 Thiago Santos + + * tests/check/elements/selector.c: + tests: input-selector: new tests for EOS handling + 3 new tests: + 1) Tests that a stream that is empty (just an EOS event) + on inactive pad doesn't get through and tamper + with the active pad that still has data + 2) Tests that a stream that is shorter than the active one + (pushes EOS earlier) doesn't has its EOS pushed + 3) Tests that switching to an inactive stream that has received + EOS will make input-selector push EOS + https://bugzilla.gnome.org/show_bug.cgi?id=746518 + +2015-03-19 12:11:19 +0000 Thiago Santos + + * tests/check/elements/selector.c: + tests: selector: remove weird semicolons at the end of test functions + Even though it works, it is not needed and seems more natural + to not have semicolons at the end of function declarations + https://bugzilla.gnome.org/show_bug.cgi?id=746518 + +2014-07-17 16:33:29 +0200 Jan Alexander Steffens (heftig) + + * plugins/elements/gstqueue2.c: + queue2: Process SEEKING query + Add QUERY_SEEKING handling to queue2, so RTMP live streams become + seekable when a queue2 in download or ringbuffer mode is inserted: + rtmpsrc ! queue2 ! flvdemux + https://bugzilla.gnome.org/show_bug.cgi?id=733351 + +2015-03-21 19:37:30 +0100 Sebastian Dröge + + * libs/gst/check/libcheck/check_run.c: + check: Fix uninitialized variable compiler warning with gcc + check_run.c: In function 'sig_handler': + check_run.c:127:13: warning: 'child_sig' may be used uninitialized in this function [-Wmaybe-uninitialized] + killpg(group_pid, child_sig); + ^ + check_run.c:130:31: warning: 'idx' may be used uninitialized in this function [-Wmaybe-uninitialized] + sigaction(sig_nr, &old_action[idx], NULL); + ^ + +2015-03-21 15:19:43 +0100 Sebastian Dröge + + * libs/gst/check/libcheck/check_run.c: + check: Catch SIGTERM and SIGINT in the test runner and kill all currently running tests + Otherwise e.g. ctrl+c in the test runner exits the test runner, while the test + itself is still running in the background, uses CPU and memory and potentially + never exits (e.g. if the test ran into a deadlock or infinite loop). + The reason why we have to manually kill the actual tests is that after + forking they will be moved to their own process group, and as such are + not receiving any signals sent to the test runner anymore. This is supposed + to be done to make it easier to kill a test, which it only really does if + the test itself is forking off new processes. + This fix is not complete though. SIGKILL can't be caught at all, and error + signals like SIGSEGV, SIGFPE are currently not caught. The latter will only + happen if there is a bug in the test runner itself, and as such seem less + important. + +2015-03-19 13:51:38 +0100 Sebastian Dröge + + * plugins/elements/gstvalve.c: + valve: Don't drop non-serialized queries when the valve is dropping + Otherwise we end up dropping e.g. CAPS queries, and then upstream just + negotiates to whatever format it wants to. Once the valve is not-dropping + anymore this can easily result in negotiation failing completely. + https://bugzilla.gnome.org/show_bug.cgi?id=746448 + +2015-03-20 09:00:47 +0100 Wim Taymans + + * gst/gst.c: + * gst/gstsegment.c: + * gst/gstsegment.h: + * tests/check/gst/gstsegment.c: + * win32/common/libgstreamer.def: + segment: remove the bounds check from _to_running_time_full() + Do not do any checks for the start/stop in the new + gst_segment_to_running_time_full() method, we can let this be done by + the more capable gst_segment_clip() method. This allows us to remove the + enum of results and only return the sign of the calculated running-time. + We need to put the old clipping checks in the old + gst_segment_to_running_time() still because they work slightly + differently than the _clip methods. + See https://bugzilla.gnome.org/show_bug.cgi?id=740575 + +2015-03-19 17:36:36 +0100 Wim Taymans + + * gst/gstsegment.c: + * gst/gstsegment.h: + * tests/check/gst/gstsegment.c: + segment: add option to disable clipping + Add a clip argument to gst_segment_to_running_time_full() to disable + the checks against the segment boundaries. This makes it possible to + generate an extrapolated running-time for timestamps outside of the + segment. + See https://bugzilla.gnome.org/show_bug.cgi?id=740575 + +2015-03-18 16:27:36 +0000 Tim-Philipp Müller + + * gst/gst.c: + gst: ref/unref new enum type in gst_init/deinit() + +2015-03-18 14:16:48 +0100 Mathieu Duponchelle + + * tests/misc/test-gstreamer-completion.sh: + * tools/gstreamer-completion: + tools: remove outdated completion script + + Remove the associated test + https://bugzilla.gnome.org/show_bug.cgi?id=744877#c21 + +2015-03-18 11:31:51 +0100 Wim Taymans + + * gst/gstsegment.c: + * gst/gstsegment.h: + * tests/check/gst/gstsegment.c: + * win32/common/libgstreamer.def: + segment: add helper to get negative running-time + Add a helper method to get a running-time with a little more features + such as detecting if the value was before or after the segment and + negative running-time. + API: gst_segment_to_running_time_full() + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=740575 + +2015-03-18 10:53:30 +0100 Wim Taymans + + * gst/gstsegment.c: + * tests/check/gst/gstsegment.c: + segment: fix offset handling with non 0 start + The position in the segment is relative to the start but the offset + isn't, so subtract the start from the position when setting the offset. + Add unit test for this as well. + +2015-03-18 09:36:35 +0100 Sebastian Dröge + + * plugins/elements/gstfunnel.c: + funnel: Add support for buffer lists + +2013-11-29 16:28:41 -0500 Olivier Crête + + * libs/gst/base/gstbaseparse.c: + baseparse: remove duplicate code + These are already freed by gst_base_parse_clear_queues() + https://bugzilla.gnome.org/show_bug.cgi?id=679768 + +2015-03-17 15:41:38 +0100 Sebastian Dröge + + * gst/gstpluginloader.c: + pluginloader: Fix indention + +2015-03-13 11:08:25 +0000 Vincent Penquerc'h + + * libs/gst/base/gstbaseparse.c: + baseparse: reset skip on segments and discontinuities + Large scale skip is an optimization, and thus it is safer to + stop skipping than to continue. Clear skip on segments and + discontinuities, as these are points where it is possible that + the original idea of "bytes to skip" changes. + +2015-03-15 14:19:17 +0000 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: Don't grow queue infinitely if only one pad is linked + This was introduced by + https://bugzilla.gnome.org/show_bug.cgi?id=719893 + https://bugzilla.gnome.org/show_bug.cgi?id=722891 + but it doesn't make any sense at all and causes huge memory leaks. + https://bugzilla.gnome.org/show_bug.cgi?id=744253 + +2015-03-14 21:07:01 +0000 Tim-Philipp Müller + + * libs/gst/base/gstbasesink.c: + basesink: handle empty buffer list more gracefully + Don't abort, just ignore it. It's like a buffer + without memories. + +2015-03-14 17:39:39 +0000 Tim-Philipp Müller + + * libs/gst/base/gstadapter.c: + adapter: minor optimisation for gst_adapter_take_buffer_list() + Try to allocate buffer list with a suitable size from the + beginning to avoid having to re-alloc the buffer list array. + +2015-03-14 17:23:03 +0000 Tim-Philipp Müller + + * tests/check/libs/adapter.c: + tests: add unit test for gst_adapter_take_buffer_list() + +2015-03-14 17:20:33 +0000 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstadapter.h: + * win32/common/libgstbase.def: + adapter: add gst_adapter_take_buffer_list() + API: gst_adapter_take_buffer_list() + +2015-03-14 16:05:57 +0000 Tim-Philipp Müller + + * tests/.gitignore: + * tests/check/elements/.gitignore: + Add new streamiddemux binaries to .gitignore + +2015-03-14 16:00:47 +0000 Tim-Philipp Müller + + * libs/gst/base/gstcollectpads.c: + collectpads: avoid multiple calls to gst_buffer_get_size() in macro + +2015-03-14 15:58:00 +0000 Tim-Philipp Müller + + * libs/gst/base/gstadapter.c: + adapter: avoid multiple calls to gst_buffer_get_size() in macro + +2015-03-13 18:22:01 +0000 Ramiro Polla + + * gst/gstelement.c: + element: properly escape percent sign in documentation + +2015-03-14 13:37:09 +0000 Sebastian Dröge + + * gst/gstbuffer.c: + buffer: Use the correct enum type to fix a compiler warning + gstbuffer.c:522:58: error: implicit conversion from enumeration type 'GstBufferFlags' to + different enumeration type 'GstBufferCopyFlags' [-Werror,-Wenum-conversion] + if (!gst_buffer_copy_into (copy, (GstBuffer *) buffer, flags, 0, -1)) + ~~~~~~~~~~~~~~~~~~~~ ^~~~~ + gstbuffer.c:534:46: error: implicit conversion from enumeration type 'GstBufferCopyFlags' to + different enumeration type 'GstBufferFlags' [-Werror,-Wenum-conversion] + return gst_buffer_copy_with_flags (buffer, GST_BUFFER_COPY_ALL); + ~~~~~~~~~~~~~~~~~~~~~~~~~~ ^~~~~~~~~~~~~~~~~~~ + ./gstbuffer.h:433:31: note: expanded from macro 'GST_BUFFER_COPY_ALL' + ...((GstBufferCopyFlags)(GST_BUFFER_COPY_METADATA | GST_BUFFER_COPY_MEMORY)) + ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +2015-03-14 14:06:09 +0100 Wim Taymans + + * win32/common/libgstnet.def: + defs: update defs + +2014-10-30 15:39:21 +0000 William Manley + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/net/Makefile.am: + * libs/gst/net/gstnetcontrolmessagemeta.c: + * libs/gst/net/gstnetcontrolmessagemeta.h: + meta: Add `GstNetControlMessageMeta` + GstNetAddress can be used to store ancillary data which was received with + or is to be sent alongside the buffer data. When used with socket sinks + and sources which understand this meta it allows sending and receiving + ancillary data such as unix credentials (See `GUnixCredentialsMessage`) + and Unix file descriptions (See `GUnixFDMessage`). + This will be useful for implementing protocols which use file-descriptor + passing in payloaders/depayloaders without having to re-implement all the + socket handling code already present in elements such as multisocketsink, + etc. This, in turn, will be useful for implementing zero-copy video IPC. + This meta uses the platform independent `GSocketControlMessage` API + provided by GLib as a part of GIO. As a result this new meta does not + require any new dependencies or any conditional compliation for + portablility, although it is unlikely to do anything useful on non-UNIX + platforms. + +2015-03-14 11:57:33 +0000 Nicolas Dufresne + + * gst/gstquery.c: + allocation: Allow allocation pool without size + This allow proposing a number of buffers required even if the size + of buffer is unfixed. This is often the case for encoded formats. + +2015-03-01 13:15:40 -0500 Nicolas Dufresne + + * gst/gstbufferpool.c: + * tests/check/gst/gstbufferpool.c: + bufferpool: Don't stop the pool in set_config() + Don't stop the pool in set_config(). Instead, let the controlling + element manage it. Most of the time, when an active pool is being + configured is because the caps didn't change. + https://bugzilla.gnome.org/show_bug.cgi?id=745377 + +2015-03-13 18:53:11 +0000 Thiago Santos + + * libs/gst/base/gstbasesink.c: + basesink: drain on allocation query + Allows buffers to be reclaimed when caps is to be renegotiated so + that bufferpools can be stopped. As the allocation query is + serialized all buffers have been already drained from the pipeline, + except this last_sample one. + https://bugzilla.gnome.org/show_bug.cgi?id=682770 + +2015-03-13 18:35:14 +0000 Thiago Santos + + * libs/gst/base/gstbasesink.c: + basesink: when draining, deep copy the last buffer to unref old memory + Use gst_buffer_copy_deep() to force the copy of the underlying + memory instead of possibly doing a shallow copy of the buffer + and just referencing the memory + https://bugzilla.gnome.org/show_bug.cgi?id=745287 + +2015-03-13 18:35:01 +0000 Thiago Santos + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * tests/check/gst/gstbuffer.c: + * win32/common/libgstreamer.def: + gstbuffer: add gst_buffer_copy_deep + A variant of gst_buffer_copy that forces the underlying memory + to be copied. + This is added to avoid adding an extra reference to a GstMemory + that might belong to a bufferpool that is trying to be drained. + The use case is when the buffer copying is done to release the + old buffer and all its resources. + https://bugzilla.gnome.org/show_bug.cgi?id=745287 + +2015-03-13 15:31:30 +0000 Sebastian Dröge + + * gst/gstbus.c: + bus: Use g_list_free_full() instead of manually unreffing and freeing + Also unref the messages, not the GList nodes. + +2015-03-13 13:42:46 +0000 Sebastian Dröge + + * gst/gstbus.c: + bus: Fix another case where we hold the object lock while unreffing a message + +2015-03-13 15:28:42 +0200 Vivia Nikolaidou + + * gst/gstbus.c: + bus: Unreferencing messages outside the lock + Shouldn't take the lock while unreferencing messages, because that may cause + more messages to be sent, which will try to take the lock and cause the app to + hang. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=728777 + +2015-02-23 20:27:32 +0200 Vivia Nikolaidou + + * docs/gst/gstreamer-sections.txt: + * gst/gstutils.c: + * gst/gstutils.h: + * win32/common/libgstreamer.def: + utils: Add gst_bin_sync_children_states() + gst_bin_sync_children_states() will iterate over all the elements of a bin and + sync their states with the state of the bin. This is useful when adding many + elements to a bin and would otherwise have to call + gst_element_sync_state_with_parent() on each and every one of them. + https://bugzilla.gnome.org/show_bug.cgi?id=745042 + +2015-02-03 16:12:32 +0100 Aurélien Zanelli + + * gst/printf/vasnprintf.c: + printf: handle unsigned modifier for long long + Otherwise, an unsigned integer will be displayed as a signed one if we + use internal print, ie HAVE_LONG_LONG_FORMAT is not defined. + https://bugzilla.gnome.org/show_bug.cgi?id=746096 + +2015-03-12 14:39:37 +0000 Sebastian Dröge + + * plugins/elements/gststreamiddemux.c: + streamiddemux: Reset pad counter after removing all pads + +2014-03-04 19:40:05 +0900 HoonHee Lee + + * configure.ac: + * plugins/elements/Makefile.am: + * plugins/elements/gstelements.c: + * plugins/elements/gststreamiddemux.c: + * plugins/elements/gststreamiddemux.h: + * tests/check/Makefile.am: + * tests/check/elements/streamiddemux.c: + * tests/examples/Makefile.am: + * tests/examples/streamiddemux/Makefile.am: + * tests/examples/streamiddemux/streamiddemux-stream.c: + streamiddemux: Add streamiddemux element + Demultiplex a stream to multiple source pads based on the stream ids from the + stream-start events. This basically reverses the behaviour of funnel. + https://bugzilla.gnome.org/show_bug.cgi?id=707605 + +2015-03-12 13:29:35 +0000 Tim-Philipp Müller + + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstversion.h: + win32: update + +2015-03-12 13:26:59 +0000 Tim-Philipp Müller + + * tests/check/Makefile.am: + * tests/check/gst/.gitignore: + * tests/check/gst/gstprintf.c: + tests: add some basic unit tests for our printf stuff + To test new %I32 support. + https://bugzilla.gnome.org/show_bug.cgi?id=744281 + +2015-02-10 17:40:48 +0100 Matej Knopp + + * gst/printf/printf-parse.c: + printf: add support for %I32 + https://bugzilla.gnome.org/show_bug.cgi?id=744281 + +2015-03-12 13:14:52 +0000 Tim-Philipp Müller + + * gst/gstinfo.c: + info: move category level threshold check into log function dispatcher + Minor optimisation: check category log level earlier in the + log function dispatcher and not only in the default log + function. + https://bugzilla.gnome.org/show_bug.cgi?id=745213 + +2015-03-12 12:59:57 +0000 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Reset segment when deactivating pull mode or not running in pull mode + We use the segment format to detect if we run the streaming thread or not. + Without resetting we might believe we do so, although we only did in the past + and are now running in e.g. push mode. + https://bugzilla.gnome.org/show_bug.cgi?id=745073 + +2015-03-08 20:42:38 +0100 Michał Dębski + + * libs/gst/check/libcheck/check_msg.c: + * m4/check-checks.m4: + check: Use mkstemp instead of tempnam if possible + Using tempnam() is deprecated, this gives warning and fails the build + with -Werror. + https://bugzilla.gnome.org/show_bug.cgi?id=745858 + +2015-03-11 16:36:29 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: clean up the need_preroll variable + Based on patch from Song Bing + Don't just set the need_preroll flag to TRUE in all cases. When we + are already prerolled it needs to be set to FALSE and when we go to + READY we should not touch it. We should only set it to TRUE in other + cases, like what the code above does. + See https://bugzilla.gnome.org/show_bug.cgi?id=736655 + +2014-12-05 14:16:52 +0900 hoonhee.lee + + * plugins/elements/gstfunnel.c: + * tests/check/elements/funnel.c: + funnel: handle GAP event to forwards sticky events into downstream + If no data is coming and funnel receive GAP event, need to forwards sticky events + into downstream if it needs. + https://bugzilla.gnome.org/show_bug.cgi?id=738202 + +2015-03-10 16:42:44 +0000 Luis de Bethencourt + + * libs/gst/check/libcheck/check_run.c: + check: duplicate code branches + CID #1226446 + +2015-03-10 09:21:22 +0000 Tim-Philipp Müller + + * gst/gstinfo.c: + * tests/check/pipelines/queue-error.c: + Fix double semicolons + +2015-02-22 10:12:01 +0100 Mark Nauwelaerts + + * win32/common/libgstbase.def: + win32: update exports + +2015-02-21 20:13:04 +0100 Mark Nauwelaerts + + * libs/gst/base/gstflowcombiner.c: + * libs/gst/base/gstflowcombiner.h: + flowcombiner: add a gst_flow_combiner_update_pad_flow() method + https://bugzilla.gnome.org/show_bug.cgi?id=744572 + API: gst_flow_combiner_update_pad_flow() + +2015-02-15 20:52:10 +0100 Mark Nauwelaerts + + * libs/gst/base/gstflowcombiner.c: + * libs/gst/base/gstflowcombiner.h: + flowcombiner: add a gst_flow_combiner_reset() method + https://bugzilla.gnome.org/show_bug.cgi?id=744572 + API: gst_flow_combiner_reset() + +2015-03-06 10:59:58 +0100 Sebastian Dröge + + * libs/gst/base/gstbasesrc.c: + basesrc: Fix typo in debug message + +2015-03-05 18:30:45 +0000 Tim-Philipp Müller + + * gst/gstinfo.c: + info: avoid malloc/free if log object is NULL + +2015-03-05 17:54:04 +0000 Tim-Philipp Müller + + * gst/gstinfo.c: + info: move __FILE__ path shortening into default log handler + Instead of always shortening the __FILE__ path, even if the + log message is not actually printed, which might happen if + the log level is activated but the category is not, only + shorten the path if we're actually going to output it and + if it looks like it needs shortening. Log handlers had no + guarantee that they would get a name instead of a path + anyway on any architecture, so it shouldn't be a problem. + https://bugzilla.gnome.org/show_bug.cgi?id=745213 + +2015-02-27 01:16:58 +1100 Peter Urbanec + + * gst/gstinfo.c: + info: shorten __FILE__ on all platforms + This is useful not only for MSVC, but also with gcc/Linux + when doing cross-compilation builds and out-of-tree builds. + https://bugzilla.gnome.org/show_bug.cgi?id=745213 + +2015-03-04 11:02:41 +0000 Vincent Penquerc'h + + * docs/design/part-latency.txt: + docs: clarify min-latency wording in part-latency.txt + https://bugzilla.gnome.org/show_bug.cgi?id=744338 + +2015-02-26 14:43:25 +0100 Marcin Kolny + + * win32/common/gstconfig.h: + win32/common/gstconfig.h: removed libxml include directive + This is a leftover from 0.10 and not needed anymore. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=745210 + +2015-03-03 12:53:13 +0100 Sebastian Dröge + + * plugins/elements/gstqueue2.c: + queue2: Signal the sinkpad thread if a flow error happened + It might still be waiting for a query to be handled, or the queue to become + empty again for the next item. Also if downstream returns FLUSHING, flush the + queue like we do in queue and multiqueue. + +2015-03-03 12:48:34 +0100 Sebastian Dröge + + * plugins/elements/gstqueue.c: + queue: Wake up the query function on errors from the loop function + Otherwise we might wait forever for serialized queries to be handled as the + loop function is stopped and as such we will never ever dequeue the query and + handle it. + https://bugzilla.gnome.org/show_bug.cgi?id=745319 + +2015-03-02 20:31:58 +0000 Tim-Philipp Müller + + * gst/gstutils.c: + utils: improve warning when linking elements without common ancestor + This comes up quite a lot and it's a common mistake, so let's + try to improve the warning message a little. + +2015-02-27 00:33:27 +0530 Arun Raghavan + + * plugins/elements/gstinputselector.c: + input-selector: Drop custom latency query handling + The default latency query handler now implements this logic + +2015-02-26 15:57:20 +0100 Mathieu Duponchelle + + * scripts/gst-uninstalled: + gst-unsinstalled: Add ges-launch manuals path to MANPATH. + +2015-02-26 13:08:48 +0530 Arun Raghavan + + * gst/gstpad.c: + pad: Don't fail latency query on unlinked pads + A single unlinked pad can make the latency query fail across the + pipeline, which is probably not desirable. Instead, we return a default + anything goes value. + Perhaps we should also be emitting a gst_message_new_latency() when a + PLAYING element has one of its pads linked. + https://bugzilla.gnome.org/show_bug.cgi?id=745197 + +2014-10-22 16:43:43 +0200 Edward Hervey + + * libs/gst/base/gstbaseparse.c: + baseparse: Don't emit errors on EOS if we saw GAP events + If we saw GAP events (meaning the streams is advancing) before we get + EOS, we should not post an ERROR, since it is not fatal. + https://bugzilla.gnome.org/show_bug.cgi?id=745143 + +2015-02-25 08:26:19 +0100 Edward Hervey + + * gst/gstvalue.h: + * tests/check/gst/gstinfo.c: + gstvalue: Make sure GST_FOURCC_ARGS produces printable characters + Some systems will crash if we use non-printable characters in print/debug + statements. + Make sure that GST_FOURCC_ARGS never does that + https://bugzilla.gnome.org/show_bug.cgi?id=745144 + +2015-02-25 16:11:06 +0000 Luis de Bethencourt + + * gst/gstutils.c: + gstutils: remove incorrect Fixme comment + If the checks were changed to using g_return_if_fail() the GST_DEBUG lines + about the specific failure would be lost. + +2015-02-25 16:02:39 +0000 Luis de Bethencourt + + * gst/gstutils.c: + gstutils: remove obsolete Fixme comment + gst_pad_link_filtered() is very long gone and current + gst_element_link_pads_filtered() doesn't apply to this Fixme comment. + +2015-02-24 21:58:00 +0100 Matthieu Bouron + + * scripts/gst-uninstalled: + gst-uninstalled: add adaptivedemux paths from -bad + https://bugzilla.gnome.org/show_bug.cgi?id=745122 + +2015-02-24 18:14:47 +0000 Luis de Bethencourt + + * docs/faq/developing.xml: + docs: remove dead link + Remove dead link to wiki page for SubmittingPatches + https://bugzilla.gnome.org/show_bug.cgi?id=730311 + +2015-02-24 14:07:54 +0100 Mathieu Duponchelle + + * libs/gst/helpers/Makefile.am: + helpers: Fix install of completion-helper. + By applying the supplied transformation to the program name, + for example --program-prefix. + +2015-02-23 16:39:43 -0500 Nicolas Dufresne + + * libs/gst/helpers/Makefile.am: + completion-helper: Add missing DESTDIR + Otherwise doing "make install DESTDIR" will try to write to + /usr/share/... + +2015-02-23 21:17:16 +0100 Mathieu Duponchelle + + * libs/gst/helpers/gst-completion-helper.c: + completion-helper: Add filtering by klass and sink caps. + +2015-02-21 17:13:26 +0100 Mark Nauwelaerts + + * plugins/elements/gstmultiqueue.c: + multiqueue: avoid returning downstream GST_FLOW_EOS from previous segment to current upstream segment + +2015-02-22 10:02:25 +0100 Mark Nauwelaerts + + * libs/gst/base/gstflowcombiner.c: + flowcombiner: fix documentation comment typo + +2015-02-22 10:01:33 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: drain segment upon SEGMENT_DONE to ensure proper event order + +2015-02-22 10:01:50 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: clean up some bogus commented code + +2015-02-23 19:10:08 +0100 Mathieu Duponchelle + + * libs/gst/helpers/Makefile.am: + completion-helper: Append $(EXEEXT) to the name of the moved file. + Fixes the build on Windows + (https://ci.gstreamer.net/job/cerbero-cross-mingw32/1742/console) + +2015-02-23 17:23:33 +0000 Tim-Philipp Müller + + * Makefile.am: + Fix distcheck + Disable bash completion during distchecking otherwise + it may try to install into a system path and fail. + +2015-02-23 17:16:45 +0000 Tim-Philipp Müller + + * Makefile.am: + Dist new data directory + Fixes 'make dist' + +2015-02-20 22:04:22 +0100 Mathieu Duponchelle + + * Makefile.am: + * configure.ac: + * data/Makefile.am: + * data/completions/gst-inspect-1.0: + * data/completions/gst-launch-1.0: + * libs/gst/helpers/.gitignore: + * libs/gst/helpers/Makefile.am: + * libs/gst/helpers/gst: + * libs/gst/helpers/gst-completion-helper.c: + * pkgconfig/gstreamer-uninstalled.pc.in: + * pkgconfig/gstreamer.pc.in: + bash-completion: Implement in a different way. + + Gets installed + + Uses a helper tool, gst-completion-helper, installed in + bash-completions/helpers. + + Adds a common script that other tools can source. + https://bugzilla.gnome.org/show_bug.cgi?id=744877 + +2015-02-23 12:08:49 +0000 Luis de Bethencourt + + * gst/Makefile.am: + * gst/gst.h: + GstDeviceMonitor: keep alphabetical order + +2015-02-20 16:22:23 -0500 Olivier Crête + + * gst/gstelement.c: + * tests/check/gst/gstelement.c: + Revert "element: set pads need-parent flag to false when removing" + This reverts commit 1911554cff2c4a11772b541a8215a80c728b1097. + This breaks the functionality of GST_PAD_FLAG_NEED_PARENT, the reason for this + flag is that if a pad is removed from a running element, you don't want + functions (such as chain or event) to be called on the pad without a parent set. + This can happen if you remove a request or sometimes pad from a running element. + I don't see the code that caused this in tsdemux, but if it needs to unset + the flag on remove, it should do it itself and then make sure that the parent + exists in any pad function. + +2015-02-19 12:17:15 +0100 Mathieu Duponchelle + + * libs/gst/check/gstcheck.h: + check: cast element in ASSERT_SET_STATE. + https://bugzilla.gnome.org/show_bug.cgi?id=744777 + +2015-02-19 01:16:52 +0200 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + inputselector: Use a separate query for upstream pads and let it fail if one upstream query fails + +2015-02-19 01:12:49 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: If the latency query fails for one of the pads, it fails overall + +2015-02-18 11:05:19 +0200 Sebastian Dröge + + * plugins/elements/gstqueue.c: + queue: Remove unused boolean parameter from internal functions + +2015-02-17 12:11:43 +0200 Sebastian Dröge + + * tests/check/elements/queue.c: + queue: Add unit test for buffer list and time level handling + +2015-02-17 11:44:40 +0200 Sebastian Dröge + + * plugins/elements/gstqueue.c: + queue: Add support for buffer lists + +2015-02-17 11:41:50 +0200 Sebastian Dröge + + * plugins/elements/gstqueue2.c: + queue2: Count the number of buffers in a buffer list for updating the current levels + instead of just assuming one buffer. + +2015-02-17 20:47:23 +0000 Tim-Philipp Müller + + * gst/gstmessage.c: + message: revive async delivery message before bus thread can run unref + Revive message in dispose handler before we signal the bus thread, + otherwise the bus thread might be woken up and unref the message + before we had a chance to revive it yet. + +2015-02-16 23:02:40 +0000 Tim-Philipp Müller + + * tests/check/gst/gstbus.c: + tests: bus: add unit test for async message delivery + +2015-02-16 22:39:42 +0000 Tim-Philipp Müller + + * gst/gst_private.h: + * gst/gstbus.c: + * gst/gstmessage.c: + message, bus: fix async message delivery + Async message delivery (where the posting thread gets blocked + until the message has been processed and/or freed) was pretty + much completely broken. + For one, don't use GMutex implementation details to check + whether a mutex has been initialized or not, esp. not + implementation details that don't hold true any more with + newer GLib versions where atomic ops and futexes are used + (spotted by Josep Torras). This led to async message + delivery no longer blocking with newer GLib versions on + Linux. + Secondly, after async delivery don't free mutex/GCond + embedded inside the just-freed message structure. + Use a new (private) mini object flag to signal GstMessage + that the message being freed is part of an async delivery + on the bus so that the dispose handler can keep the message + alive and the bus can free it once it's done cleaning up + stuff. + +2015-02-16 19:24:44 +0000 Tim-Philipp Müller + + * gst/gstinfo.c: + info: nicer buffer offset printing when offsets are not set + Print unset offsets as 'none' instead of humongous numbers, + for better readability. + +2015-02-16 11:35:41 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Only initialize GValue to a type once, not on every retry + Otherwise we'll get warnings like this: + cannot initialize GValue with type 'gboolean', the value has already been initialized as 'gboolean' + +2015-02-14 12:15:03 +0100 Matthieu Bouron + + * gst/gstutils.c: + gstutils: check uri before using it in gst_pad_create_stream_id_internal + If an element implements wrongly the URI query and set the uri to NULL and if + the element calls gst_pad_create_stream_id at some point, it will lead to crash + as the uri is not supposed to be NULL in the gst_pad_create_stream_id_internal + function. + https://bugzilla.gnome.org/show_bug.cgi?id=744520 + +2015-02-13 19:43:24 +0100 Thibault Saunier + + * libs/gst/controller/gsttimedvaluecontrolsource.c: + timedvaluecontrolsource: Do not wrongly send value-removed + And avoid freeing something we do not own + +2015-02-04 15:06:17 +0100 Thibault Saunier + + * scripts/gst-uninstalled: + gst-uninstalled: Set GST_VALIDATE_PLUGIN_PATH + +2015-02-12 13:34:49 -0300 Thiago Santos + + * libs/gst/base/gstbasesrc.c: + basesrc: fix documentation and debug message after latency updates + Changes docs and message according to latency handling fix + +2015-02-12 14:50:15 +0000 Frédéric Wang + + * plugins/elements/gstfdsrc.c: + fdsrc: use g_ascii_strtoull() to convert size string in uri + sscanf() doesn't handle G_GUINT64_FORMAT well on mingw64 it + appears, leading to compiler warnings. + https://bugzilla.gnome.org/show_bug.cgi?id=744034 + +2015-02-12 14:03:15 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: gst_pad_iterate_internal_links() can return NULL if there are none + +2015-02-12 14:03:03 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Return NULL instead of FALSE for pointers + +2015-02-12 13:55:36 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Implement more useful default handling for the LATENCY query + Before we just took the values from the first pad that succeded the query, + now we accumulate the results of every sinkpad properly and return that + result. + +2015-02-12 11:26:26 +0200 Sebastian Dröge + + * docs/design/part-latency.txt: + design/part-latency: Minor logic fix + The maximum latency will be the element's minimum latency or bigger, + not bigger than the element's minimum latency or bigger. + +2015-02-11 13:41:56 +0100 Sebastian Dröge + + * gst/gstquery.c: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * plugins/elements/gstqueue.c: + Improve and fix LATENCY query handling + This now follows the design docs everywhere. + https://bugzilla.gnome.org/show_bug.cgi?id=744106 + +2015-02-11 12:20:39 +0100 Sebastian Dröge + + * docs/design/part-latency.txt: + design/part-latency: Add more details about min/max latency handling + These docs missed many details that were not obvious and because of that + handled in a few different, incompatible ways in different elements and base + classes. + https://bugzilla.gnome.org/show_bug.cgi?id=744106 + +2015-02-07 05:16:23 +1100 Jan Schmidt + + * tests/check/gst/gstclock.c: + tests: Fix clock regression test + Fix up the values the test is checking for now that + the clock regression returns parameters starting from + the end of the regression range. + +2015-02-07 04:22:22 +1100 Jan Schmidt + + * libs/gst/net/gstnetclientclock.c: + netclock: Don't update the clock when it desynch + Add a hold off when the clock calibration suddenly loses synch, + as it may be a glitch, but also make sure we update if it stays + desynched for more than a few seconds + +2015-02-06 06:07:43 +1100 Jan Schmidt + + * libs/gst/net/gstnetclientclock.c: + netclock: Make the RTT average ignore large values more forcefully. + Smooth larger RTTs a little harder, so excessively large values + perturb the average a bit less, and therefore get filtered out + more strongly + +2015-02-05 22:55:39 +1100 Jan Schmidt + + * gst/gstclock-linreg.c: + clock: Make linear regression x/y base start from maximum observation. + Project the results of the linear regression to the end of the + regression range, so they're more directly comparable to results + going forward + +2015-02-05 13:49:47 +0000 Tim-Philipp Müller + + * gst/gstpad.c: + pad: add "offset" property to go with gst_pad_set_offset() + So we can set the offset via gst-launch. + +2015-02-02 08:22:47 +0100 Stefan Sauer + + * gst/gstplugin.c: + plugin: add more detail to logging when not loading a plugin + Improve the log messages and add e.g the version number we checked. + +2015-02-02 17:37:44 +1100 Jan Schmidt + + * gst/gstpad.c: + gstpad: Fix a typo in a docstring. + +2015-02-01 14:23:26 -0500 Nicolas Dufresne + + * gst/gsttask.c: + build: Check that _MSC_VER macro is defined + +2015-02-01 03:39:03 +0200 Ilya Konstantinov + + * configure.ac: + * gst/gsttask.c: + task: Add thread name support on OS X and iOS + +2015-01-29 16:37:07 +0100 Sebastian Dröge + + * gst/gstclock-linreg.c: + clock: Don't use invalid objects for GST_DEBUG_OBJECT() + Not sure what "clock" actually is here, it must be something defined by one of + the headers that are included. + +2015-01-29 12:10:18 +0100 Sebastian Dröge + + * gst/gstbuffer.c: + buffer: Document that gst_buffer_copy_region() accepts -1 as size to copy until the end + It's just a wrapper around gst_buffer_copy_into() after all. + +2014-12-09 16:28:56 +1100 Jan Schmidt + + * gst/gstsegment.c: + * gst/gstsegment.h: + segment: Add new skip flags for clarifying trick mode playback. + Add GST_SEEK_FLAG_TRICKMODE_KEY_UNITS and + GST_SEEK_FLAG_TRICKMODE_NO_AUDIO, and rename GST_SEEK_FLAG_SKIP + to GST_SEEK_FLAG_TRICKMODE (with backwards compat define). + Do the same for the corresponding SEGMENT flags. + https://bugzilla.gnome.org/show_bug.cgi?id=735666 + +2015-01-23 08:59:27 +0100 Stefan Sauer + + * libs/gst/check/gstcheck.c: + check: fix another typo in the docs + +2015-01-22 23:10:06 +0200 Sebastian Dröge + + * gst/gsturi.c: + * tests/check/gst/gsturi.c: + uri: Fix indention + +2015-01-21 14:10:02 +0000 David Waring + + * tests/check/gst/gsturi.c: + uri: Fix new URI parsing tests based on GNet's + https://bugzilla.gnome.org/show_bug.cgi?id=743195 + +2015-01-21 14:09:45 +0000 David Waring + + * gst/gsturi.c: + uri: Fix parsing issues + Make host IPs in square brackets store only the IP, i.e. strip the brackets. + Strip leading whitespace characters in URIs. + Fail parsing when host part does not match any valid formats from RFC3986. + https://bugzilla.gnome.org/show_bug.cgi?id=743195 + +2015-01-19 19:15:32 +0100 Sebastian Dröge + + * tests/check/gst/gsturi.c: + uri: Add parsing unit test based on GNet's + Plus some new URIs to parse. + https://git.gnome.org/browse/archive/gnet/plain/tests/check/gnet/gneturi.c + https://bugzilla.gnome.org/show_bug.cgi?id=743195 + +2015-01-22 11:29:18 +0100 Heinrich Fink + + * libs/gst/check/gstcheck.c: + check: Fix doc of GST_CHECKS and GST_CHECKS_IGNORE + https://bugzilla.gnome.org/show_bug.cgi?id=743335 + +2015-01-21 18:07:09 +0100 Sebastian Dröge + + * libs/gst/check/Makefile.am: + * libs/gst/check/gstcheck.c: + check: Add _fail_unless() compatibility function around _ck_assert_failed() + We exported this in < 1.5 and it was automatically used by many macros + from the header. Keep it exported for now. + +2015-01-21 14:12:22 +0100 Edward Hervey + + * gst/gstpad.c: + gstpad: Inline apply_pad_offset() + Avoid doing a function call for something which will mostly be unused + +2015-01-21 14:10:06 +0100 Edward Hervey + + * gst/gstpad.c: + gstpad: Fix debug message + +2015-01-21 11:45:41 +0100 Edward Hervey + + * gst/gstpad.c: + gstpad: Fix PROBE_NO_DATA macro + The problem was that the macro was always used with 'ret' as the defaultval + argument. + This would result in the macro eventually expanding to + if (G_UNLIKELY (ret != ret && ret != GST_FLOW_OK)) + ... ret != ret will always fail, and therefore we'd never call the + following line. + Instead of that, store the previous value locally for comparision + +2015-01-21 22:44:59 +1100 Jan Schmidt + + * libs/gst/net/gstnetclientclock.c: + netclock: Fix docs typo. Clock bus messages are GST_MESSAGE_ELEMENT + +2015-01-15 22:32:28 +1100 Jan Schmidt + + * libs/gst/net/gstnetclientclock.c: + netclock: Implement rate limits for polling and fix up skew limits + Add the minimum-update-interval property to the clock, with a default + of 50ms and don't send polling requests faster than that. That helps to + ensure we spread the initial observations out a little - startup takes + a little longer, but tracking is more stable. + Move the discont skew limiting code inside an if statement, so that + it's only done when the linear regression succeeds and the clock + parameters might actually change. + +2015-01-15 10:05:32 +1100 Jan Schmidt + + * gst/Makefile.am: + * gst/gst_private.h: + * gst/gstclock-linreg.c: + * gst/gstclock.c: + * tests/check/gst/gstclock.c: + clock: Improve slaving regression. + Add domain checks for the input values, and a variable precision + calculation that loops if necessary to ensure we never overflow + accumulators and then silently produce garbage results. + Make the (non-public) linear regression function available for + unit testing by putting it in a separate source file the test + can include. Add a unit test that the new regression function + produces sensible results for several inputs taken from real-world + captures. + +2015-01-10 21:42:00 +1100 Jan Schmidt + + * configure.ac: + * tests/examples/Makefile.am: + * tests/examples/netclock/.gitignore: + * tests/examples/netclock/Makefile.am: + * tests/examples/netclock/netclock-client.c: + * tests/examples/netclock/netclock-server.c: + netclock: Add simple network clock server and client examples + +2015-01-10 21:42:00 +1100 Jan Schmidt + + * libs/gst/net/gstnetclientclock.c: + netclock: Implement sending statistic bus messages and discont limits + Allow setting a GstBus on the network clock client + via a new 'bus' object property. If a bus is set, the + clock will output an element message containing statistics + about new clock observations and the clock correlation. + When the local clock is synchronised with the remote, limit the + maximum jump in the clock at any point to be one average RTT to + the server. Also, publish in the bus message whether we are + synched with the remote or not. + +2015-01-10 21:42:00 +1100 Jan Schmidt + + * gst/gstclock.c: + * gst/gstclock.h: + * win32/common/libgstreamer.def: + clock: Add gst_clock_add_observation_unapplied() + gst_clock_add_observation_unapplied() adds a new master/slave clock + observation and runs the regression without activating the new + calibration results. + +2014-12-16 22:51:22 +1100 Jan Schmidt + + * gst/gstclock.c: + * gst/gstclock.h: + * win32/common/libgstreamer.def: + clock: Add gst_clock_adjust_with_calibration() + gst_clock_adjust_with_calibration() uses directly passed calibration + parameters, instead of using the clock's current calibration, + allowing for calculations using pending or old calibration params + +2015-01-21 09:45:16 +0100 Sebastian Dröge + + * plugins/elements/gstoutputselector.c: + output-selector: Constify negotiation mode GEnumValue table + +2015-01-20 10:35:47 -0300 Thiago Santos + + * gst/gstevent.c: + docs: fix typo in GstEvent docs + send -> sent + +2015-01-20 09:19:10 +0100 Thibault Saunier + + * scripts/git-update.sh: + * scripts/gst-uninstalled: + scripts: Remove gnonlin from the scripts + It is not maintain anymore and its feature are now inside the GStreamer + Editing Services (for the time being). + +2015-01-16 19:17:31 +0100 Sebastian Dröge + + * gst/gstbin.c: + bin: Pass structs we plan to modify around by pointer, not value + Otherwise the struct is going to be copied, which is not very efficient. And + also has the nice side effect that modifications of the struct might be + done in a copy, and we later use the original struct without the changes. + Caused LATENCY queries to always return the initialization values in one of my + tests, instead of the actual values reported by child elements. + +2015-01-14 10:52:11 +0000 Vincent Penquerc'h + + * plugins/elements/gstidentity.c: + identity: send gap events when dropping buffers + +2015-01-13 18:11:39 +0000 Phillip Wood + + * gst/gstpreset.c: + preset: fix incorrect preset version comparison + Use app_version if there are no system presets, so that if the + application presets are newer than the user presets they are merged. + https://bugzilla.gnome.org/show_bug.cgi?id=742877 + +2015-01-12 16:03:02 +0100 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + inputselector: Don't dereference NULL pointer + CID 1262286 + +2015-01-12 15:55:47 +0100 Stefan Sauer + + * common: + Automatic update of common submodule + From f2c6b95 to bc76a8b + +2015-01-11 23:00:29 +0100 Stefan Sauer + + * gst/gstpreset.c: + preset: fix sorting presets + The glib docs are not clear on this, but the qsort man-page is - the + GCompareDataFunc does not get the strings, but pointers to them. + +2014-12-31 18:52:34 +0000 Tim-Philipp Müller + + * plugins/elements/gstinputselector.c: + inputselector: fix silly GQueue iteration code + Not active by default though. + +2015-01-04 23:24:53 +0100 Stefan Sauer + + * gst/gstpreset.c: + preset: don't return empty preset lists + Add a shortcut for the cases where an element implements the preset iface but + has no presets and return NULL instead of an empty list in that case. + +2015-01-04 23:08:47 +0100 Stefan Sauer + + * tools/gst-inspect.c: + gst-inspect: only print presets line if num-presets > 0 + Also check for an empty strv. + +2015-01-04 22:51:09 +0100 Stefan Sauer + + * tools/gst-inspect.c: + gst-inspect: fix output for -a + Use n_print to ensure all lines are prefixed with the element name. + +2014-12-29 11:54:00 +0100 Stefan Sauer + + * docs/libs/Makefile.am: + docs: ignore libcheck headers that use doxygen comments + +2014-12-29 11:52:22 +0100 Stefan Sauer + + * gst/gstinfo.h: + docs: fix two gtk-doc warnings + One by correcting the end-of-comment marker and one by making sure the function + prototype in the header is in sync with the c file and doc-blob. + +2014-12-26 23:22:30 +0100 Sebastian Rasmussen + + * docs/gst/gstreamer-sections.txt: + * docs/libs/gstreamer-libs-sections.txt: + * docs/plugins/gstreamer-plugins-sections.txt: + docs: Add missing interfaces to documentation + https://bugzilla.gnome.org/show_bug.cgi?id=742057 + +2014-12-27 15:15:30 +0530 Nirbheek Chauhan + + * gst/gstiterator.c: + iterator: Fix outdated example code and accompanying documentation + GstIterator no longer returns a refcounted gpointer + +2014-12-24 13:46:28 +0100 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + inputselector: Use the same waiting function for EOS and non-EOS waiting + +2014-12-24 13:44:09 +0100 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + inputselector: Wake up all waitings pads directly if we forward the EOS event + Otherwise they might wait a bit longer unnecessarily. + Also do some minor cleanup. + +2014-12-24 10:13:51 +0800 Song Bing + + * plugins/elements/gstinputselector.c: + * plugins/elements/gstinputselector.h: + inputselector: Block when receiving an EOS event on a deactivated pad + ... and only unblock when either a) the pad becomes active and the event + should be forwarded or b) the active pad went EOS itself. + Otherwise it can happen that we switch from a longer track that is not EOS yet + to a shorter track that already is EOS, but the shorter track won't have any + possibility to send its EOS event downstream anymore. + https://bugzilla.gnome.org/show_bug.cgi?id=740949 + +2014-12-23 12:54:50 +0100 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + inputselector: Keep a ref of the currently active sinkpad around + Otherwise we can't be sure that the pointer points to a still existing + pad instance after releasing the lock. + +2014-12-23 12:53:58 +0100 Song Bing + + * plugins/elements/gstinputselector.c: + inputselector: Get the active sinkpad again after taking the lock when handling events + It might have changed in the meantime. + https://bugzilla.gnome.org/show_bug.cgi?id=741893 + +2014-12-22 13:08:37 +0100 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + basetransform: Short-circuit CAPS query handling if transform_caps returns EMPTY caps + Both for the peer filter caps and the converted caps based on the peer caps. + If the peer filter caps are EMPTY, the peer caps query will also return + EMPTY. There's no ned to both downstream/upstream with this query. + +2014-12-22 11:45:13 +0100 Sebastian Dröge + + * MAINTAINERS: + MAINTAINERS: Update my mail address + +2014-12-21 14:12:29 +0100 Stefan Sauer + + * gst/gstdebugutils.c: + debugutils: use a constant for the max param length + Improve readability by using a define for the max-chars. Also use the unicode + ellipsis as dot files are utf-8. + +2014-12-15 14:03:54 +0100 Stefan Sauer + + * tools/gst-inspect.c: + gst-inspect: print preset names + If the element supports presets and ships some, print them. + Fixes #741427 + +2014-12-19 11:35:24 +0100 Edward Hervey + + * gst/gstinfo.h: + gstinfo: Add new maximum level debugging + API: GST_LEVEL_MAX + By compiling gstreamer (or plugins) with GST_LEVEL_MAX defined, only + the debugging statements at or below that level will be compiled in. + This allows compiling in some debugging (like errors and warnings) which + helps in debugging, but without the full cpu/memory overhead of all debugging + enabled. + +2014-12-18 12:04:22 -0300 Thiago Santos + + * libs/gst/check/gstcheck.c: + gstcheck: fix GI annotation + Add missing : to annotation + +2014-11-13 14:53:59 +0000 Vincent Penquerc'h + + * libs/gst/base/gstbaseparse.c: + baseparse: jump over large skips in pull mode + This bypasses the dumping of buffers we still have to do in push mode. + https://bugzilla.gnome.org/show_bug.cgi?id=730053 + +2014-10-25 17:16:25 +0530 Arun Raghavan + + * gst/gstdebugutils.c: + * gst/gstdebugutils.h: + debugutils: Truncate parameter values that are too long + This removes some information from the dumps, but improves readability. + https://bugzilla.gnome.org/show_bug.cgi?id=739165 + +2014-12-18 10:53:02 +0100 Sebastian Dröge + + * common: + Automatic update of common submodule + From ef1ffdc to f2c6b95 + +2014-12-16 16:31:21 +0100 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstcaps.c: + * gst/gstcaps.h: + * gst/gststructure.c: + * gst/gststructure.h: + * tests/check/gst/gstcaps.c: + * tests/check/gst/gststructure.c: + * win32/common/libgstreamer.def: + structure/caps: Add gst_{structure,caps}_filter_and_map_in_place() + https://bugzilla.gnome.org/show_bug.cgi?id=739765 + +2014-12-16 18:14:22 +0100 Sebastian Dröge + + * tests/check/gst/gststructure.c: + structure: Add simple unit test for foreach() and map_in_place() + +2014-11-07 11:15:09 +0100 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstcaps.c: + * gst/gstcaps.h: + * tests/check/gst/gstcaps.c: + caps: Add gst_caps_foreach() and gst_caps_map_in_place() + https://bugzilla.gnome.org/show_bug.cgi?id=739765 + +2014-12-16 15:53:06 +0000 Tim-Philipp Müller + + * 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: + po: update for new translatable strings + +2014-12-14 12:54:32 +0100 Sebastian Rasmussen + + * configure.ac: + * libs/gst/check/Makefile.am: + * libs/gst/check/libcheck/Makefile.am: + * libs/gst/check/libcheck/check.c: + * libs/gst/check/libcheck/check_log.c: + * libs/gst/check/libcheck/check_msg.c: + * libs/gst/check/libcheck/check_pack.c: + * libs/gst/check/libcheck/check_print.c: + * libs/gst/check/libcheck/check_run.c: + * libs/gst/check/libcheck/check_str.c: + check: Have autotools generate internal-check.h + Previously GStreamer got access to the libcheck interface by including + libs/gst/check/check.h which in turn included internal-check.h in the + same directory. internal-check.h was generated by copying + libs/gst/check/libcheck/check.h which in turn was generated from + check.h.in in the same directory. In this case generating + libs/gst/check/libcheck/check.h is unnecessary, in addition this file + was accidentally distributed in generated project tarballs. + Now libs/gst/check/internal-check.h is generated directly from + libs/gst/check/libcheck/check.h.in by configure. This means that the + libcheck source must include internal-check.h instead of the previously + generated libs/gst/check/libcheck/check.h. However the unnecessary + intermediate step is now skipped. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=741359 + +2014-12-16 10:13:03 -0500 Nicolas Dufresne + + * gst/gstbufferpool.c: + * tests/check/gst/gstbufferpool.c: + bufferpool: Don't check size in config validation + Pools are allowed to change the size in order to adapt padding. So + don't check the size. Normally pool will change the size without + failing set_config(), but it they endup changing the size before + the validate method may fail on a false positive. + https://bugzilla.gnome.org/show_bug.cgi?id=741420 + +2014-12-16 12:21:59 +0100 Wim Taymans + + * gst/gstbufferpool.c: + bufferpool: log reason for discarded buffers + PERFORMANCE log the reason why a buffer could not be recycled in the + bufferpool. + +2014-12-15 14:53:28 +0100 Sebastian Rasmussen + + * m4/check-checks.m4: + check: Update version number of included libcheck + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=741550 + +2014-12-12 21:02:22 +0000 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: update exports + +2014-12-12 21:54:01 +0100 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + docs: add new preset api + +2014-12-12 21:38:26 +0100 Stefan Sauer + + * gst/gstpreset.c: + * gst/gstpreset.h: + preset: add gst_preset_is_editable() + Add a function to check if the preset iface implementation is editable and + document this from the implementers perspective. + API: gst_preset_is_editable() + +2014-12-12 14:23:19 +0100 Edward Hervey + + * win32/common/libgstreamer.def: + win32: Update def file + +2014-12-12 13:57:39 +0100 Sebastian Dröge + + * gst/gstdebugutils.c: + debugutils: Fix compiler warning + gstdebugutils.c: In function 'gst_debug_bin_to_dot_data': + gstdebugutils.c:683:530: error: 'return' with no value, in function returning non-void [-Werror] + g_return_if_fail (GST_IS_BIN (bin)); + +2014-12-12 13:15:02 +0530 Arun Raghavan + + * gst/gstdebugutils.c: + * gst/gstdebugutils.h: + debugutils: Add a gst_debug_bin_to_dot_data() method + This provides the dot file as a string, rather than dumping to a file. + https://bugzilla.gnome.org/show_bug.cgi?id=741425 + +2014-12-10 11:17:11 +0000 Tim-Philipp Müller + + * plugins/elements/gsttypefindelement.c: + * plugins/elements/gsttypefindelement.h: + typefind: minor cosmetic change + No nee to abbrev variab nam here, nicer to read if full. + +2014-12-10 11:16:09 +0000 Tim-Philipp Müller + + * plugins/elements/gsttypefindelement.c: + typefind: use GST_BUFFER_OFFSET_NONE for buffer offset + +2014-12-07 12:55:26 +0100 Sebastian Rasmussen + + * libs/gst/check/libcheck/check.h.in: + check: Avoid requring (u)intmax_t in macros + Previously embedded libcheck versions did not depend on (u)intmax_t and + doing so would require projects using GStreamer's check framework to add + AX_CREATE_STDINT_H to their configure.ac. A workaround is to fallback to + glib types. This patch assumes that glib.h is always included before + internal-check.h which is ok since everything Gstreamer would include + gst/gstcheck.h instead of directly including internal-check.h. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=727826 + +2014-12-06 19:03:04 +0100 Sebastian Rasmussen + + * libs/gst/check/libcheck/clock_gettime.c: + check: Fix compilation error for iOS + libcheck includes CoreServices for its compat for clock_gettime(), + even though it never uses anything it declares. Let's remove it. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=727826 + +2014-11-15 13:26:47 +0100 Sebastian Rasmussen + + * configure.ac: + * libs/gst/check/gstcheck.h: + * libs/gst/check/libcheck/Makefile.am: + * libs/gst/check/libcheck/check.c: + * libs/gst/check/libcheck/check.h.in: + * libs/gst/check/libcheck/check_error.c: + * libs/gst/check/libcheck/check_error.h: + * libs/gst/check/libcheck/check_list.c: + * libs/gst/check/libcheck/check_log.c: + * libs/gst/check/libcheck/check_msg.c: + * libs/gst/check/libcheck/check_pack.c: + * libs/gst/check/libcheck/check_print.c: + * libs/gst/check/libcheck/check_run.c: + * libs/gst/check/libcheck/check_str.c: + * libs/gst/check/libcheck/libcompat.h: + * m4/check-checks.m4: + check: Apply GStreamer-specific patches + Reintroduced patches: + * Make sure that fail_if(1) actually fails + from commit 9f99d056a263e71a5e6181224829def906cf0226 + New patches due to updated libcheck (based on 0.9.14): + * Checks in m4/check-checks.m4 to cater for new dependencies + * Conditional compile-time compat POSIX fallbacks for libcheck + * Avoid relative paths for libcheck header files + * Make timer_create() usage depend on posix timers, not librt + * Rely on default AX_PTHREAD behavior to allow HAVE_PTHREAD to be used + when checking for types and functions (like clock_gettime()) + * Avoid double declaration of clock_gettime() when availabe outside of + librt by making compat clock_gettime() declaration conditional + * check 0.9.9 renamed _fail_unless() and 0.9.12 later renamed it again + to _ck_assert_failed(), so ASSERT_{CRITICAL,WARNING}() now calls this + function + * Remove libcheck fallback infrastructure for malloc(), realloc(), + gettimeofday() and snprintf() since either they appear to be + available or they introduce even more dependencies. + The result is an embedded check in gstreamer that has been tested by + running check tests in core, -base, -good, -bad, -ugly and rtsp-server + on Linux, OSX and Windows. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=727826 + +2014-11-15 12:53:32 +0100 Sebastian Rasmussen + + * libs/gst/check/libcheck/alarm.c: + * libs/gst/check/libcheck/check.c: + * libs/gst/check/libcheck/check.h.in: + * libs/gst/check/libcheck/check_error.c: + * libs/gst/check/libcheck/check_error.h: + * libs/gst/check/libcheck/check_impl.h: + * libs/gst/check/libcheck/check_list.c: + * libs/gst/check/libcheck/check_list.h: + * libs/gst/check/libcheck/check_log.c: + * libs/gst/check/libcheck/check_log.h: + * libs/gst/check/libcheck/check_msg.c: + * libs/gst/check/libcheck/check_msg.h: + * libs/gst/check/libcheck/check_pack.c: + * libs/gst/check/libcheck/check_pack.h: + * libs/gst/check/libcheck/check_print.c: + * libs/gst/check/libcheck/check_print.h: + * libs/gst/check/libcheck/check_run.c: + * libs/gst/check/libcheck/check_str.c: + * libs/gst/check/libcheck/check_str.h: + * libs/gst/check/libcheck/clock_gettime.c: + * libs/gst/check/libcheck/libcompat.c: + * libs/gst/check/libcheck/libcompat.h: + * libs/gst/check/libcheck/localtime_r.c: + * libs/gst/check/libcheck/strsignal.c: + * libs/gst/check/libcheck/timer_create.c: + * libs/gst/check/libcheck/timer_delete.c: + * libs/gst/check/libcheck/timer_settime.c: + check: Import version 0.9.14 + This lifts the files almost verbatim (the changes being running though + gst-indent and fixing the FSF address) from the upstream respository. + Therefore this commit reverts some GStreamer-specific patches to check + that will be reintroduced next. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=727826 + +2014-11-04 19:11:50 +0100 Edward Hervey + + * plugins/elements/gsttypefindelement.c: + * plugins/elements/gsttypefindelement.h: + typefind: Propagate input buffer offset + The initial buffers might have non-default offsets, make sure they get + propagated if present. + +2014-10-07 16:44:45 +0200 Edward Hervey + + * libs/gst/base/gstbasesink.c: + basesink: clamp reported position based on direction + When using a negative rate (rate being segment.rate * segment.applied_rate), + we will end up reporting decreasing positions, therefore adjust the clamping + against last reported value accordingly. + Fixes positions getting properly reported with applied_rate < 0.0 + https://bugzilla.gnome.org/show_bug.cgi?id=738092 + +2014-11-28 14:17:54 +0100 Sebastian Dröge + + * docs/manual/advanced-buffering.xml: + * gst/gstbin.c: + * gst/gstbus.c: + * gst/gstcontrolbinding.c: + * gst/gstdevicemonitor.c: + * gst/gstghostpad.c: + * gst/gstinfo.c: + * gst/gstplugin.c: + * gst/gststructure.c: + * gst/gstsystemclock.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstcollectpads.c: + * libs/gst/check/gstcheck.c: + * libs/gst/check/gstcheck.h: + * libs/gst/check/gsttestclock.c: + * plugins/elements/gstfunnel.c: + * plugins/elements/gstidentity.c: + * plugins/elements/gstinputselector.c: + * tools/gst-launch.c: + Don't compare booleans for equality to TRUE and FALSE + TRUE is 1, but every other non-zero value is also considered true. Comparing + for equality with TRUE would only consider 1 but not the others. + Also normalize booleans in a few places. + +2014-11-30 23:50:53 +0000 Tim-Philipp Müller + + * plugins/elements/gstelements_private.c: + plugins: fix build on windows + gstelements_private.c: In function 'gst_writev_buffers': + gstelements_private.c:236:51: error: 'EWOULDBLOCK' undeclared + +2014-11-28 15:09:16 +0000 Tim-Philipp Müller + + * plugins/elements/gstfilesink.c: + filesink: use writev() in ::render() to write out memories without merging them + +2014-11-28 15:04:27 +0000 Tim-Philipp Müller + + * plugins/elements/gstfilesink.c: + * plugins/elements/gstfilesink.h: + filesink: implement ::render_list() function that uses writev() + +2014-11-28 14:47:20 +0000 Tim-Philipp Müller + + * plugins/elements/gstfdsink.c: + fdsink: use writev() in ::render() to write out memories without merging them + +2014-11-28 14:39:33 +0000 Tim-Philipp Müller + + * plugins/elements/gstfdsink.c: + * plugins/elements/gstfdsink.h: + fdsink: implement ::render_list() using writev() + Write out multiple buffers possibly containing multiple + memories with one writev() call, without merging the + buffer memories first, like ::render() does currently. + +2014-11-28 14:38:30 +0000 Tim-Philipp Müller + + * configure.ac: + * plugins/elements/gstelements_private.c: + * plugins/elements/gstelements_private.h: + plugins: add helper function for writing buffers out with writev() + +2014-11-28 14:15:30 -0300 Thiago Santos + + * libs/gst/base/gstbaseparse.c: + baseparse: update the duration variable before emitting the bus + Otherwise the application might still get the old value if it asks + between the message and the real update. + +2014-11-28 16:25:02 +0100 Edward Hervey + + * gst/gstelement.c: + element: Fix doc and default implementation of send_event + The documentation states that gst_element_send_event is to "send an event + to an element". + Therefore we *send* upstream events to a source pad and downstream events + to a sink pad + +2014-11-28 11:16:00 +0100 Edward Hervey + + * gst/gstelement.c: + element: Figure default send_event direction handling + If we get a downstream event we want to send it to a random SINK pad + (and vice-versa). + +2014-11-27 18:00:57 +0100 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + basetransform: Compare correct caps variable against NULL before comparing caps + +2014-11-27 17:10:19 +0100 Edward Hervey + + * common: + Automatic update of common submodule + From f32cfcd to ef1ffdc + +2014-11-10 09:58:47 +0100 Thibault Saunier + + * scripts/gst-uninstalled: + scripts:uninstalled: Make sur the GES TestManager is registered + So that whenever user work with GstValidate they can run GES tests + within the gst-uninstalled environment + +2014-11-26 21:48:05 +0530 Arun Raghavan + + * common: + * m4/ax_pthread.m4: + build: Update ax_pthread.m4 and move it to common + Has some updates for Clang support (might not work with newer Clang + properly, yet), AIX support, and some misc fixes. + +2014-11-25 17:46:12 +0100 Sebastian Dröge + + * libs/gst/controller/gsttriggercontrolsource.c: + triggercontrolsource: Fix short description for the docs + +2014-11-25 09:39:40 +0000 Tim-Philipp Müller + + * docs/gst/running.xml: + docs: add GST_GL_* environment variables to 'Running GStreamer' section + +2014-11-23 05:45:24 -0300 Thiago Santos + + * plugins/elements/gstqueue2.c: + queue2: percentage is relative to high-percent + When comparing percentage values, compare with 0-100 scale as it + has already been made relative to 0-high_percent, otherwise we mark + the queue as not buffering and report a 50% to the user. This leads to + a buffering stall as the user assumes the queue is still buffering but + it thinks it isn't. + https://bugzilla.gnome.org/show_bug.cgi?id=736969 + +2014-11-23 05:42:51 -0300 Thiago Santos + + * plugins/elements/gstmultiqueue.c: + multiqueue: percentage is an absolute value + multiqueue's queues stored percent value is the percentage from 0 + to 100 (max-size-*) and should be compared with the requested limit + (high_percentage) set by the user and not with 100% to check if + buffering should stop. Otherwise we are only stopping buffering when the + queue gets completely full. + +2014-11-20 21:33:59 +0100 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + basetransform: Fix caps equality check + Instead of checking if our outcaps are equivalent to the previous incaps, and + if that is the case not setting any caps on the pad... compare against our + previous outcaps because that's what we care about. + Fixes some cases where the outcaps became equivalent to the previous incaps, + but the previous outcaps were different and we were then sending buffers + downstream that were corresponding to the caps we forgot to set on the pad. + Resulting in crashes or image corruption. + +2014-11-20 13:33:12 +0000 Tim-Philipp Müller + + * common: + common: update for bison version check patch + Fix configure check with bison development version. + https://bugzilla.gnome.org/show_bug.cgi?id=728946 + +2014-11-20 13:34:32 +0100 Wim Taymans + + * gst/gststructure.c: + * tests/check/gst/gststructure.c: + structure: don't overread input when searching for " + When searching for the string terminator don't read past the ending + 0-byte when escaping characters. + Add unit test for various escaping cases. + +2014-11-03 17:46:57 +0000 Vincent Penquerc'h + + * gst/gstpad.c: + pad: fail dropped queries + Previously, dropping a query from a pad probe would deem the + query succeeded, and the caller might then assume the query's + results are valid, and thus dereference an invalid object + such as a GstCaps. + We now assume dropped queries did not succeed. Dropped events + and buffers are still deemed a success. + Added back after previous revert, as it's been double checked. + https://bugzilla.gnome.org/show_bug.cgi?id=740003 + +2014-11-12 13:55:23 +0000 Vincent Penquerc'h + + * gst/gstpad.c: + Revert "pad: fail dropped queries" + This was pushed by mistake along with an unrelated patch. + This reverts commit c7103ce4b8c1da7dcfbcf2ec83a42a376fb896e1. + +2014-05-13 11:18:08 +0100 Vincent Penquerc'h + + * libs/gst/base/gstbaseparse.c: + baseparse: allow skipping more data than we currently have + This can be useful for skipping large unwanted data, such as + large album art, when we know the size of it from a metadata + header. + +2014-11-03 17:46:57 +0000 Vincent Penquerc'h + + * gst/gstpad.c: + pad: fail dropped queries + Previously, dropping a query from a pad probe would deem the + query succeeded, and the caller might then assume the query's + results are valid, and thus dereference an invalid object + such as a GstCaps. + We now assume dropped queries did not succeed. Dropped events + and buffers are still deemed a success. + +2014-11-12 11:30:51 +0100 Haakon Sporsheim + + * gst/gsttask.c: + * tests/check/gst/gsttask.c: + task: Fix pause/stop race condition + If a task thread is calling pause on it self and the + controlling/"main" thread stops the task, it could end in a race + where gst_task_func loops and then checks for paused after the + controlling thread just changed the task state to stopped. + Hence the task would actually call func again even though it was + both paused and stopped. + https://bugzilla.gnome.org/show_bug.cgi?id=740001 + +2014-11-10 10:01:02 +0100 Sebastian Dröge + + * tests/check/gst/gstobject.c: + gstobject: Don't check booleans for equality in the unit test + Every value other than 0/FALSE is TRUE, == TRUE will only check for 1. + +2014-11-05 11:50:47 +0100 Jan Alexander Steffens (heftig) + + * docs/gst/gstreamer-sections.txt: + * gst/gstobject.c: + * gst/gstobject.h: + * tests/check/gst/gstobject.c: + * win32/common/libgstreamer.def: + gstobject: Add gst_object_has_parent() + Adds gst_object_has_parent, which works like gst_object_has_ancestor + but does not ascend further. + API: gst_object_has_parent() + +2014-11-09 10:37:42 +0100 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + basetransform: Don't bother the subclass with setting the same caps multiple times + +2014-11-09 10:32:18 +0100 Sebastian Dröge + + * libs/gst/base/gstbasesink.c: + basesink: Don't bother the subclass with setting the same caps multiple times + +2014-11-09 10:29:57 +0100 Sebastian Dröge + + * libs/gst/base/gstbasesrc.c: + basesrc: Don't bother the subclass with setting the same caps multiple times + +2014-11-07 08:22:02 +0100 Stefan Sauer + + * gst/gststructure.c: + structure: remove conditional for G_VALUE_COLLECT_INIT + This API is in glib since 2.24 and we currently require 2.32 and already use + this unconditionally elsewhere. + +2014-11-05 19:09:39 +0100 Stefan Sauer + + * gst/gstpreset.c: + preset: remove commented code + The GQuark was never used. + +2014-11-07 11:34:08 +0100 Sebastian Dröge + + * gst/Makefile.am: + * pkgconfig/gstreamer.pc.in: + gstconfig: Put gstconfig.h into $(libdir)/gstreamer-1.0/include + It's architecture dependent and should not be placed into the include + directory as the assumption is that all those headers are architecture + independent. + https://bugzilla.gnome.org/show_bug.cgi?id=739767 + +2014-11-07 10:56:42 +0100 Sebastian Dröge + + * gst/gsturi.c: + uri: Fix gobject-introspection warnings + gsturi.c:997: Error: Gst: Skipping invalid GTK-Doc comment block: + /** private GstUri functions **/ + ^ + gsturi.c:1179: Error: Gst: Skipping invalid GTK-Doc comment block: + /** RFC 3986 functions **/ + ^ + +2014-10-24 21:25:54 +1100 Jan Schmidt + + * libs/gst/base/gstdataqueue.c: + dataqueue: Fix gst_data_queue_new() description. + Reword the function docs, which haven't made any sense since + gst_data_queue_new_full() was removed a few years ago. + +2014-11-03 18:27:21 +0100 Thibault Saunier + + * libs/gst/base/gstbasesink.c: + basesink: Answer the query position when receiving it from upstream + Currently we are just returning FALSE, but we do have the information + we should just answer the query the same way as when answering through + the GstElement.query vmethod default implementation. + https://bugzilla.gnome.org/show_bug.cgi?id=739580 + +2014-10-22 14:07:09 +0200 Sebastian Dröge + + * plugins/elements/gstcapsfilter.c: + * plugins/elements/gstcapsfilter.h: + * tests/check/elements/capsfilter.c: + capsfilter: Add an optional delayed caps change mode + In this mode we accept previously set filter caps until + upstream renegotiates to something that is compatible + to the current filter caps. + This allows dynamic caps changes in the pipeline even + if there is a queue between any conversion element + and the capsfilter. Without this we would get not-negotiated + errors if timing is bad. + https://bugzilla.gnome.org/show_bug.cgi?id=739002 + +2014-11-02 20:16:53 +0000 Tim-Philipp Müller + + * gst/gsttoc.c: + toc: minor code clean-up + And get rid of g_list_prepend/g_list_reverse + anti-pattern while we're at it. + +2014-11-02 18:51:08 +0000 Luis de Bethencourt + + * gst/gst.c: + gst: ensure GStreamer initialization debug message is displayed + The GST_INFO ("initialized GStreamer succesfully") is currently at the end of + gst_init_check which isn't guaranteed to be run since GStreamer can be + initialized by using init_pre and init_post directly from GOptionContext like + gst-launch does. Ensure this message is displayed by moving it to init_post. + +2014-11-01 19:56:41 +0000 Luis de Bethencourt + + * gst/gstbus.c: + * libs/gst/base/gstadapter.c: + doc: Do not use deprecated gtk-doc 'Rename to' tag + GObject introspection GTK-Doc tag "Rename to" has been deprecated, changing to + rename-to annotation. + https://bugzilla.gnome.org/show_bug.cgi?id=739514 + +2014-11-01 22:30:30 +0100 Aurélien Zanelli + + * tools/gst-inspect.c: + gst-inspect: add G_PARAM_DEPRECATED to known flags + Display 'deprecated' instead of flag value when using G_PARAM_DEPRECATED + in element properties. + https://bugzilla.gnome.org/show_bug.cgi?id=739518 + +2014-10-31 16:10:01 +0000 Tim-Philipp Müller + + * tests/check/tools/gstinspect.c: + tests: refactor tools check a little + Use an array of constant strings so if arguments get + removed from it they are not considered leaked, and + valgrind is happy. Still some stuff leaking in GLib + though. + +2014-10-30 23:14:59 +0000 Tim-Philipp Müller + + * tests/check/libs/bytereader.c: + tests: fix out-of-bounds memory access in bytereader unit test + Caught by -fsanitize=address / libasan. + https://bugzilla.gnome.org/show_bug.cgi?id=739431 + +2014-10-28 19:16:52 +0000 Tim-Philipp Müller + + * gst/gst.c: + gst: make gst_init() thread-safe + Because we can, and there isn't really any + reason not to do so. + +2014-10-28 09:28:28 +0000 Tim-Philipp Müller + + * tests/check/elements/fdsrc.c: + tests: fdsrc: don't ignore return value of write() + Causes compiler warnings on some systems. + +2014-10-28 00:04:05 +0000 Tim-Philipp Müller + + * tests/check/elements/fdsrc.c: + tests: fix fdsrc test corner case + Make pipe socket non-blocking, so we don't + end up being blocked in a write on the pipe + while the src is eos and not reading data + any more, and thus we never unblock and never + notice that we're done. This would happen + quite reliably on the rpi. + +2014-10-27 17:56:15 +0100 Sebastian Dröge + + * common: + Automatic update of common submodule + From 84d06cd to 7bb2bce + +2014-10-25 17:15:42 +0530 Arun Raghavan + + * gst/gstdebugutils.c: + debugutils: Trivial typo fix + +2014-10-24 12:51:07 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbasesink.c: + basesink: don't unlock mutex that is not locked + Fixes 'Attempt to unlock mutex that was not locked' + warning with newer GLibs when sink is shut down in + certain situations. Triggered by the decodebin + test_reuse_without_decoders unit test in -base + sometimes, esp. on slower machines. + +2014-10-22 18:25:26 +0100 Tim-Philipp Müller + + * win32/common/libgstcontroller.def: + win32: update .def for new _get_type() function for GstControlPoint + https://bugzilla.gnome.org/show_bug.cgi?id=737616 + +2014-09-29 21:10:14 +0200 Thibault Saunier + + timedvaluecontrolsource: Add some signals about values changes + In order for user to be able to track changes in the value set in + GstTimedValueControlSource the following signals have been added: + * value-added + * value-removed + * value-changed + To be able to use a GstControlPoint to be marshalled into the signals, + the GstControlPoint structure is now registerd as a GBoxed type. + New API: + ~~~~~~~ + * GstTimedValueControlSource::value-added + * GstTimedValueControlSource::value-removed + * GstTimedValueControlSource::value-added + https://bugzilla.gnome.org/show_bug.cgi?id=737616 + +2014-10-21 13:01:00 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From a8c8939 to 84d06cd + +2014-10-21 12:18:33 +0100 Tim-Philipp Müller + + * gst/gstmessage.c: + message: remove duplicate gst_message_get_type() in init + Spotted by: Jan Steffens + +2014-10-21 12:57:45 +0200 Stefan Sauer + + * README: + * common: + Automatic update of common submodule + From 6e75498 to a8c8939 + +2014-10-20 16:39:38 +0200 Stefan Sauer + + * plugins/elements/gstidentity.c: + identity: include the actual delta in the message + Including the actual delta in the message makes it easy to see, if the new + buffer is behind or ahead and how much. + +2014-10-18 18:43:43 +1100 Jan Schmidt + + * gst/gstvalue.c: + gstvalue: Tidy initialisation + Use some macros to make our value functions setup a bit + tidier, and micro-optimise a few reallocs by setting an + initial size for the global type arrays. + +2014-10-18 17:27:04 +1100 Jan Schmidt + + * tools/gst-indent: + gst-indent: Run indent twice. Once is not idempotent, twice seems to be. + +2014-10-16 10:13:14 +0400 Andrei Sarakeev + + * plugins/elements/gstmultiqueue.c: + multiqueue: Wake up any waiting streams if the current one goes EOS + Otherwise we might have unlinked streams waiting. + https://bugzilla.gnome.org/show_bug.cgi?id=738198 + +2014-10-17 12:41:04 +0200 Stefan Sauer + + * gst/gsttypefind.c: + typefind: simplify registration code + Remove a useless assert (we just instantiated this type). Drop the free'ing of + the extension array. As we just created the instance this is always NULL. + +2014-10-16 10:55:36 +0200 Felix Schwarz + + * docs/pwg/advanced-allocation.xml: + * docs/pwg/advanced-clock.xml: + * docs/pwg/advanced-events.xml: + * docs/pwg/advanced-qos.xml: + * docs/pwg/advanced-tagging.xml: + docs: pwd: fix typos + https://bugzilla.gnome.org/show_bug.cgi?id=738612 + +2014-10-11 19:28:21 +0200 Linus Svensson + + * tests/check/gst/gstbus.c: + tests: Add a test for removing a bus watch + https://bugzilla.gnome.org/show_bug.cgi?id=735195 + +2014-08-19 23:28:52 +0200 Linus Svensson + + * gst/gstbus.c: + * gst/gstbus.h: + * tests/check/gst/gstbus.c: + * win32/common/libgstreamer.def: + bus: Add a function to remove a bus watch + If a bus watch is added to the non default main context it's not + possible to remove it using g_source_remove(). + Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=735195 + +2014-10-08 22:51:56 +0530 Arun Raghavan + + * gst/gstevent.h: + docs: Update GstQOSType documentation a bit + Correction for who is producing data too fast, and some other minor + clarifications. + https://bugzilla.gnome.org/show_bug.cgi?id=738166 + +2014-10-08 16:03:20 +0200 Guillaume Desmottes + + * docs/pwg/advanced-allocation.xml: + * docs/pwg/advanced-qos.xml: + docs: pwg: fix two typos + https://bugzilla.gnome.org/show_bug.cgi?id=738153 + +2014-10-08 15:37:37 +0200 Guillaume Desmottes + + * docs/pwg/advanced-negotiation.xml: + docs: pwg: fix typo in 'Dynamic negotiation' section + The point of this example is to show how to set caps + on the source pad once it has been set on the sink pad. + So, in passthrough mode, the caps is just copied to the + source pad. + https://bugzilla.gnome.org/show_bug.cgi?id=738153 + +2014-10-08 09:37:41 -0700 Aleix Conchillo Flaqué + + * plugins/elements/gstmultiqueue.c: + multiqueue: don't lock multiqueue when pushing serialized queries + If we are pushing a serialized query into a queue and the queue is + filled, we will end in a deadlock. We need to release the lock before + pushing and acquire it again afterward. + https://bugzilla.gnome.org/show_bug.cgi?id=737794 + +2014-10-08 01:33:51 +1100 Jan Schmidt + + * libs/gst/base/gstcollectpads.c: + collectpads: Use GST_PTR_FORMAT in debug to output buffer details + Use %GST_PTR_FORMAT instead of %p in debug output so all the buffer + details are output + +2014-10-06 13:38:21 +0200 Nicolas Huet + + * gst/gstsystemclock.c: + systemclock: fix multi-thread entry status issue + Running two threads, one executing the timer and one unscheduling it, the + unscheduled status set by the second thread is sometimes overwritten by the + first one. + https://bugzilla.gnome.org/show_bug.cgi?id=737999 + +2014-10-03 14:04:58 +0100 Tim-Philipp Müller + + * plugins/elements/gstinputselector.c: + inputselector: fix compilation + +2014-10-03 14:44:48 +0200 Stefan Sauer + + * plugins/elements/gstinputselector.c: + input-selector: extract some common code into helpers + +2014-10-03 14:01:59 +0200 Stefan Sauer + + * plugins/elements/gstinputselector.c: + input-selector: small code cleanups + Rename TIMESTAMP -> PTS. Move a var down to the scope where it is used. Use + g_queue_free_full(). + +2014-10-03 13:47:42 +0200 Stefan Sauer + + * plugins/elements/gstinputselector.c: + * plugins/elements/gstinputselector.h: + inputselector: fix printf format + The padcount is uint. Also add comments to the instance vars. + +2014-10-02 03:30:24 +0200 Matej Knopp + + * libs/gst/base/gstbaseparse.c: + baseparse: don't leak caps in gst_base_parse_process_streamheader + https://bugzilla.gnome.org/show_bug.cgi?id=737762 + +2014-10-03 13:14:25 +0200 Matej Knopp + + * tests/check/libs/baseparse.c: + tests: baseparse: set_sink_caps vfunc should't take ownership of the caps + https://bugzilla.gnome.org/show_bug.cgi?id=737762 + +2014-10-03 09:57:37 +0100 Luis de Bethencourt + + * plugins/elements/gstfakesrc.c: + fakesrc: mark the pattern property as unused + Revert the previous commit which removes the pattern property of fakesrc because + doing so will break ABI. Bringing the property back but marking it as unused + in the property string. + https://bugzilla.gnome.org/show_bug.cgi?id=737683 + +2014-10-03 09:01:15 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbaseparse.c: + Revert "baseparse: don't leak caps in gst_base_parse_process_streamheader" + This reverts commit 5e8b4bf085180f7a4c7ae6ec0f525baeaedd4df8. + This causes refcounting criticals in the baseparse unit test. + +2014-10-02 13:45:34 +0100 Luis de Bethencourt + + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstfakesrc.h: + fakesrc: removing unused pattern option + Eventhough the "pattern" property of fakesrc can be set, it is never used. The + only pattern supported is the default 0x00 -> 0xff, and if a pattern is set by + the user it is ignored. Removing the unused property and variable. + https://bugzilla.gnome.org/show_bug.cgi?id=737683 + +2014-10-02 14:55:22 +0300 Sebastian Dröge + + * plugins/elements/gstqueue.c: + queue: Add missing break in switch + +2014-10-02 11:00:32 +0300 Sebastian Dröge + + * plugins/elements/gstqueue.c: + queue: update segment position on GAP events to calculate levels properly + https://bugzilla.gnome.org/show_bug.cgi?id=737498 + +2014-10-02 10:57:43 +0300 Sebastian Dröge + + * plugins/elements/gstqueue2.c: + queue2: update segment position on GAP events to calculate levels properly + https://bugzilla.gnome.org/show_bug.cgi?id=737498 + +2014-09-27 20:10:34 +0200 Matej Knopp + + * plugins/elements/gstmultiqueue.c: + multiqueue: update segment position on GAP events to calculate levels properly + https://bugzilla.gnome.org/show_bug.cgi?id=737498 + +2014-10-02 03:30:24 +0200 Matej Knopp + + * libs/gst/base/gstbaseparse.c: + baseparse: don't leak caps in gst_base_parse_process_streamheader + https://bugzilla.gnome.org/show_bug.cgi?id=737762 + +2014-10-02 10:13:28 +0300 Sebastian Dröge + + * plugins/elements/gstcapsfilter.c: + capsfilter: Push pending events before a buffer also if upstream never configured caps but we have srcpad caps already + Otherwise we never send pending events downstream that arrive after we + configured caps on the srcpad. + https://bugzilla.gnome.org/show_bug.cgi?id=737735 + +2014-09-29 17:48:29 +0300 Sebastian Dröge + + * gst/gsturi.c: + uri: Don't unconditionally use g_list_copy_deep() + We don't depend on GLib 2.34 yet and just for this seems a bit useless. + https://bugzilla.gnome.org/show_bug.cgi?id=737584 + +2014-09-29 16:22:47 +0300 Sebastian Dröge + + * configure.ac: + * gst/gsturi.c: + uri: Include our own BSD licensed copy of strcasestr() for Windows and others + +2014-09-29 15:54:37 +0300 Sebastian Dröge + + * gst/gsturi.c: + uri: Fix compiler warnings with gcc + These are actually not true. + gsturi.c: In function '_gst_uri_string_to_table.constprop': + gsturi.c:1316:27: error: 'pct_kv_sep' may be used uninitialized in this function [-Werror=maybe-uninitialized] + for (next_sep = strcasestr (value, pct_kv_sep); next_sep; + ^ + gsturi.c:1283:24: error: 'pct_part_sep' may be used uninitialized in this function [-Werror=maybe-uninitialized] + next_sep = strcasestr (next_sep + 1, pct_part_sep)) { + ^ + +2014-09-29 12:19:35 +0300 Sebastian Dröge + + * gst/gsturi.c: + uri: Fix memory leak in gst_uri_join() + The merged path segments are a deep-copied list and we need to free the + contained strings too instead of just the list nodes themselves. + +2014-07-31 22:18:53 +0100 David Waring + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + * gst/gsturi.c: + * gst/gsturi.h: + * tests/check/gst/gsturi.c: + * win32/common/libgstreamer.def: + GstUri: Add GstUri miniobject to handle URIs in an RFC 3986 compliant fashion + https://bugzilla.gnome.org/show_bug.cgi?id=725221 + +2014-09-27 13:57:42 +0100 Tim-Philipp Müller + + * scripts/gst-uninstalled: + scripts: add gst-rpicamsrc to gst-uninstalled + +2014-09-25 21:21:09 +0200 Stefan Sauer + + * gst/gstelement.c: + * gst/gsterror.c: + * gst/gstevent.c: + * gst/gstregistry.c: + * gst/gststructure.c: + * gst/gsttaglist.c: + * gst/gstvalue.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/check/gstcheck.c: + * plugins/elements/gstfilesrc.c: + * tests/check/tools/gstinspect.c: + * tools/gst-inspect.c: + fixme: bump leftover 0.11 fixme comments + +2014-09-25 21:04:23 +0200 Stefan Sauer + + * gst/gstevent.c: + event: 'newsegment' to 'segment' in the docs + Brings the api-docs in sync with the 1.0 api rename. + +2014-09-25 20:23:31 +0200 Stefan Sauer + + * libs/gst/base/gstbasesrc.c: + basesrc: move the quick return up + Don't assign local vars if we skip anyway. Add logging for failure conditio + +2014-09-25 19:01:52 +0100 Tim-Philipp Müller + + * Makefile.am: + * common: + tests: parallelise 'make valgrind' + Use $(MAKE) instead of 'make' inside the Makefile, + otherwise the make will run as if -j1 had been + specified and complain about the job server not + being available, and with $(MAKE) in inherits the + parent make's settings it seems. + Upgrade common submodule for parallel check-valgrind. + Let this settle a bit before upgrading the other modules. + +2014-09-25 18:57:32 +0100 Tim-Philipp Müller + + * win32/common/libgstbase.def: + win32: update .def file + It's sorted. If it's unsorted, make check-exports fails. + +2014-09-25 18:55:03 +0100 Tim-Philipp Müller + + * gst/gstinfo.c: + info: remove confusing warning about running under valgrind + We're not actually doing anything differently anywhere when + we detect that we're running under valgrind, so let's not + print that confusing message that makes people wonder how + they can switch it off so they can valgrind the normal + code paths. Seeing that we're not doing that nor have done + so in the last 10 years we might just as well remove the + entire check actually. + +2014-09-25 16:21:51 +0100 Tim-Philipp Müller + + * tests/check/libs/baseparse.c: + tests: fix caps leak in baseparse unit test + +2014-09-25 14:54:23 +0200 Jonas Holmberg + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstflowcombiner.c: + * libs/gst/base/gstflowcombiner.h: + * tests/check/libs/flowcombiner.c: + * win32/common/libgstbase.def: + flowcombiner: add a gst_flow_combiner_clear() method + https://bugzilla.gnome.org/show_bug.cgi?id=737359 + API: gst_flow_combiner_clear() + +2014-09-24 10:11:54 +0200 Thibault Saunier + + * scripts/gst-uninstalled: + scripts: Handle gst-python in gst-uninstalled + https://bugzilla.gnome.org/show_bug.cgi?id=709082 + +2014-06-03 14:23:30 +0200 Thibault Saunier + + * plugins/elements/gstcapsfilter.c: + capsfilter: Remove EOS event from pending_event list on FLUSH_STOP + https://bugzilla.gnome.org/show_bug.cgi?id=709868 + +2014-09-22 14:27:05 +0100 William Manley + + * gst/gstbuffer.c: + docs: Fix GstBuffer typo "memory bock" -> "memory block" + https://bugzilla.gnome.org/show_bug.cgi?id=737117 + +2014-09-22 17:27:31 +0100 William Manley + + * gst/gstbuffer.c: + docs: Improve gst_buffer_get_meta() to clear up confusion + I was confused by the existence of `gst_buffer_get_meta` as it suggested + to me that you should only attach one of any type of GstMeta to a buffer. + It's perfectly fine to attach multiple from a single API so I'm + documenting that here. + https://bugzilla.gnome.org/show_bug.cgi?id=737129 + +2014-09-22 19:05:32 +0200 Marcin Kolny + + * gst/gstdatetime.h: + datetime: added missing include directives + https://bugzilla.gnome.org/show_bug.cgi?id=737133 + +2014-09-23 14:31:29 +0200 Thibault Saunier + + * plugins/elements/gstqueue.c: + queue: Do not forget to release the QUEUE_LOCK in the out_flow_error path + Avoiding deadlocks! + +2014-09-23 12:53:18 +0200 Stefan Sauer + + * libs/gst/base/gstbasesrc.h: + docs: fix a small contradition in the docs + The vmethod get_size() shall return the size in 'format' as configured by + _set_format(). + +2014-09-22 09:33:04 +0200 Thibault Saunier + + * plugins/elements/gstqueue.c: + queue: Do not hold GST_QUEUE_LOCK while posting ERROR messages + This might create deadlocks and we need to avoid holding element + specific lock while posting messages + For example a deadlock will happen if while posting the message, + someone connected on the bus (sync) tries to DOT the pipeline. + https://bugzilla.gnome.org/show_bug.cgi?id=737102 + +2014-09-19 12:02:46 -0300 Thiago Santos + + * plugins/elements/gstqueue2.c: + * plugins/elements/gstqueue2.h: + queue2: do not post buffering messages holding the lock + It might cause deadlocks to post messages while holding the queue2 + lock. To avoid this a new boolean flag is set whenever a new + buffering percent is found. The message is posted after the lock + is released. + To make sure the buffering messages are posted in the right order, messages + are posted holding another lock. This prevents 2 threads trying to post + messages at the same time. + https://bugzilla.gnome.org/show_bug.cgi?id=736969 + +2014-09-19 09:42:10 +0530 Ravi Kiran K N + + * gst/gsturi.c: + gsturi: Remove unnecessary code + gst_uri_handler_set_uri() function has new_uri, location and colon + are not necessary, they can be removed. + https://bugzilla.gnome.org/show_bug.cgi?id=736877 + +2014-09-19 00:33:58 +0100 Tim-Philipp Müller + + * docs/pwg/advanced-tagging.xml: + * docs/pwg/intro-basics.xml: + docs: pwg: fix some links to the API docs + https://bugzilla.gnome.org/show_bug.cgi?id=736762 + +2014-09-18 18:55:47 +0100 Tim-Philipp Müller + + * plugins/elements/gstfilesrc.c: + filesrc: remove FIXME + https://bugzilla.gnome.org/show_bug.cgi?id=735878 + +2014-09-17 21:49:18 -0400 Olivier Crête + + * gst/gst.c: + gst: Fix spelling error + Thank to Adrian Owen for reporting this error. + https://bugzilla.gnome.org/show_bug.cgi?id=736839 + +2014-09-17 17:17:10 +0200 Ognyan Tonchev + + * plugins/elements/gsttypefindelement.c: + typefindelement: do not leak sticky events in flush_stop + https://bugzilla.gnome.org/show_bug.cgi?id=736813 + +2014-09-12 14:42:23 +0200 Stefan Sauer + + * gst/gstinfo.c: + info: avoid global variable for log_file + Use user_data to pass the log_file handle to the logger-function. + If one wants to change the log target (e.g. GST_DEBUG_FILE), simply call + gst_debug_remove_log_function() and re-add the handler with the new log-target + using gst_debug_add_log_function (). + +2014-09-16 13:48:18 +0200 Ognyan Tonchev + + * gst/gstevent.c: + event: add annotations to gst_event_parse_toc_select() + https://bugzilla.gnome.org/show_bug.cgi?id=736739 + +2014-09-11 18:01:58 -0300 Thiago Santos + + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstmultiqueue.h: + multiqueue: do not post messages holding the lock + It might cause deadlocks to post messages while holding the multiqueue + lock. To avoid this a new boolean flag is set whenever a new buffering percent + is found. The message is posted after the lock can be released. + To make sure the buffering messages are posted in the right order, messages + are posted holding another lock. This prevents 2 threads trying to post + messages at the same time. + https://bugzilla.gnome.org/show_bug.cgi?id=736295 + +2014-09-16 16:07:40 +0200 Wim Taymans + + * docs/pwg/other-base.xml: + docs: fix typo + +2014-09-16 12:17:48 +0200 Ognyan Tonchev + + * gst/gstquery.c: + query: Add annotations to gst_query_add_allocation_pool() + https://bugzilla.gnome.org/show_bug.cgi?id=736736 + +2014-09-15 16:38:17 +0200 Aurélien Zanelli + + * libs/gst/base/gstbasesrc.c: + basesrc: handle reference in set_allocation rather than in prepare_allocation + Otherwise we can forget to unref objects in error cases. + https://bugzilla.gnome.org/show_bug.cgi?id=736680 + +2014-09-15 13:06:40 +0300 Sebastian Dröge + + * libs/gst/check/gstcheck.c: + check: Use the name parameter of gst_check_setup_src_pad_by_name() and the sink variant + This was hardcoded to "sink" / "src" by accident in previous refactoring. + +2014-09-13 20:12:52 +0100 Tim-Philipp Müller + + * plugins/elements/gstcapsfilter.c: + * plugins/elements/gstdownloadbuffer.c: + * plugins/elements/gstfakesink.c: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstoutputselector.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gstvalve.c: + coreelements: mark properties with MUTABLE_PLAYING + +2014-09-11 15:52:32 +0200 Thibault Saunier + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/check/Makefile.am: + * libs/gst/check/gstcheck.c: + * libs/gst/check/gstcheck.h: + check: Add a function to check destruction of objects + Add a method letting people to ensure that unreffing one object + leads to its destruction, and possibly the destruction of more object + (think destruction of a GstBin etc...). + https://bugzilla.gnome.org/show_bug.cgi?id=736477 + +2014-09-12 14:10:40 +0100 Tim-Philipp Müller + + * tools/gst-inspect.c: + tools: gst-inspect: don't list pad functions + Don't print all the different pad functions, it's just + confusing and no one has ever needed to know this for + anything ever anyway, it's just useless information. + Besides, we also label the default implementations as + 'custom' implementations (the code that tries to + prevent that doesn't actually work it seems). + https://bugzilla.gnome.org/show_bug.cgi?id=736377 + +2014-09-12 15:22:19 +0300 Sebastian Dröge + + * gst/gstpad.c: + pad: Make sure the buffer to get/pull_range() has at least the requested size + https://bugzilla.gnome.org/show_bug.cgi?id=735861 + +2014-09-05 18:36:02 +0000 Tiago + + * libs/gst/check/gstcheck.c: + check: Adding documentation to the gst_check_setup_sink_pad_by_name function + https://bugzilla.gnome.org/show_bug.cgi?id=734190 + +2014-09-10 14:53:00 +0200 Ognyan Tonchev + + * gst/gstquery.c: + query: add annotations to gst_query_set_nth_allocation_pool() + https://bugzilla.gnome.org//show_bug.cgi?id=736424 + +2014-09-11 09:35:17 +0200 Rémi Lefèvre + + * plugins/elements/gstvalve.c: + valve: fix typo in description + https://bugzilla.gnome.org/show_bug.cgi?id=736455 + +2014-09-09 20:43:02 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbaseparse.h: + baseparse: minor docs fix + +2014-09-07 01:30:16 -0300 Thiago Santos + + * plugins/elements/gstdataurisrc.c: + Revert "dataurisrc: Remove unnecessary else if condition" + This reverts commit 3024ae9c38490817a76c83feab3c8472989cafad. + The *buf can be NULL or not depending if the caller of gst_pad_get_range + function provided or not a buffer. + +2014-09-04 13:38:21 +0530 Vineeth T M + + * plugins/elements/gstdataurisrc.c: + dataurisrc: Remove unnecessary else if condition + In gst_data_uri_src_create(), buf cannot be NULL, hence + else if (*buf != NULL) will be invalid so removing the + else if condition and adding a check to unreference buf + in else condition, just in case + https://bugzilla.gnome.org/show_bug.cgi?id=735861 + +2014-09-03 17:38:16 +0100 Tim-Philipp Müller + + * gst/gstdevicemonitor.c: + devicemonitor: fix typo in sample code in docs + https://bugzilla.gnome.org/show_bug.cgi?id=735975 + +2014-08-25 11:34:48 +0200 Wim Taymans + + * tests/check/gst/gstpad.c: + tests: add flush-stop on inactive pad test + Check that pushing flush-stop on an inactive pad does not clear the + flushing flag. + +2014-08-21 15:49:17 +0200 Wim Taymans + + * gst/gstpad.c: + pad: don't accept flush-stop on inactive pads + Inactive pads should at all times have the flushing flag set. This means + that when we get a flush-stop on an inactive pad we must ignore it. + On sinkpads, make this more explicit. We used to not clear the flush + flag but remove the events and then return an error because the flushing + flag was set. Now just simply refuse the event without doing anything. + On srcpads, check that we are trying to push a flush-stop event and + refuse it. We would allow this and mark the srcpad as non-flushing + anymore. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=735357 + +2014-08-27 17:06:57 +0530 Ravi Kiran K N + + * plugins/elements/gstoutputselector.c: + output-selector: Send all events to active src pad and EOS to all src pads + Fixes tests/icles/output-selector-test + https://bugzilla.gnome.org/show_bug.cgi?id=729811 + +2014-09-02 12:11:44 +0530 Vineeth T M + + * plugins/elements/gstdataurisrc.c: + dataurisrc: Make get_uri() threadsafe + https://bugzilla.gnome.org/show_bug.cgi?id=735861 + +2014-08-28 17:24:56 +0200 Guillaume Desmottes + + * docs/manual/advanced-dataaccess.xml: + manual: fix typo in advanced-dataaccess.xml + https://bugzilla.gnome.org/show_bug.cgi?id=735609 + +2014-08-26 20:14:40 +0200 Arnaud Vrac + + * gst/gstbuffer.c: + buffer: do not touch memory tag flag when copying buffer flags + The tag memory flag will be set later if the memory is also copied. This + patch avoids buffers being freed needlessly in bufferpools. + https://bugzilla.gnome.org/show_bug.cgi?id=735574 + +2014-07-15 16:06:49 +0200 Linus Svensson + + * gst/gstbus.c: + bus: gst_bus_add_watch() can return 0 on error + Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=735195 + +2014-08-25 13:44:30 -0300 Thiago Santos + + * libs/gst/base/gstbaseparse.c: + baseparse: handle streamheaders by prepending them to the stream + Add a first_buffer boolean state flag to have baseparse do actions + before pushing data. This is used to check the caps for streamheader + buffers that are prepended to the stream, but only if the first buffer + isn't already marked with the _HEADER flag. In this case, it is assumed + that the _HEADER marked buffer is the same as the streamheader. + https://bugzilla.gnome.org/show_bug.cgi?id=735070 + +2014-08-27 11:01:01 +0300 Sebastian Dröge + + * plugins/elements/gstconcat.c: + concat: Allow seeking on the currently playing stream + This is consistent with the stream time reporting. + +2014-08-23 12:24:27 +0100 Tim-Philipp Müller + + * gst/gstpad.h: + pad: add g-i 'transfer full' annotations to chain and chain_list functions + https://bugzilla.gnome.org/show_bug.cgi?id=735210 + +2014-08-22 10:32:38 +0200 Guillaume Desmottes + + * gst/gstpad.h: + pad: annotate GstPadEventFunction event with 'transfer full' + The callback is supposed to take ownership of the event so + best to be explicit about it. + https://bugzilla.gnome.org/show_bug.cgi?id=735210 + +2014-08-20 12:55:51 +0200 Linus Svensson + + * tests/check/elements/queue.c: + tests: add test that triggers deadlock in state change of queue + When receiving FLASH_STOP in a state transition to READY, a queue + element can end up with an active task that will never end. + https://bugzilla.gnome.org/show_bug.cgi?id=734688 + +2014-08-21 14:02:16 +0100 Tim-Philipp Müller + + * plugins/elements/gstqueue.c: + queue: fix race when flush-stop event comes in whilst shutting down + Don't re-start the queue push task on the source pad when a + flush-stop event comes in and we're in the process of shutting + down, otherwise that task will never be stopped again. + When the element is set to READY state, the pads get de-activated. + The source pad gets deactivated before the queue's own activate_mode + function on the source pads gets called (which will stop the thread), + so checking whether the pad is active before re-starting the task on + receiving flush-stop should be fine. The problem would happen when the + flush-stop handler was called just after the queue's activate mode + function had stopped the task. + Spotted and debugged by Linus Svensson + https://bugzilla.gnome.org/show_bug.cgi?id=734688 + +2014-08-06 14:01:09 +0100 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstbytereader.c: + * libs/gst/base/gstbytereader.h: + * tests/check/libs/bytereader.c: + * win32/common/libgstbase.def: + bytereader: add gst_byte_reader_peek_sub_reader() and _get_sub_reader() + Adds API to get or peek a sub-reader of a certain size from + a given byte reader. This is useful when parsing nested chunks, + one can easily get a byte reader for a sub-chunk and make + sure one never reads beyond the sub-chunk boundary. + API: gst_byte_reader_peek_sub_reader() + API: gst_byte_reader_get_sub_reader() + +2014-07-25 16:39:40 +0200 Aurélien Zanelli + + * libs/gst/base/gstbasesrc.c: + docs: make explicit that the caps passed to gst_base_src_set_caps() are 'tranfer none' + https://bugzilla.gnome.org/show_bug.cgi?id=733741 + +2014-08-14 18:53:40 -0300 Thiago Santos + + * plugins/elements/gstinputselector.c: + inputselector: always proxy caps query + Otherwise it would only be proxied for the active pad which can lead + upstream to use an incompatible caps for the downstream element. + Even if a reconfigure event is sent upstream when the pad is activated, this + will save the caps reconfiguration if it is already using an acceptable caps. + +2014-08-14 14:37:56 +0100 Tim-Philipp Müller + + * libs/gst/base/gstdataqueue.h: + base: and fix build with new g-i again + +2014-08-14 14:25:06 +0100 Tim-Philipp Müller + + * libs/gst/base/gstdataqueue.h: + base: remove g-i annotation that makes older g-ir-scanner crash + Just remove one skip annotation that causes this: + ** (g-ir-compiler:12458): ERROR **: Caught NULL node, parent=empty + with older g-i versions such as 1.32.1. + +2014-08-13 14:12:00 +0200 Philippe Normand + + * gst/gstbus.c: + bus: destroy signal watch from the context it was mapped to + Don't rely on g_source_remove() because it operates on the main + context. If a signal watch was added to a new thread-default context + g_source_remove() would have no effect. So simply use + g_source_destroy() to avoid this problem. + Additionally the source_id was removed from GstBusPrivate because it + was redundant with the signal watch GSource also stored in that + structure. + https://bugzilla.gnome.org/show_bug.cgi?id=734716 + +2014-08-07 12:18:04 +0200 Thibault Saunier + + * plugins/elements/gstmultiqueue.c: + multiqueue: Not post BUFFERING message if one of the singlequeue doesn't need it + Imagine the following 'pipeline' + -------------- + p1/| 'fullqueue' |--- 'laggy' downstream + --------- / | | + -| demuxer | | multiqueue | + --------- \ | | + p2\| 'emptyqueue' |--- 'fast' downstream + -------------- + In the case downstream of one single queue (fullqueue) has (a lot of) latency + (for example for reverse playback with video), we can end up having the other + SingleQueue (emptyqueue) emptied, before that fullqueue gets + unblocked. In the meantime, the demuxer tries to push on fullqueue, and + is blocking there. + In that case the current code will post a BUFFERING message on the bus when + emptyqueue gets emptied, that leads to the application setting the pipeline state to + PAUSED. So now we end up in a situation where 'laggy downstream' is + prerolled and will not unblock anymore because the pipeline is set to + PAUSED, the fullequeue does not have a chance to be emptied and + the emptyqueue can not get filled anymore so no more BUFERRING message + will be posted and the pipeline is stucked in PAUSED for the eternity. + Making sure that we do not try to "buffer" if one of the single queue + does not need buffering, prevents this situtation from happening though it lets the + oportunity for buffering in all other cases. + That implements a new logic where we need all singlequeue to need + buffering for the multiqueue to actually state buffering is needed, + taking the maximum buffering of the single queue as the reference point. + https://bugzilla.gnome.org/show_bug.cgi?id=734412 + +2014-08-13 13:01:23 +0300 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: Only handle flow returns < EOS as errors, not e.g. flushing + +2014-08-13 12:40:37 +0300 Sebastian Dröge + + * gst/gstbin.c: + bin: Use allow-none instead of nullable until we depend on a new enough GI version + +2014-08-13 12:39:47 +0300 Sebastian Dröge + + * gst/gstbin.c: + bin: gst_bin_new() can accept NULL as name + +2014-08-13 12:37:08 +0300 Sebastian Dröge + + * gst/gstelement.c: + element: Clarify docs about gst_element_get_request_pad() and remove deprecation part + This function is not really pad or slow for the common case of requesting a + pad with the name of the template. It is only slower if you to name your pads + directly instead of letting the element handle it. + Also there's no reason to deprecate it in favor of a more complicated function + for the common case. + +2014-08-13 12:20:51 +0300 Sebastian Dröge + + * plugins/elements/gstqueue2.c: + queue2: Post errors if we receive EOS after downstream reported an error + There will be no further data flow that would allow us to propagate the + error upstream, causing nobody at all to post an error message. + +2014-08-13 12:15:03 +0300 Sebastian Dröge + + * plugins/elements/gstqueue.c: + queue: Post errors when receiving EOS after downstream returned an error + There might be no further data flow that would allow us to propagate the + error upstream, causing nobody to post an error at all. + +2014-08-13 12:10:39 +0300 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: Post errors ourselves if they are received after EOS + After EOS there will be no further buffer which could propagate the + error upstream, so nothing is going to post an error message and + the pipeline just idles around. + +2014-08-12 20:03:06 +0530 Arun Raghavan + + * gst/gstpad.c: + docs: Trivial pad documentation fix + Presumably a copy-pasto. + +2014-08-08 09:54:02 +0200 Sebastian Dröge + + * tests/check/Makefile.am: + * tests/check/elements/.gitignore: + * tests/check/elements/concat.c: + concat: Add unit tests for concat element + +2014-08-08 09:13:50 +0200 Sebastian Dröge + + * docs/plugins/gstreamer-plugins-sections.txt: + * docs/plugins/gstreamer-plugins.hierarchy: + * docs/plugins/inspect/plugin-coreelements.xml: + * plugins/elements/gstconcat.c: + concat: Add documentation and integrate into documentation build + +2014-08-07 14:42:44 +0200 Sebastian Dröge + + * plugins/elements/Makefile.am: + * plugins/elements/gstconcat.c: + * plugins/elements/gstconcat.h: + * plugins/elements/gstelements.c: + concat: Add new element that concatenates multiple streams + https://bugzilla.gnome.org/show_bug.cgi?id=734470 + +2014-08-09 10:57:56 -0300 Thiago Santos + + * tests/check/gst/gstcaps.c: + tests: caps: add check for caps with features intersection + Checks that a caps without features doesn't intersect with + one that has features + +2014-08-07 14:54:37 +0100 Tim-Philipp Müller + + * tests/examples/controller/audio-example.c: + * tests/examples/controller/text-color-example.c: + examples: controller: fix typo in comments + +2014-08-06 13:58:22 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbytereader.h: + bytereader: use unchecked inline variant for get_remaining in more places + We've already done the g_return_*_if_fail (reader != NULL) + dance in those places, so no need to do it again. + +2014-08-06 14:43:08 +0200 Sebastian Dröge + + * gst/gstutils.c: + utils: Ghostpads can be request pads too but check if the pad has a template + Otherwise we dereference NULL in some cases and crash. + +2014-08-06 12:34:42 +0200 Sebastian Rasmussen + + * docs/manual/appendix-programs.xml: + * tests/check/gst/gstbin.c: + * tests/check/pipelines/parse-launch.c: + * tests/examples/launch/mp3parselaunch.c: + tests: Add missing unrefs of objects after use + Unreffing the objects returned by gst_bin_get_by_name() and + gst_pipeline_get_use() were missing in several tests, so add these. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734345 + +2014-08-06 12:55:57 +0200 Sebastian Dröge + + * tests/check/gst/gstutils.c: + utils: Fix unititialized variable compiler warning + +2014-07-13 15:31:08 +0200 Sebastian Rasmussen + + * tests/check/gst/gstutils.c: + tests: Add test verifying gst_element_link_pads_full() + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=733119 + +2014-07-13 15:28:32 +0200 Sebastian Rasmussen + + * gst/gstutils.c: + utils: Unref/release pads in error cases when linking pads + Previously gst_element_link_pads_full() forgot to unreference or release + request pads in several error cases. Also comments were added mentioning + why releasing is not necessary in some places. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=733119 + +2014-08-01 17:27:39 -0300 Tiago Cesar Katcipis + + * libs/gst/check/gstcheck.c: + gstcheck: add docs for gst_check_setup_src_pad_by_name() + https://bugzilla.gnome.org/show_bug.cgi?id=734142 + +2014-07-31 18:32:03 +0200 Edward Hervey + + * Makefile.am: + * common: + Makefile: Add usage of build-checks step + Allows building checks without running them + +2014-07-30 15:46:22 +0300 Mohammed Sameer + + * gst/gstbufferpool.c: + bufferpool: Add missing error checking to default_alloc_buffer() + default_alloc_buffer() calls gst_buffer_new_allocate() but does not check for + failed allocation. + This patch makes default_alloc_buffer() return an error (GST_FLOW_ERROR) if + buffer allocation fails. + https://bugzilla.gnome.org/show_bug.cgi?id=733974 + +2014-07-29 14:21:33 -0300 Thiago Santos + + * plugins/elements/gstmultiqueue.c: + multiqueue: avoid using infinite buffers limit if finite is requested + If the current max-buffers limit it infinite and a finite value is + requested, switch to the MAX (requested, current-value) to set some + limit but not below what we know that we've needed so far. + https://bugzilla.gnome.org/show_bug.cgi?id=733637 + https://bugzilla.gnome.org/show_bug.cgi?id=733837 + +2014-07-24 22:02:58 +0200 Sebastian Rasmussen + + * gst/parse/grammar.y: + parse: Unref reference to enclosing bins + Previously all reference to enclosing bins of an element were leaked + when doing delaying setting a property. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=733697 + +2014-07-27 02:37:08 +0000 Руслан Ижбулатов + + * tools/gst-launch.c: + gst-launch: Support SIGINT (Ctrl+C) on W32 + W32 has no SIGINT, but it does have SetConsoleCtrlHandler(), which sets up + a handler for Ctrl+C. + https://bugzilla.gnome.org/show_bug.cgi?id=733814 + +2014-07-27 03:06:16 +0000 Руслан Ижбулатов + + * gst/gstpoll.c: + poll: Prevent false-negative from WAKE_EVENT() on W32 + SetEvent() seems to not call SetLastError(0) internally, so checking last + error after calling SetEvent() may return the error from an earlier W32 API + call. Fix this by calling SetlastError(0) explicitly. + Currently WAKE_EVENT() code is cramped into a macro and doesn't look to be + entirely correct. Particularly, it does not check the return value of + SetEvent(), only the thread-local W32 error value. It is likely that SetEvent() + actually just returns non-zero value, but the code mistakenly thinks that the + call has failed, because GetLastError() seems to indicate so. + https://bugzilla.gnome.org/show_bug.cgi?id=733805 + +2014-07-26 14:42:54 +0100 Tim-Philipp Müller + + * gst/gst.h: + gst: include atomicqueue.h again in gst.h + It's a public header of gstreamer core, so #include + should make the API available. + +2014-07-25 11:45:56 +0100 Tim-Philipp Müller + + * plugins/elements/gsttypefindelement.c: + typefindelement: remove prototype for function that no longer exists + +2014-07-24 14:39:11 -0300 Thiago Santos + + * libs/gst/base/gstbytereader.c: + * libs/gst/base/gstbytereader.h: + * tests/check/libs/bytereader.c: + * win32/common/libgstbase.def: + bytereader: add gst_byte_reader_masked_scan_uint32_peek + Adds gst_byte_reader_masked_scan_uint32_peek just like + GstAdapter has a _peek and non _peek version + Upgraded tests to check that the returned value is correct in the + _peek version + API: gst_byte_reader_masked_scan_uint32_peek + https://bugzilla.gnome.org/show_bug.cgi?id=728356 + +2014-06-26 14:09:25 +0100 Tim-Philipp Müller + + * gst/gstbufferlist.c: + bufferlist: pre-allocate buffer array in one go with the buffer list + We can now create and free a buffer list with one slice alloc/free + call in most cases, instead of one slice alloc/free for the list, + one slice alloc/free for the GArray, and one malloc/free for the + GArray array. In practice we know the max size of our buffer list + from the start, so can avoid reallocs. + https://bugzilla.gnome.org/show_bug.cgi?id=732284 + +2014-07-23 21:27:48 +0200 Stefan Sauer + + * gst/gst_private.h: + * gst/gstdebugutils.c: + private: allow internal access to the debug base-time + Moving the extern to the head lets us access this from other parts as well. This + is neeed in the tracer branch. + +2014-07-23 00:15:17 +0530 Arun Raghavan + + * scripts/git-update.sh: + scripts: Use git pull --rebase + No point introducing redundant merge commits. + +2014-07-21 12:41:08 -0300 Thiago Santos + + * tests/check/Makefile.am: + * tests/check/gst/gsttaglist.c: + Revert "tests: taglist: add basic test for taglists serialization" + This reverts commit 85d23d19b7de40541d63b0bc76d8b646c321af26. + There was already a gsttag.c tests file, this test has been merged + in it in the previous commit + +2014-07-21 12:40:47 -0300 Thiago Santos + + * tests/check/gst/gsttag.c: + tests: tag: add the empty taglist serialization test + Adds the test to the appropriate and already existing file. + +2014-07-14 18:46:54 -0300 Thiago Santos + + * tests/check/Makefile.am: + * tests/check/gst/gsttaglist.c: + tests: taglist: add basic test for taglists serialization + Make sure it works with empty taglists + +2014-07-14 18:25:50 -0300 Thiago Santos + + * tests/check/gst/gststructure.c: + tests: gststructure: serialization of tag event structure + Adds a test that checks that the serialization of a tag event structure + works without problems + https://bugzilla.gnome.org/show_bug.cgi?id=733131 + +2014-07-14 18:23:43 -0300 Thiago Santos + + * gst/gstvalue.c: + gstvalue: add GstTagList compare function + When serializing GstStructures from events in GDP it will add a taglist + as a GstStructure field, having the compare function allows comparison of + GstStructures to check if the serialized/deserialized version matches the + original one, among other cases. + https://bugzilla.gnome.org/show_bug.cgi?id=733131 + +2014-07-09 15:48:10 +0200 Srimanta Panda + + * plugins/elements/gstfunnel.c: + funnel: Fix for racy EOS event handling + When eos events are forwarded simultaneouly from two sinkpads on + funnel, it doesnot forward the eos to sourcepad. The reason is + sticky events are stored after the event callbacks are returned. + Therefore while one is about to store the sticky events on the its + sinkpad, other sinkpad starts checking for the eos events on all other + sinkpads and assumes eos is not present yet. + https://bugzilla.gnome.org/show_bug.cgi?id=732851 + +2014-07-17 16:05:00 +0200 Sebastian Dröge + + * tests/check/gst/gstpipeline.c: + pipeline: Add unit test for resetting of the start time + Also check if this properly affects basesink elements to not + report the old start time but the real current position when + setting to PAUSED again. + +2014-07-15 18:19:24 +0200 Sebastian Dröge + + * gst/gstpipeline.c: + pipeline: Reset the start time when going from PAUSED to READY too + +2014-07-15 17:19:10 +0200 Sebastian Dröge + + * gst/gstpipeline.c: + pipeline: Reset start time in READY->PAUSED before chaining up + Otherwise bin will change the state of the child elements without + distributing the new start time. + +2014-06-28 17:58:26 +0100 Tim-Philipp Müller + + * plugins/elements/gstelements_private.c: + elements: improve buffer flags to string utility function + Avoid relocations and refactor so that we don't calculate + the fixed and known at compile time maximum string size + every time. Also skip the mini object flags which we are + not going to print anyway. + +2014-07-19 18:04:31 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.4.0 === + +2014-07-19 16:46:41 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstversion.h: + Release 1.4.0 + +2014-07-19 16:21:20 +0200 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 + +2014-07-19 12:16:58 +0200 Sebastian Dröge + + * po/da.po: + * po/sv.po: + po: Update translations + +2014-07-17 15:53:53 +0200 Thibault Saunier + + * libs/gst/base/gstbaseparse.c: + baseparse: Return FLOW_FLUSHING when pushing a frame on a pad that has been flushed + When going to READY, it is possible that we are still pusing a frame but that + our srcpad has already been set to flushing. In that case we should not + post any error on the bus but instead cleanly return FLOW_FLUSHING. + https://bugzilla.gnome.org/show_bug.cgi?id=733320 + +2014-07-17 07:07:36 +0200 Edward Hervey + + * plugins/elements/gsttypefindelement.c: + typefindelement: Propagate input buffer PTS and DTS + The initial buffers (that were used for timestamping) might have PTS + and DTS set. In order to forward those properly, get the initial + PTS/DTS from the adapter and set them on the reconstructed output + buffer. + https://bugzilla.gnome.org/show_bug.cgi?id=733291 + +2014-07-12 17:01:23 +0200 Sebastian Rasmussen + + * gst/gstdebugutils.c: + debugutils: Unref pad template after use + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=733121 + +2014-07-14 18:10:45 -0300 Thiago Santos + + * gst/gst.c: + gst: init taglist gtype to use it in gstvalue + Otherwise it will have a 0 value and GstTagList won't be found + for GstValue functions (serialization/deserialization) + https://bugzilla.gnome.org/show_bug.cgi?id=733131 + +=== release 1.3.91 === + +2014-07-11 10:46:01 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstversion.h: + Release 1.3.91 + +2014-07-11 10:41:20 +0200 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 + +2014-07-11 08:51:08 +0200 Sebastian Dröge + + * po/da.po: + * po/vi.po: + po: Update translations + +2014-07-05 18:29:29 +0200 Sebastian Rasmussen + + * docs/libs/gstreamer-libs-docs.sgml: + * docs/libs/gstreamer-libs-sections.txt: + * gst/gstcaps.h: + * gst/gstdevice.c: + * gst/gstdeviceprovider.c: + * gst/gstdeviceproviderfactory.c: + * gst/gsttoc.h: + * gst/gstvalue.c: + * libs/gst/check/gstcheck.c: + * libs/gst/net/gstnetaddressmeta.c: + * libs/gst/net/gstnetaddressmeta.h: + docs: Fix documentation typos and inconsistencies + * GstGlobalDeviceMonitor was renamed to GstDeviceMonitor + * Expand GST_MESSAGE_DEVICE to the full enum value names + * Correct the incorrect references to the GstDeviceProvider interfaces + * Describe caps arguments for gstcheck interface + * Add missing docs for GstNetAddressMeta and its add function + * Add docs for toc helper macros + * Avoid refering to GstValueList type as done elsewhere + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732786 + +2014-07-05 17:13:21 +0200 Sebastian Rasmussen + + * docs/gst/gstreamer-sections.txt: + * docs/libs/gstreamer-libs-sections.txt: + docs: Cleanup interface references in docs + * Delete references to removed interfaces + * Add missing documentation sections + * Fix duplicate interface references for GstDevice + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732786 + +2014-07-08 11:17:41 +0200 Sebastian Dröge + + * plugins/elements/gstfilesrc.c: + * plugins/elements/gsttee.c: + * tools/gst-launch.1.in: + docs: There is no decodebin2 anymore, don't pretend otherwise + +2014-07-07 16:14:32 -0300 Thiago Santos + + * plugins/elements/gstfdsrc.c: + fdsrc: fix error setting when uri is invalid + Elements should always set the GError + +2014-07-06 12:13:04 +0100 Tim-Philipp Müller + + * libs/gst/check/gstcheck.h: + libs: gstcheck: check that mutex is locked before g_cond_wait*() is called + Sanity check to catch problems in unit test. + +2014-07-06 12:12:20 +0100 Tim-Philipp Müller + + * libs/gst/check/gstcheck.h: + libs: gstcheck: init and clear global mutex and cond variables + +2014-07-06 12:09:31 +0100 Tim-Philipp Müller + + * tests/check/gst/gstpoll.c: + tests: fix locking in gstpoll unit test + The mutex needs to be locked when g_cond_wait*() is + called. + +2014-07-05 16:24:18 +0100 Matthieu Bouron + + * scripts/gst-uninstalled: + gst-uninstalled: add video and base library paths from -bad + https://bugzilla.gnome.org/show_bug.cgi?id=732770 + +2014-07-04 19:40:28 +0100 Tim-Philipp Müller + + * tools/gst-inspect.c: + tools: suppress GLib warnings when gst-inspecting deprecated properties + GLib in git will spew a g_warning() when a property marked as + deprecated via param spec flags is accessed. Suppress this by + setting the appropriate environment variable. + +2014-07-03 10:11:02 +0200 Sebastian Dröge + + * gst/gstmessage.h: + message: Work around g-i/pygobject/gjs bug with ~0 in enums + GST_MESSAGE_ANY was considered a long by pygobject and gjs, and thus + couldn't be used in gst_bus_poll() and similar APIs as they expect an + int-typed enum. + Just use 0xffffffff instead for now. + https://bugzilla.gnome.org/show_bug.cgi?id=732633 + +2014-07-02 08:41:18 +0100 Tim-Philipp Müller + + * tests/check/gst/gstbufferlist.c: + tests: don't use post-GLib 2.32 API in bufferlist test + g_ptr_array_insert() is GLib >= 2.40 + +2014-07-01 12:22:56 +0200 Göran Jönsson + + * gst/gstpad.c: + pad: Don't unlock while iterating over all sticky events for removal + Otherwise we might end up getting the event removed from elsewhere + at the same time while we're unlocked for g_object_notify(). + https://bugzilla.gnome.org/show_bug.cgi?id=732556 + +2014-07-01 19:17:11 +0200 Sebastian Dröge + + * plugins/elements/gstidentity.c: + identity: Proxy the accept-caps query + We always work in passthrough mode so there's no point in doing + something more clever in basetransform. Also the basetransform + code leads to problems with incomplete caps and downstream + elements that use GST_PAD_FLAG_ACCEPT_INTERSECT. + https://bugzilla.gnome.org/show_bug.cgi?id=732559 + +2014-07-01 11:21:53 +0100 Vincent Penquerc'h + + * libs/gst/base/gstbasesink.c: + basesink: reset QoS on segment event + This avoids spurious warnings about slow machine when upstream + sends new segments without flushing. + +2014-06-30 23:39:18 -0700 Evan Nemerson + + * gst/gstbufferpool.c: + * gst/gstdevice.c: + * gst/gstdevicemonitor.c: + * gst/gstdeviceprovider.c: + * gst/gstdeviceproviderfactory.c: + * gst/gstmessage.c: + * gst/gstquery.c: + * gst/gststructure.c: + * gst/gstsystemclock.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstcollectpads.c: + * libs/gst/check/gstcheck.c: + * libs/gst/check/gsttestclock.c: + introspection: Assorted minor introspection and documentation fixes + https://bugzilla.gnome.org/show_bug.cgi?id=732534 + +2014-06-30 08:59:18 +0000 Guillaume Desmottes + + * gst/gstdevicemonitor.c: + devicemonitor: Stop using g_clear_pointer() + We dont't want to depend on GLib 2.34 for now. + +2014-06-29 19:16:05 +0200 Sebastian Dröge + + * tests/check/libs/sparsefile.c: + sparsefile: Initialize memory in unit test to make valgrind happy + We were writing unitialized stack memory to the file. + +2014-06-28 09:35:21 -0300 Thiago Santos + + * plugins/elements/gstdataurisrc.c: + dataurisrc: fix leak as gst_buffer_replace adds its own ref + So unref the buffer after that otherwise it leaks + +=== release 1.3.90 === + +2014-06-28 10:45:18 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstversion.h: + Release 1.3.90 + +2014-06-28 10:41:48 +0200 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 + +2014-06-27 10:44:32 +0100 Tim-Philipp Müller + + * gst/gstdevicemonitor.c: + * tests/check/gst/gstdevice.c: + devicemonitor: don't fail when started without any filters + Just show all devices then. + +2014-06-27 10:44:01 +0100 Tim-Philipp Müller + + * gst/gstdeviceproviderfactory.c: + deviceproviderfactory: handle NULL classes argument and match any + +2014-06-26 21:00:40 -0400 Olivier Crête + + * tests/check/Makefile.am: + * tests/check/gst/.gitignore: + * tests/check/gst/gstdevice.c: + device: Add unit tests + +2014-06-26 17:22:25 -0400 Olivier Crête + + * gst/gstdevicemonitor.c: + * gst/gstdeviceprovider.c: + * gst/gstdeviceproviderfactory.c: + * gst/gstmessage.c: + devicemonitor: Improve documentation + +2014-06-26 17:13:12 -0400 Olivier Crête + + * docs/gst/gstreamer-sections.txt: + * gst/gstdevicemonitor.c: + * gst/gstdevicemonitor.h: + * gst/gstdeviceprovider.c: + * gst/gstdeviceproviderfactory.c: + * gst/gstdeviceproviderfactory.h: + * win32/common/libgstreamer.def: + devicemonitor: Make it possible to add multiple filters + Each filter will include a GstCaps and a set of classes to match + +2014-06-26 16:31:51 -0400 Olivier Crête + + * gst/gstdevice.c: + device: Add pre-conditions + +2014-06-26 15:08:46 -0400 Olivier Crête + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + * gst/Makefile.am: + * gst/gst.h: + * gst/gstdevicemonitor.c: + * gst/gstdevicemonitor.h: + * gst/gstglobaldevicemonitor.h: + * win32/common/libgstreamer.def: + GstDeviceMonitor: Rename from GstGlobalDeviceMonitor + +2014-06-26 14:28:09 -0400 Olivier Crête + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + * docs/plugins/gstreamer-plugins.hierarchy: + * gst/Makefile.am: + * gst/gst.h: + * gst/gst_private.h: + * gst/gstdevice.c: + * gst/gstdevicemonitor.c: + * gst/gstdevicemonitorfactory.h: + * gst/gstdeviceprovider.c: + * gst/gstdeviceprovider.h: + * gst/gstdeviceproviderfactory.c: + * gst/gstdeviceproviderfactory.h: + * gst/gstglobaldevicemonitor.c: + * gst/gstglobaldevicemonitor.h: + * gst/gstmessage.c: + * gst/gstmessage.h: + * gst/gstregistry.c: + * gst/gstregistrybinary.c: + * gst/gstregistrychunks.c: + * gst/gstregistrychunks.h: + * tools/gst-inspect.c: + * win32/common/libgstreamer.def: + DeviceProvider: Rename from DeviceMonitor + +2014-06-26 19:31:33 +0200 Sebastian Dröge + + * libs/gst/base/gstdataqueue.c: + * libs/gst/base/gstdataqueue.h: + dataqueue: Hide from bindings + Other languages have their own data structures that are more convenient to + use. + https://bugzilla.gnome.org/show_bug.cgi?id=731303 + +2014-06-26 19:30:52 +0200 Sebastian Dröge + + * libs/gst/base/gstqueuearray.c: + * libs/gst/base/gstqueuearray.h: + queuearray: Hide from bindings + Other languages have their own data structures that are more convenient to use. + https://bugzilla.gnome.org/show_bug.cgi?id=731350 + +2014-05-28 10:14:45 +0100 Philip Withnall + + * gst/gstminiobject.c: + miniobject: Add missing (nullable) annotations + gst_mini_object_replace() can take NULL mini-objects. + https://bugzilla.gnome.org/show_bug.cgi?id=730873 + +2014-06-26 19:02:06 +0200 Sebastian Dröge + + * gst/gstmessage.c: + message: Application and element messages should not have NULL structures + It does not make sense for them. + +2014-06-11 16:19:01 -0700 Evan Nemerson + + * gst/gstbufferpool.c: + * gst/gstelement.c: + * gst/gstinfo.h: + * gst/gstmessage.c: + * gst/gstobject.c: + * gst/gstpad.c: + * gst/gstpad.h: + * gst/gstplugin.h: + * gst/gstpreset.c: + * gst/gsttaglist.c: + introspection: add some missing allow-none annotations to in params + https://bugzilla.gnome.org/show_bug.cgi?id=730957 + +2014-06-11 16:06:19 -0700 Evan Nemerson + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstbufferlist.h: + * gst/gstcaps.h: + * gst/gstevent.h: + * gst/gstmessage.h: + * gst/gstobject.c: + * gst/gstpreset.c: + * gst/gstquery.h: + * gst/gsttoc.c: + * gst/gstvalue.c: + introspection: add nullability annotations to out and inout params + https://bugzilla.gnome.org/show_bug.cgi?id=730957 + +2014-06-11 15:21:34 -0700 Evan Nemerson + + * gst/gstallocator.c: + * gst/gstatomicqueue.c: + * gst/gstbin.c: + * gst/gstbuffer.c: + * gst/gstbufferlist.c: + * gst/gstbus.c: + * gst/gstcapsfeatures.c: + * gst/gstchildproxy.c: + * gst/gstclock.c: + * gst/gstcontrolbinding.c: + * gst/gstdatetime.c: + * gst/gstdevicemonitorfactory.c: + * gst/gstelement.c: + * gst/gstelement.h: + * gst/gstelementfactory.c: + * gst/gstformat.c: + * gst/gstghostpad.c: + * gst/gstmemory.c: + * gst/gstmeta.c: + * gst/gstminiobject.c: + * gst/gstobject.c: + * gst/gstpad.c: + * gst/gstpad.h: + * gst/gstplugin.c: + * gst/gstpluginfeature.c: + * gst/gstpluginfeature.h: + * gst/gstpoll.c: + * gst/gstpreset.c: + * gst/gstregistry.c: + * gst/gstsample.c: + * gst/gststructure.c: + * gst/gsttaglist.c: + * gst/gsttagsetter.c: + * gst/gsttaskpool.c: + * gst/gsttoc.c: + * gst/gsttocsetter.c: + * gst/gsttypefind.c: + * gst/gsttypefindfactory.c: + * gst/gsturi.c: + * gst/gstutils.c: + * gst/gstvalue.c: + introspection: add missing (nullable) annotations to return values + Support for (nullable) was added to G-I at the same time as nullable + return values. Previous versions of G-I will not mark return values as + nullable, even when an (allow-none) annotation is present, so it is + not necessary to add (allow-none) annotations for compatibility with + older versions of G-I. + https://bugzilla.gnome.org/show_bug.cgi?id=730957 + +2014-06-11 17:15:39 -0700 Evan Nemerson + + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstcollectpads.h: + base: assorted introspection fixes and additions + https://bugzilla.gnome.org/show_bug.cgi?id=731542 + +2014-06-11 17:12:20 -0700 Evan Nemerson + + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstindex.c: + * libs/gst/base/gsttypefindhelper.c: + base: add (nullable) annotations to return values + https://bugzilla.gnome.org/show_bug.cgi?id=731542 + +2014-06-26 14:08:03 +0100 Tim-Philipp Müller + + * tests/check/gst/gstbufferlist.c: + tests: add another buffer list test case + +2014-06-26 13:24:08 +0100 Tim-Philipp Müller + + * tests/check/gst/gstbufferlist.c: + tests: port and re-enable buffer list tests + And remove some which don't apply any more. + +2014-06-26 11:58:04 +0300 George Kiagiadakis + + * tests/check/gst/gstcaps.c: + tests: enhance the gstcaps test_features to also test gst_caps_set_features() + Compliments my previous patch for gst_caps_set_features, which would + previously assert and leak the old GstCapsFeatures if the caps already + had a GstCapsFeatures and you were trying to replace it with a new one. + +2014-06-26 11:16:34 +0300 George Kiagiadakis + + * gst/gstcaps.c: + caps: unset the parent refcount of the old features before freeing them in gst_caps_set_features() + Otherwise gst_caps_features_free() asserts and the features structure is leaked + +2014-06-16 19:30:06 -0300 Thiago Santos + + * libs/gst/base/gstbaseparse.c: + baseparse: avoid returning _OK for _NOT_LINKED + When the parser receives non-aligned packets it can push a buffer + and get a not-linked return while still leaving some data still to + be parsed. This remaining data will not form a complete frame and + the subclass likely returns _OK and baseparse would take that + as the return, while it the element is actually not-linked. + This patch fixes this by storing the last flow-return from a push + and using that if a parsing operation doesn't result in data being + flushed or skipped. + https://bugzilla.gnome.org/show_bug.cgi?id=731474 + +2014-06-25 11:40:57 +0100 Tim-Philipp Müller + + * plugins/elements/gstelements_private.c: + elements: fix copyright and remove gtk-doc chunk + Trivial as it may be, this code was mostly copied from + somewhere else. The gtk-doc chunk is not needed, since + it's not public API. + +2014-06-02 22:07:52 -0400 Olivier Crête + + * plugins/elements/gstfilesrc.c: + filesrc: Ignore seek error on non-seekable files + This make it works with FIFOs. + https://bugzilla.gnome.org/show_bug.cgi?id=731176 + +2014-06-22 19:36:14 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.3.3 === + +2014-06-22 18:07:42 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstversion.h: + Release 1.3.3 + +2014-06-22 17:15:40 +0200 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 + +2014-06-22 14:23:03 +0200 Sebastian Dröge + + * po/hu.po: + * po/id.po: + * po/sr.po: + * po/zh_TW.po: + po: Update translations + +2014-06-22 12:52:01 +0100 Tim-Philipp Müller + + * tests/check/gst/gstcaps.c: + tests: add unit test for gst_caps_is_any() and _is_empty() + https://bugzilla.gnome.org//show_bug.cgi?id=731704 + +2014-06-22 12:50:42 +0100 Tim-Philipp Müller + + * gst/gstcaps.c: + caps: gst_caps_is_any() should return TRUE or FALSE + Not some flag value instead of TRUE. Fixes code like + gst_caps_is_any() == TRUE. + https://bugzilla.gnome.org//show_bug.cgi?id=731704 + +2014-06-01 16:56:41 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstdevice.c: + * gst/gstdevice.h: + * win32/common/libgstreamer.def: + device: rename "klass" and get_klass() to "device-class" and _get_device_class() + There's some precedent in GstElementFactory, but a + "klass" property just seems weird. + +2014-06-20 18:34:44 +0100 Tim-Philipp Müller + + * tests/benchmarks/capsnego.c: + benchmarks: capsnego: add --loops command line option + And default to 50 loops. + +2014-06-20 17:14:52 +0100 Tim-Philipp Müller + + * tests/benchmarks/capsnego.c: + benchmark: capsnego: use GOptionContext for option parsing + +2014-06-19 12:10:23 +0100 Tim-Philipp Müller + + * tests/check/gst/gstvalue.c: + tests: fix compiler warnings in gstvalue tests + Calling GST_VALUE_HOLDS_*(&v) now results in a compiler + warning about value!=NULL always being false, so check + type directly in those cases. + +2014-06-17 22:45:57 +0100 Tim-Philipp Müller + + * gst/gsttaglist.c: + * gst/gstutils.c: + * gst/gstvalue.h: + value: simplify GST_VALUE_HOLDS for our boxed and fundamental types + Boxed types can't be derived from, and we don't support + deriving from our special fundamental types (the code + checks for GType equality in most places. + +2014-06-20 16:55:06 -0400 Olivier Crête + + * docs/gst/gstreamer-sections.txt: + * gst/gstdevice.c: + * gst/gstdevice.h: + * gst/gstdevicemonitor.c: + * gst/gstdevicemonitor.h: + * gst/gstdevicemonitorfactory.h: + * gst/gstglobaldevicemonitor.c: + * gst/gstglobaldevicemonitor.h: + * gst/gstmessage.c: + GstDevice: Document GstDevice and related classes + +2014-06-16 13:47:55 +0200 Srimanta Panda + + * plugins/elements/gstfunnel.c: + * tests/check/elements/funnel.c: + Fix funnel EOS handling and wrong unittest + When no data is coming from sinkpads and eos events + arrived at one of the sinkpad, funnel forwards the EOS + event to downstream. It forwards the EOS because lastsink pad + is NULL. Also the unit testcase of the funnel is not checking + the correct behavior as it should. The unit test case should + fail if one of the sink pad has already EOS present on it and + we are trying to push one more EOS. + https://bugzilla.gnome.org/show_bug.cgi?id=731716 + +2014-06-19 08:09:55 +0100 Tim-Philipp Müller + + * gst/gstvalue.c: + gstvalue: optimise checks for lists + Our fundamental types are non-derivable, so we can + just check for equality. Also avoid doing the same + check multiple times in a couple of places. + +2014-06-19 08:06:31 +0100 Tim-Philipp Müller + + * gst/gstvalue.c: + gstvalue: use g_assert() in internal function for already-checked things + So these get compiled out for releases. + +2014-06-19 08:05:40 +0100 Tim-Philipp Müller + + * gst/gstvalue.c: + gstvalue: add internal _can_compare_unchecked() + +2014-06-19 08:03:37 +0100 Tim-Philipp Müller + + * gst/gstvalue.c: + gstvalue: add internal _list_concat() that takes ownership of input values + Avoids unnecessary copies. + +2014-06-18 19:06:58 +0100 Tim-Philipp Müller + + * gst/gststructure.c: + structure: simplify value type checks in getters + Just check for GType equality in common cases. + +2014-06-19 09:29:18 +0200 Sebastian Dröge + + * gst/gstvalue.c: + value: Add a FIXME 2.0 for a fraction ranges optimization + Currently we leak the internal representation of them as two GValues that + contain a fraction. Without this we could store fraction ranges as + data[0] = (min_n << 32) | (min_d) + data[1] = (max_n << 32) | (max_d) + and wouldn't require an additional allocation per range. + +2014-06-19 09:23:56 +0200 Sebastian Dröge + + * gst/gstvalue.c: + * tests/check/gst/gstvalue.c: + value: Make sure to cast int range values to guints before storing them + Otherwise negative values will sets all of the 64 bits due to two's + complement's definition of negative values. + Also add a test for negative int ranges. + +2014-06-19 07:57:11 +0100 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: update exports + +2014-06-19 09:05:18 +0200 Sebastian Dröge + + * gst/gstvalue.c: + value: Store integer ranges directly in a GValue without additional allocation + Micro optimization to save some allocations. Next step to do this + with fraction ranges too. + +2014-06-19 08:43:02 +0200 Edward Hervey + + * gst/gst_private.h: + gst_private: Fix duplicate definition + +2014-06-19 08:05:03 +0200 Sebastian Dröge + + * gst/gst.c: + * gst/gst_private.h: + * gst/gstallocator.c: + * gst/gstcapsfeatures.h: + * gst/gstcontext.c: + * gst/gstcontext.h: + * gst/gstdatetime.c: + * gst/gstdatetime.h: + * gst/gstmemory.c: + * gst/gstmemory.h: + * gst/gstmessage.c: + * gst/gstmessage.h: + * gst/gstquery.c: + * gst/gstquery.h: + * gst/gsttaglist.c: + * gst/gsttaglist.h: + * gst/gsttoc.c: + * gst/gsttoc.h: + gst: Store more basic type GTypes in variables + Micro optimization to change a function call to a variable access + for all our basic types. + +2014-06-19 08:04:01 +0200 Sebastian Dröge + + * gst/gstvalue.c: + * gst/gstvalue.h: + value: Store our fundamental type GTypes in variables + Micro optimization to change a function call to a variable access + for all our basic types. + +2014-06-17 07:31:48 +0200 Edward Hervey + + * gst/gstvalue.c: + gstvalue: Speed up gst_value_intersect/_subtract + Both gst_value_intersect and gst_value_subtract will call + gst_value_compare if one of their arguments isn't a list. + gst_value_compare will then re-do a check to see if one of + the arguments is a list (for the special case of comparing a unitary + value with a list of length 1). + The problem is that the various G_VALUE_HOLDS represent an expensive + amount of calling gst_value_compare (almost half of it) to see if + the provided arguments are list. These checks can be done without + when we know that the arguments aren't lists. + * Create a new "nolist" gst_value_compare which avoids that special + case comparision + Benchmarks: + valgrind/callgrind: average speedup in instruction calls for + gst_value_intersect and gst_value_subtract is around 56% (Makes 63% + of the calls it used to take previously) + tests/benchmarks/capsnego: With default settings (depth 4, children 3 + 607 elements), time taken for transition from READY to PAUSED: + Before : 00.391519153 + After : 00.220397492 + 56% of the time previously used, +77% speedup + https://bugzilla.gnome.org/show_bug.cgi?id=731756 + +2014-06-17 14:39:00 +0100 Tim-Philipp Müller + + * tests/check/gst/gstbufferlist.c: + tests: remove some cruft from the bufferlist test + Buffers no longer carry caps, and bufferlists don't have + groups where buffers may need to be merged into one any more. + +2014-06-16 20:30:13 +0100 Tim-Philipp Müller + + * tests/check/gst/gstbufferlist.c: + tests: add test for gst_buffer_list_remove() + +2014-06-16 20:29:56 +0100 Tim-Philipp Müller + + * gst/gstbufferlist.c: + bufferlist: fix buffer leak in _remove() + +2014-06-16 09:18:45 +0100 Tim-Philipp Müller + + * libs/gst/base/gstflowcombiner.c: + flowcombiner: fix g-i transfer annotations + +2014-06-16 08:41:48 +0200 Edward Hervey + + * libs/gst/base/gstflowcombiner.c: + flowcombiner: Fixed GBoxedCopyFunc + I'll just quote the most interesting man in the world: + "I don't usually push commits, but when I do I don't compile it + first" + +2014-06-14 16:30:49 +0100 Tim-Philipp Müller + + * gst/gstdevicemonitor.h: + * gst/gstglobaldevicemonitor.c: + devicemonitor: some docs additions and fixes + +2014-06-14 16:28:48 +0100 Tim-Philipp Müller + + * win32/common/libgstbase.def: + win32: add exports for new get_type() function + +2014-06-14 11:31:44 +0100 Tim-Philipp Müller + + * libs/gst/base/gstflowcombiner.c: + flowcombiner: keep a ref to the pads we're using + Needed for use via the boxed type. + https://bugzilla.gnome.org/show_bug.cgi?id=731355 + +2014-06-14 10:54:41 +0100 Tim-Philipp Müller + + * libs/gst/base/gstflowcombiner.c: + * libs/gst/base/gstflowcombiner.h: + flowcombiner: add boxed type for bindings + https://bugzilla.gnome.org/show_bug.cgi?id=731355 + +2014-06-11 16:28:51 -0700 Evan Nemerson + + * gst/gstdevice.c: + * gst/gstdevicemonitorfactory.c: + * gst/gstevent.c: + introspection: minor annotation additions + https://bugzilla.gnome.org/show_bug.cgi?id=731541 + +2014-06-11 19:08:04 -0700 Evan Nemerson + + * gst/Makefile.am: + introspection: include gstversion.h in GIR generation + https://bugzilla.gnome.org/show_bug.cgi?id=703021 + +2014-06-10 10:23:13 -0400 Nicolas Dufresne + + * libs/gst/base/gstbytereader.c: + bytereader: Use concistant derefence method + This is minor style fix to not mix *var and var[N]. + +2014-06-10 09:35:38 -0400 Sungho Bae + + * libs/gst/base/gstbytereader.c: + bytereader: Use pointer instead of index access + Currently the scan uses Boyer-moore method and its performance is good. + but, it can be optimized from an implementation of view. + The original scan code is implemented by byte array and index-based access. + In _scan_for_start_code(), the index is increasing from start to end and the + base address of the byte array is referred to as return value. + In the case, index-based access can be replaced by pointer access, which + improve the performance by removing index-related operations. + Its performace is enhanced by approximately 8% on arm-based embedded devices. + Although it seems trivial, it can affect the overall performance because the + _scan_for_start_code() function is very often called when H.264/H.265 video is + played. + In addition, the technique can apply for all architectures and it is good in + view of readability and maintainability. + https://bugzilla.gnome.org/show_bug.cgi?id=731442 + +2014-06-07 10:13:56 +0100 Tim-Philipp Müller + + * gst/gstglobaldevicemonitor.h: + globaldevicemonitor: prettify header + +2014-06-07 09:46:42 +0100 Tim-Philipp Müller + + * tests/check/libs/queuearray.c: + tests: add unit test for queuearray expansion from 1 + https://bugzilla.gnome.org/show_bug.cgi?id=731349 + +2014-06-06 16:36:00 -0700 Evan Nemerson + + * libs/gst/base/gstqueuearray.c: + queuearray: fix expanding size of queue from 1 + Without we would not actually expand and access + memory beyond the allocated region for the array. + https://bugzilla.gnome.org/show_bug.cgi?id=731349 + +2014-06-05 16:55:15 -0700 Evan Nemerson + + * libs/gst/base/gstdataqueue.c: + dataqueue: clear up documentation of gst_data_queue_new + The gpointer argument is passed to all three callbacks, not just one. + https://bugzilla.gnome.org/show_bug.cgi?id=731302 + +2014-05-30 00:17:06 -0700 Evan Nemerson + + * gst/gstcontrolbinding.c: + * gst/gstcontrolsource.c: + * gst/gstdevicemonitorfactory.h: + * gst/gstutils.c: + * libs/gst/base/gstdataqueue.c: + * libs/gst/base/gstindex.c: + introspection: fix some minor annotation bugs + https://bugzilla.gnome.org/show_bug.cgi?id=730982 + +2014-06-05 12:38:20 -0700 Evan Nemerson + + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasesrc.h: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstcollectpads.h: + * libs/gst/base/gstdataqueue.c: + * libs/gst/base/gstdataqueue.h: + * libs/gst/base/gstindex.c: + * libs/gst/base/gsttypefindhelper.c: + * libs/gst/base/gsttypefindhelper.h: + base: use correct syntax in documentation more consistently + Previously, many constants were prefixed with # or unprefixed, + some functions and macros were prefixed with # instead of suffixed + with (), etc. + https://bugzilla.gnome.org/show_bug.cgi?id=731293 + +2014-05-07 18:26:38 +0800 zhouming + + * libs/gst/base/gstbaseparse.c: + baseparse: Pass rate of input segment to output segment + https://bugzilla.gnome.org/show_bug.cgi?id=729701 + +2014-04-07 14:49:59 +0100 Vincent Penquerc'h + + * plugins/elements/Makefile.am: + * plugins/elements/gstelements_private.c: + * plugins/elements/gstelements_private.h: + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstidentity.c: + gstbuffer: factor three flags-to-string loops + +2014-06-03 23:42:45 +0100 Tim-Philipp Müller + + * gst/gstinfo.c: + info: make printing datetimes work with GST_PTR_FORMAT + +2014-06-03 23:38:28 +0100 Tim-Philipp Müller + + * gst/gstdatetime.c: + * gst/gstdatetime.h: + * gst/gstvalue.c: + * gst/gstvalue.h: + datetime: change internal implementation to mini object + And move type stuff from GstValue to GstDateTime. + +2014-06-03 22:19:33 +0200 Wim Taymans + + * plugins/elements/gstdownloadbuffer.c: + downloadbuffer: fix uninitialized variable + +2014-06-03 22:12:13 +0200 Wim Taymans + + * docs/design/part-buffering.txt: + * plugins/elements/gstdownloadbuffer.c: + downloadbuffer: improve start/stop in buffering query + The start and stop should represent the currently downloading region. + The estimated-total should represent the remaining time to download + the currently downloading region. This makes it a lot more useful + for applications because they can then use those values to update + the fill region and use the estimated time to delay playback. + Update the docs with this clarification. + +2014-04-07 14:35:04 +0100 Vincent Penquerc'h + + * plugins/elements/gstidentity.c: + identity: add static and const where appropriate + +2014-04-07 14:31:17 +0100 Vincent Penquerc'h + + * plugins/elements/gstidentity.c: + identity: fix potential buffer overflow + Coverity 1037155 + +2014-06-03 14:49:44 +0200 Wim Taymans + + * plugins/elements/gstdownloadbuffer.c: + downloadbuffer: reset read and write positions + Reset the read and write positions right after we open the file or flush + it. We are also in the buffering state with 0 percent buffered when we + start. + +2014-06-03 14:47:17 +0200 Wim Taymans + + * gst/gstinfo.c: + info: first handle all miniobjects, then GObjects + First handle all miniobjects before we attempt to dereference the first + field pointer and look at the GType. With the recent glib change to + speed up G_IS_OBJECT, this causes crashes on miniobjects otherwise. + +2014-06-03 14:46:11 +0200 Wim Taymans + + * gst/gstinfo.c: + info: GstDateTime does not have a GType as first field + GstDateTime does not have the GType as the first field so we can't use + it to detect its type. + +2014-06-03 14:45:22 +0200 Wim Taymans + + * gst/gstinfo.c: + info: use macros to check types + Use the macros to check the type of objects instead of directly poking + at the first field. + +2014-06-01 23:51:20 +0100 Tim-Philipp Müller + + * gst/gstglobaldevicemonitor.c: + globaldevicemonitor: connect sync-message signal on the right object + Fixes criticals at runtime and makes stuff actually work. + +2014-05-31 17:35:52 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Keep still meaningfull pending events on FLUSH_STOP + Only EOS and segment should be deleted in that case. + https://bugzilla.gnome.org/show_bug.cgi?id=709868 + +2014-05-30 09:13:12 +0200 Sebastian Dröge + + * gst/gstminiobject.c: + Revert "miniobject: Add missing (nullable) annotations" + This reverts commit 96361e9b5c5d00dc7712ff3a9acfbe10df7cd9fe. + This was not supposed to be pushed yet! + +2014-05-30 09:12:14 +0200 Sebastian Dröge + + * gst/gstbufferpool.h: + bufferpool: It's pool, not poo... even when talking about flushing + +2014-05-28 10:14:45 +0100 Philip Withnall + + * gst/gstminiobject.c: + miniobject: Add missing (nullable) annotations + gst_mini_object_replace() can take NULL mini-objects. + https://bugzilla.gnome.org/show_bug.cgi?id=730873 + +2014-05-30 01:42:17 -0300 Thiago Santos + + * tests/check/elements/multiqueue.c: + tests: multiqueue: fix leaks + +2014-05-29 14:54:34 -0700 Evan Nemerson + + * gst/gst.c: + * gst/gstallocator.c: + * gst/gstatomicqueue.c: + * gst/gstbin.c: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstbufferlist.c: + * gst/gstbufferlist.h: + * gst/gstbufferpool.c: + * gst/gstbus.c: + * gst/gstbus.h: + * gst/gstcaps.c: + * gst/gstcaps.h: + * gst/gstcapsfeatures.c: + * gst/gstchildproxy.c: + * gst/gstcontext.h: + * gst/gstcontrolsource.c: + * gst/gstdatetime.c: + * gst/gstdevice.c: + * gst/gstdevicemonitorfactory.c: + * gst/gstelement.c: + * gst/gstelement.h: + * gst/gstelementfactory.c: + * gst/gsterror.c: + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstformat.c: + * gst/gstghostpad.c: + * gst/gstinfo.c: + * gst/gstinfo.h: + * gst/gstiterator.c: + * gst/gstiterator.h: + * gst/gstmemory.c: + * gst/gstmessage.c: + * gst/gstmessage.h: + * gst/gstmeta.c: + * gst/gstminiobject.c: + * gst/gstobject.c: + * gst/gstobject.h: + * gst/gstpad.c: + * gst/gstpad.h: + * gst/gstparse.c: + * gst/gstparse.h: + * gst/gstpipeline.c: + * gst/gstplugin.c: + * gst/gstplugin.h: + * gst/gstpluginfeature.c: + * gst/gstpluginfeature.h: + * gst/gstpreset.c: + * gst/gstquery.c: + * gst/gstquery.h: + * gst/gstregistry.c: + * gst/gstsample.c: + * gst/gstsegment.c: + * gst/gststructure.c: + * gst/gststructure.h: + * gst/gsttaglist.c: + * gst/gsttagsetter.c: + * gst/gsttask.c: + * gst/gsttaskpool.c: + * gst/gsttoc.c: + * gst/gsttocsetter.c: + * gst/gsttypefind.c: + * gst/gsttypefindfactory.c: + * gst/gsturi.c: + * gst/gstutils.c: + * gst/gstvalue.c: + docs: convert NULL, TRUE, and FALSE to %NULL, %TRUE, and %FALSE + This should help improve documentation generated for + languages other than C. + https://bugzilla.gnome.org/show_bug.cgi?id=730961 + +2014-05-30 00:13:30 +0100 Tim-Philipp Müller + + * gst/gstobject.c: + docs: fix type in GstObject docs + +2014-05-29 15:04:45 -0700 Evan Nemerson + + * gst/gstbufferpool.c: + bufferpool: fix gst_buffer_pool_has_option() documentation + https://bugzilla.gnome.org/show_bug.cgi?id=730962 + +2014-05-29 14:07:15 -0300 Thiago Santos + + * gst/gstelement.c: + * tests/check/gst/gstelement.c: + element: set pads need-parent flag to false when removing + When a pad is added the need-parent flag is set to true, so when + they are removed the flag should be set back to false + This was preventing GstPads to be reused in elements (removed and + later re-added). A unit tests was added to verify that this is + working now. + The use case is tsdemux that has a program-number property and + allows the user to switch programs. In order to do that tsdemux + will remove the pads of the current program and add from the new + ones. The removed pads are kept in the demuxer for later if the + user selects the old program again. + +2014-05-27 08:09:36 -0300 Thiago Santos + + * plugins/elements/gstmultiqueue.c: + multiqueue: post buffering message when queues flush + The buffering status goes back to 0, so inform the application about it + https://bugzilla.gnome.org/show_bug.cgi?id=726423 + +2014-05-29 14:39:36 -0400 Nicolas Dufresne + + * .gitignore: + gitignore: Ignore VIM swap files + +2014-05-27 13:36:29 +0100 Tim-Philipp Müller + + * gst/gstpad.c: + * gst/gstpad.h: + pad: two minor docs fixes + +2014-05-27 10:09:02 +0100 Tim-Philipp Müller + + * libs/gst/base/gstflowcombiner.h: + flowcombiner: beautify headers a little + +2014-05-27 10:05:51 +0100 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-docs.sgml: + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstflowcombiner.h: + docs: add GstFlowCombiner + +2014-05-27 09:55:27 +0100 Tim-Philipp Müller + + * libs/gst/base/base.h: + base: include flowcombiner header from base.h + +2014-05-26 12:31:33 -0300 Thiago Santos + + * libs/gst/base/Makefile.am: + * libs/gst/base/gstflowcombiner.c: + * libs/gst/base/gstflowcombiner.h: + * tests/check/Makefile.am: + * tests/check/libs/.gitignore: + * tests/check/libs/flowcombiner.c: + * win32/common/libgstbase.def: + flowcombiner: add GstFlowCombiner + Adds a utility struct that is capable of storing and aggregating flow returns + associated with pads. + This way all demuxers will have a standard function to use and have the + same expected results. + Includes tests. + https://bugzilla.gnome.org/show_bug.cgi?id=709224 + +2014-05-23 13:25:35 -0300 Thiago Santos + + * gst/gstpad.c: + * gst/gstpad.h: + * tests/check/gst/gstpad.c: + * win32/common/libgstreamer.def: + pad: store last flow return and provide acessor function + Stores the last result of a gst_pad_push or a pull on the GstPad and provides + a getter and a macro to access this field. + Whenever the pad is inactive it is set to FLUSHING + API: gst_pad_get_last_flow_return + https://bugzilla.gnome.org/show_bug.cgi?id=709224 + +2014-05-23 15:26:59 -0400 Nicolas Dufresne + + * docs/gst/gstreamer-sections.txt: + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + * tests/check/gst/gstbufferpool.c: + * win32/common/libgstreamer.def: + bufferpool: Add method and virtuals to set flushing state + Currently there is no other way to unlock a buffer pool other then + stopping it. This may have the effect of freeing all the buffers, + which is too heavy for a seek. This patch add a method to enter and + leave flushing state. As a convenience, flush_start/flush_stop + virtual are added so pool implementation can also unblock their own + internal poll atomically with the rest of the pool. This is fully + backward compatible with doing stop/start to actually flush the pool + (as being done in GstBaseSrc). + https://bugzilla.gnome.org/show_bug.cgi?id=727611 + +2014-05-26 14:23:13 +0200 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + basetransform: Passthrough ALLOCATION queries in passthrough mode even if we had no caps yet + Or if the element does not care about caps at all. + Also remove an assigned but unused local variable. + https://bugzilla.gnome.org/show_bug.cgi?id=710268 + +2014-05-25 16:10:30 +0100 Tim-Philipp Müller + + * 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: + po: update + +2014-05-25 16:57:59 +0200 Piotr Drąg + + * po/POTFILES.in: + po: update POTFILES + https://bugzilla.gnome.org/show_bug.cgi?id=730718 + +2014-05-21 13:23:21 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.3.2 === + +2014-05-21 13:06:34 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * common: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstversion.h: + Release 1.3.2 + +2014-05-21 11:39:53 +0200 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 + +2014-05-21 10:50:43 +0200 Sebastian Dröge + + * README: + * common: + Automatic update of common submodule + From 211fa5f to 1f5d3c3 + +2014-05-19 11:05:12 +0200 Sebastian Dröge + + * tests/check/gst/gstvalue.c: + value: Add some positive testcase for string deserialization + +2014-05-18 10:49:50 +0100 Tim-Philipp Müller + + * README: + * docs/faq/getting.xml: + docs: remove reference to Mandrake and packages we no longer provide + https://bugzilla.gnome.org/show_bug.cgi?id=730312 + +2014-05-15 16:41:58 +0200 Wim Taymans + + * docs/design/part-caps.txt: + docs: fix typo + +2014-05-14 13:40:03 +0100 Tim-Philipp Müller + + * gst/gstpluginloader.c: + pluginloader: fix compiler warning on windows + gstpluginloader.c:584:1: error: label 'beach' defined but not used + https://bugzilla.gnome.org/show_bug.cgi?id=730125 + +2014-05-13 19:51:34 +0100 Tim-Philipp Müller + + * plugins/elements/gstdownloadbuffer.c: + * plugins/elements/gstsparsefile.c: + * plugins/elements/gstsparsefile.h: + elements: don't depend on libgio just for g_io_error_from_errno() + https://bugzilla.gnome.org/show_bug.cgi?id=729949 + +2014-05-13 19:30:38 +0100 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/Makefile.am: + * plugins/elements/Makefile.am: + * plugins/elements/gstdownloadbuffer.h: + * plugins/elements/gstsparsefile.c: + * plugins/elements/gstsparsefile.h: + * tests/check/libs/sparsefile.c: + * win32/common/libgstbase.def: + sparsefile: keep it private as helper API for downloadbuffer + There's no expectation that any other element or applications + might want to use this helper API any time soon, so keep it + private for the time being. There were open questions regarding + portability and binding-friendliness too. + This also removes the gio dependency of -base again. + https://bugzilla.gnome.org/show_bug.cgi?id=729951 + https://bugzilla.gnome.org/show_bug.cgi?id=729949 + +2014-05-13 19:14:08 +0100 Tim-Philipp Müller + + * docs/libs/gstreamer-libs.types: + docs: pick up GstBaseParse hierarchy and properties + +2014-05-13 19:10:43 +0100 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-sections.txt: + docs: expose GstPushSrcClass in documentation + Might come in handy in case someone wants to derive from it. + +2014-05-12 17:03:46 +0200 Edward Hervey + + * gst/gstpluginloader.c: + pluginloader: Don't leak pluginloader in error cases + CID #1212154 + +2014-05-12 16:59:29 +0200 Edward Hervey + + * gst/gstcaps.c: + caps: Don't leak features on error cases + If we fail to parse fields, we would end up leaking the features we + parsed just before + CID #1212152 + +2014-05-09 14:28:59 -0400 Nicolas Dufresne + + * libs/gst/base/gstbasetransform.c: + basetransform: Correctly reset configuration + When pool can't we use, and we fall back to default pool, we need to + correctly reset that pool configuration. + +2014-05-09 14:46:59 +0200 Edward Hervey + + * libs/gst/net/gstnettimeprovider.c: + nettimeprovider: Use non-freed variable + address is only used temporarily. Use the proper variable instead. + CID #1212189 + +2014-05-08 17:33:37 -0300 Thiago Santos + + * tests/check/elements/multiqueue.c: + tests: multiqueue: test to check queue overrun with pts=none + Checks if buffers with pts=none can break the queue time size limit + and allow more buffers than expected + +2014-05-08 14:48:00 -0400 Nicolas Dufresne + + * plugins/elements/gstdownloadbuffer.c: + downloadbuffer: Fix 32bit build + format '%lli' expects argument of type 'long long int', but argument 8 has type 'gsize' + +2014-05-08 14:12:16 -0400 Nicolas Dufresne + + * libs/gst/base/gstbasesrc.c: + pool-nego: Correctly reset the configuration + When pool cannot be used, correctly reset the configuration before + configuration a default pool. + +2014-04-15 14:17:00 -0400 Nicolas Dufresne + + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + pool-nego: Retry setting configuration with modified config + Buffer pool set_config() may return FALSE if requested configuration needed + small changes. Reget the config and try setting it again (validating the + changes first). This ensure we have a configured pool if possible. + https://bugzilla.gnome.org/show_bug.cgi?id=727916 + +2014-05-08 12:47:43 -0400 Nicolas Dufresne + + * docs/gst/gstreamer-sections.txt: + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + * tests/check/gst/gstbufferpool.c: + * win32/common/libgstreamer.def: + bufferpool: Add an helper to validate config + When we call gst_buffer_pool_set_config() the pool may return FALSE and + slightly change the parameters. This helper is useful to do the minial required + validation before accepting the modified configuration. + https://bugzilla.gnome.org/show_bug.cgi?id=727916 + +2014-04-08 19:27:55 -0400 Nicolas Dufresne + + * gst/gstbufferpool.c: + bufferpool: Update the configure even if set_config() returned false + According to the documentation, when set_config() return false, it should be + possible to read the modified version of the config. This patch fixes the + implementation so it is now according to the documentation. + https://bugzilla.gnome.org/show_bug.cgi?id=727916 + +2014-05-06 15:35:14 -0400 Nicolas Dufresne + + * gst/gstbufferpool.c: + * tests/check/gst/gstbufferpool.c: + bufferpool: Add support for reconfiguring a pool + If a pool config is being configured again, check if the configuration have changed. + If not, skip that step. Finally, if the pool is active, try deactivating it. + https://bugzilla.gnome.org/show_bug.cgi?id=728268 + +2014-05-06 16:59:34 -0400 Nicolas Dufresne + + * gst/gstvalue.c: + * tests/check/gst/gstvalue.c: + value: Add support for GstAllocationParams comparision + This is useful to compare buffer pool configuaration. + https://bugzilla.gnome.org/show_bug.cgi?id=728268 + +2014-05-06 16:46:55 -0400 Nicolas Dufresne + + * gst/gstvalue.c: + * tests/check/gst/gstvalue.c: + value: Add support for GObject comparising in structures + This is useful to allow comparing pool configuration where a GstAllocator + is set. + https://bugzilla.gnome.org/show_bug.cgi?id=728268 + +2014-05-08 17:50:50 +0100 Tim-Philipp Müller + + * gst/gstplugin.c: + plugin: fix case where gst_plugin_load_file() didn't set the error on failure + +2014-05-08 16:30:55 +0100 Tim-Philipp Müller + + * libs/gst/base/gstsparsefile.c: + sparsefile: add some Since markers to docs + +2014-05-08 16:25:55 +0100 Tim-Philipp Müller + + * libs/gst/base/gstsparsefile.c: + * libs/gst/base/gstsparsefile.h: + * tests/check/libs/.gitignore: + sparsefile: sprinkle G_BEGIN_DECLS / G_END_DECLS + for c++, and remove outdated comment, and add + new unit test to .gitignore. + +2014-05-08 16:49:53 +0200 Wim Taymans + + * plugins/elements/gstdownloadbuffer.c: + downloadbuffer: small cleanups + +2014-05-08 14:51:12 +0200 Wim Taymans + + * docs/libs/gstreamer-libs-sections.txt: + * docs/plugins/Makefile.am: + * docs/plugins/gstreamer-plugins-docs.sgml: + * docs/plugins/gstreamer-plugins-sections.txt: + * docs/plugins/gstreamer-plugins.args: + * docs/plugins/gstreamer-plugins.hierarchy: + * docs/plugins/inspect/plugin-coreelements.xml: + * plugins/elements/gstdownloadbuffer.c: + downloadbuffer: update docs + +2014-05-08 14:50:42 +0200 Wim Taymans + + * win32/common/libgstbase.def: + win32: update def + +2014-02-21 16:32:52 +0100 Wim Taymans + + * libs/gst/base/Makefile.am: + * libs/gst/base/gstsparsefile.c: + * libs/gst/base/gstsparsefile.h: + * plugins/elements/Makefile.am: + * plugins/elements/gstdownloadbuffer.c: + * plugins/elements/gstdownloadbuffer.h: + * plugins/elements/gstelements.c: + * tests/check/Makefile.am: + * tests/check/libs/sparsefile.c: + Add new downloadbuffer element + See https://bugzilla.gnome.org/show_bug.cgi?id=680183 + +2014-05-02 17:42:58 +0200 Wim Taymans + + * gst/gstelement.c: + * gst/gstpadtemplate.h: + * plugins/elements/gstmultiqueue.c: + pads: update docs for request pads + We would like to encourage the use of gst_element_request_pad() + +2014-05-02 17:02:37 +0100 Tim-Philipp Müller + + * libs/gst/check/libcheck/check.c: + check: use _exit() instead of exit() in fail_unless() so we exit immediately + exit() will call atexit handlers, which may try to + clean up things or wait for things to get cleaned up, + which we don't want or need. We just want to stop + and let the parent know about the failure as quickly + as possible in case fork() is used. + Fixes timeouts on assert failures in checks where + an exit handler waits for things to stop, but they + don't stop because they haven't been shut down, + and they haven't been shut down because there's no + simple way to do so on failures. + http://sourceforge.net/p/check/patches/50/ + +2014-05-04 14:52:01 +0100 Tim-Philipp Müller + + * gst/gstvalue.c: + value: init flag mask more correctly + +2014-05-04 13:32:46 +0000 Руслан Ижбулатов + + * plugins/elements/gstfilesrc.c: + filesrc: g_memmove() is deprecated + https://bugzilla.gnome.org/show_bug.cgi?id=712811 + +2014-05-03 20:48:22 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.3.1 === + +2014-05-03 17:41:41 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/gstreamer-plugins.hierarchy: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstenumtypes.h: + * win32/common/gstversion.h: + Release 1.3.1 + +2014-05-03 17:34:08 +0200 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 + +2014-05-03 17:20:46 +0200 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: + po: Update translations + +2014-05-03 12:14:43 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-docs.sgml: + docs: add new device probing API to docs table of contents + https://bugzilla.gnome.org/show_bug.cgi?id=729440 + +2014-05-02 22:22:03 -0400 Nicolas Dufresne + + * docs/gst/gstreamer-sections.txt: + doc: Add GstDevice* to gstreamer-sections.txt + https://bugzilla.gnome.org/show_bug.cgi?id=729440 + +2014-05-03 10:14:40 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From bcb1518 to 211fa5f + +2014-05-01 10:37:18 -0400 Nicolas Dufresne + + * libs/gst/base/gstbasesink.c: + basesink: Always render prepared buffer + Currently, if prepare() takes too much time, we skip the call to render(). + The side effect of this, is that we endup starving the render(). The solution + in this patch is to always render frames that are on time before prepare() is + executed. This will maximize the number of frames we display and smoothly + degrade the rendering performance. + https://bugzilla.gnome.org/show_bug.cgi?id=729335 + +2014-05-01 14:52:24 -0400 Luis de Bethencourt + + * scripts/git-version.sh: + scripts/git-version.sh: add more modules + Add more git repositories to check (so git-version.sh is consistent with + gst-uninstalled) and display the date of the last commit, which is more valuable + information than the last commit's hash. + +2014-05-01 18:42:47 +0200 Sebastian Dröge + + * gst/gstbin.c: + bin: Always first post the state-changed message for PAUSED->READY before posting any pending EOS message + https://bugzilla.gnome.org/show_bug.cgi?id=727949 + +2014-04-17 21:10:55 +0200 Sebastian Dröge + + * tests/check/libs/basesink.c: + basesink: Add test for checking that EOS always comes after the state change to PLAYING + https://bugzilla.gnome.org/show_bug.cgi?id=727949 + +2014-04-15 15:55:25 +0200 Stian Selnes + + * gst/gstbufferpool.c: + bufferpool: fix log message of buffer pointer + +2014-04-30 18:20:28 -0400 Luis de Bethencourt + + * scripts/git-version.sh: + scripts/git-version.sh: remove unused variable + +2014-04-30 10:47:19 -0400 Luis de Bethencourt + + * scripts/git-version.sh: + scripts/git-version.sh: fix mistaken comments + +2014-04-28 13:02:11 -0300 Thiago Santos + + * plugins/elements/gstmultiqueue.c: + multiqueue: avoid signaling overrun on the first segment + When the first segment has position != 0 and position > max-size-time + it will immediatelly cause the multiqueue to signal overrun. + This can happen easily with adaptive streams when switching bitrates + and starting a new group. The segment for this new group will have + a position that is much greater than 0 and will lead to this issue. + This is particularly harmful when the adaptive stream uses mpegts + that doesn't emit no-more-pads and it might happen that only one + of the stream pads was added when the multiqueue overruns and gets + the group ready for exposing. So the user will only get audio or + video. + The solution is to fallback to the sink segment while the source pad + has no segment. + https://bugzilla.gnome.org/show_bug.cgi?id=729124 + +2014-04-28 10:14:50 +0200 Xavi Artigas + + * docs/random/porting-to-1.0.txt: + docs: enhancements to porting guide documentation + https://bugzilla.gnome.org/show_bug.cgi?id=727754 + +2014-04-28 09:43:32 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gstquery.c: + * gst/gstquery.h: + * win32/common/libgstreamer.def: + query: Add boolean to URI query to specify if a redirect is permanent or not + +2014-04-25 07:38:00 +0000 Srimanta Panda + + * plugins/elements/gstfunnel.c: + funnel: Check if the last pad was set + If no data is coming but only EOS is sent from all of the sinkpad, it is not + forwarding the EOS. + https://bugzilla.gnome.org/show_bug.cgi?id=727945 + +2014-04-26 17:02:18 +0100 Felipe Ortiz + + * docs/gst/gstreamer-sections.txt: + * gst/gstpad.h: + docs: add docs for various GstPad macros + https://bugzilla.gnome.org/show_bug.cgi?id=723652 + +2014-04-26 23:12:13 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstpad.h: + Revert "docs: add docs for various GstPad macros" + This reverts commit d17438d5fd321daec4adbeb28a8fb5d5e07298dc. + This commit featured the wrong author, sorry. + +2014-04-26 21:21:51 +0100 Tim-Philipp Müller + + * docs/README: + * gst/gst.c: + * gst/gstallocator.c: + * gst/gstbin.c: + * gst/gstbuffer.c: + * gst/gstbufferlist.c: + * gst/gstbufferpool.c: + * gst/gstbus.c: + * gst/gstcaps.c: + * gst/gstclock.c: + * gst/gstelement.c: + * gst/gstelementfactory.c: + * gst/gsterror.c: + * gst/gstevent.c: + * gst/gstghostpad.c: + * gst/gstiterator.c: + * gst/gstmemory.c: + * gst/gstmessage.c: + * gst/gstmeta.c: + * gst/gstminiobject.c: + * gst/gstobject.c: + * gst/gstpad.c: + * gst/gstpadtemplate.c: + * gst/gstparamspecs.c: + * gst/gstpipeline.c: + * gst/gstquery.c: + * gst/gstregistry.c: + * gst/gstsample.c: + * gst/gstsegment.c: + * gst/gststructure.c: + * gst/gstsystemclock.c: + * gst/gsttagsetter.c: + * gst/gsttask.c: + * gst/gsttaskpool.c: + * gst/gsttypefind.c: + * gst/gsttypefindfactory.c: + * gst/gsturi.c: + * gst/gstvalue.c: + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstpushsrc.c: + * libs/gst/net/gstnetaddressmeta.c: + * libs/gst/net/gstnetclientclock.c: + * libs/gst/net/gstnettimepacket.c: + * libs/gst/net/gstnettimeprovider.c: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstfdsink.c: + * plugins/elements/gstfdsrc.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gstvalve.c: + docs: remove outdated and pointless 'Last reviewed' lines from docs + They are very confusing for people, and more often than not + also just not very accurate. Seeing 'last reviewed: 2005' in + your docs is not very confidence-inspiring. Let's just remove + those comments. + +2014-03-26 15:56:08 -0400 Nicolas Dufresne + + * gst/gstbuffer.c: + * gst/gstbufferpool.c: + buffer: Only set TAG_MEMORY if the memory has been replaced + Currently we set TAG_MEMORY as soon a resize changes the size of one + of the memory. This has the side effect that buffer pool cannot know if + the memory have simply been resized, or if the memorys has been replaced. + This make it hard to actually implement _reset(). Instead, only set the + TAG_MEMORY if one or more memory has been replaced, and do a light + sanity check of the size. + https://bugzilla.gnome.org/show_bug.cgi?id=727109 + +2014-04-26 17:02:18 +0100 Showayb Zahda + + * docs/gst/gstreamer-sections.txt: + * gst/gstpad.h: + docs: add docs for various GstPad macros + https://bugzilla.gnome.org/show_bug.cgi?id=723652 + +2014-04-25 15:38:39 +0200 Sebastian Dröge + + * gst/gstbin.c: + bin: When going to READY make sure to always deactivate pads + We might not have reached PAUSED yet because of an async error, + but nonetheless we want to make sure that the pads are always + deactivated in READY state. + +2014-04-22 18:23:15 +0200 Sebastian Dröge + + * gst/gstbin.c: + bin: Don't left-shift into the sign bit, the result is undefined + +2014-04-22 18:16:10 +0200 Sebastian Dröge + + * gst/gstvalue.c: + value: Use an unsigned 64 bit integer as a mask + We shift the mask to the right later and shifting the result + of shifting over the sign bit is undefined. + +2014-04-20 11:59:02 +0200 Sebastian Dröge + + * libs/gst/base/gstbasesrc.c: + basesrc: Make sure to always hold the LIVE_LOCK when going to the flushing label + https://bugzilla.gnome.org/show_bug.cgi?id=728596 + +2014-04-11 19:52:02 +0200 Srimanta Panda + + * plugins/elements/gstfunnel.c: + * tests/check/elements/funnel.c: + funnel: Handle end of stream event on sink pad + Handle end of stream events on sink pad. Check all the sink pad + has received eos before forwarding to source pad. + Fixes : https://bugzilla.gnome.org/show_bug.cgi?id=727945 + +2014-04-05 11:37:53 +0200 Edward Hervey + + * gst/gstvalue.c: + gstvalue: Prevent division or modulo by zero + The step can end up being zero if the underlying value isn't a valid + range GValue. + In those cases, return FALSE. + We don't use g_return*_if_fail since it will already have been triggered + by the above-mentionned _get_step() functions. + CID #1037132 + +2014-04-09 16:44:07 +0200 Antoine Jacoutot + + * gst/Makefile.am: + * libs/gst/base/Makefile.am: + * libs/gst/check/Makefile.am: + * libs/gst/controller/Makefile.am: + * libs/gst/net/Makefile.am: + libs: g-ir-scanner: do not hardcode libtool path + https://bugzilla.gnome.org/show_bug.cgi?id=726571 + +2014-04-16 19:49:56 +0200 Sebastian Dröge + + * gst/gstbuffer.c: + * gst/gstmemory.c: + memory/buffer: Initialise GstMapInfo to zeroes if mapping fails + This should allow for more meaningful errors. Dereferencing NULL + is more useful information than dereferencing a random address + happened to be on the stack. + +2014-04-16 17:49:06 +0200 Sebastian Dröge + + * gst/gstpreset.c: + preset: Unref return value of gst_child_proxy_get_child_by_index() instead of leaking it + +2014-04-16 17:48:57 +0200 Sebastian Dröge + + * gst/gstpreset.c: + preset: Automatic code style fixes + +2014-04-16 15:17:04 +0100 Vincent Penquerc'h + + * plugins/elements/gstqueue2.c: + * plugins/elements/gstqueue2.h: + queue2: fix event/preroll deadlock differently + The qlock is released between popping a buffer from the queue + and pushing it. When this buffer causes the sink to wait in + preroll, this lets a query see that the queue is empty, and + push the query then wait for it to be serviced. However, this + will not be done till after peroll, and this will thus block. + If upstream was waiting on buffering to reach 100% before + switching to PLAYING, a deadlock would ensue. + This had been fixed recently by failing queries when the + queue2 was buffering, but this happens to break some other + case (playbin on a local http server and matroska), while + this patch works for both. + See https://bugzilla.gnome.org/show_bug.cgi?id=728345 + +2014-04-16 07:59:27 +0200 Edward Hervey + + * libs/gst/check/Makefile.am: + check: Fix exported symbol name + it's _template and not _templ + +2014-04-15 21:16:06 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Add missing space in debug output + +2014-04-15 12:58:59 +0200 Sebastian Dröge + + * libs/gst/check/Makefile.am: + * libs/gst/check/gstcheck.c: + * libs/gst/check/gstcheck.h: + check: Add new API to set up pads from non-static pad templates + +2014-04-14 21:35:52 +0200 Sebastian Dröge + + * tests/check/libs/collectpads.c: + collectpads: Fix memory leak in unit test + +2014-04-12 15:22:35 +0100 Tim-Philipp Müller + + * libs/gst/check/Makefile.am: + * libs/gst/check/gsttestclock.c: + * libs/gst/check/gsttestclock.h: + * tests/check/libs/gsttestclock.c: + testclock: replace newly-added GstTestClockIDList structure with a simple GList + Keep it simple. Likely also makes things easier for bindings, + and efficiency clearly has not been a consideration given how + the existing code handled these lists. + +2014-04-12 14:30:43 +0100 Tim-Philipp Müller + + * libs/gst/check/gsttestclock.c: + * libs/gst/check/gsttestclock.h: + docs: testclock: fix up Since markers + +2014-04-12 00:28:51 +0100 Tim-Philipp Müller + + * libs/gst/check/Makefile.am: + * libs/gst/check/gsttestclock.c: + * libs/gst/check/gsttestclock.h: + testclock: add back gst_test_clock_wait_for_pending_id_count() + .. but deprecate it. ABI stability and all that. + It's a dangerous and racy function to use. + +2014-03-23 15:08:26 +0000 Tim-Philipp Müller + + * libs/gst/check/gsttestclock.c: + testclock: remove unused variable + Fixes compiler warning. + +2013-12-16 10:01:37 +0100 Havard Graff + + * libs/gst/check/Makefile.am: + * libs/gst/check/gsttestclock.c: + * libs/gst/check/gsttestclock.h: + * tests/check/libs/gsttestclock.c: + testclock: add support for waiting and releasing multiple GstClockIDs + In order to be deterministic, multiple waiting GstClockIDs needs to be + released at the same time, or else one can get into the situation that + the one being released first can add itself back again before the next + one waiting is released. + Test added for new API and old tests rewritten to comply. + +2014-04-01 15:38:54 +0200 Linus Svensson + + * gst/gstpad.c: + pad: don't access unowned and possibly already freed event + Don't print the name of the event when ownership is given away. + https://bugzilla.gnome.org/show_bug.cgi?id=727484 + +2014-04-12 07:13:02 +0200 Wim Taymans + + * tools/gst-inspect.c: + inspect: print structure values of properties + +2014-04-11 22:38:25 +1000 Jan Schmidt + + * plugins/elements/gstinputselector.c: + input-selector: Hold pad object lock when changing tags + Avoid spurious crashes when tags are retrieved just as + new ones arrive. + +2014-04-11 13:45:21 +0200 Edward Hervey + + * gst/gstbuffer.c: + gstbuffer: Fix range iteration + We want to iterate over items idx to idx + length + We use the len variable as the corrected number of memory to iterate + and then properly go over all items. + Fixes the issue where specifying any idx different from 0 had no effect + Spotted by clang static analyzer + +2014-04-09 17:01:01 +0100 Vincent Penquerc'h + + * gst/gststructure.c: + structure: error out when trying to fixate a fraction near an invalid target + +2014-04-04 17:28:23 +0200 Sebastian Dröge + + * gst/gstevent.c: + event: Update running time in QoS based on the pad offsets + https://bugzilla.gnome.org/show_bug.cgi?id=722697 + +2014-04-04 17:15:25 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Apply pad offsets on all events, not just segment events + +2014-04-04 17:06:18 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstevent.c: + * gst/gstevent.h: + * win32/common/libgstreamer.def: + event: Add running-time-offset field to all events + Events passing through #GstPads that have a running time + offset set via gst_pad_set_offset() will get their offset + adjusted according to the pad's offset. + If the event contains any information that related to the + running time, this information will need to be updated + before usage with this offset. + +2014-04-09 16:40:27 +0100 Vincent Penquerc'h + + * gst/gstutils.c: + utils: avoid dividing by zero when multiplying y/z by 0/x + The gcd of 0/x is 0, and this is then used as a denominator. + +2014-04-09 16:01:09 +0200 Sebastian Dröge + + * tests/check/elements/multiqueue.c: + multiqueue: And actually run the other tests again + +2014-04-09 15:57:35 +0200 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: Wake up the queues if limits are changing in a way that would unblock the queue + +2014-04-09 15:42:48 +0200 Sebastian Dröge + + * tests/check/elements/multiqueue.c: + multiqueue: Add test for checking if pads are waked up when limits are changed + +2014-04-09 10:15:33 +0200 Jose Antonio Santos Cadenas + + * libs/gst/base/gstbaseparse.c: + baseparse: Fix memory leak + Queued frames were not released after being pushed, this + caused a leak of the GstBaseParseFrame structure. + https://bugzilla.gnome.org/show_bug.cgi?id=727883 + +2014-04-07 17:49:14 +0100 Tim-Philipp Müller + + * plugins/elements/gstqueue2.c: + queue2: use g_strerror() instead of strerror() + Need UTF-8 encoding. + +2014-04-07 17:47:30 +0100 Tim-Philipp Müller + + * libs/gst/check/libcheck/check_run.c: + Revert "check: only call setpgid on valid child PIDs" + This reverts commit b9313afc75b68d986e473b76b55543456857912b. + This should be fixed in upstream libcheck instead. We want + to keep diff of our local copy to upstream libcheck + to a minimum. + +2014-04-07 17:33:34 +0100 Vincent Penquerc'h + + * plugins/elements/gstqueue2.c: + queue2: warn if we can't remove our temporary file + It's not fatal though, so do not error out. + Coverity 1037121 + +2014-04-07 15:38:09 +0100 Vincent Penquerc'h + + * libs/gst/check/libcheck/check_run.c: + check: only call setpgid on valid child PIDs + Coverity 206186 + +2014-04-07 15:38:17 +0100 Tim-Philipp Müller + + * plugins/elements/gstfilesrc.c: + filesrc: no need for a translated message for impossible error cases + The message is too technical anyway, the default message works + just fine here as well. + +2014-04-07 15:18:32 +0100 Vincent Penquerc'h + + * plugins/elements/gstfilesrc.c: + filesrc: catch failure to seek back to zero after seek test + This should never happen theoretically, but since a transient + failure would get us to silently read wrong data, it's worth + erroring out. And it silence this: + Coverity 206034 + +2014-04-07 11:36:58 +0200 Sebastian Dröge + + * gst/parse/Makefile.am: + parse: Don't dist the bison and flex generated headers + https://bugzilla.gnome.org/show_bug.cgi?id=727253 + +2014-04-06 11:23:34 +0200 Sebastian Rasmussen + + * gst/gstdebugutils.c: + debugutils: Handle caps field values being NULL + GST_DEBUG_BIN_TO_DOT_FILE() would cause a segfault whenever it encountered an + element's caps that had a field value being NULL. Such fields are successfully + handled e.g. by GST_*_OBJECT(), and with this patch so does + GST_DEBUG_BIN_TO_DOT_FILE(). Even if string fields with a NULL value are + not supposed to be valid in caps, such caps can be created. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=727701 + +2014-04-05 11:44:01 +0200 Edward Hervey + + * libs/gst/base/gstbaseparse.c: + baseparse: Remove always-true-checks + a gsize is guaranteed to be positive on all systems since it's an + unsigned value. + CID #1037147 + +2014-04-05 11:44:01 +0200 Edward Hervey + + * libs/gst/base/gstadapter.c: + adapter: Remove always-true-checks + a gsize is guaranteed to be positive on all systems since it's an + unsigned value. + CID #1037145 + CID #1037146 + +2014-04-05 11:37:53 +0200 Edward Hervey + + * gst/gstvalue.c: + gstvalue: Prevent division or modulo by zero + The step can end up being zero if the underlying value isn't a valid + range GValue. + In those cases, return FALSE. + We don't use g_return*_if_fail since it will already have been triggered + by the above-mentionned _get_step() functions. + Spotted by Coverity. + +2014-03-25 12:23:32 +0100 Haakon Sporsheim + + * gst/gstvalue.c: + gstvalue: Fix comparison of int/int64 range + Checking step three times seems unnecessary. + A similar bug was fixed for double range in + commit 3ea6b04c10b10fde9d62190068f274b940edef07 + +2014-04-03 18:17:03 -0300 Thiago Santos + + * plugins/elements/gstinputselector.c: + inputselector: fix build with debug cached buffers enabled + gstinputselector.c:818:5: error: format not a string literal + and no format arguments [-Werror=format-security] + +2014-04-03 20:31:16 +0200 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Make sure to set the DISCONT flag on the first buffer of each GOP in reverse playback mode + +2014-04-03 13:20:11 -0300 Thiago Santos + + * libs/gst/base/gstbasesrc.c: + basesrc: removing duplicated inner if + The inner if replicates the same code of the outer and is useless + as flag_segment will always be true. + Found by coverity. + +2014-04-03 07:36:03 +0200 Edward Hervey + + * tools/gst-launch.1.in: + gst-launch.1: Playbin2 is dead, long live playbin + Looks like that was the last remaining mention in core ... + +2014-04-02 23:52:10 +0200 Sebastian Dröge + + * tools/gst-inspect.c: + gst-inspect: Add missing \n in output + +2014-04-01 15:35:24 +0100 Tim-Philipp Müller + + * scripts/gst-uninstalled: + scripts: gst-uninstalled: gst-plugins-gl libs got merged into -bad + +2014-03-29 10:18:34 +0100 Sebastian Dröge + + * gst/gstpad.c: + pad: Include event type in debug output when delaying a sticky event because of not-linked + +2014-03-29 10:16:12 +0100 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Fix splitting and reversing of GOPs in reverse playback mode + We iterate the current discont group backwards and push each GOP forwards, + starting from the last one. However if the first buffer in the current + discont group is a keyframe, we will keep it around until next time, + which is far from ideal. Just push it. + +2014-03-25 12:38:07 +0100 Wim Taymans + + * tools/gst-launch.c: + launch: place the deep-notify on the right pipeline + If the toplevel bin is not not a pipeline, we place the bin in a + pipeline. Also make sure that we connect to the deep-notify of this new + pipeline because we will g_signal_handler_disconnect() from it later. + +2014-03-24 16:34:27 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: copy last_sample on DRAIN + Make sure we don't hold a ref to a buffer from before the DRAIN query by + making a copy of the last_buffer. + +2014-03-24 16:11:30 +0100 Wim Taymans + + * gst/gstbuffer.c: + buffer: don't clear TAG on NULL buffer + When the buffer fails to copy, don't clear the TAG on the NULL pointer. + +2014-03-20 06:14:33 -0400 Vincent Penquerc'h + + * plugins/elements/gstqueue2.c: + queue2: fix event/preroll deadlock + The qlock is released between popping a buffer from the queue + and pushing it. When this buffer causes the sink to wait in + preroll, this lets a query see that the queue is empty, and + push the query then wait for it to be serviced. However, this + will not be done till after peroll, and this will thus block. + If upstream was waiting on buffering to reach 100% before + switching to PLAYING, a deadlock would ensue. + We fix it by refusing the query when buffering, as per Wim's + recommendation on IRC. + +2014-03-23 12:53:55 +0000 Tim-Philipp Müller + + * tests/check/libs/gstnetclientclock.c: + tests: make netclientclock test faster and less flaky + +2014-03-21 12:16:54 +0100 Wim Taymans + + * gst/gst.c: + gst: init new flag types to pass make check + +2014-03-19 09:33:53 +0100 Sebastian Dröge + + * plugins/elements/gstqueue2.c: + queue2: Update buffering status and maybe post buffering message right when enabling buffering + +2014-03-19 09:32:45 +0100 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: Update buffering status and maybe post buffering message right when enabling buffering + +2014-03-18 18:12:16 +0100 Sebastian Dröge + + * tests/check/elements/fakesink.c: + fakesink: Update positions we're checking for after a state is lost + +2014-03-18 18:11:15 +0100 Sebastian Dröge + + * libs/gst/base/gstbasesink.c: + basesink: Update start time when we lose our state + Otherwise we report not the correct position while the state is lost. + +2014-03-18 16:47:42 +0100 Sebastian Dröge + + * libs/gst/base/gstbasesink.c: + basesink: Don't clip the reported position in PAUSED to after the last buffer end timestamp + Otherwise we jump forward when pausing, and go backwards a bit again + when resuming playback. + +2014-03-17 10:05:31 +0100 Edward Hervey + + * win32/common/libgstreamer.def: + win32: Update exports for GstToc loop + +2014-03-17 10:05:18 +0100 Edward Hervey + + * win32/common/libgstreamer.def: + win32: Update export for gst*device symbols + +2014-03-17 09:51:45 +0100 Edward Hervey + + * gst/gstdevice.c: + * gst/gstdevicemonitor.c: + * gst/gstglobaldevicemonitor.c: + devicemonitor: Use local includes and use gst_private before anything + Should fix build issues on BSD + +2014-03-16 20:50:53 -0400 Olivier Crête + + * tools/gst-inspect.c: + gst-inpect: Print device monitor + +2014-03-16 15:56:59 -0400 Olivier Crête + + * gst/gstdevice.c: + * gst/gstdevice.h: + * gst/gstglobaldevicemonitor.c: + device: Add "klass" to GstDevices + +2014-03-16 18:02:56 -0400 Olivier Crête + + * gst/gstdevicemonitorfactory.c: + * gst/gstdevicemonitorfactory.h: + * gst/gstglobaldevicemonitor.c: + * gst/gstglobaldevicemonitor.h: + devicemonitor: Make classes into pure strings + Instead of having strings & flags, make them just strings + +2014-03-17 06:29:27 +1100 Jan Schmidt + + * gst/gstbus.c: + * gst/gstmessage.h: + * tests/check/gst/gstbus.c: + Fix extended message handling with gst_bus_pop_timed_filtered() + Make sure extended message types don't get accidentally matched + when not asked for in the mask + +2014-03-17 05:24:12 +1100 Jan Schmidt + + * gst/gstbin.c: + gstbin: Avoid pointless object lock forwarding messages. + Every instance of calling bin_do_message_forward() first took the + object lock, so that bin_do_message_forward() could drop it and + then reclaim. Instead, only take the object lock afterward where + needed. + +2014-02-19 02:27:36 +0100 Mathieu Duponchelle + + * libs/gst/base/gstcollectpads.c: + collectpads: When seek flushed, immediately set eospads to 0 + This prevents situations where a first branch would get seeked and + receive a buffer before all branches got seeked, and thus collected + would get called based on EOS from the previous segment. + As a consequence, during the process of seeking, don't decrease + the eospads number when a FLUSH_STOP is received. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=724571 + +2014-03-16 17:47:06 +0100 Sebastian Dröge + + * libs/gst/base/gstcollectpads.c: + collectpads: Unref peer pad + +2014-02-16 20:35:09 +0100 Mathieu Duponchelle + + * libs/gst/base/gstcollectpads.c: + collectpads: Forward seek events to the peer directly + Taken from the adder seek handling code. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=726461 + +2014-01-02 22:30:11 +0100 Stefan Sauer + + * docs/design/part-toc.txt: + * gst/gsttoc.c: + * gst/gsttoc.h: + toc: expand GstTocEntry with loop fields + Add loop_type and repeat_count fields to GstTocEntry plus setters and getters. + This allows to represent edit-lists in a toc as well as loops in instruemnts (wav, xi). + API: gst_toc_entry_set_loop + API: gst_toc_entry_get_loop + +2014-03-16 15:19:49 +0000 Tim-Philipp Müller + + * gst/gstglobaldevicemonitor.c: + globaldevicemonitor: update for new message API + https://bugzilla.gnome.org/show_bug.cgi?id=678402 + +2013-01-08 21:30:44 -0500 Olivier Crête + + * gst/Makefile.am: + * gst/gst.h: + * gst/gstglobaldevicemonitor.c: + * gst/gstglobaldevicemonitor.h: + * win32/common/libgstreamer.def: + globaldevicemonitor: Add device monitor aggregator + https://bugzilla.gnome.org/show_bug.cgi?id=678402 + +2014-03-16 14:08:45 +0000 Tim-Philipp Müller + + * tests/check/gst/gstbus.c: + tests: add test for extended message types and gst_bus_timed_pop_filtered + +2014-03-16 14:08:00 +0000 Tim-Philipp Müller + + * gst/gst.c: + * gst/gstbus.c: + * gst/gstmessage.c: + * gst/gstmessage.h: + * gst/gstquark.c: + * gst/gstquark.h: + * win32/common/libgstreamer.def: + message, bus: do extended message types slightly differently + https://bugzilla.gnome.org/show_bug.cgi?id=678402 + +2014-03-16 14:07:35 +0000 Tim-Philipp Müller + + * gst/gst.c: + gst: fix indentation + +2012-10-16 12:27:04 -0400 Olivier Crête + + * gst/Makefile.am: + * gst/gst.h: + * gst/gst_private.h: + * gst/gstdevice.c: + * gst/gstdevice.h: + * gst/gstdevicemonitor.c: + * gst/gstdevicemonitor.h: + * gst/gstdevicemonitorfactory.c: + * gst/gstdevicemonitorfactory.h: + * gst/gstmessage.c: + * gst/gstmessage.h: + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gstregistry.c: + * gst/gstregistrybinary.c: + * gst/gstregistrychunks.c: + * gst/gstregistrychunks.h: + * win32/common/libgstreamer.def: + devicemonitor: Add GstDeviceMonitor and related + Also add GstDevice and GstDeviceMonitorFactory + And add code to the registry to save them + https://bugzilla.gnome.org/show_bug.cgi?id=678402 + +2013-08-14 15:56:11 -0400 Olivier Crête + + * gst/gst.c: + * gst/gstmessage.c: + * gst/gstmessage.h: + * gst/gstquark.c: + * gst/gstquark.h: + message: Add GST_MESSAGE_EXTENDED + https://bugzilla.gnome.org/show_bug.cgi?id=678402 + +2014-03-16 11:05:56 +0100 Stefan Sauer + + * gst/gstutils.c: + pad: actually return data.ret + The return value from gst_pad_forward() is the aggregated return value from the callback and the callback returns FALSE to continue iterating. + +2014-03-15 15:54:33 +0100 Stefan Sauer + + * gst/gstutils.c: + pad: forward return value from gst_pad_forward + Instead of ignoring the return value and always return TRUE pass the already agregated result back. + +2014-03-15 13:57:19 -0300 Thiago Santos + + * win32/common/libgstreamer.def: + win32: fix make-check by running 'make update-exports' + +2014-03-14 13:32:17 -0300 Thiago Santos + + * tests/check/elements/multiqueue.c: + tests: multiqueue: fix eos count on test for not-linked case + From the test case: + /* This test creates a multiqueue with 2 streams. One receives + * a constant flow of buffers, the other only gets one buffer, and then + * new-segment events, and returns not-linked. The multiqueue should not fill. + */ + If one of the queues goes EOS and the other returns NOT_LINKED the stream + can be considerered EOS as a NOT_LINKED means that one of the branches has no + sink downstream that will block the EOS message posting. + https://bugzilla.gnome.org/show_bug.cgi?id=725917 + +2014-03-01 23:18:44 +0100 Sebastian Rasmussen + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstadapter.h: + * win32/common/libgstbase.def: + adapter: Adapt gst_adapter_copy() for bindings + This is done by introducing a new gst_adapter_copy_bytes() call that + returns a GBytes structure. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725476 + +2014-03-14 18:40:31 +0000 Tim-Philipp Müller + + * plugins/elements/gstmultiqueue.c: + docs: fix multiqueue docs for new template names foo_%d -> foo_%u + https://bugzilla.gnome.org/show_bug.cgi?id=726358 + +2014-03-11 21:55:46 +0000 Tim-Philipp Müller + + * docs/plugins/inspect/plugin-coreelements.xml: + docs: update plugin docs + +2014-03-11 21:44:39 +0000 Tim-Philipp Müller + + * gst/gstpad.c: + pad: simplify gst_pad_link_get_name() and fix Since marker + Has added benefit that compiler might warn if more values + are added to the enum. + +2014-03-11 21:46:14 +0100 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + * gst/gstghostpad.c: + * gst/gstpad.c: + * gst/gstpad.h: + * win32/common/libgstreamer.def: + pad: add debug helper for GstPadLinkReturn names + Add a helper like gst_flow_get_name() for GstPadLinkReturn. Use this in core. + API: gst_pad_link_get_name() + +2014-03-11 21:12:15 +0100 Stefan Sauer + + * plugins/elements/gsttee.c: + tee: use store_sticky events add add more logging + Use the pad as object for logging to get more context. Use + gst_pad_store_sticky_event() instead of sending the event. This avoids a warning + as here the pad is not yet linked and we actually don't want to send anyway. + +2014-03-10 10:00:28 -0300 Thiago Santos + + * plugins/elements/gstqueue2.c: + queue2: if buffering is disabled while buffering, post 100% message + Avoids stall waiting for buffering to reach 100% + +2014-03-10 09:49:09 -0300 Thiago Santos + + * plugins/elements/gstqueue2.c: + * plugins/elements/gstqueue2.h: + queue2: remove unused variable + buffering_iteration was never used + +2014-03-10 09:49:07 -0300 Thiago Santos + + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + queue: queue2: preserve last flow result when pushing events + Avoids mistakenly returning _OK when downstream is still + _NOT_LINKED on subsequent received pad pushes + https://bugzilla.gnome.org/show_bug.cgi?id=725917 + +2014-03-10 09:49:05 -0300 Thiago Santos + + * plugins/elements/gstmultiqueue.c: + multiqueue: if buffering is disabled while buffering, post 100% message + Avoids stall waiting for buffering to reach 100% + +2014-03-10 09:48:58 -0300 Thiago Santos + + * plugins/elements/gstmultiqueue.c: + multiqueue: do not reset last push result when pushing events + Use the last result as a default when pushing a item from a single queue, + otherwise the status gets reset to _OK when pushing events. + This causes problems when mistakenly activating a not-linked stream + that is being ignored upstream as it is not being used (adaptive + scenarios), it will make the multiqueue post a buffering message + on a pad that won't receive buffers + https://bugzilla.gnome.org/show_bug.cgi?id=725917 + +2014-03-07 20:43:44 +0000 Tim-Philipp Müller + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + buffer: invert meaning of GST_BUFFER_FLAG_TAG_MEMORY + It's nicer to only have it set when something noteworthy + happened and otherwise unset. + https://bugzilla.gnome.org/show_bug.cgi?id=725862 + +2014-03-06 22:51:57 +0100 Stefan Sauer + + * gst/gstpad.c: + pad: fix gst_pad_add_probe() return value docs + Also fix comment typos and add more detail in the logs. + +2014-03-06 20:40:46 +0000 Tim-Philipp Müller + + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstidentity.c: + fakesink, identity, fakesrc: fix debug printing if TAG_MEMORY buffer flag + The IN_CAPS flag does not exist any more. + +2014-03-06 13:01:40 +0200 George Kiagiadakis + + * gst/gstghostpad.c: + ghostpad: use gst_pad_get_peer to acquire a reference to the target pad + This ensures that the lock of the internal pad is held while referencing + it's peer (= the target pad), which ensures that the peer is not + going to be unlinked/destroyed in the meantime. + https://bugzilla.gnome.org/show_bug.cgi?id=725809 + +2014-03-06 12:40:23 +0200 George Kiagiadakis + + * gst/gstghostpad.c: + ghostpad: hold a reference to the target pad while unlinking it + https://bugzilla.gnome.org/show_bug.cgi?id=725809 + +2014-03-02 05:08:24 +0100 Sebastian Rasmussen + + * .gitignore: + .gitignore: Ignore gcov intermediate files + https://bugzilla.gnome.org/show_bug.cgi?id=725478 + +2014-03-02 17:55:45 +0100 Sebastian Rasmussen + + * gst/gstbufferpool.c: + * gst/gstmeta.c: + * libs/gst/base/gstbaseparse.h: + docs: Fix typos and remove unknown annotations + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725517 + +2014-02-28 20:53:38 +0100 Stefan Sauer + + * gst/gstcontext.c: + docs: use the new markdown for ordered list. + This was plain text that had all list items one after the other (including a + repeated number). Now it will atleast look good when processed with gtk-doc + 1.20. + +2014-02-28 09:34:19 +0100 Sebastian Dröge + + * common: + Automatic update of common submodule + From fe1672e to bcb1518 + +2014-02-27 22:26:30 -0300 Reynaldo H. Verdejo Pinochet + + * gst/gstevent.c: + * gst/gstpadtemplate.c: + docs: fix problems introduced by c068b225fef5a9bf0 + - Fix failing build + - Drop added trailing whitespace + +2014-02-27 18:27:37 +0100 Stefan Sauer + + * gst/gstbuffer.c: + buffer: add return values to g_return_if_fail + FIxes previous commit. + +2014-02-27 18:06:56 +0100 Stefan Sauer + + * gst/gstbuffer.c: + * gst/gstcaps.c: + * gst/gstevent.c: + * gst/gstinfo.c: + * gst/gstiterator.c: + * gst/gstmessage.c: + * gst/gstpadtemplate.c: + * gst/gstquery.c: + * gst/gsttypefindfactory.c: + docs: convert the examples to use gtk-doc markup, instead of docbook + The gtk-doc markup is less intrusive and better handled when creating docs for + language bindings. The titles (where used) where not adding much. + +2014-02-27 16:46:11 +0100 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * win32/common/libgstreamer.def: + docs: add some more new API do docs + +2014-02-27 16:40:34 +0100 Wim Taymans + + * gst/gstbufferpool.c: + * tests/check/gst/gstbufferpool.c: + bufferpool: only release buffers with writable memory + Check if the memory is writable before releasing the buffer into the + pool again. + Add unit test for this scenario. + +2014-02-27 16:39:50 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + buffer: add function to check writability of memory + Check if memory is writable in a buffer and thus is exclusively owned by + this buffer. + +2014-02-27 15:14:59 +0100 Wim Taymans + + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + * tests/check/gst/gstbufferpool.c: + bufferpool: Use TAG_MEMORY to check memory before releasing + Tag allocated buffers with TAG_MEMORY. When they are released later, + only add them back to the pool if the tag is still there and the memory + has not been changed, otherwise throw the buffer away. + Add unit test to check various scenarios. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=724481 + +2014-02-27 14:35:09 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + buffer: add a new flag to track memory changes + Add a flag to check if the memory changed in a buffer. + +2014-02-26 15:36:42 +0100 Wim Taymans + + * gst/gstbuffer.c: + buffer: remove wrong comment + Refcount and writability are not related for memory objects. + +2014-02-25 17:46:49 +0100 Wim Taymans + + * gst/gstbufferpool.c: + bufferpool: refactor free_buffer + Make a do_free_buffer method to also decrements the number of allocated + buffers. Stop will now be successful when all buffers are freed. + +2014-02-26 22:10:28 +0100 Stefan Sauer + + * common: + Automatic update of common submodule + From 1a07da9 to fe1672e + +2014-02-26 20:24:41 +0100 Stefan Sauer + + * gst/gstdebugutils.c: + debugutils: add a legend to pipeline dumps + We use a couple of symbols to represent states/flags. Add a short explanation for them. + +2013-07-31 09:26:26 +0200 Olivier Crête + + * gst/gstdebugutils.c: + debugutils: Print if there is a task started from a pad + https://bugzilla.gnome.org/show_bug.cgi?id=705189 + +2014-02-25 16:11:20 +0100 Sebastian Dröge + + * gst/gststructure.c: + structure: Use get_uint64() in gst_structure_get_clock_time() + Its code is identical. + +2014-02-25 15:41:45 +0100 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gststructure.c: + * gst/gststructure.h: + * tests/check/gst/gststructure.c: + * win32/common/libgstreamer.def: + structure: Add getters for int64 and uint64 values + +2014-02-19 21:17:27 -0300 Thiago Santos + + * libs/gst/base/gstbasesrc.c: + * tests/check/libs/basesrc.c: + basesrc: Do not send eos when seeking after last buffer + If pushing the last buffer triggers a seek from downstream, do not + go into EOS if a new segment was requested. + Contains unit test + https://bugzilla.gnome.org/show_bug.cgi?id=724757 + +2014-02-21 09:03:50 +0000 Tim-Philipp Müller + + * scripts/gst-uninstalled: + gst-uninstalled: remove insanity and the old gst-openmax + +2014-02-20 18:47:42 +0100 Thibault Saunier + + * scripts/gst-uninstalled: + gst-uninstalled: Add paths to gst-devtools/validate + +2014-02-20 15:34:36 +0100 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: If we only have a single pad, don't consider all pads not linked and grow the queue indefinitely + +2014-02-19 10:57:33 +0100 Stefan Sauer + + * libs/gst/check/gstcheck.c: + * libs/gst/check/gstcheck.h: + check: also use the glob on GST_CHECKS when forcing to run broken tests + GST_CHECKS can be simply "test*" to run run all tests (including those that are + marked broken). Update the sparse comments a bit to tell how this works. + +2014-02-18 15:46:32 +0100 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: don't truncate the temp file on shutdown + We want to keep the downloaded file untruncated so that we can use it + again later. + Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=724373 + +2014-02-18 14:21:20 +0100 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: Fix merging of ranges + Make a method to get the seeking threshold. If data is further away from + this threshold we want to perform a seek upstream. + When the current downloaded range can merge with the next range, + actually include the data of the next range into the current range + instead of discarding it. Also decide if we seek to the write position + of the merged range or continue reading. + +2014-02-18 11:49:37 +0100 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: in automatic_eos mode, don't modify the size + Don't set the size to -1 in automatic_eos mode (which also updates the + duration to -1). We only want automatic_eos mode influence the maxsize + calculations without any side effects. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=724564 + +2014-02-17 11:37:30 +0100 Jan Alexander Steffens (heftig) + + * docs/pwg/advanced-types.xml: + pwg: Update raw properties + Using info from gst-plugins-base/docs/design . + Encoded streams might make use of the raw properties, so list them all under foo/* . + For foo/raw, only note which of these properties are mandatory. + I didn't take a closer look at the raw formats yet. Those might still be out-of-date. + https://bugzilla.gnome.org/show_bug.cgi?id=724187 + +2014-02-17 17:28:38 +0000 Tim-Philipp Müller + + * scripts/create-uninstalled-setup.sh: + scripts: create-uninstalled-setup: remove dead http links + https://bugzilla.gnome.org/show_bug.cgi?id=724561 + +2014-02-15 22:34:33 +0100 Stefan Sauer + + * docs/gst/gstreamer.types.in: + docs: add the boxed types to the .types.in + This makes them show up in the object hierarchy. + +2014-02-15 21:22:45 +0100 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + * gst/gstutils.h: + docs: gtkdoc is not good at parsing inline functions in headers + Mark the inline function, so that gtkdoc skips them. Avoids some warnings about + unparsable declarations. + +2014-02-13 12:07:50 +0100 Sebastian Dröge + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasesrc.h: + * win32/common/libgstbase.def: + basesrc: Add gst_base_src_set_automatic_eos() API + This defaults to TRUE and if it is set to FALSE it is the subclasses + responsibility to return GST_FLOW_EOS from the create() vmethod once + the stream is done. + +2014-02-11 16:30:31 +0000 William Manley + + * docs/gst/running.xml: + * gst/gstregistry.c: + docs: Fix location of plugins and registry in home directories + Fixes out of date documentation left over since 0.10. In 1.0 plugins are + stored in $XDG_DATA_HOME and the registry in $XDG_CACHE_HOME conformant + with the XDG Base Directory Specification[1]. + [1]: http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html + https://bugzilla.gnome.org/show_bug.cgi?id=724132 + +2014-02-11 13:27:25 +0100 Sebastian Dröge + + * gst/gsterror.h: + error: GST_RESOURCE_ERROR_NOT_AUTHORIZED will be available since 1.2.4 + +2014-02-11 13:09:11 +0100 Sebastian Dröge + + * gst/gsterror.c: + * gst/gsterror.h: + error: Add RESOURCE_NOT_AUTHORIZED error + This allows to distinguish normal read failures from read failures + where we miss authorization. + +2014-02-10 17:09:59 +0100 Sebastian Dröge + + * tools/gst-inspect.c: + gst-inspect: Fix yet another compiler warning + https://bugzilla.gnome.org/show_bug.cgi?id=724045 + +2014-02-10 08:00:36 +0100 Sebastian Rasmussen + + * docs/design/Makefile.am: + docs: add missing seqnum file for distribution + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=723997 + +2014-02-09 16:53:55 +0000 Tim-Philipp Müller + + * docs/gst/running.xml: + docs: document GST_TAG_*ENCODING environment variables + https://bugzilla.gnome.org/show_bug.cgi?id=721850 + +2014-02-09 16:47:53 +0000 Tim-Philipp Müller + + * docs/Makefile.am: + docs: enable parallel build of subdirectories + We can build gtk docs, ADM, PWG and FAQ in parallel. + +2014-02-09 16:38:10 +0000 Tim-Philipp Müller + + * libs/gst/check/gstcheck.c: + check: add support for blacklisting checks via GST_CHECKS_IGNORE + +2014-02-09 00:25:14 +0000 Tim-Philipp Müller + + * tests/check/libs/baseparse.c: + tests: fix leak in baseparse test + Or rather make it not show up any more by moving + it from 'definitely lost' into 'possibly lost'. + +2014-02-08 23:39:03 +0000 Tim-Philipp Müller + + * tests/check/gst/gstsystemclock.c: + tests: fix leak in systemclock test + +2014-02-08 16:42:55 +0100 Sebastian Dröge + + * tools/gst-inspect.c: + gst-inspect: Make clang happy with our g_vprintf() wrapper + +2014-02-06 14:18:31 +0800 Chun-wei Fan + + * gst/gst.c: + * gst/gstpluginloader.c: + * gst/gstpreset.c: + * gst/gstregistry.c: + windows: Make GStreamer installation relocatable + Use the technique that is now done in GTK+ so that the plugins do not have + to be installed in c:\gstreamer\lib\\gstreamer-$(GSTApiVersion), + but can be installed in + \lib\\gstreamer-$(GSTApiVersion), + or as per g_win32_get_package_installation_directory_of_module() allows. + https://bugzilla.gnome.org/show_bug.cgi?id=679115 + +2013-10-30 17:02:35 -0500 Brendan Long + + * gst/gsttask.c: + * gst/gsttaskpool.c: + * libs/gst/base/gstcollectpads.c: + gst: clear floating references for GstTask, GstTaskPool and GstCollectPads + https://bugzilla.gnome.org/show_bug.cgi?id=710342 + +2013-10-30 17:02:02 -0500 Brendan Long + + * gst/gstbufferpool.c: + * gst/gstpad.c: + docs: gst_pad_new_from_*_template and gst_buffer_pool_new constructors return floating references + https://bugzilla.gnome.org/show_bug.cgi?id=710342 + +2014-02-05 10:11:43 +0100 Edward Hervey + + * tests/check/elements/capsfilter.c: + check: Remove a minor leak in unit test + Makes valgrind happy + +2014-02-04 22:23:06 +0100 Sebastian Dröge + + * docs/manual/advanced-dataaccess.xml: + manual: Fix build by using the correct C file name + +2014-02-04 21:36:18 +0100 Sebastian Dröge + + * docs/manual/advanced-dataaccess.xml: + manual: Clean up code a bit to be suitable for the docs + +2014-01-03 07:25:37 -0800 Todd Agulnick + + * docs/manual/advanced-dataaccess.xml: + manual: Replace manual's effectswitch.c with newer test-effect-switch.c + https://bugzilla.gnome.org/show_bug.cgi?id=721100 + +2014-01-29 14:39:19 +0000 Matthieu Bouron + + * tests/check/gst/gstcaps.c: + tests: add caps features unit tests + https://bugzilla.gnome.org/show_bug.cgi?id=723236 + +2014-02-04 18:42:02 +0100 Sebastian Dröge + + * gst/gstcaps.c: + caps: When getting capsfeatures and none are there, store sysmem capsfeatures + ... instead of returning a reference to a global instance. The caller might + want to change the global instance otherwise, which causes funny effects like + all global instances being changed and at the same time nothing in the caps + being changed. + As the caps might be immutable while we do this we have to do some magic + with atomic operations. + https://bugzilla.gnome.org/show_bug.cgi?id=723236 + +2014-02-04 18:03:47 +0100 Sebastian Dröge + + * gst/gstcaps.c: + caps: Don't get us sysmem capsfeatures if we just check for fixed caps + +2014-02-04 17:48:54 +0100 Sebastian Dröge + + * gst/gstcapsfeatures.c: + capsfeatures: Make sure that the static ANY/EMPTY capsfeatures are never mutable + See https://bugzilla.gnome.org/show_bug.cgi?id=723236 + +2014-01-31 09:14:41 +0100 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + * gst/gstcontrolbinding.h: + * gst/gstmeta.h: + * libs/gst/base/gstbasetransform.c: + docs: fix more gtk-doc warnings + +2014-01-31 08:35:41 +0100 Stefan Sauer + + * docs/gst/Makefile.am: + * docs/gst/gstreamer-sections.txt: + * gst/gstallocator.h: + docs: unhide docs for allocator + Unhinde the class docs. Tech gtk-doc about GST_EXPORTS. + +2014-01-31 08:08:37 +0100 Stefan Sauer + + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + * tests/check/gst/gstbufferpool.c: + bufferpool: more tests and small doc fixes + +2014-01-30 21:24:21 +0100 Sebastian Dröge + + * tools/gst-inspect.c: + * tools/gst-launch.c: + * tools/gst-typefind.c: + tools: Support non-ASCII tags + By calling setlocale() to get us multi-byte/UTF-8 support. + https://bugzilla.gnome.org/show_bug.cgi?id=723164 + +2014-01-30 03:22:56 -0300 Thiago Santos + + * plugins/elements/gstoutputselector.c: + outputselector: respect the 'negotiation-mode' property + If the segment event is allowed to be pushed to all pads it + will lead to an assertion of 'sticky event misordering: + segment received before caps' in case the pad-negotiation-mode + is set to 'active' or 'none'. + This patch fixes this by making all sticky events follow the + property like the caps event to prevent misordering warnings. + When a new pad is activated the current sticky events on the + sinkpad are forwarded to it in the proper order. + https://bugzilla.gnome.org/show_bug.cgi?id=723266 + +2014-01-30 12:54:20 +0100 Stefan Sauer + + * tests/benchmarks/gstpoolstress.c: + poolstress: print speedup + +2014-01-30 12:42:02 +0100 Stefan Sauer + + * gst/gstbufferpool.c: + bufferpool: misc cleanups + Review the documentation, comments and logging. Set the initial size to 16 as + the size is rounded up to the next power of two anyway. + +2014-01-30 08:11:12 +0100 Stefan Sauer + + * tests/check/Makefile.am: + * tests/check/gst/.gitignore: + * tests/check/gst/gstbufferpool.c: + bufferpool: add a new testsuite or the pool + Start with some basic tests. + +2014-01-30 12:26:05 +0100 Wim Taymans + + * gst/gstbufferpool.c: + bufferpool: avoid excessive GstPoll activity + Keep an extra write ref on the control socket. This ensures that we + avoid a read/write on the socket when going from non-empty->empty->not-empty. + We remove the write ref only when we actually are empty and we need to + wait for flushing or a new buffer. + This makes the bufferpool benchmark about 30% faster than the pure + malloc implementation. + +2014-01-30 12:25:33 +0100 Wim Taymans + + * gst/gstpoll.c: + poll: improve debug + Add object pointer in debug lines. + +2014-01-30 10:43:36 +0100 Edward Hervey + + * common: + Automatic update of common submodule + From d48bed3 to 1a07da9 + +2014-01-29 22:46:48 +0100 Stefan Sauer + + * docs/design/part-toc.txt: + part-toc: emphasize that the later chapters are design draft ideas + +2014-01-29 20:20:56 +0100 Stefan Sauer + + * docs/design/part-toc.txt: + part-toc: add format specific information + +2014-01-29 18:21:34 +0100 Stefan Sauer + + * tests/benchmarks/gstpoolstress.c: + poolstress: code cleanups + Add a few comments. Tell in the results, which number are from which test. + +2014-01-29 13:20:19 +0100 Nicola Murino + + * scripts/gst-uninstalled: + gst-uninstalled: use print as function + https://bugzilla.gnome.org/show_bug.cgi?id=723229 + +2014-01-28 11:58:53 -0300 Thiago Santos + + * tests/check/elements/capsfilter.c: + tests: capsfilter: add test for pending_events pushing + make sure that pending events are pushed when caps are already + set when a buffer is received + +2014-01-28 11:12:56 -0300 Thiago Santos + + * plugins/elements/gstcapsfilter.c: + capsfilter: do not forget to push pending events + Push pending events before buffers if caps is already + set + +2014-01-24 19:19:08 +0100 Arnaud Vrac + + * plugins/elements/gstmultiqueue.c: + multiqueue: do not reduce single queue below current level + When the single queue size was just bumped by 1 to allow more buffers to + be added, the buffers limit could be reduced to the current level when + setting the max-size-buffers property. This would result in a stall + since the queue would not grow anymore at this point. + Prevent this by not reducing a single queue size below the current + number of buffers + 1. + https://bugzilla.gnome.org/show_bug.cgi?id=712597 + +2014-01-24 13:20:49 -0300 Thiago Santos + + * libs/gst/base/gstbasesrc.c: + basesrc: do not forget to clear the forced_eos flag + otherwise it will always use the seqnum of the event + sent by the application + +2014-01-23 15:52:51 -0300 Thiago Santos + + * libs/gst/base/gstbasesrc.c: + * tests/check/libs/basesrc.c: + basesrc: preserve seqnum of eos events sent by the user + Store the eos event seqnum and use it when creating the + new eos event to be pushed downstream. To know if the eos + was caused by the eos events received on send_event, a + 'forced_eos' flag is used to use the correct seqnum on + the event pushed downstream. + Useful if the application wants to check if the EOS message + was generated from its own pushed EOS or from another source + (stream really finished). + Also adds a test for this + https://bugzilla.gnome.org/show_bug.cgi?id=722791 + +2014-01-23 15:34:27 -0300 Thiago Santos + + * docs/design/part-seqnums.txt: + docs: design: add part-seqnums + Hopefully clarifies how seqnums should be used and copied from + events to events/messages when those are handled. + https://bugzilla.gnome.org/show_bug.cgi?id=722791 + +2014-01-24 09:28:05 +0100 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: Break the loop immediately if we found an empty queue + No need to continue looking at all the others + +2014-01-23 15:47:23 +0100 Per x Johansson + + * plugins/elements/gstmultiqueue.c: + multiqueue: Allow growing a queue if all other queues are not linked + In the case where one singlequeue is full and all other are not linked, the + growing of the full queue does not work correctly. The result depends on if + the full queue is last in the queue list or not. + https://bugzilla.gnome.org/show_bug.cgi?id=722891 + +2014-01-22 11:10:01 +0100 Sebastian Dröge + + * gst/gstpad.c: + pad: Minor code cleanup + !check_sticky()==GST_FLOW_OK is a bit confusing, compared to + check_sticky()!=GST_FLOW_OK. + +2014-01-20 15:26:54 +0100 Fabian Kirsch + + * tests/check/pipelines/parse-launch.c: + parse: Additional tests for parser + https://bugzilla.gnome.org/show_bug.cgi?id=710034 + +2014-01-18 14:48:35 +0100 Sebastian Dröge + + * gst/gstiterator.c: + iterator: Properly copy mutexes around when creating a copy of a filter iterator + +2014-01-18 14:34:45 +0100 Sebastian Dröge + + * tests/check/gst/gstiterator.c: + iterator: Add unit tests for filtering, recursive filtering and locking + https://bugzilla.gnome.org/show_bug.cgi?id=711138 + +2014-01-18 14:43:20 +0100 Stewart Brodie + + * gst/gstiterator.c: + iterator: Preserve the master lock when creating recursive iterator filters with the same lock + This way we make sure that a) the lock is always taken when checking + the cookie and calling the iterator's next functions and b) it is + not taken while calling any of the iterator filter functions. + https://bugzilla.gnome.org/show_bug.cgi?id=711138 + +2014-01-17 22:53:01 -0300 Thiago Santos + + * gst/gstpad.c: + pad: fix sticky event leak after sticky_events_foreach + events_foreach adds an extra ref when giving the event to the + user function. In case it was unrefed by the user, this extra ref + disappeared, but events_foreach still should unref again to + lose its own ref before removing the event from the array. + https://bugzilla.gnome.org/show_bug.cgi?id=722467 + +2014-01-16 20:11:03 +0100 Stefan Sauer + + * gst/gst.c: + * gst/gstinfo.c: + info: move some env-var checks from gst to gstinfo as well + We were doing some log related initialisation in gst.c after calling + _priv_gst_debug_init(). Just move it there for consistency. + +2014-01-16 18:16:35 +0100 Sebastian Dröge + + * plugins/elements/gstcapsfilter.c: + capsfilter: Only set caps on the srcpad if it's activated in push mode + https://bugzilla.gnome.org/show_bug.cgi?id=722289 + +2014-01-16 12:28:47 +0100 Fabian Kirsch + + * gst/parse/grammar.y: + parse: Some minor fixes + Fix destructor segfaulting + Expect 0 grammar-ambiguities + Fix order of bin-properties assignment + https://bugzilla.gnome.org/show_bug.cgi?id=710034 + +2014-01-15 19:28:01 -0300 Thiago Santos + + * plugins/elements/gstinputselector.c: + inputselector: removing duplicate field position + It is already stored inside the GstSegment struct and + was only duplicating information. Also removed some + weird positon if/else that would possibly change the + segment that was going to be pushed downstream + +2014-01-15 00:12:26 -0300 Thiago Santos + + * plugins/elements/gstmultiqueue.c: + multiqueue: prevent buffering forever with playbin + When prerolling/buffering, multiqueue has its buffers limit set + to 0, this means it can take an infinite amount of buffers. + When prerolling/buffering finishes, its limit is set back to 5, but + only if the current level is lower than 5. It should (almost) never be + and this will cause prerolling/buffering to need to wait to reach the + hard bytes and time limits, which are much higher. + This can lead to a very long startup time. This patch fixes this + by setting the single queues to the max(current, new_value) instead + of simply ignoring the new value and letting it as infinite(0) + https://bugzilla.gnome.org/show_bug.cgi?id=712597 + +2014-01-15 11:12:08 +0100 Sebastian Dröge + + * gst/gstsegment.c: + segment: gst_segment_offset_running_time() will be available in 1.2.3 + +2014-01-14 16:15:21 -0500 Nicolas Dufresne + + * docs/gst/gstreamer-sections.txt: + doc: Update sections with the new rounding macros + +2014-01-14 16:15:02 -0500 Nicolas Dufresne + + * gst/gstutils.h: + util: Add GST_ROUND_UP_N and GST_ROUND_DOWN_N + These are generic rounding macro that works for any power of two. + +2014-01-14 16:47:38 +0100 Sebastian Dröge + + * tests/check/elements/tee.c: + tee: Add unit test for requesting pad names + +2014-01-14 16:45:53 +0100 Sebastian Dröge + + * plugins/elements/gsttee.c: + * plugins/elements/gsttee.h: + tee: Make sure to give pads the name that was requested + Also check for uniqueness and make sure we create a new + pad index properly if some were requested with names but + the new one is not. + +2014-01-14 15:52:26 +0100 Sebastian Dröge + + * gst/parse/grammar.y: + parse: Make sure to create and link chains in the order as written + Make this work again: + audiotestsrc ! tee name=t t.src_0 ! queue ! fakesink t.src_1 ! queue ! fakesink + and this fail again: + audiotestsrc ! tee name=t t.src_1 ! queue ! fakesink t.src_0 ! queue ! fakesink + as tee just counts itself and does not care about the pad names we request + from it. + +2014-01-14 13:45:34 +0100 Sebastian Dröge + + * gst/parse/grammar.y: + parse: Remove some C99-style comments + +2014-01-14 13:44:11 +0100 Sebastian Dröge + + * gst/parse/types.h: + parse: Use GSlice for allocating and freeing links and chains + +2014-01-14 13:42:20 +0100 Sebastian Dröge + + * gst/parse/types.h: + parse: Add comment about why we disable the "tracing" + It did not print anything useful before anyway, everything + was commented out. + Also remove some unneeded struct members. + +2014-01-14 13:36:24 +0100 Sebastian Dröge + + * tests/check/pipelines/parse-launch.c: + parse-launch: Add some more failing pipelines + Also convert some comments about valgrind warnings to + FIXME comments. These were leaking since some time already. + +2014-01-10 21:10:17 +0100 Fabian Kirsch + + * gst/parse/grammar.y: + * gst/parse/parse.l: + * gst/parse/types.h: + * tests/check/pipelines/parse-launch.c: + parse: Refactor grammar, make it more consistent and fix conflicts + https://bugzilla.gnome.org/show_bug.cgi?id=710034 + +2014-01-13 20:48:32 +0100 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + * docs/gst/gstreamer.types.in: + docs: ensure GstBufferPools shows up as with GObject features + GstBufferPool is a GstObject, add the _get_type function to the types file. + +2014-01-13 08:37:37 -0300 Thiago Santos + + * tests/check/libs/baseparse.c: + tests: baseparse: add test for reverse playback on passthrough + Baseparse stores buffers for reverse playback to push on the next + DISCONT, the issue was that it wouldn't ever check for a discont + on passthrough mode as it skips all real parsing. This test + was create to verify this issue and prevent it from happening again + https://bugzilla.gnome.org/show_bug.cgi?id=721941 + +2014-01-11 10:49:17 -0300 Thiago Santos + + * tests/check/Makefile.am: + * tests/check/libs/.gitignore: + * tests/check/libs/baseparse.c: + tests: baseparse: add basic test for baseparse + Just a small test to check that basic playback works + +2014-01-10 09:10:06 -0300 Thiago Santos + + * libs/gst/base/gstbaseparse.c: + baseparse: do not accumulate buffers on passthrough mode + If on passthrough during reverse playback, do not accumulate buffers as + baseparse will never check for DISCONT flag to push those buffers. + So just push buffers downstream as if it was forward playback. + https://bugzilla.gnome.org/show_bug.cgi?id=721941 + +2014-01-06 21:47:22 +0100 Stefan Sauer + + * libs/gst/base/gstbasesrc.c: + basesrc: don't confuse GST_PAD_MODE_NONE and PULL + Use a switch-case to explicitly handle all pad-modes. This way we don't log an error when the pad is not yet activated. + +2014-01-09 07:56:55 +0100 Stefan Sauer + + * gst/gstobject.c: + gstobject: add FIXME and docs for the disabled notify on parent + We haven't found a way to re-enable emitting notify and deep-notify for parent + changes. Add a FIXME-2.0 and a doc blob on the property. See #693281. + +2014-01-08 16:28:54 -0300 Thiago Santos + + * libs/gst/base/gstbaseparse.c: + baseparse: do not ignore TIME segments + TIME segments are being ignored and a standard initialized + segment is used instead. This causes issues as not properly detecting + reverse playback or not cliping output based on the segment. + This seems to be a regression from one of the GstSegment/GstEvent + redesigns on the 0.10 -> 1.0 transition + +2014-01-08 15:47:10 +0100 Wim Taymans + + * tests/check/gst/gstsegment.c: + tests: improve check, also check stream-time + +2014-01-08 15:31:28 +0100 Wim Taymans + + * tests/check/gst/gstsegment.c: + tests: add unit test for segment _offset_running_time() + Add a unit test to check that positive and negative offsets are applied + correctly in various cases. + +2014-01-08 15:23:00 +0100 Wim Taymans + + * gst/gstsegment.c: + segment: take offset into account in _to_position() + Take the offset into account when converting between running-time and + segment positions. + +2014-01-08 14:57:04 +0100 Wim Taymans + + * gst/gstpad.c: + pad: use new segment offset method to apply the offset + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=721422 + +2014-01-08 14:54:47 +0100 Wim Taymans + + * gst/gstsegment.c: + * gst/gstsegment.h: + * win32/common/libgstreamer.def: + segment: add method to offset the segment running-time + Add a method that can apply an offset to the calculated running-time of + a segment. + +2014-01-08 14:52:04 +0100 Wim Taymans + + * libs/gst/base/gstcollectpads.c: + collectpads: take offset into account for expected segment position + The firt valid segment position is start + offset. + Also add some more debug and a FIXME + +2014-01-08 14:50:29 +0100 Wim Taymans + + * gst/gstinfo.c: + info: debug segment offset field as well + +2014-01-08 09:53:09 +0100 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: Allow growing a queue if all other queues are not linked + See https://bugzilla.gnome.org/show_bug.cgi?id=719893 + +2014-01-07 16:18:37 +0100 Wim Taymans + + * plugins/elements/gstfilesrc.c: + filesrc: don't try to seek to -1 offset + The offset can be -1 when we are configured in TIME format. Instead of + failing the seek and erroring, do what and offset of -1 is supposed to + do and simply read from the current offset. + +2014-01-06 21:04:32 +0100 Stefan Sauer + + * libs/gst/base/gstbasesrc.c: + basesrc: demote error to warning + This is not an error. A subclass returning FALSE for is_seekable() is one way of + saying that we can't operate in pull mode. + +2014-01-03 11:47:23 +0800 YanpingZhang + + * plugins/elements/gstmultiqueue.c: + multiqueue: Fix hanging if shut down while handling a serialized query + https://bugzilla.gnome.org/show_bug.cgi?id=721253 + +2014-01-02 16:22:37 -0300 Thiago Santos + + * libs/gst/base/gstbaseparse.c: + baseparse: remove pending_segment as it was being misused + It wasn't required, instead baseparse was using it to check the media + caps to identify if it was handling audio or video. + The pending_segment was removed and a checked_media boolean + replaced it for a more accurate naming. + https://bugzilla.gnome.org/show_bug.cgi?id=721350 + +2014-01-02 13:43:54 -0300 Thiago Santos + + * libs/gst/base/gstbaseparse.c: + baseparse: push pending events before GAP event + A GAP event is handled as an empty buffer by sinks and they expect + to receive start up events before GAP events (like a segment). + This is important specially if there is a GAP at the beginning of + a stream (before any buffers) so that the segment event can be + pushed downstream before the GAP + https://bugzilla.gnome.org/show_bug.cgi?id=721350 + +2014-01-02 13:41:25 -0300 Thiago Santos + + * libs/gst/base/gstbaseparse.c: + baseparse: refactor pending events pushing + Refactor code repeated 3 times to a common function + https://bugzilla.gnome.org/show_bug.cgi?id=721350 + +2014-01-02 20:17:58 +0100 Stefan Sauer + + * docs/design/part-toc.txt: + design/part-toc.txt: update design docs + +2014-01-02 13:34:52 +0100 Sebastian Dröge + + * tests/check/gst/gstpad.c: + pad: Add unit test for adding/removing blocking probes while a pad is blocked + And make sure that these new probes are actually called if they should + instead of silently blocking the pad forever. + https://bugzilla.gnome.org/show_bug.cgi?id=721289 + +2014-01-02 13:33:20 +0100 Sebastian Dröge + + * gst/gstpad.c: + pad: Check if new probes need to be called when adding/removing some + This allows blocking a pad, add a new blocking probe, removing + the first probe and then having the second probe called. Which + could then decide that data-flow should actually continue + instead of blocking now. + https://bugzilla.gnome.org/show_bug.cgi?id=721289 + +2014-01-02 11:13:27 +0100 Sebastian Dröge + + * plugins/elements/gsttee.c: + * plugins/elements/gsttee.h: + tee: Remove dyn lock + It was used for pad-alloc in 0.10 but currently is completely unused + and not necessary. All pad access is protected by the tee object lock + and keeping another reference to the current pad. + +2014-01-02 11:09:59 +0100 Sebastian Dröge + + * plugins/elements/gsttee.c: + tee: Keep another ref to our one and only srcpad around while pushing + A pad probe on that pad might otherwise just release the pad, drop + the last reference and cause great misery. + https://bugzilla.gnome.org/show_bug.cgi?id=721300 + +2013-12-30 19:03:22 +0100 Sebastian Dröge + + * gst/gstpad.c: + pad: Keep an extra ref of the pad when calling an IDLE probe immediately + The callback might destroy the pad. + +2013-12-30 18:44:24 +0100 Sebastian Dröge + + * gst/gstpad.c: + pad: Only call IDLE probes if we are actually idle + Also only check the data types for non-IDLE probes. When we + are idle, we have no data type obviously. + Previously we were calling IDLE probes during data flow whenever + a non-blocking probe would be called. The pad was usually not idle + at that time. + +2013-12-30 16:10:08 +0000 Tim-Philipp Müller + + * libs/gst/net/gstnettimeprovider.c: + nettimeprovider: remove unnecessary NULL check + Error is never NULL when we break out of the loop. + COVERITY CID 1037151 + +2013-12-30 16:05:47 +0000 Tim-Philipp Müller + + * libs/gst/net/gstnettimeprovider.c: + Revert "nettimeprovider: Remove dead code" + This reverts commit 9649cd4ca19a75d0319117a77a7609e4b8c96533. + This is not right, and it's also not what coverity + is complaining about. + +2013-12-30 16:47:32 +0100 Edward Hervey + + * plugins/elements/gstqueue.c: + queue: Remove unneeded checks + item is guaranteed to be non-null. + COVERITY CID 1037152 + COVERITY CID 1037153 + +2013-12-30 16:34:08 +0100 Edward Hervey + + * libs/gst/net/gstnettimeprovider.c: + nettimeprovider: Remove dead code + err is always NULL by the point we reach this line + COVERITY CID 1037151 + +2013-12-30 14:47:19 +0100 Stefan Sauer + + * gst/gsttaglist.h: + taglist: fix since marker again (1.3 -> 1.4) + Since markers should point to the appropriate stable version. + +2013-12-30 14:40:40 +0100 Stefan Sauer + + * gst/gsttaglist.h: + taglist: fix since-marker in docs (we're in 1.3.X) + +2013-12-30 14:22:37 +0100 Stefan Sauer + + * gst/gsttaglist.c: + * gst/gsttaglist.h: + taglist: add a tag for midi base note numbers + Audio files containing sampled instruments can have metadata describing the note + that was played on the instrument. + +2013-12-30 10:01:39 +0100 Sebastian Dröge + + * gst/gstpad.c: + pad: Don't ignore probe callback return value when immediately calling IDLE probe + https://bugzilla.gnome.org/show_bug.cgi?id=721096 + +2013-12-29 14:06:55 +0000 Pedro Côrte-Real + + * scripts/git-update.sh: + scripts: git-update.sh: fix for non-master branches + Pull from tracking branch instead of origin/master, so + that this works with e.g. 1.2 as well. + +2013-12-27 12:55:02 +0100 Sebastian Dröge + + * gst/parse/Makefile.am: + * gst/parse/parse.l: + parse: Use GLib malloc/free/realloc functions + https://bugzilla.gnome.org/show_bug.cgi?id=720100 + +2013-12-26 12:16:26 +0000 Tim-Philipp Müller + + * scripts/create-uninstalled-setup.sh: + scripts: create-uninstalled-setup: re-use existing master branch if it exists + When creating separate checkout for non-master branches. + +2013-12-26 11:39:27 +0100 Erik Andresen + + * docs/manual/advanced-dataaccess.xml: + docs: fix memory leak of appsink example in manual + https://bugzilla.gnome.org/show_bug.cgi?id=721076 + +2013-12-22 22:33:12 +0000 Tim-Philipp Müller + + * autogen.sh: + * common: + Automatic update of common submodule + From dbedaa0 to d48bed3 + +2013-12-22 22:04:37 +0000 Tim-Philipp Müller + + * 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: + po: update for string changes + +2013-12-22 21:56:03 +0000 Tim-Philipp Müller + + * po/Makevars: + po: set gettext domain in Makevars so we don't have to patch the generated Makefile.in.in + https://bugzilla.gnome.org/show_bug.cgi?id=705455 + +2013-12-20 14:41:06 +0100 Wim Taymans + + * gst/gstutils.h: + utils: Add round down 128 macro for completeness + +2013-11-13 17:06:23 -0500 Nicolas Dufresne + + * gst/gstutils.h: + utils: Add round up 128 macro + +2013-12-20 14:30:22 +0100 Sebastian Dröge + + * plugins/elements/gstfunnel.c: + funnel: Setting the PROXY_CAPS flag on the srcpad does not make much sense + funnel outputs whatever one of the upstreams currently outputs, a caps + query to a random upstream does not give the right answer here. + +2013-12-20 11:37:53 +0100 Sebastian Dröge + + * plugins/elements/gstfunnel.c: + funnel: Proxy CAPS and ALLOCATION queries + +2013-11-18 10:46:00 -0300 Thiago Santos + + * plugins/elements/gstmultiqueue.c: + multiqueue: post 100% buffering if single queue is not linked + This makes buffering stop in case a stream switch happens. This is + important for adaptive streams that can disable not-linked streams + to avoid consuming the network bandwidth. + https://bugzilla.gnome.org/show_bug.cgi?id=719575 + +2013-12-18 05:19:46 -0500 William Jon McCann + + * docs/manual/appendix-integration.xml: + docs: fix project links + https://bugzilla.gnome.org/show_bug.cgi?id=720665 + +2013-12-10 15:53:54 +0100 David Svensson Fors + + * libs/gst/base/gstbasesrc.c: + basesrc: use segment start if DTS for first buffer is unset + https://bugzilla.gnome.org/show_bug.cgi?id=720199 + +2013-12-12 17:17:40 +0000 Matthieu Bouron + + * scripts/gst-uninstalled: + gst-uninstalled: add gstreamer-vaapi paths + https://bugzilla.gnome.org/show_bug.cgi?id=720337 + +2013-12-14 21:20:45 +0000 Tim-Philipp Müller + + * tests/check/Makefile.am: + * tests/check/libs/.gitignore: + * tests/check/libs/bitreader-noinline.c: + * tests/check/libs/bytereader-noinline.c: + * tests/check/libs/bytewriter-noinline.c: + tests: add unit test for bitreader, bytereader and bytewriter with no inlining used + +2013-12-14 18:38:41 +0000 Tim-Philipp Müller + + * libs/gst/base/gstbytereader.h: + bytereader: add inline variant of gst_byte_reader_init() + +2013-12-14 18:31:38 +0000 Tim-Philipp Müller + + * libs/gst/base/gstqueuearray.c: + docs: fix docs for gst_queue_array_peek_head() + +2013-12-14 19:08:35 +0100 Sebastian Dröge + + * gst/parse/grammar.y: + parse: Don't define yyscan_t twice + https://bugzilla.gnome.org/show_bug.cgi?id=720316 + +2013-12-13 22:51:32 +0000 Tim-Philipp Müller + + * docs/random/moving-plugins: + docs: moving plugins: minor 0.10 -> 1.0 fix + Spotted by Jay Fenlason + +2013-12-11 14:42:34 +0100 Wim Taymans + + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + queue: don't ignore event return value + Pass the event return value upstream. + Remove strange goto construct. + +2013-12-10 18:30:03 -0500 Edward Hervey + + * tools/gst-launch.c: + gst-launch: Handle taglist copy failure + If we couldn't copy the tags, just return instead of trying to use bogus + values. + +2013-12-10 18:25:22 -0500 Edward Hervey + + * tools/gst-inspect.c: + gst-inspect: Index features are no more + So remove code that will never be used + +2013-12-10 17:53:24 -0500 Edward Hervey + + * gst/gstvalue.c: + * tests/check/gst/gstvalue.c: + gstvalue: Fix comparision of double range + Checking twice the lower bound is great (you never know, it might change + between the two calls by someone using emacs butterfly-mode), but it's a bit + more useful to check the higher bound are also identical. + Detected by Coverity + +2013-12-10 17:09:07 -0500 Edward Hervey + + * libs/gst/controller/gstinterpolationcontrolsource.c: + controller: Fix out-of-bounds detection + We want to abort if we higher than the maximum *OR* lower than the minimum + accepted value. + Detected by Coverity. + +2013-12-07 19:04:16 +0000 Tim-Philipp Müller + + * tests/check/gst/gstinfo.c: + tests: add unit test for registering the same category twice + +2013-12-07 19:32:58 +0100 Víctor Manuel Jáquez Leal + + * gst/gstinfo.c: + info: return existing category if a debug category is registered twice + If a category with the same name is found when creating a new + one, the found category is returned instead of an invalid pointer. + Fixes issue with gst-vaapi (which uses an internal copy of the + codec parsers) caused by commit ccba9130. + https://bugzilla.gnome.org/show_bug.cgi?id=720036 + +2013-12-07 15:38:19 +0100 Sebastian Rasmussen + + * docs/design/part-negotiation.txt: + * docs/design/part-overview.txt: + * docs/design/part-progress.txt: + * docs/design/part-synchronisation.txt: + * docs/design/part-trickmodes.txt: + * docs/manual/advanced-buffering.xml: + * docs/manual/advanced-clocks.xml: + * docs/manual/outline.txt: + * docs/pwg/advanced-clock.xml: + * docs/pwg/advanced-negotiation.xml: + * gst/gstatomicqueue.h: + * gst/gstbin.c: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstbufferlist.h: + * gst/gstcaps.c: + * gst/gstcapsfeatures.c: + * gst/gstchildproxy.c: + * gst/gstconfig.h.in: + * gst/gstdatetime.c: + * gst/gstdatetime.h: + * gst/gstelement.c: + * gst/gstelement.h: + * gst/gstelementfactory.c: + * gst/gsterror.c: + * gst/gstevent.c: + * gst/gstinfo.h: + * gst/gstiterator.c: + * gst/gstmessage.c: + * gst/gstmessage.h: + * gst/gstmeta.h: + * gst/gstminiobject.c: + * gst/gstminiobject.h: + * gst/gstobject.c: + * gst/gstobject.h: + * gst/gstpad.c: + * gst/gstpad.h: + * gst/gstparse.c: + * gst/gstparse.h: + * gst/gstplugin.c: + * gst/gstplugin.h: + * gst/gstpoll.c: + * gst/gstpreset.c: + * gst/gstquery.c: + * gst/gstregistry.c: + * gst/gstsegment.c: + * gst/gstsegment.h: + * gst/gststructure.c: + * gst/gsttaglist.c: + * gst/gsttocsetter.c: + * gst/gsttypefind.h: + * gst/gstutils.c: + * gst/gstvalue.c: + * gst/gstvalue.h: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbaseparse.h: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + * libs/gst/base/gstbytereader.c: + * libs/gst/base/gstbytewriter-docs.h: + * libs/gst/base/gstbytewriter.c: + * libs/gst/base/gstcollectpads.h: + * libs/gst/base/gstdataqueue.c: + * libs/gst/base/gstqueuearray.c: + * libs/gst/check/gstcheck.c: + * libs/gst/check/gsttestclock.c: + * libs/gst/net/gstnettimepacket.c: + * plugins/elements/gstfdsrc.c: + * plugins/elements/gstidentity.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gsttypefindelement.c: + * win32/common/gstconfig.h: + docs: Fix typos in function/object descriptions + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=720029 + +2013-12-07 15:40:32 +0100 Sebastian Rasmussen + + * gst/gstobject.c: + * gst/gstpad.c: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasetransform.c: + * tests/check/gst/gstsegment.c: + * tests/check/gst/gststructure.c: + Fix some typos in code comments and debug messages + https://bugzilla.gnome.org/show_bug.cgi?id=720029 + +2013-12-06 20:50:19 +0000 Stewart Brodie + + * gst/gststructure.c: + * gst/gsttaglist.c: + docs: clarify encoding of strings in GstStructures and taglists + https://bugzilla.gnome.org/show_bug.cgi?id=709262 + +2013-07-02 20:27:59 -0400 Olivier Crête + + * libs/gst/base/gstbasesrc.c: + basesrc: Set format to TIME if do-timestamp is TRUE + https://bugzilla.gnome.org/show_bug.cgi?id=702842 + +2013-12-05 00:26:13 +0000 Tim-Philipp Müller + + * tools/gst-launch.c: + tools: gst-launch: don't try to remove already-removed GSource from main loop + It's considered a programming error in recent GLib versions now. + We may already have removed the source by returning FALSE from + the callback if it was fired. Fixes warning with newer GLibs + when interrupting a pipeline with Control-C. + +2013-12-04 17:35:18 -0500 Olivier Crête + + * gst/gstinfo.c: + info: Make sure the same category is not added twice + +2013-12-04 17:35:02 -0500 Olivier Crête + + * gst/gstinfo.c: + info: Protect __categories list in get_category with lock too + +2013-12-04 00:10:36 +0100 Sebastian Rasmussen + + * docs/Makefile.am: + * docs/design/Makefile.am: + docs: add missing files for distribution + * add some documentation files in docs/design + * add docs/list-ulink.xsl so check in docs/manual works + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=719814 + +2013-12-03 21:46:19 +0100 Wim Taymans + + * gst/gstpad.c: + * gst/gstpad.h: + pad: add ACCEPT_INTERCEPT flag + Make a new flag on the pad that tweaks the default behaviour of the + accept-caps function. By default it will check for a subset of the + query-caps result but this is not always desirable. The query-caps + result contains all the constraints to make a good caps decision + upstream but sometimes, like for parsers, not all the constrained caps + fields are known upstream and then a subset check would fail. Switching + to an intersection makes this work again. + See https://bugzilla.gnome.org/show_bug.cgi?id=705024 + https://bugzilla.gnome.org/show_bug.cgi?id=677401 + +2013-12-02 22:22:36 -0500 Olivier Crête + + * plugins/elements/gstmultiqueue.c: + multiqueue: Wake up on reconfigure event + After patch bda406c4, the state of the singlequeue was set to OK, but nothing + would then wake up the thread, as the other wakeup functions only look at + singlequeues that are marked as having received as not-linked. + https://bugzilla.gnome.org/show_bug.cgi?id=708200 + +2013-11-30 12:15:37 +0100 Sebastian Rasmussen + + * docs/gst/gstreamer-sections.txt: + * docs/libs/Makefile.am: + * docs/libs/gstreamer-libs-sections.txt: + * docs/plugins/gstreamer-plugins-sections.txt: + * gst/gstcontext.c: + * gst/gstcontrolsource.c: + * gst/gstcontrolsource.h: + * gst/gstobject.c: + * gst/gstpad.h: + * gst/gstvalue.c: + * plugins/elements/gstoutputselector.c: + * plugins/elements/gstoutputselector.h: + docs: add missing docs, fixing doc errors + * add many missing declarations to sections + * GstController has been removed, update docs + * skip GstIndex when generating documentation + * rephrase so gtkdoc doesn't imagine return value + * add missing argument description for gst_context_new() + * document GstOutputSelectorPadNegotiationMode and move to header-file + https://bugzilla.gnome.org/show_bug.cgi?id=719614 + +2013-11-30 14:52:40 +0100 Sebastian Rasmussen + + * gst/gst.c: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstcaps.c: + * gst/gstcontext.c: + * gst/gstmeta.h: + * gst/gstpad.c: + * gst/gstutils.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstqueuearray.c: + * libs/gst/check/gsttestclock.c: + * libs/gst/controller/gsttimedvaluecontrolsource.c: + docs: cosmetic changes in references/decriptions + * fix typo GstBufferFlag -> GstBufferFlags + * fix typo GstFeatures -> GstCapsFeatures + * fix typo GstAllocatorParams -> GstAllocationParams + * fix typo GstContrlSources -> GstControlSource + * do not refer to gstcheck as an object + * make references gtk_init() and tcase_set_timeout() not be references + * gst_element_get_pad() renamed gst_element_get_static_pad() + * gst_clock_id_wait_async_full() renamed gst_clock_id_wait_async() + * _drop_element() is really gst_queue_array_drop_element() + * gst_pad_accept_caps() was removed, do not refer to it + * separate GST_META_TAG_MEMORY_STR declaration from description + * do not describe removed gst_collect_pads_collect() + * correctly link to GstElementClass' virtual set_context() + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=719614 + +2013-11-29 14:00:35 -0500 Olivier Crête + + * gst/parse/Makefile.am: + parse: Manually insert priv_gst_parse_yyget/set_column prototypes for older flex + Older versions of flex (before 2.5.36) don't add the prototype, so it must + be added manually. We can't check by the version number, because Debian/Ubuntu + patched it into their 2.5.35 at some point. + +2013-11-19 11:41:54 -0300 Thiago Santos + + * gst/gstutils.c: + gstpad: drop assertion on gst_pad_peer_query_position + It is a 'both' query, so it can be sent both ways + +2013-11-18 18:11:56 -0300 Thiago Santos + + * plugins/elements/gstinputselector.c: + inputselector: handle gap events + Use gap events to advance the selector's pad position. + This is relevant to keep sync_streams mode working when one of the + streams doesn't have data all the time. + +2013-11-29 17:02:41 +0100 Wim Taymans + + * gst/gstghostpad.c: + Revert "ghostpad: copy sticky events to SRC ghostpads" + This reverts commit 8162a583a4dd68582bf186e2e47a8f0d68fa1980. + Automatically copying the sticky events makes it impossible for apps + and elements to filter the events with event probes. This causes + regressions (See #719437). The best option is to let the app/element + copy and filter the events themselves after the ghostpad target is + set. + +2013-11-19 15:03:35 +0100 Fabian Kirsch + + * gst/parse/.gitignore: + * gst/parse/Makefile.am: + * gst/parse/grammar.y: + parse: fix segfaulting prototype-mismatch + Now YYDEBUG is always set, so check it's value + https://bugzilla.gnome.org/show_bug.cgi?id=712679 + +2013-11-27 18:32:22 +1100 Jan Schmidt + + * libs/gst/net/gstnetclientclock.c: + netclock: Fix docstring for round-trip-limit and uninit access warning. + Fix a typo in a doc string - the property is round-trip-limit, not + roundtrip-limit. + Remove a bogus GST_WARNING that can print an uninitialised variable + and is redundant anyway. + +2013-11-26 11:56:46 +0100 Carlos Rafael Giani + + * libs/gst/net/gstnetclientclock.c: + netclock: Add round-trip-limit parameter + Sometimes, packets might take a very long time to return. Such packets + usually are way too late and destabilize the regression with their + obsolete data. On Wi-Fi, round-trips of over 7 seconds have been observed. + If the limit is set to a nonzero value, packets with a round-trip period + larger than the limit are ignored. + Signed-off-by: Carlos Rafael Giani + https://bugzilla.gnome.org/show_bug.cgi?id=712385 + +2013-11-25 19:04:38 -0500 Olivier Crête + + * gst/gstquery.c: + query: Fix gi annotations of gst_structure_new_custom() + +2013-11-26 02:43:54 +1100 Jan Schmidt + + * libs/gst/net/gstnetclientclock.c: + netclock: Fix C99 comment + +2013-11-26 02:17:36 +1100 Jan Schmidt + + * libs/gst/net/gstnetclientclock.c: + netclock: Implement rolling-average filter on observations. + Keep a rolling average of the round trip time for network clock + observations, favouring shorter round trips as being more accurate. + Don't pass any clock observation to the clock slaving if it has a + round-trip time greater than 2 times the average. + Actual shifts in the network topology will be noticed after some + time, as the rolling average incorporates the new round trip times. + +2013-11-25 20:33:42 +1100 Jan Schmidt + + * libs/gst/base/gstbasesink.c: + basesink: Add debug into gst_base_sink_default_query() for accept_caps + +2013-11-14 15:32:59 +0100 Philippe Normand + + * tools/gst-launch.c: + gst-launch: exit with an error code when an error occured + If the pipeline failed to pre-roll or the user interrupted the + execution then set the exit code to a positive value. + https://bugzilla.gnome.org/show_bug.cgi?id=712300 + +2013-11-22 01:35:18 +0100 Sebastian Rasmussen + + * gst/gstutils.c: + gstutils: Escape stream id format in comments + These must be escaped for gtk-doc to parse the comments without warnings. + https://bugzilla.gnome.org/show_bug.cgi?id=714989 + +2013-11-21 15:04:04 +0000 Tim-Philipp Müller + + * gst/gstbuffer.c: + * gst/gstinfo.c: + * gst/gsturi.c: + gst: g_memmove() is deprecated + Just use plain memmove(), g_memmove() is deprecated in + recent GLib versions. + https://bugzilla.gnome.org/show_bug.cgi?id=712811 + +2013-11-21 14:13:16 +0100 Wim Taymans + + * gst/gstghostpad.c: + ghostpad: copy sticky events to SRC ghostpads + Update the sticky events on SRC ghostpads when retargeting. This ensures + that the ghostpad has the exect same sticky events as the target pad. We + don't want to do this for SINK ghostpads, they got the events from + downstream and we don't want to overwrite them with the target pad + events. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=707621 + +2013-11-21 12:28:00 +0100 Wim Taymans + + * gst/gstpad.h: + pad: move debug function closer to the enum it debugs + +2013-11-18 21:39:54 +0100 Wim Taymans + + * gst/gstpluginloader.c: + pluginloader: check read/write before closed + first try to read or write on the socket before checking the closed state. This + makes sure we handle all data on the socket before erroring out. + +2013-11-18 21:37:06 +0100 Wim Taymans + + * gst/gstpoll.c: + poll: improve debug + So that we can see the return values of functions in the log. + +2013-11-18 15:28:32 +0000 Tim-Philipp Müller + + * tests/check/gst/gstbus.c: + tests: fix GstBus unit test with latest GLib + g_source_remove() works on the default main context, and + we're doing things with a custom context. Fixes warning + with newer GLib versions. + +2013-11-16 12:24:56 +0000 Tim-Philipp Müller + + * gst/gstbin.h: + * gst/gstbuffer.c: + * gst/gstinfo.c: + * gst/gstplugin.h: + * gst/gstpluginfeature.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstdataqueue.c: + * libs/gst/base/gstqueuearray.c: + docs: cosmetic since marker fixes + +2013-11-16 15:17:57 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: ensure to preserve upstream timestamps + ... rather than have subclass coming up with an internally parsed one. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=707230 + +2013-11-15 07:32:48 +0100 Sebastian Dröge + + * gst/gstbin.c: + bin: Resync iterator if necessary + +2013-11-13 19:55:41 +0100 Sebastian Dröge + + * gst/gstvalue.c: + * tests/check/gst/gstcaps.c: + value: Lists with all equal elements are equal to a single value + Otherwise caps containing f={X, X} are not compatible with f=X + https://bugzilla.gnome.org/show_bug.cgi?id=709253 + +2013-11-11 16:47:06 +0000 Tim-Philipp Müller + + * gst/gstsystemclock.c: + systemclock: add Since markers for new API + +2013-11-11 17:29:48 +0100 Edward Hervey + + * win32/common/libgstreamer.def: + win32: Really update the def files + +2013-11-11 17:02:35 +0100 Sebastian Dröge + + * win32/common/libgstbase.def: + * win32/common/libgstreamer.def: + win32: Update def files + +2013-11-11 16:50:13 +0100 Sebastian Dröge + + * scripts/gst-uninstalled: + gst-uninstalled: Also export LD_LIBRARY_PATH for gst-plugins-gl + +2013-11-05 12:22:51 +0000 Matthieu Bouron + + * scripts/gst-uninstalled: + gst-uninstalled: export gst-plugins-gl DYLD_LIBRARY_PATH + https://bugzilla.gnome.org/show_bug.cgi?id=711488 + +2013-11-06 18:46:19 +0100 Sebastian Dröge + + * libs/gst/base/gstcollectpads.c: + collectpads: Always send SEEK events to all pads, even if one fails + +2013-11-06 18:41:10 +0100 Sebastian Dröge + + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstcollectpads.h: + collectpads: Update documentation for flushing seek handling + +2013-11-06 18:05:22 +0100 Sebastian Dröge + + * libs/gst/base/gstcollectpads.c: + collectpads: Don't leak seek events + +2013-09-16 09:55:58 +0200 Alessandro Decina + + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstcollectpads.h: + collectpads: implement flushing seek support + Implement common flushing seek logic in GstCollectPads. Add new + API so that elements can opt-in to using the new logic + (gst_collect_pads_src_event_default) and can extend it + (gst_collect_pads_set_flush_function) to flush any internal + state. + See https://bugzilla.gnome.org/show_bug.cgi?id=706779 and + https://bugzilla.gnome.org/show_bug.cgi?id=706441 for the + background discussion. + API: gst_collect_pads_set_flush_function() + API: gst_collect_pads_src_event_default() + https://bugzilla.gnome.org/show_bug.cgi?id=708416 + +2013-09-16 08:35:37 +0200 Alessandro Decina + + * tests/check/libs/collectpads.c: + tests: collectpads: add flushing seek tests + https://bugzilla.gnome.org/show_bug.cgi?id=708416 + +2013-09-16 08:31:47 +0200 Alessandro Decina + + * tests/check/libs/collectpads.c: + tests: collectpads: tweak stub _collect to push all buffers + https://bugzilla.gnome.org/show_bug.cgi?id=708416 + +2013-09-16 08:26:25 +0200 Alessandro Decina + + * tests/check/libs/collectpads.c: + tests: collectpads: update my email address + https://bugzilla.gnome.org/show_bug.cgi?id=708416 + +2013-11-11 13:27:27 +0100 Edward Hervey + + * plugins/elements/gstqueue.c: + queue: Don't use gst_buffer_get_size() when possible + Makes qst_queue_locked_dequeue 20% faster + +2013-11-11 12:25:14 +0100 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstsystemclock.c: + * gst/gstsystemclock.h: + * tests/check/gst/gstsystemclock.c: + * win32/common/libgstreamer.def: + systemclock: Add gst_system_clock_set_default + Used for setting the default system clock that is obtained through + gst_system_clock_obtain(), which is sometimes needed for unit + testing. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=711269 + +2013-11-04 18:57:18 +0100 Stefan Sauer + + * tools/gst-typefind.c: + typefind: use g_get_prgname() for error message + +2013-11-06 10:15:59 +0100 Wim Taymans + + * plugins/elements/gstvalve.c: + valve: proxy caps and allocation + Proxy the caps queries on the srcpad as well. + Proxy the allocation query on the sinkpad. + +2013-11-05 11:17:25 +0000 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 865aa20 to dbedaa0 + +2013-11-04 13:56:37 -0800 Reynaldo H. Verdejo Pinochet + + * tools/gst-inspect.c: + gst-inspect: Remove some dead code + +2013-11-04 11:48:47 +0100 Alessandro Decina + + * gst/gstmemory.c: + memory: explicitly cast to GstLockFlags to avoid compiler warnings + +2013-11-02 15:36:19 +0100 Mark Nauwelaerts + + * gst/gstsegment.c: + segment: resurrect sanitizing start and stop for seeking + +2013-11-02 15:42:07 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbasesrc.c: + basesrc: mind boggling wrap when comparing offsets + +2013-11-02 15:38:13 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: try first frame pts and dts for a valid start timestamp + +2013-11-02 15:37:30 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: print proper variable in debug statement + +2013-11-01 16:35:59 +0000 Olivier Crête + + * gst/gstparse.c: + * tests/check/pipelines/parse-launch.c: + parse: Make the FATAL_ERRORS flag also work without a GError + Also add a unit tests + +2013-10-23 15:56:20 +0100 Matthieu Bouron + + * tools/gst-launch.c: + gst-launch: fix potential uninitialized variable warning + https://bugzilla.gnome.org/show_bug.cgi?id=710758 + +2013-10-31 16:16:48 -0700 Reynaldo H. Verdejo Pinochet + + * docs/design/part-MT-refcounting.txt: + * docs/design/part-element-transform.txt: + * docs/design/part-events.txt: + * docs/design/part-framestep.txt: + * docs/design/part-messages.txt: + * docs/design/part-probes.txt: + * docs/design/part-relations.txt: + docs: fix common typos emited/eachother/... + +2013-10-30 21:53:36 +0100 Sebastian Dröge + + * gst/gstutils.c: + * gst/gstutils.h: + utils: Add some attributes and reorganize code to fix compiler warnings + gstutils.c:3659:41: error: format string is not a string literal + [-Werror,-Wformat-nonliteral] + gchar *expanded = g_strdup_vprintf (stream_id, var_args); + https://bugzilla.gnome.org/show_bug.cgi?id=710621 + +2013-10-25 14:56:16 +0200 Antonio Ospite + + * docs/pwg/advanced-negotiation.xml: + pwg: rename the "samplerate" variable to make example code compilable + In one of the examples about gst_my_filter_setcaps() there is a variable + declared as "rate", but then the name "samplerate" is used when setting + the caps. + Use the name "rate" everywhere in gst_my_filter_setcaps(). + https://bugzilla.gnome.org/show_bug.cgi?id=710876 + +2013-10-29 18:09:32 +0100 Fabian Kirsch + + * docs/manual/basics-elements.xml: + doc: fix forward reference about ghost pads + https://bugzilla.gnome.org/show_bug.cgi?id=711089 + +2013-10-28 12:55:19 +0000 Tim-Philipp Müller + + * docs/design/part-buffer.txt: + * docs/design/part-caps.txt: + * docs/design/part-context.txt: + * docs/design/part-messages.txt: + docs: design: fix some fixes + +2013-10-26 09:48:06 +0100 Tim-Philipp Müller + + * docs/faq/developing.xml: + docs: flesh out gst-uninstalled entry in faq some more + https://bugzilla.gnome.org/show_bug.cgi?id=709916 + +2013-10-16 15:00:41 +0200 Fabian Kirsch + + * docs/faq/developing.xml: + docs: FAQ update to mention create-uninstalled-setup.sh + https://bugzilla.gnome.org/show_bug.cgi?id=709916 + +2013-10-25 21:29:01 +0200 Stefan Sauer + + * gst/gstregistrychunks.c: + registry: small cleanups and use object log variants more + +2013-10-25 21:28:30 +0200 Stefan Sauer + + * gst/gst_private.h: + private: remove left-over comment + The caps are saved in the registry. + +2013-10-25 18:51:53 +0200 Stefan Sauer + + * gst/gstregistrychunks.c: + registry: use g_slice_free for slice memory + Avoid memory list corruption, but g_free'ing slice memory. + +2013-10-23 18:16:54 +0200 Stefan Sauer + + * docs/design/draft-tracing.txt: + design: flesh out the tracing design a little more + +2013-10-25 11:02:19 -0400 Luis de Bethencourt + + * gst/gstobject.c: + docs: fix typos in gstobject + +2013-10-21 18:01:21 -0700 Reynaldo H. Verdejo Pinochet + + * docs/design/part-meta.txt: + docs: Gram and nit fixes for part-meta.txt + +2013-10-14 22:03:50 -0700 Reynaldo H. Verdejo Pinochet + + * docs/design/part-element-source.txt: + docs: Gram and nit fixes for part-element-source.txt + +2013-10-14 21:54:31 -0700 Reynaldo H. Verdejo Pinochet + + * docs/design/part-element-sink.txt: + docs: Gram and nit fixes for part-sink.txt + +2013-10-14 18:43:40 -0700 Reynaldo H. Verdejo Pinochet + + * docs/design/part-conventions.txt: + docs: Gram and nit fixes for part-conventions.txt + +2013-10-14 18:34:06 -0700 Reynaldo H. Verdejo Pinochet + + * docs/design/part-controller.txt: + docs: Gram and nit fixes for part-controller.txt + +2013-10-14 18:24:18 -0700 Reynaldo H. Verdejo Pinochet + + * docs/design/part-context.txt: + docs: Gram and nit fixes for part-context.txt + +2013-10-14 18:13:35 -0700 Reynaldo H. Verdejo Pinochet + + * docs/design/part-clocks.txt: + docs: Gram and nit fixes for part-clocks.txt + +2013-10-14 18:05:43 -0700 Reynaldo H. Verdejo Pinochet + + * docs/design/part-caps.txt: + docs: Gram and nit fixes for part-caps.txt + +2013-10-14 17:44:27 -0700 Reynaldo H. Verdejo Pinochet + + * docs/design/part-buffer.txt: + docs: Gram and nit fixes for part-buffer.txt + +2013-10-14 17:29:19 -0700 Reynaldo H. Verdejo Pinochet + + * docs/design/part-bufferpool.txt: + docs: Gram and nit fixes for part-bufferpool.txt + +2013-10-14 05:39:19 -0700 Reynaldo H. Verdejo Pinochet + + * docs/design/part-buffering.txt: + docs: Gram and nit fixes for part-buffering.txt + +2013-10-13 21:16:47 -0700 Reynaldo H. Verdejo Pinochet + + * docs/design/part-messages.txt: + docs: Gram and nit fixes for part-messages.txt + +2013-10-13 20:42:40 -0700 Reynaldo H. Verdejo Pinochet + + * docs/design/part-memory.txt: + docs: Gram and nit fixes for part-memory.txt + +2013-10-18 08:58:05 +0100 Philip Withnall + + * libs/gst/net/gstnetclientclock.c: + * libs/gst/net/gstnetclientclock.h: + net: Constify a parameter to gst_net_client_clock_new() + Even though this parameter is not used, it should be const to fit in with the + coding standards for other similar parameters. Client code already passes in + const strings under the expectation that they won’t be modified. + https://bugzilla.gnome.org/show_bug.cgi?id=710442 + +2013-10-15 11:44:05 +0200 Sebastian Dröge + + * gst/gstdatetime.c: + datetime: Make sure to include gst_private.h before glib-compat-private.h + We need to define the GLib log domain before including glib.h, which is + included by glib-compat-private.h. + +2013-10-14 18:07:17 -0300 Thibault Saunier + + * docs/gst/gstreamer-sections.txt: + docs: Add gst_pad_store_sticky_event to sections.txt + So it appears in the generated documentation + +2013-09-29 17:35:11 +0200 Sebastian Rasmussen + + * plugins/elements/gstfilesrc.c: + * tests/check/elements/filesrc.c: + tests/filesrc: Set location in wrong state + Also remove incorrect comment about code possibly not being reachable + that is now exercised by the filesrc unit test. + https://bugzilla.gnome.org/show_bug.cgi?id=709831 + +2013-10-12 16:16:09 +1100 Jan Schmidt + + * gst/gstparse.c: + * tests/check/pipelines/parse-launch.c: + parse: Fix transfer annotations for parse_launch functions. + gst_parse_launchv, gst_parse_launchv_full and gst_parse_launch_full + all return floating refs, the same as gst_parse_launch, which just + calls gst_parse_launch_full internally anyway. + Add a unit test assertion to check it's true. + Spotted by nemequ on IRC. + +2013-10-10 08:30:27 -0700 Reynaldo H. Verdejo Pinochet + + * docs/manual/appendix-checklist.xml: + * gst/gst.c: + * tests/misc/test-gstreamer-completion.sh: + core: Fix max DEBUG_LEVEL incongruence on 5 vs 9 + In the docs and the autocompletion logic the maximum + value jumped incongruently between 5 and 9. + +2013-10-10 13:19:09 +0200 Sebastian Dröge + + * tests/check/gst/gstcaps.c: + caps: Skip test_subset_duplication until the bug is fixed + https://bugzilla.gnome.org/show_bug.cgi?id=709253 + +2013-10-10 12:56:54 +0200 Fabian Kirsch + + * docs/manual/basics-elements.xml: + * docs/manual/basics-pads.xml: + * docs/manual/intro-motivation.xml: + * docs/manual/manual.xml: + docs: Fix some reference URIs + https://bugzilla.gnome.org/show_bug.cgi?id=709804 + +2013-10-02 13:03:54 +0200 Sebastian Dröge + + * tests/check/gst/gstcaps.c: + caps: Add a testcase for subset checks on lists with duplicated items + https://bugzilla.gnome.org/show_bug.cgi?id=709253 + +2013-10-09 15:36:48 -0300 Thibault Saunier + + * libs/gst/base/gstcollectpads.c: + collectpads: Call the collected function while it returns FLOW_OK + This allows us to make sure the elements is EOS and does not have + remaining buffers to be drained. + https://bugzilla.gnome.org/show_bug.cgi?id=709637 + +2013-10-05 10:08:30 +0100 Tim-Philipp Müller + + * docs/design/part-qos.txt: + docs: fix function name in qos design docs + +2013-10-02 12:30:54 +0100 Tim-Philipp Müller + + * tests/check/elements/multiqueue.c: + tests: use tcase_skip_broken_test() to skip broken multiqueue test + So that we get a warning in the output that reminds us that + something needs to be fixed. + +2013-10-02 11:24:02 +0200 Edward Hervey + + * tests/check/elements/multiqueue.c: + check: Disable multiqueue test_output_order check + The check itself is racy. + (CK_FORK=no GST_CHECK=test_output_order make elements/multiqueue.forever). + The problem is indeed the test and not the actual element behaviour. + The objects to push are being pulled out of the single internal queues in the + right order and at the right time... + But between: + * the moment the global multiqueue lock is released (which was used to detect + if we should pop and push downstream the next buffer) + * and the moment it is received by the source pad (which does the check) + => another single queue (like the unlinked pad) might pop and push a buffer + downstream + What should we do ? Putting a bigger margin of error (say 5 buffers) doesn't + help, it'll eventually fail. + I can't see how we can detect this reliably. + https://bugzilla.gnome.org/show_bug.cgi?id=708661 + +2013-09-25 19:06:55 -0300 Thiago Santos + + * gst/gstcaps.c: + * gst/gststructure.c: + * gst/gstvalue.c: + * tests/check/gst/gstvalue.c: + value: fix caps serialization when there are caps inside caps + Wrap caps strings so that it can handle serialization and deserialization + of caps inside caps. Otherwise the values from the internal caps are parsed + as if they were from the upper one + https://bugzilla.gnome.org/show_bug.cgi?id=708772 + +2013-09-28 08:40:42 +0200 Edward Hervey + + * gst/gstpluginloader.c: + pluginloader: Check errors on the proper fd + Most likely a copy-paste error from the block before. + If we're going to check for error/closed on the write fd... do it + on the write fd + +2013-09-26 14:09:02 -0600 Brendan Long + + * libs/gst/base/gstbasesrc.c: + docs: fix spelling of "generic" in GstBaseSrc's documentation. + https://bugzilla.gnome.org/show_bug.cgi?id=708870 + +2013-09-26 11:32:50 +0200 Wim Taymans + + * gst/gstpad.c: + pad: only check event order when something changed + Check the event order in dataflow only when something changed instead + of for each buffer. + +2013-09-24 18:28:05 +0100 Tim-Philipp Müller + + * README: + * common: + Automatic update of common submodule + From 6b03ba7 to 865aa20 + +2013-09-24 15:05:16 +0200 Sebastian Dröge + + * configure.ac: + configure: Actually use 1.3.0.1 as version to make configure happy + +2013-09-24 15:00:17 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.2.0 === + +2013-09-24 14:07:02 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstversion.h: + Release 1.2.0 + +2013-09-24 14:06:28 +0200 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 + +2013-09-24 13:10:36 +0200 Sebastian Dröge + + * tests/check/gst/gstcontext.c: + context: Add test for the context caching in GstBin + https://bugzilla.gnome.org/show_bug.cgi?id=708668 + +2013-09-24 12:47:52 +0200 Sebastian Dröge + + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesink.h: + Revert "Potential GstContext regression" + This reverts commit e658379534eb4a90b654d90f1d0bdf86f37c6e31. + This test commit should've never been pushed. Oops. + +2013-09-24 12:46:52 +0200 Sebastian Dröge + + * gst/gstbin.c: + bin: Make sure to cache context types that we did not store yet + https://bugzilla.gnome.org/show_bug.cgi?id=708668 + +2013-09-24 10:29:06 +0100 Alex Ashley + + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesink.h: + Potential GstContext regression + Since the refactoring of GstContext (commits + qc9fa2771b508e9aaeecc700e66e958190476f, + a7f5dc8b8af837f01782d1572379948ff62daab7, + 690326f906dc82e41ea58b81cdb2e3e88b754, + d367dc1b0d4ecb37f4d27267e03d7bf0c6c06a6, and + 82d158aed3f2e8545e1e7d35085085ff58f18) I am no longer able to get + a shared context for an element that is used twice in a pipeline. + I used the documentation and eglglessink as my reference for + implementing the GstContext logic. + As the code was tied to a hardware decoder, I have ported the + GstContext code to fakesink to show the problem. Using the old + API a single ExampleMgr instance is created, but using the new + API each element is creating its own instance. + +2013-09-24 10:42:06 +0200 Sebastian Dröge + + * libs/gst/base/gstcollectpads.c: + collectpads: Make sure that the object lock is always taken when accessing the private pad list + https://bugzilla.gnome.org/show_bug.cgi?id=708636 + +2013-09-17 23:23:34 +0200 Mathieu Duponchelle + + * libs/gst/base/gstcollectpads.c: + collectpads: Use private pad list in set_flushing_unlocked + pads->data is the public list. It is dynamically rebuilt at each call to + check_collected, in check_pads to be specific. When you add a pad and + collectpads have been started, it is not added to the public list. + Thus there exists a possible race where : + 1) You would add a pad to collectpads while running. + 2) You set collectpads to flushing before check_collected has been called again + -> the pad is not set to flushing + 3) the pad starts pushing data as downstream might not be prepared, in the case + of adder it then returns FLOW_FLUSHING. + 4) elements like demuxers, when they get a FLOW_FLUSHING, stop their tasks, + never to be seen again. + https://bugzilla.gnome.org/show_bug.cgi?id=708636 + +2013-09-23 11:47:14 +0200 Wim Taymans + + * libs/gst/check/gsttestclock.c: + * tests/check/libs/gsttestclock.c: + tests: handle unscheduled entries correctly + Make the testclock return GST_CLOCK_UNSCHEDULED when an unscheduled entry is + used for gst_clock_wait() or gst_clock_wait_async(). + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=708605 + +2013-09-22 11:09:36 +0200 Edward Hervey + + * scripts/gst-uninstalled: + gst-uninstalled: Allow specifying the checkout directory by env variable + For some rare cases, one might not be able to use the hardcoded $HOME/gst + location yet would still want to use the gst-uninstalled script as-is (which + has the benefit of being constantly updated). + For these cases, the checkout directory can be specified with the + GST_UNINSTALLED_ROOT environment variable. + Ex: + export GST_UNINSTALLED_ROOT=$HOME/somewhere/with/checkouts + And then just call gst-uninstalled directly: + $GST_UNINSTALLED_ROOT/gstreamer/gst-uninstalled + +2013-09-20 16:16:26 +0200 Edward Hervey + + * common: + Automatic update of common submodule + From b613661 to 6b03ba7 + +2013-09-19 18:42:31 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 74a6857 to b613661 + +2013-09-19 17:34:27 +0100 Tim-Philipp Müller + + * autogen.sh: + * common: + Automatic update of common submodule + From 12af105 to 74a6857 + +2013-09-19 17:12:14 +0100 Tim-Philipp Müller + + * libs/gst/check/gsttestclock.c: + check: testclock: fix function guards + Should be g_return_*() not g_assert(), even if it's for tests only. + +2013-09-19 16:43:18 +0100 Tim-Philipp Müller + + * libs/gst/check/gsttestclock.c: + check: testclock: don't put code with side-effects in g_assert() + Fixes unit test failures when -DG_DISABLE_ASSERT is used. + https://bugzilla.gnome.org/show_bug.cgi?id=706551 + +2013-09-19 12:07:56 +0200 Edward Hervey + + * gst/gstcontext.c: + gstcontext: Fix return values some more + Return value is a boolean not a pointer + +2013-09-19 11:49:26 +0200 Sebastian Dröge + + * gst/gstcontext.c: + context: Fix return values for gst_context_has_context_type() in assertions + +2013-09-19 11:34:51 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.1.90 === + +2013-09-19 10:48:24 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstversion.h: + Release 1.1.90 + +2013-09-19 10:05:51 +0200 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 + +2013-09-19 09:49:40 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstcontext.c: + * gst/gstcontext.h: + * win32/common/libgstreamer.def: + context: Add convenience function gst_context_has_context_type() + +2013-09-19 09:42:15 +0200 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: + po: Update translations + +2013-09-18 23:07:31 +0200 Sebastian Dröge + + * gst/gstmessage.c: + message: Implement getting the name of the context message types + +2013-09-17 21:36:22 +0200 Sebastian Dröge + + * gst/gstcontext.c: + * gst/gstmessage.c: + * gst/gstquery.c: + * tests/check/gst/gstcontext.c: + context: Fix unit test for GstContext changes + +2013-09-17 14:34:47 +0200 Sebastian Dröge + + * tools/gst-launch.c: + gst-launch: Update for GstContext changes + +2013-09-17 14:29:06 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * win32/common/libgstreamer.def: + context: Update docs + +2013-09-17 14:25:10 +0200 Sebastian Dröge + + * gst/gstbin.c: + bin: Implement context caching and propagation again + +2013-09-17 13:50:08 +0200 Sebastian Dröge + + * gst/gstmessage.c: + * gst/gstmessage.h: + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gstquery.c: + * gst/gstquery.h: + message/query: Simplify CONTEXT messages/queries to only contain a single type + +2013-09-17 13:33:33 +0200 Sebastian Dröge + + * docs/design/part-context.txt: + * gst/gstcontext.c: + context: Update documentation + +2013-09-17 13:28:42 +0200 Sebastian Dröge + + * gst/gstcontext.c: + * gst/gstcontext.h: + * gst/gstinfo.c: + context: Change GstContext to contain only a single context + It was unintuitive that GstContext was actually a list of different + contexts. GstContext now is only a type string and a structure to + contain the actual context. + +2013-09-17 13:12:28 +0200 Sebastian Dröge + + * gst/gstbin.c: + * gst/gstelement.c: + * gst/gstelement.h: + element: Remove GstContext caching + +2013-09-17 13:10:53 +0200 Sebastian Dröge + + * gst/gstcontext.c: + * gst/gstcontext.h: + context: Add persistent qualifier for a context + Non-persistent contexts are removed when elements go back + to NULL state, persistent contexts are not. Applications + most likely want to set persistent contexts. + +2013-09-17 13:10:16 +0200 Sebastian Dröge + + * gst/gstquery.h: + query: Make CONTEXT query upstream and downstream + +2013-09-17 13:09:34 +0200 Sebastian Dröge + + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstquark.c: + * gst/gstquark.h: + event: Remove CONTEXT downstream event + This is going to be implemented with an upstream query instead + for consistency and simplicity. + +2013-09-13 14:41:45 +0200 Jonas Holmberg + + * gst/gst.c: + gst: Stop all unused threads in GThreadPool in gst_deinit() + Since the default number of max unused threads in GThreadPool has been + changed from 0 to 2 it needs to be set to 0 to stop all threads or + valgrind will report them as memory leaks. + +2013-09-10 16:39:30 +0100 Rico Tzschichholz + + * libs/gst/controller/gstargbcontrolbinding.c: + * libs/gst/controller/gstdirectcontrolbinding.c: + controlbindings: fix pspec relaxation for control source properties + The change should have been from PARAM_CONSTRUCT_ONLY to + PARAM_CONSTRUCT, otherwise bindings are affected, since + they look for the CONSTRUCT flag. + See ec55363d + +2013-09-10 10:15:03 +0200 Sebastian Dröge + + * plugins/elements/gstqueue2.c: + queue2: Only update current level if we already downloaded a range + Otherwise queue->level is NULL and dereferencing that is not a good + idea in general. + https://bugzilla.gnome.org/show_bug.cgi?id=707648 + +2013-09-09 15:40:25 +0200 Sebastian Dröge + + * gst/gstmeta.h: + meta: Deprecate GST_META_TAG_MEMORY + The GQuarks are not exported by any public API + +2013-08-22 00:02:28 +0200 Mathieu Duponchelle + + * docs/gst/gstreamer-sections.txt: + * gst/gstmeta.h: + * win32/common/libgstreamer.def: + meta: Add a #define for memory metadata + +2013-08-22 00:01:44 +0200 Mathieu Duponchelle + + * gst/gstmeta.c: + * libs/gst/base/gstbasetransform.c: + basetransform: implement a default transform_meta. If a metadata has no dependency as shown by the tags, copy it. + +2013-08-22 21:32:36 +0200 Mathieu Duponchelle + + * gst/gstmeta.c: + * gst/gstmeta.h: + meta: API: Add gst_meta_api_type_get_tags() to get all meta tags. + +2013-09-09 14:21:56 +0200 Sebastian Dröge + + * tests/check/elements/capsfilter.c: + tests/capsfilter: Fix memory leak and compare caps directly instead of strcmp() + +2013-09-06 23:03:54 +0200 Sebastian Rasmussen + + * tests/check/elements/capsfilter.c: + tests/capsfilter: Test caps-related queries and property + +2013-09-06 15:09:46 -0300 Gustavo Noronha Silva + + * plugins/elements/gstqueue2.c: + Update the buffering state before stalling for more data + In some cases the wait for more data was happening without updating + the buffering state, meaning the API user would not be able to notice + it should pause the pipeline and update UI to indicate that is the + case, the video would likely stutter instead. + https://bugzilla.gnome.org/show_bug.cgi?id=707648 + +2013-09-04 15:28:10 -0300 Thiago Santos + + * libs/gst/base/gstbasesrc.c: + basesrc: preserve seqnum on segments after seeks + The seqnum of the segment after a seek should be the same of + the seek event. Downstream elements might rely on seqnums to + identify events related to a seek. + This is particularly important when a demuxer maps a TIME seek + into a BYTES seek for upstream and it needs to identify the + corresponding segment event and map it back into TIME to push + downstream, possibly using the values from the original seek + event. + https://bugzilla.gnome.org/show_bug.cgi?id=707530 + +2013-09-05 14:14:42 +0200 Zaheer Abbas Merali + + * libs/gst/base/gstcollectpads.c: + collectpads: Don't unref NULL GstCollectData + If a pad is removed while a collectpads element (say adder) is in a chain + function waiting to be collected, there is a possibility that an unref happens + on a NULL pointer. + https://bugzilla.gnome.org/show_bug.cgi?id=707536 + +2013-09-04 17:11:20 +0200 Christian Fredrik Kalager Schaller + + * gstreamer.spec.in: + Remove PyXML from spec file, it is not longer needed + +2013-09-04 14:40:57 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Add missing break after handling the GAP event + Thanks to Edward Hervey for noticing. + +2013-09-04 09:18:55 +0100 Tim-Philipp Müller + + * scripts/gst-plot-timeline.py: + * tools/Makefile.am: + tools: move gst-plot-timeline.py into scripts directory + So it's not in PATH in an uninstalled setup (thwarting + gst-play autocompletion). + +2013-09-03 23:59:05 +0200 Matej Knopp + + * plugins/elements/gstmultiqueue.c: + multiqueue: Don't reduce single queue visible size below its current level + If the multiqueue has automatically grown chances are good that + we will cause the pipeline to starve if the maximum level is reduced + below that automatically grown size. + https://bugzilla.gnome.org/show_bug.cgi?id=707156 + +2013-09-02 13:53:51 +0200 Sebastian Dröge + + * plugins/elements/gstoutputselector.c: + outputselector: Don't adjust segment->start to the current time when switching pads + This does not make any sense at all and breaks timestamp->running_time + calculations in unpredictable ways. + https://bugzilla.gnome.org/show_bug.cgi?id=707130 + +2013-08-29 23:18:31 +0200 Mathieu Duponchelle + + * plugins/elements/gstcapsfilter.c: + capsfilter: Delete link directly in pending_events. + When removing a segment event. + https://bugzilla.gnome.org/show_bug.cgi?id=707088 + +2013-08-29 11:07:38 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbasesink.c: + basesink: demote log message, don't spam INFO level when handling buffer lists + +2013-08-28 13:26:28 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.1.4 === + +2013-08-28 12:36:16 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstversion.h: + Release 1.1.4 + +2013-08-28 12:36:01 +0200 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 + +2013-08-28 12:30:00 +0200 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: + po: update translations + +2013-08-27 09:31:22 +0200 Alessandro Decina + + * plugins/elements/gstfilesink.c: + filesink: please gcc (avoid a warn_unused_result warning) + +2013-08-27 07:51:35 +0200 Alessandro Decina + + * plugins/elements/gstfilesink.c: + * tests/check/elements/filesink.c: + filesink: flush (discard data) on FLUSH_STOP + Reset the write position to 0 and truncate the file on FLUSH_STOP. + +2013-08-27 07:05:11 +0200 Alessandro Decina + + * tests/check/elements/filesink.c: + tests: filesink: small refactoring + +2013-08-26 13:19:10 +0100 Tim-Philipp Müller + + * tools/gst-launch.c: + tools: gst-launch: don't print properties being reset when shutting down + It's just noise. + +2013-08-22 19:01:32 +0200 Edward Hervey + + * libs/gst/base/gstbasetransform.c: + basetransform: Don't push out identical caps + This avoids triggering plenty of extra code/methods/overhead downstream when + we can just quickly check whenever we want to set caps whether they are + identical or not + https://bugzilla.gnome.org/show_bug.cgi?id=706600 + +2013-08-21 12:21:43 +0100 Tim-Philipp Müller + + * gst/gstsample.c: + docs: flesh out gst_sample_get_buffer() a little + https://bugzilla.gnome.org/show_bug.cgi?id=706478 + +2013-08-20 23:59:29 -0700 Kerrick Staley + + * gst/parse/grammar.y: + parse: make grammar.y work with Bison 3 + YYLEX_PARAM is no longer supported in Bison 3. + https://bugzilla.gnome.org/show_bug.cgi?id=706462 + +2013-08-20 17:15:41 +0900 Wonchul Lee + + * gst/gstsample.h: + sample: Add gst_sample_copy() + https://bugzilla.gnome.org/show_bug.cgi?id=706454 + +2013-08-19 14:55:22 -0400 Olivier Crête + + * gst/gstbuffer.c: + * tests/check/gst/gstbuffer.c: + buffer: Fix gst_buffer_memcmp() where the buffer is smaller than size + Also add unit tests for gst_buffer_memcmp + https://bugzilla.gnome.org/show_bug.cgi?id=706162 + +2013-08-20 17:06:49 +0100 Tim-Philipp Müller + + * gst/gstutils.c: + docs: flesh out gst_element_query_{duration,position} docs a bit + +2013-08-14 16:18:59 +0100 Matthieu Bouron + + * gst/gsttaglist.c: + * gst/gsttaglist.h: + taglist: handle publisher and interpreted-by tags + https://bugzilla.gnome.org/show_bug.cgi?id=705999 + +2013-08-20 13:58:24 +0200 Sebastian Dröge + + * gst/gstpluginloader.c: + pluginloader: Don't call memcpy() with NULL src and 0 length + +2013-08-20 10:16:41 +0200 Sebastian Dröge + + * plugins/elements/gstqueue.c: + queue: Properly unlock the sinkpad streaming thread when deactivating the pad + https://bugzilla.gnome.org/show_bug.cgi?id=705835 + +2013-08-20 10:16:05 +0200 Sebastian Dröge + + * plugins/elements/gstqueue2.c: + queue2: Properly unlock the sinkpad streaming thread when deactivating the pad + https://bugzilla.gnome.org/show_bug.cgi?id=706360 + +2013-08-19 16:38:50 +0200 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: Clean up after the streaming thread has stopped + https://bugzilla.gnome.org/show_bug.cgi?id=705835 + +2013-08-19 16:38:40 +0200 Sebastian Dröge + + * plugins/elements/gstqueue2.c: + queue2: Clean up after the streaming thread has stopped + https://bugzilla.gnome.org/show_bug.cgi?id=705835 + +2013-08-19 16:38:16 +0200 Sebastian Dröge + + * plugins/elements/gstqueue.c: + queue: Clean up after the streaming thread has stopped + https://bugzilla.gnome.org/show_bug.cgi?id=705835 + +2013-07-01 14:04:46 -0600 Brendan Long + + * gst/gstparse.h: + * gst/gstutils.c: + * gst/parse/grammar.y: + parse: Add GST_FLAG_NO_SINGLE_ELEMENT_BINS + This makes gst_parse_bin_from_description() return an element instead of + a bin if there's only one element. Also changed gstparse.c to use this, + so gst-launch won't create superfluous bins. + https://bugzilla.gnome.org/show_bug.cgi?id=703405 + +2013-08-16 20:36:53 +0200 Arnaud Vrac + + * gst/gstquery.c: + query: return NULL when parsing uri redirection that was not set + https://bugzilla.gnome.org/show_bug.cgi?id=706160 + +2013-08-18 11:48:40 +0200 Sebastian Dröge + + * gst/gstbuffer.c: + buffer: Update since marker for gst_buffer_extract_dup() to 1.0.10 + +2013-08-16 16:45:41 +0100 Tim-Philipp Müller + + * plugins/elements/gstqueue2.c: + queue2: don't crash on EOS if queue is empty + Fixes spurious crash in test_simple_shutdown_while_running + unit test. + +2013-08-16 16:28:12 +0100 Tim-Philipp Müller + + * plugins/elements/gstqueue2.c: + queue2: don't change global buffering state from within query handler + When a buffering query is handled it uses the get_buffering_percent() + function to get some statitics. Unfortunately this function also + calculates whether the queue should be buffering and adapts the + global queue2 state in case of state transitions from/to buffering + (including whether a buffering message was posted on the bus!). + This means that there is a race which can cause buffering messages + to never posted if the global state changes happen as a result of aa + query instead of resulting from bytes flowing in/out. + Spotted by Sjoerd Simons. + Change to only query state in get_buffering_percent() and update + state only in update_buffering(). + https://bugzilla.gnome.org/show_bug.cgi?id=705332 + +2013-08-16 12:54:38 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: update buffering when changing capacity + When the capacity of the queue changes, make sure we post an updated buffering + message because we might suddenly have completed the buffering stage. + +2013-08-15 15:35:08 +0200 Jonas Holmberg + + * gst/gst.c: + Free thread pools in gst_deinit() + +2013-08-16 11:03:30 +0200 Jonas Holmberg + + * libs/gst/check/gstcheck.c: + check: Call gst_deinit() at exit of all processes + +2013-08-14 21:41:23 +0100 Tim-Philipp Müller + + * gst/gstclock.c: + clock: simplify internal gst_clock_return_get_name() helper + +2013-08-14 17:44:48 +0200 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: improve flush-start handling + Use custom code to implement flush-stop, we can't reuse the set_flushing code + because we can't touch the live_playing flag and we need to signal the + streaming thread. + +2013-08-14 17:14:15 +0200 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: stop flushing in flush-stop + +2013-08-14 16:58:41 +0200 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: handle flush better + Unlock the streaming thread when flushing so that we can + insert the flush-stop correctly. + +2013-08-14 15:46:57 +0200 Edward Hervey + + * .gitignore: + .gitignore: ignore .dirstamp + +2013-08-14 07:21:06 +0200 Edward Hervey + + * libs/gst/check/Makefile.am: + check: Don't use nodist headers on gir scanner + Just creates noise and bogus symbols + +2013-08-07 18:20:03 +0200 Edward Hervey + + * gst/gstcompat.h: + * gst/gstinfo.c: + * gst/gstinfo.h: + gst: minor docstring fixups to make g-i happy + note: the #ifndef move is actually a move of the "SECTION" docstring + +2013-08-13 17:14:53 +0200 Edward Hervey + + * .gitignore: + .gitignore: Ignore files from automake test-driver + +2013-08-07 18:24:40 +0200 Edward Hervey + + * libs/gst/base/gstbaseparse.c: + baseparse: Add a property to disable passthrough + In some specific cases (like transmuxing) we want to force the element + to actually parse all incoming data even if the element deems it is not + necessary. + This property simply ignores requests from the element to enable passthrough + mode which results in processing always being enabled. + https://bugzilla.gnome.org/show_bug.cgi?id=705621 + +2013-08-07 21:26:01 -0300 Thiago Santos + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstdataqueue.c: + * libs/gst/base/gstdataqueue.h: + * win32/common/libgstbase.def: + dataqueue: add gst_data_queue_push_force + Adds a variant of the _push function that doesn't check the queue limits + before adding the new item. It is useful when pushing an element to the + queue shouldn't lock the thread. + One particular scenario is when the queue is used to serialize buffers + and events that are going to be pushed from another thread. The + dataqueue should have a limit on the amount of buffers to be stored to + avoid large memory consumption, but events can be considered to have + negligible impact on memory compared to buffers. So it is useful to be + used to push items into the queue that contain events, even though the + queue is already full, it shouldn't matter inserting an item that has + no significative size. + This scenario happens on adaptive elements (dashdemux / mssdemux) as + there is a single download thread fetching buffers and putting into the + dataqueues for the streams. This same download thread can als generate + events in some situations as caps changes, eos or a internal control + events. There can be a deadlock at preroll if the first buffer fetched + is large enough to fill the dataqueue and the download thread and the + next iteration of the download thread decides to push an event to this + same dataqueue before fetching buffers to other streams, if this push + locks, the pipeline will be stuck in preroll as no more buffers will be + downloaded. + There is a somewhat common practice in dash streams to have a single + very large buffer for audio and one for video, so this will always + happen as the download thread will have to push an EOS right after + fetching the first buffer for any stream. + API: gst_data_queue_push_force + https://bugzilla.gnome.org/show_bug.cgi?id=705694 + +2013-08-13 13:06:50 +0200 Sebastian Dröge + + * gst/gstallocator.c: + sysmem: Only copy the requested part of memory instead of the complete source memory + https://bugzilla.gnome.org/show_bug.cgi?id=705678 + +2013-08-13 12:11:19 +0100 Tim-Philipp Müller + + * gst/gstquery.c: + * win32/common/libgstreamer.def: + query: add Since markers for new API and add to exports file + +2013-07-23 16:25:27 +0200 Andoni Morales Alastruey + + * gst/gstquery.c: + query: fix annotation for gst_query_parse_uri + +2013-04-19 12:14:54 +0200 Andoni Morales Alastruey + + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gstquery.c: + * gst/gstquery.h: + query: add new redirection uri the URI query + +2013-08-12 09:25:34 -0300 Thiago Santos + + * gst/gstquery.c: + query: add some missing 'transfer none' gi annotations + The current documentation is controverse, while it states that the + returned value is valid only while the query is is valid, which presumes + a 'transfer none' policy. But the tooltip for the 'out' annotation + states the default is 'transfer-full'. + Add the missing 'transfer none' annotations to fix this. + +2013-08-08 12:08:31 +0200 Nicolas Dufresne + + * libs/gst/base/gstbytereader.c: + bytereader: Accelerate MPEG/H264 start code scanning + Accelerate MPEG/H264 start code scanning using Boyer-Moor bad character + heuristic. + https://bugzilla.gnome.org/show_bug.cgi?id=702357 + +2013-08-10 11:31:23 +0100 Tim-Philipp Müller + + * gst/gstpipeline.c: + pipeline: g-i: allow clock to be NULL in gst_pipeline_use_clock() + https://bugzilla.gnome.org/show_bug.cgi?id=705751 + +2013-08-07 14:17:28 -0300 Adrian Pardini + + * libs/gst/controller/gstdirectcontrolbinding.c: + controller: fixes int overflow with properties that span +-INT_MAX + When the range for a property is defined as -INT_MAX-1 .. INT_MAX, like + the xpos in a videomixer the following expression in the macro + definitions of convert_g_value_to_##type (and the equivalent in + convert_value_to_##type) + v = pspec->minimum + (g##type) ROUNDING_OP ((pspec->maximum - pspec->minimum) * s); + are converted to: + v = -2147483648 + (g##type) ROUNDING_OP ((2147483647 - -2147483648) * s); + (2147483647 - -2147483648) overflows to -1 and the net result is: + v = -2147483648 + (g##type) ROUNDING_OP (-1 * s); + so v only takes the values -2147483648 for s == 0 and 2147483647 + for s == 1. + Rewriting the expression as minimum*(1-s) + maximum*s gives the correct + result in this case. + https://bugzilla.gnome.org//show_bug.cgi?id=705630 + +2013-08-02 13:31:59 +0200 Lubosz Sarnecki + + * configure.ac: + build: add subdir-objects to AM_INIT_AUTOMAKE + Fixes warnings with automake 1.14 + https://bugzilla.gnome.org/show_bug.cgi?id=705350 + +2013-08-02 16:21:45 +0200 Wim Taymans + + * docs/design/part-gstpipeline.txt: + design: fix typo + +2013-07-29 15:48:32 +0200 Sjoerd Simons + + * plugins/elements/gstqueue2.c: + queue2: Fix backwards seeks into undowloaded ranges + When in download buffering mode queue2 didn't check if a range offset is + in a undownloaded range before the currently in-progress range. Causing + seeks to an earlier offset to, well, take a while. + +2013-07-30 19:27:23 +0200 Kjartan Maraas + + * gst/gstutils.c: + * libs/gst/check/gsttestclock.c: + docs: some small gtk-doc markup fixes + https://bugzilla.gnome.org/show_bug.cgi?id=705156 + +2013-07-30 19:27:23 +0200 Kjartan Maraas + + * gst/gst.c: + gst: register new color mode enum, fixing 'make check' + https://bugzilla.gnome.org/show_bug.cgi?id=705156 + +2013-04-16 19:04:48 +0200 Edward Hervey + + * libs/gst/base/gsttypefindhelper.c: + typefindhelper: Avoid using buffer_get_size in tight loops + Calling gst_buffer_get_size represented 2/3 of the cost of helper_find_peek + which was called whenever a typefindfunction wanted to peek at data. + We already know the size (from the GstMapInfo), so just use that. + +2013-07-29 19:38:51 +0100 Tim-Philipp Müller + + * po/LINGUAS: + * po/bg.po: + * po/cs.po: + * po/de.po: + * po/el.po: + * po/fr.po: + * po/gl.po: + * po/hr.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/lt.po: + * po/nl.po: + * po/pl.po: + * po/pt_BR.po: + * po/ru.po: + * po/sl.po: + * po/sv.po: + * po/uk.po: + * po/vi.po: + * po/zh_CN.po: + po: update translations + +2013-07-29 19:13:03 +0100 Tim-Philipp Müller + + * common: + common: revert accidental re-winding of common submodule + +2013-07-26 16:15:24 +0200 Sjoerd Simons + + * gst/gstquery.c: + query: Clarify the estimated-total documentation + Tweak the documentation slightly to clarify that the estimated-total in + a a Buffering query the total remaining time of a download, not the + total time for the complete download. Also indicate the unit used. + https://bugzilla.gnome.org/show_bug.cgi?id=704934 + +2013-07-26 15:08:13 +0200 Sjoerd Simons + + * plugins/elements/gstqueue2.c: + queue2: Forward the schedule query upstream + When asked about the scheduling flags first check with upstream and + simply add the _SEEKABLE flag when using a temporary file as storage. + This enables the forwarding of _SEQUENTIAL and _BANDWIDTH_LIMITED from + sources if needed. + https://bugzilla.gnome.org/show_bug.cgi?id=704927 + +2013-07-29 14:47:15 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.1.3 === + +2013-07-29 13:34:53 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * common: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstenumtypes.h: + * win32/common/gstversion.h: + Release 1.1.3 + +2013-07-29 13:30:25 +0200 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/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 + +2013-07-29 12:10:45 +0200 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + base: Fix handling of SEGMENT query + The values should be in stream-time, and start/stop should not + be swapped for negative rates. + +2013-07-29 11:05:09 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Only advance offset by the number of bytes we actually read + There might be a short read at EOS. + +2013-07-29 10:48:30 +0200 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Implement SEGMENT query + +2013-07-26 18:36:04 +0100 Tim-Philipp Müller + + * gst/gstbuffer.c: + buffer: fix Since: marker for new gst_buffer_extract_dup() + +2013-07-26 12:19:32 +0200 Wim Taymans + + * gst/gstclock.c: + clock: debug the clock return values + +2013-07-25 12:20:14 -0300 Thiago Santos + + * libs/gst/base/gstbaseparse.c: + baseparse: fix seqnum handling for seeks + Use the same seqnum as the seek for flushes/segments that are + caused by the seek. Also do the same for segment events + Fixes #676242 + +2013-07-24 10:29:30 -0700 David Schleef + + * gst/gstinfo.c: + info: parse debug levels > 9 + +2013-07-24 16:57:46 +0200 Sebastian Dröge + + * gst/gstvalue.c: + value: Fix copy&paste mistakes in the bitmask function docs + +2013-07-24 11:21:27 +0200 Sebastian Dröge + + * libs/gst/base/gstbasesink.c: + basesink: Don't shadow variables that are set inside our scope and then used outside our scope + Fixes uninitialized use of these variables. + +2013-07-24 10:30:25 +0200 Sebastian Dröge + + * tests/check/gst/struct_arm.h: + * tests/check/gst/struct_hppa.h: + * tests/check/gst/struct_i386.h: + * tests/check/gst/struct_i386w.h: + * tests/check/gst/struct_ppc32.h: + * tests/check/gst/struct_ppc64.h: + * tests/check/gst/struct_sparc.h: + * tests/check/gst/struct_x86_64.h: + tests: Remove other interface structs from the ABI tests too + +2010-10-15 13:16:59 -0300 Thiago Santos + + * tests/check/gst/struct_arm.h: + * tests/check/gst/struct_hppa.h: + * tests/check/gst/struct_i386.h: + * tests/check/gst/struct_i386w.h: + * tests/check/gst/struct_ppc32.h: + * tests/check/gst/struct_ppc64.h: + * tests/check/gst/struct_sparc.h: + * tests/check/gst/struct_x86_64.h: + tests: Remove GstTagSetter from ABI checks + Interfaces can have new members added without breaking ABI, so + remove it from the check. + https://bugzilla.gnome.org/show_bug.cgi?id=623799 + +2013-07-23 15:39:53 -0400 Thibault Saunier + + * libs/gst/check/libcheck/check_print.c: + libcheck: Escape strings in the generated xml files + This is copy pasted from upstream libcheck + +2013-07-23 18:53:44 +0200 Sebastian Dröge + + * libs/gst/base/gstbasesink.c: + basesink: Print some debug output if a stream-start event without group-id arrives + Ideally all elements would implement handling of that to get proper + stream-start message handling and other things. + +2013-07-22 18:03:01 +0200 Arnaud Vrac + + * plugins/elements/gstinputselector.c: + input-selector: Fix missing pad activation notification + A new active pad might not be notified in some cases, which results + in the current track number not being set in playbin. + The active-pad notification is only sent in the chain and sink_event + functions, and only when the buffer or event that triggered the active + pad selection is from the newly activated pad. So in the other case + the notification will never be sent. + https://bugzilla.gnome.org/show_bug.cgi?id=704691 + +2013-07-22 17:25:47 +0100 Tim-Philipp Müller + + * gst/gstvalue.c: + value: handle deserialisation of nonexistant enum value more gracefully + +2013-07-22 14:12:18 +0200 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + * plugins/elements/gstinputselector.h: + inputselector: Don't push new stream-start events on stream change unless they all have group ids + https://bugzilla.gnome.org/show_bug.cgi?id=704408 + +2013-07-22 12:06:29 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Use new group-id in stream-start event + +2013-07-22 12:06:08 +0200 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + base: Use new group-id field in stream-start event and message + +2013-07-22 11:42:18 +0200 Sebastian Dröge + + * gst/gstbin.c: + bin: Use the new group-id field of the stream-start message for stream-start message aggregation + If all stream-start messages had a group id (for backwards compatibility), + we only consider a stream started if all had the same group id. + In 2.0 we should make the group id mandatory. + +2013-07-22 11:41:35 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstmessage.c: + * gst/gstmessage.h: + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gstutils.c: + * gst/gstutils.h: + * win32/common/libgstreamer.def: + gst: Add new group-id field to the stream-start event + All streams that have the same group id are supposed to be played + together, i.e. all streams inside a container file should have the + same group id but different stream ids. The group id should change + each time the stream is started, resulting in different group ids + each time a file is played for example. + +2013-07-18 23:29:49 +0100 Tim-Philipp Müller + + * common: + common: revert accidental change of common submodule + +2013-07-18 14:39:42 +0200 Sebastian Dröge + + * gst/gstcaps.c: + * gst/gstmessage.c: + * gst/gstmessage.h: + gst: Add some more Since: 1.2 + +2013-07-18 14:34:31 +0200 Sebastian Dröge + + * gst/gstinfo.c: + info: Add some Since: 1.2 + +2013-07-18 15:10:10 +0400 Руслан Ижбулатов + + * common: + * docs/gst/gstreamer-sections.txt: + * docs/gst/running.xml: + * docs/manual/appendix-checklist.xml: + * gst/gst.c: + * gst/gstinfo.c: + * gst/gstinfo.h: + * tools/gst-launch.1.in: + * tools/gst-plot-timeline.py: + * win32/common/libgstreamer.def: + info: Add debug color mode option + This allows to explicitely set the debug output color + mode to UNIX on every platform, enable it (use platform + default color mode) or enable it. + https://bugzilla.gnome.org/show_bug.cgi?id=674320 + +2012-04-18 14:35:32 +0400 Руслан Ижбулатов + + * gst/gstinfo.c: + info: Fix black and underline coloring on W32 + Fixes #674320 + +2012-04-18 14:12:16 +0400 Руслан Ижбулатов + + * gst/gstinfo.c: + info: Cut down src file names for MinGW too + Fixes #674320 + +2013-07-16 17:47:45 +0200 Nicola Murino + + * scripts/gst-uninstalled: + gst-uninstalled: Fix gst-plugins-gl in uninstalled setup + https://bugzilla.gnome.org/show_bug.cgi?id=703499 + +2013-07-16 15:35:08 -0400 Olivier Crête + + * libs/gst/base/gstadapter.c: + * tests/check/libs/adapter.c: + adapter: Take account of the skip in gst_adapter_take_buffer_fast() + Include regression test + +2013-07-15 15:41:44 -0400 Olivier Crête + + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstadapter.h: + * tests/check/libs/adapter.c: + * win32/common/libgstbase.def: + adapter: Add function to return buffer composed of multiple memories + API: gst_adapter_take_fast() + +2013-07-16 16:24:38 +0200 Sebastian Dröge + + * gst/gstquery.c: + query: Don't assert if no context is set in the query + +2013-07-16 14:47:05 +0100 Tim-Philipp Müller + + * tests/benchmarks/.gitignore: + benchmarks: ignore new benchmark binary + +2013-07-16 14:46:15 +0100 Tim-Philipp Müller + + * gst/gstquery.c: + * gst/gstquery.h: + query: sprinkle some Since 1.2 markers in docs + +2013-07-16 14:44:03 +0100 Tim-Philipp Müller + + * libs/gst/net/gstnettimeprovider.c: + timeprovider: g-i: allow None as address for gst_net_time_provider_new() + +2013-07-16 15:34:57 +0200 Sebastian Dröge + + * gst/gstelement.c: + element: Return an empty GstContext if none was set yet + +2013-07-16 15:16:16 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstquery.c: + * gst/gstquery.h: + * win32/common/libgstreamer.def: + query: Add gst_query_has_context_type() + +2013-07-16 11:36:50 +0200 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: only block serialized query when it's safe + We must be certain that we don't cause a deadlock when blocking the serialized + queries. One such deadlock can happen when we are buffering and downstream is + blocked in preroll and a serialized query arrives. Downstream will not unblock + (and allow our query to execute) until we complete buffering and buffering will + not complete until we can answer the query.. + https://bugzilla.gnome.org/show_bug.cgi?id=702840 + +2013-07-15 11:36:18 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: A newly activated pad should be marked as needing reconfiguration + +2013-07-15 11:32:54 +0200 Sebastian Dröge + + * gst/gstpad.c: + Revert "pad: Don't consider flushing pads as needing reconfiguration" + This reverts commit 948a9d2f2b728f5fb60be45d47a818cebeb60c7d. + This is racy and trying to reconfigure and fail is still better + than not trying to reconfigure at all. + https://bugzilla.gnome.org/show_bug.cgi?id=704100 + +2013-07-15 11:32:10 +0200 Sebastian Dröge + + * libs/gst/base/gstbasesrc.c: + basesrc: Leave the loop function faster if we're flushing + Especially don't even try to send stream-start event or try + to negotiate. + https://bugzilla.gnome.org/show_bug.cgi?id=704100 + +2013-07-12 10:08:26 +0200 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + inputselector: Deactivate and remove pad without the inputselector lock + Otherwise we might get deadlocks caused by lock order inversion: + During the chain function the stream lock is first locked and then the + inputselector lock. During pad release we first locked the inputselector + lock and then deactivating the pad would lock the stream lock. + There's no reason why the inputselector lock should be required while + deactivating and removing the pad, it's only needed before. + https://bugzilla.gnome.org/show_bug.cgi?id=704002 + +2013-07-11 16:57:06 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.1.2 === + +2013-07-11 15:12:39 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstversion.h: + Release 1.1.2 + +2013-07-11 15:11:27 +0200 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/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 + +2013-07-10 15:52:10 +0200 Sebastian Dröge + + * gst/gstbin.c: + bin: Always forward clock-lost message if we're not a top-level bin + This makes sure that no bin misses the clock-lost messages, independent + of the state, and could return an old, non-working clock from + gst_bin_provide_clock_func(). + https://bugzilla.gnome.org/show_bug.cgi?id=701997 + +2013-07-10 14:30:31 +0200 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + inputselector: Keep previous active sinkpad around until we're done with it + Otherwise we'll send a new segment event downstream for each buffer. + +2013-07-08 15:26:38 +0100 Tim-Philipp Müller + + * gst/gstallocator.c: + allocator: fix type of gst_memory_alignment to match declaration + Fixes compiler warnings such as + gstallocator.c:61:8: error: conflicting types for 'gst_memory_alignment' + ../gst/gstallocator.h:52:18: note: previous declaration of 'gst_memory_alignment' was here + +2013-07-05 21:36:27 +0200 Piotr Drąg + + * po/POTFILES.in: + po: update POTFILES.in + https://bugzilla.gnome.org/show_bug.cgi?id=703682 + +2013-07-04 20:39:26 -0400 Thibault Saunier + + * libs/gst/base/gstbasesrc.c: + basesrc: Do not lock a mutex that does not exist + The GST_LIVE_LOCK is on GstBaseSrc, not on its source pad. + +2013-07-03 21:23:44 +0200 Wim Taymans + + * libs/gst/base/gstbaseparse.c: + baseparse: reset PTS after seek + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=702778 + +2013-07-03 13:03:49 -0400 Nicolas Dufresne + + * gst/gstallocator.c: + * gst/gstevent.c: + * gst/gstghostpad.c: + * gst/gstinfo.h: + * gst/gstmessage.c: + * gst/gstminiobject.c: + * gst/gstpad.c: + * gst/gstplugin.c: + * gst/gsttaglist.c: + * gst/gsttypefind.c: + * gst/gstutils.c: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gsttypefindhelper.c: + * libs/gst/base/gsttypefindhelper.h: + Add few missing allow-none annotation + +2013-07-03 09:27:13 +0100 Tim-Philipp Müller + + * scripts/gst-uninstalled: + gst-uninstalled: add new -bad mpegts lib + And remove signalprocessor/video libs from -bad which have gone + away or were merged into -base. + +2013-07-01 20:35:21 -0400 Olivier Crête + + * plugins/elements/gstfunnel.c: + * plugins/elements/gstfunnel.h: + * tests/check/elements/funnel.c: + funnel: Re-push all sticky events when buffers come from a different pad + Don't special case segment/caps, just push all sticky events when they are + received on the currently active pad or when the active pad changes. + +2013-07-01 20:21:10 -0400 Olivier Crête + + * plugins/elements/gstfunnel.c: + funnel: Use default pad function for upstream event/queries + The default functions in 1.x already do the right thing + +2013-07-01 20:18:58 -0400 Olivier Crête + + * tests/check/elements/funnel.c: + tests: Remove funnel pad_alloc test + +2013-07-01 20:07:03 -0400 Olivier Crête + + * libs/gst/check/gstcheck.h: + check: Change stream_id parameter name to match GtkDoc + +2013-07-01 11:10:00 +0200 Jonas Holmberg + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/check/Makefile.am: + * libs/gst/check/gstcheck.c: + * libs/gst/check/gstcheck.h: + * tests/check/elements/funnel.c: + check: Added gst_check_setup_events_with_stream_id() + Added a new function gst_check_setup_events_with_stream_id(), since + gst_check_setup_events() does not work with multiple pads. + https://bugzilla.gnome.org/show_bug.cgi?id=703377 + +2013-06-30 18:39:03 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Don't consider flushing pads as needing reconfiguration + Renegotiation and reconfiguration will fail because all queries + and events won't be accepted by the pad if it's flushing. In the + best case this just causes unneeded work and spurious warnings in + the debug logs, in the worst case it causes elements to fail completely. + +2013-06-24 23:25:51 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: only block serialized query when it's safe + We must be certain that we don't cause a deadlock when blocking the serialized + queries. One such deadlock can happen when we are buffering and downstream is + blocked in preroll and a serialized query arrives. Downstream will not unblock + (and allow our query to execute) until we complete buffering and buffering will + not complete until we can answer the query.. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=702840 + +2013-06-19 12:30:47 +0200 Sjoerd Simons + + * gst/gstpad.c: + pad: Add a filter to the caps_query done by acceptcaps + Use the caps that the pad is asked to accept as filter for the query + https://bugzilla.gnome.org/show_bug.cgi?id=702632 + +2013-06-19 12:19:02 +0200 Sjoerd Simons + + * libs/gst/base/gstbasetransform.c: + basetransform: optimize default acceptcaps implementation + Pass the fixed caps we're asked to accept as a filter for the caps + query, so we don't get a fully-expanded set of caps back (which we don't + need and can take a lot of time for intersection). + This reduces the time for camerabin to produce a second frame on a + logitech C910 camera from around 52 seconds to a bit less then 16 + seconds on my system. + https://bugzilla.gnome.org/show_bug.cgi?id=702632 + +2013-06-19 09:19:53 +0200 Edward Hervey + + * gst/gsttaglist.c: + taglist: Avoid combinatorial explosion when merging tags + When appending/prepending tags, avoid re-creating (and copying) lists if we already + have one and instead just append/prepend the GValue to the list. + https://bugzilla.gnome.org/show_bug.cgi?id=702545 + +2013-06-19 10:53:21 +0200 Sebastian Dröge + + * plugins/elements/gstqueue.c: + queue: Don't hold the queue mutex while doing serialized queries downstream + https://bugzilla.gnome.org/show_bug.cgi?id=702520 + +2013-06-19 10:45:45 +0200 Sebastian Dröge + + * tests/check/gst/gstbuffer.c: + buffer: Add unit test for map_range() + https://bugzilla.gnome.org/show_bug.cgi?id=702617 + +2013-06-19 08:36:22 +0200 Paul HENRYS + + * gst/gstbuffer.c: + buffer: Fix wrong size/index handling when merging memory + https://bugzilla.gnome.org/show_bug.cgi?id=702617 + +2013-06-18 11:39:55 +0200 Stefan Sauer + + * docs/list-ulink.xsl: + docs: add missing file for doc-link check + +2013-06-17 11:12:51 +0200 Wim Taymans + + * tests/benchmarks/Makefile.am: + * tests/benchmarks/gstpoolstress.c: + tests: add stress test for buffers and pools + +2013-06-17 10:25:20 +0200 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: call state change in all cases + When we asynchronously go from READY to PLAYING, also call the + state change function so that subclasses can update their state for PLAYING. + Because the PREROLL lock is not recursive, we can't make this without + races and we must assume for now that the subclass can handle concurrent calls + to PAUSED->PLAYING and PLAYING->PAUSED. We can make this assumption because not + many elements actually do something in those state changes and the ones that + did would be broken even more without this change. + https://bugzilla.gnome.org/show_bug.cgi?id=702282 + +2013-06-16 15:07:35 +0200 Stefan Sauer + + * docs/faq/dependencies.xml: + * docs/manual/appendix-integration.xml: + * docs/manual/basics-pads.xml: + * docs/manual/intro-motivation.xml: + docs: fix some external links + +2013-06-16 14:45:08 +0200 Stefan Sauer + + * docs/manuals.mak: + docs: check for broken links in docs + The check is done using curl (if available). It lists the curl exit code + http + status code (for those > 399) together with the use of the url in the code. The + check is not fatal. + +2013-06-16 13:05:21 +0200 Stefan Sauer + + * docs/manual/basics-elements.xml: + * docs/pwg/intro-preface.xml: + docs: change https to http urls + Thank you browser for needlessly changing to https for static doc pages. + +2013-06-16 11:41:52 +0200 Stefan Sauer + + * docs/faq/developing.xml: + * docs/manual/basics-elements.xml: + * docs/manual/basics-init.xml: + * docs/pwg/intro-preface.xml: + docs: update links to developer.gnome.org + The URL layout has changed. Fix the links and comment out one paragraph where + the doc is gone. + Fixes #702135 + +2013-06-14 13:05:38 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gststructure.c: + * gst/gststructure.h: + * win32/common/libgstreamer.def: + structure: Add gst_structure_new_from_string() + Convenience API for bindings, gst_structure_from_string() returns + a tuple (structure, end_ptr) in bindings and is unintuitive to use + because of that. + +2013-06-13 08:36:23 +0200 Hans de Goede + + * gst/gst.c: + gst: Don't intercept --help in gst_init() + Before this patch gst_init would intercept --help, causing for example + cheese's --help to look like this: + [hans@shalem cheese]$ cheese --help + Usage: + cheese [OPTION...] - GStreamer initialization + Help Options: + -h, --help Show help options + --help-all Show all help options + --help-gst Show GStreamer Options + gst_init is the only gfoo_init function which does this. + https://bugzilla.gnome.org/show_bug.cgi?id=702089 + +2013-06-12 09:45:56 +0100 Tim-Philipp Müller + + * scripts/gst-uninstalled: + gst-uninstalled: add uridownloader lib in -bad to search paths + Even if it might not be around for long. + +2013-06-11 10:25:02 +0200 Sebastian Dröge + + * tools/gst-launch.c: + gst-launch: Remove unref that should not be there + We keep a reference to the context around all the time. + https://bugzilla.gnome.org/show_bug.cgi?id=701985 + +2013-06-09 17:20:22 +0200 Sebastian Dröge + + * tools/gst-launch.c: + gst-launch: Improve GstContext handling + https://bugzilla.gnome.org/show_bug.cgi?id=700967 + +2013-06-07 13:07:37 +0200 Kim Lam + + * win32/vs10/base/base.vcxproj: + win32: Don't include gstcollectpads.c twice + https://bugzilla.gnome.org/show_bug.cgi?id=701603 + +2013-05-31 09:39:55 -0600 Brendan Long + + * plugins/elements/gstinputselector.c: + input-selector: send notify::active signal for input-selector pads. + https://bugzilla.gnome.org/show_bug.cgi?id=701319 + +2013-06-06 16:46:12 +0200 Sebastian Dröge + + * libs/gst/base/gstbasesrc.c: + basesrc: Only force-update the duration for dynamic sources when doing the DURATION query + Doing it after every single create() is not very efficient and not necessary. + Especially on network file systems fstat() is not cached and causes network + traffic, making the source possibly unusable slow. + https://bugzilla.gnome.org/show_bug.cgi?id=652037 + +2013-06-05 18:36:40 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 1.1.1 === + +2013-06-05 17:58:51 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * common: + * configure.ac: + * docs/plugins/gstreamer-plugins.args: + * docs/plugins/gstreamer-plugins.hierarchy: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstenumtypes.h: + * win32/common/gstversion.h: + Release 1.1.1 + +2013-06-05 16:06:35 +0200 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/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 + +2013-06-05 15:14:14 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 098c0d7 to 01a7a46 + +2013-06-05 11:02:50 +0200 Edward Hervey + + * gst/gstbufferpool.c: + * gst/gstvalue.c: + * gst/gstvalue.h: + * win32/common/libgstreamer.def: + gstvalue: Add _append_and_take_value() public variants + API: gst_value_array_append_and_take_value + API: gst_value_list_append_and_take_value + We were already using this internally, this makes it public for code + which frequently appends values which are expensive to copy (like + structures, arrays, caps, ...). + Avoids copies of the values for users. The passed GValue will also + be 0-memset'ed for re-use. + New users can replace this kind of code: + gst_value_*_append_value(mycontainer, &myvalue); + g_value_unset(&myvalue); + by: + gst_value_*_append_and_take_value(mycontainer, &myvalue); + https://bugzilla.gnome.org/show_bug.cgi?id=701632 + +2013-05-29 17:20:34 +0200 Edward Hervey + + * gst/gstbuffer.c: + gstbuffer: Use internal function for buffer_new_wrapped + Shaves ~10% instruction calls from the total cost + https://bugzilla.gnome.org/show_bug.cgi?id=701633 + +2013-05-30 22:57:49 -0600 Brendan Long + + * plugins/elements/gstinputselector.c: + input-selector: return FALSE for "active" property if selector is NULL + https://bugzilla.gnome.org/show_bug.cgi?id=701323 + +2013-06-01 14:00:22 +0100 Andrzej Bieniek + + * docs/manual/advanced-threads.xml: + manual: update elements to match the rest of "Boost priority of a thread" section + +2013-06-01 13:55:50 +0100 Andrzej Bieniek + + * docs/manual/advanced-dataaccess.xml: + manual: fix comment in effectswitch example + +2013-06-01 13:49:18 +0100 Andrzej Bieniek + + * docs/manual/advanced-dataaccess.xml: + manual: fix a typo in "Inserting data with appsrc" section + +2013-06-01 13:22:22 +0100 Andrzej Bieniek + + * docs/pwg/advanced-dparams.xml: + * docs/pwg/advanced-qos.xml: + * docs/pwg/appendix-checklist.xml: + pwg: fix a few typos + +2013-05-31 23:37:07 +0100 Andrzej Bieniek + + * docs/pwg/advanced-allocation.xml: + * docs/pwg/building-boiler.xml: + * docs/random/porting-to-1.0.txt: + docs: remove double "the" + +2013-05-28 23:34:54 +0100 Krzysztof Konopko + + * scripts/git-update.sh: + scripts: improve git-update.sh status message + By default when the script is about to exit (normally or due to an error), + it checks whether $ERROR_LOG file exists. If the log file exists, the + script prints a "Failures: " message prefix and dumps the log file to the + output. + Apparently the log file is always created and if the update/build is + successful, the script finishes with a bit misleading "Failures: " message. + An improvement provided with this change lets the log file to be created as + needed, i.e. if there's an error message to be printed. If the file + doesn't exists, the script prints a "Update done" message which clearly + indicates success. + https://bugzilla.gnome.org/show_bug.cgi?id=701177 + +2013-05-30 07:03:40 +0200 Wim Taymans + + * tests/check/generic/sinks.c: + check: fix position unit test + +2013-05-30 06:51:24 +0200 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: improve position reporting without clock + When no base time or when sync is disabled, use the same logic as + in paused to report position. The logic in PLAYING assumes we use the + clock. + +2013-05-29 11:36:38 +0200 Sebastian Dröge + + * tests/check/gst/gstpad.c: + pad: Fix memory leak in the unit test + +2013-05-28 12:44:19 +0200 Sebastian Dröge + + * gst/gstelementfactory.c: + elementfactory: Add support for checking subtitle/metadata factory types + +2013-05-28 12:41:27 +0200 Sebastian Dröge + + * gst/gstelementfactory.c: + elementfactory: Add support for checking only the media type of a factory + And while at it also add Metadata and Subtitle media types. + +2013-05-27 16:38:18 +0200 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstqueue.c: + (multi)queue: Don't access query items during flushing + +2013-05-27 16:22:00 +0200 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: Don't do serialized queries when we're flushing + Just immediately fail the query, otherwise we would wait forever + for the query to be answered. + +2013-05-27 16:08:39 +0200 Sebastian Dröge + + * plugins/elements/gstqueue2.c: + queue2: First set query result, then signal GCond + +2013-05-27 15:59:07 +0200 Sebastian Dröge + + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue.h: + queue: Fix handling of serialized queries + During FLUSH_START the query needs to be unblocked already, otherwise + it can lead to deadlocks if the FLUSH_START is the result of something + done from the streaming thread of the srcpad (the queue will never be + emptied!). + +2013-05-27 15:41:14 +0200 Sebastian Dröge + + * plugins/elements/gstqueue2.c: + queue2: Unblock any waiting serialize queries on FLUSH_START + Fixes some deadlocks during flushing. + And store queue items differently to not accidentially read + already unreffed queries when flushing. Queries are owned by + upstream and not us. + +2013-05-27 13:01:43 +0200 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + queue/queue2/multiqueue: When flushing, make sure to not lose any sticky events + https://bugzilla.gnome.org/show_bug.cgi?id=688824 + +2013-05-27 12:40:50 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Store sticky events even if the pad is flushing + But do this only for events that are not dropped by flushing, + i.e. do it only for everything except SEGMENT and EOS. + Without this we might drop a CAPS event if flushing happens + at an unfortunate time and nobody is resending the CAPS event. + https://bugzilla.gnome.org/show_bug.cgi?id=700806 + +2013-05-25 22:03:53 -0400 Nicolas Dufresne + + * plugins/elements/gstvalve.c: + valve: Don't read sticky flag from unrefed event + +2013-05-24 23:28:04 +0100 Tim-Philipp Müller + + * plugins/elements/gsttee.c: + tee: fix property description for now-unused "alloc-pad" property + Should probably proxy ALLOCATION queries on that though, if set. + But what else? CAPS and ACCEPT_CAPS too? + +2013-05-24 23:01:09 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbasetransform.c: + basetransform: remove 0.10-ism from docs + gst_buffer_pad_alloc() never existed, and gst_pad_alloc_buffer() + doesn't exist any more either, so don't mention it in the docs. + https://bugzilla.gnome.org/show_bug.cgi?id=694714 + +2013-05-24 19:22:22 +0200 Sebastian Dröge + + * plugins/elements/gstqueue2.c: + * plugins/elements/gstqueue2.h: + queue2: Add support for serialized queries if using a memory queue + +2013-05-24 18:47:24 +0200 Sebastian Dröge + + * plugins/elements/gstqueue.c: + queue: Set the last serialized query result to FALSE when flushing + +2013-05-24 18:42:55 +0200 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: Initialize all GstMultiQueueItem fields in both code paths + +2013-05-24 18:38:40 +0200 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: Don't access the query after signalling the waiting thread + It might've free'd the query already. + +2013-05-24 18:30:44 +0200 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: Make sure to always signal any possible pending serialized queries + And don't unref them when flushing the queue, they're owned by the caller! + https://bugzilla.gnome.org/show_bug.cgi?id=700342 + +2013-05-24 14:37:19 +0200 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + basetransform: Return GST_FLOW_ERROR if the allocator did not allow to allocate a buffer + +2013-05-24 16:24:10 +0900 Olivier Crête + + * docs/manual/appendix-integration.xml: + docs: Remove mention of gconf* elements + Instead recommend pulsesrc/sink for audio, there is nothing GNOME + specific for video. + +2013-05-15 13:22:04 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Handle the force-caps property more similar to all typefinding code flow + This makes sure that events happen in order and simplifies the code a bit. + +2013-05-15 11:21:46 +0200 Sebastian Dröge + + * libs/gst/check/gstcheck.c: + check: Fix event handling in gst_check_element_push_buffer_list() + +2013-05-15 10:51:01 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 5edcd85 to 098c0d7 + +2013-05-10 16:03:34 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Only check if we get buffers before stream-start/segment if compiling without G_DISABLE_ASSERT + In releases this is set usually. + +2013-05-09 17:17:14 -0400 Nicolas Dufresne + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/check/Makefile.am: + * libs/gst/check/gstcheck.c: + * libs/gst/check/gstcheck.h: + check: Add helper that sends initial events + https://bugzilla.gnome.org/show_bug.cgi?id=700033 + +2013-05-09 17:22:16 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Fix uninitialized variable compiler warning + +2013-05-09 17:21:13 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Make sure pending, older sticky events are sent downstream in dynamic linking scenarios + If a pad block was triggered from sending a sticky event downstream, it + could happen that the pad block is relinking pads, which then requires + to resend previous sticky events. + +2013-05-09 13:32:07 +0200 Sebastian Dröge + + * tests/check/elements/fakesink.c: + * tests/check/elements/filesink.c: + * tests/check/elements/funnel.c: + * tests/check/elements/identity.c: + * tests/check/elements/multiqueue.c: + * tests/check/elements/queue.c: + * tests/check/elements/queue2.c: + * tests/check/elements/selector.c: + * tests/check/elements/tee.c: + * tests/check/generic/sinks.c: + * tests/check/gst/gstghostpad.c: + * tests/check/gst/gstpad.c: + * tests/check/libs/collectpads.c: + tests: Fix event order warnings and dataflow before stream-start/segment event + +2013-05-09 13:31:38 +0200 Sebastian Dröge + + * tests/check/libs/test_transform.c: + * tests/check/libs/transform1.c: + basetransform: Properly port unit test to actually use caps and check results + +2013-05-09 12:50:20 +0200 Sebastian Dröge + + * plugins/elements/gstqueue.c: + queue: Store sticky events on the srcpad if we're dropping them because of leaking + +2013-05-09 12:27:12 +0200 Sebastian Dröge + + * plugins/elements/gstoutputselector.c: + outputselector: Always forward sticky events to all pads + +2013-05-09 12:15:48 +0200 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + inputselector: Forward all sticky events, including stream-start + +2013-05-09 11:05:50 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Warn if data flow happens before stream-start or segment event + +2013-05-09 10:59:41 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Only let gst_pad_sticky_events_foreach() iterate over existing events + +2013-05-09 10:29:11 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: If we push sticky events because of another sticky event, only push those that come before the new event + https://bugzilla.gnome.org/show_bug.cgi?id=699937 + +2013-05-09 09:50:41 +0200 Sebastian Dröge + + * plugins/elements/gstcapsfilter.c: + capsfilter: Add more debug output and forward caps events immediately too + +2013-05-09 09:42:33 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: No sticky events must arrive after EOS + +2013-05-09 09:38:35 +0200 Sebastian Dröge + + * plugins/elements/gstcapsfilter.c: + capsfilter: Fix typo in last commit + +2013-05-08 19:44:09 -0400 Nicolas Dufresne + + * gst/gstpad.c: + pad: Improve warning message naming events type name + With this patch, message should look like ¨Sticky event misordering, got + 'caps' before 'stream-start'¨ making it faster to debug. + https://bugzilla.gnome.org/show_bug.cgi?id=688188 + +2013-05-08 18:19:48 -0400 Nicolas Dufresne + + * gst/gstpad.c: + pad: Only inforce STREAM_START, CAPS and SEGMENT ordering + Previous patch was inforcing a complete ordering of the sticky events, while + in fact, only STREAM_START, CAPS and SEGMENT events need proper ordering. + See: https://bugzilla.gnome.org/show_bug.cgi?id=688188 + +2013-05-09 09:32:49 +0200 Sebastian Dröge + + * plugins/elements/gstcapsfilter.c: + * plugins/elements/gstcapsfilter.h: + capsfilter: Send all events that should happen after CAPS after the CAPS event + +2013-05-08 21:45:08 -0400 Nicolas Dufresne + + * plugins/elements/gstcapsfilter.c: + * plugins/elements/gstcapsfilter.h: + capsfilter: Send caps before segment + In the case the source has no caps, caps must be sent before segment. This + fixes few unit tests that where failing due to the new misordering warning. + https://bugzilla.gnome.org/show_bug.cgi?id=699968 + +2013-05-07 21:53:37 -0400 Nicolas Dufresne + + * gst/gstpad.c: + pad: Detect, fix and warn when sticky events are in wrong order + We can prevent buggy element from causing other elements to fail or crash + by sorting sticky event at insertion. In this case, we also warn as this + is not supposed to happen. + See: https://bugzilla.gnome.org/show_bug.cgi?id=688188 + +2013-05-08 10:26:15 +0100 Tim-Philipp Müller + + * tests/check/gst/gstbuffer.c: + tests: add some basic checks for gst_buffer_fill() + +2013-05-08 10:25:36 +0100 Tim-Philipp Müller + + * gst/gstbuffer.c: + buffer: allow calling _fill() with a NULL data pointer if size is 0 bytes + +2013-05-07 16:46:32 +0200 Sebastian Dröge + + * libs/gst/base/gstbasesrc.c: + basesrc: Add FIXME comment for unused assignment results + +2013-05-07 15:18:06 +0100 Tim-Philipp Müller + + * docs/manual/advanced-metadata.xml: + docs: fix typo in metadata section in app dev manual + There's no g_tag_list_get_xyz(). + +2013-05-07 14:47:09 +0300 Sreerenj Balachandran + + * libs/gst/controller/gsttimedvaluecontrolsource.c: + controller: Fix the function signature and a minor typo fix + https://bugzilla.gnome.org/show_bug.cgi?id=699827 + +2013-05-06 18:47:44 -0400 Nicolas Dufresne + + * plugins/elements/gsttypefindelement.c: + typefind: Send stream-start before anything else + To do so, send stream-start when the streaming thread goes up for the first + time. + https://bugzilla.gnome.org/show_bug.cgi?id=699767 + +2012-12-26 11:54:51 +0000 David Rothlisberger + + * tools/gstreamer-completion: + tools/gstreamer-completion: Allow 1.0 and 0.10 scripts installed simultaneously + As long as the scripts' filenames are different, and the _gst_inspect + and _gst_launch functions are named differently, the completion scripts + for GStreamer 1.0 and 0.10 can be installed side-by-side in + /etc/bash_completion.d. + On my 0.10 branch† the completion script is renamed to + "gstreamer-completion-0.10" and the functions are renamed to + "_gst_inspect_0_10" and "_gst_launch_0_10". The remaining helper + functions should remain identical (the command-line interface to + gst-inspect hasn't changed, nor has the format of the gst-launch + pipeline), so it doesn't matter if the 1.0 script overrides the 0.10 + script's definitions. + Note that I don't expect there to be another GStreamer 0.10 release, so + the 0.10 completion script will probably never be officially released; + but it is still worthwhile allowing both scripts to be installed + alongside each other, for those who install the 0.10 completion script + manually. + Fixes: #690515 + † https://github.com/drothlis/gstreamer/blob/bash-completion-0.10/tools/gstreamer-completion-0.10 + +2012-12-21 18:13:53 +0000 David Rothlisberger + + * tests/misc/test-gstreamer-completion.sh: + * tools/gstreamer-completion: + tools/gstreamer-completion: Complete option & property values on bash 3.2 + Bash 3's completion doesn't split words by characters in + COMP_WORDBREAKS. In particular it doesn't split at "=" signs. Now + _gst_launch_parse handles both bash 3 and 4 format of COMP_WORDS. + Note that "${cur%%=*}" means cur's value with the longest possible match + of "=*" deleted from the end; "${cur#*=}" means cur's value with the + shortest possible match of "*=" deleted from the beginning. See + http://www.gnu.org/software/bash/manual/html_node/Shell-Parameter-Expansion.html + Regardless of the version of bash running the unit tests, I can test for + both behaviours because the unit test populates COMP_WORDS manually. So + this tests the bash 3 behaviour: + test_gst_inspect_completion --gst-debug-level=4 + and this tests the bash 4 behaviour: + test_gst_inspect_completion --gst-debug-level = 4 + +2012-12-21 08:56:26 +0000 David Rothlisberger + + * tests/misc/test-gstreamer-completion.sh: + * tools/gstreamer-completion: + tools/gstreamer-completion: Bash 3.2 compatibility fixes + Compatible with bash 3.2; doesn't require the bash-completion package at + all (though the easiest way to install this script is still to install + bash-completion, and then drop this script into /etc/bash_completion.d). + Note that bash 3 doesn't break COMP_WORDS according to characters in + COMP_WORDBREAKS, so "property=val" looks like a single word, so this + won't complete property values (on bash 3). Similarly, + "--gst-debug-level=" won't complete properly (on bash 3), but + "--gst-debug-level " will. + For that reason, I now offer "--gst-debug-level" etc as completions + instead of "--gst-debug-level=". + Functions "_init_completion" and "_parse_help" were provided by the + bash-completion package >= 2.0; now I roll my own equivalent of + "_parse_help", and instead of "_init_completion" I use + "_get_comp_words_by_ref" which is available from bash-completion 1.2 + onwards. If the bash-completion package isn't available at all I use + bash's raw facilities, at the expense of not completing properly when + the cursor is in the middle of a word. + The builtin "compopt" doesn't exist in bash 3; those users will just + have to live with the inconvenience of "property=" completing to + "property= " with a trailing space. Property values aren't completed + properly anyway on bash 3 (see above). + "[[ -v var ]]" to test whether a variable is set, also doesn't exist in + bash 3. Neither does ";;&" to fall through in a "case" statement. + In the unit tests: + * On my system (OS X), "#!/bin/bash" is bash 3.2, whereas + "#!/usr/bin/env bash" is the 4.2 version I built myself. + * I have to initialise array variables like "expected=()", or bash 3 + treats "+=" as appending to an array already populated with one empty + string. + +2012-12-19 10:46:50 +0000 David Rothlisberger + + tools/gstreamer-completion: Support gst-inspect, and gst-launch element properties + Completes options like "--gst-debug-level" and the values of some of + those options; completes gst-launch pipeline element names, property + names, and even property values (for enum or boolean properties only). + Doesn't complete all caps specifications, nor element names specified + earlier in the pipeline with "name=...". + The GStreamer version number is hard-coded into the completion script: + This patch is off the master branch and has the version hard-coded as + "1.0"; it needs to be updated if backported to the 0.10 branch. You + could always create a "gstreamer-completion.in" that has the appropriate + version inserted by "configure", but I'd rather not do that. The + hard-coded version is consistent with the previous implementation of + gstreamer-completion, which had the registry path hard-coded as + ~/.gstreamer-1.0/registry.xml. + Note that GStreamer 0.10 installs "gst-inspect" and "gst-inspect-0.10". + "gst-inspect --help" only prints 4 flags (--help, --print, --gst-mm, + gst-list-mm) whereas "gst-inspect-0.10 --help-all" prints the full list + of flags. The same applies to "gst-launch" and "gst-launch-0.10". + GStreamer 1.0 only installs "gst-inspect-1.0", not "gst-inspect". + Requires bash 4; only tested with bash 4.2. Requires "bash-completion" + (which you install with your system's package manager). + Put this in /etc/bash_completion.d/ or in `pkg-config + --variable=compatdir bash-completion`, where it will be loaded at the + beginning of every new terminal session; + or in `pgk-config --variable=completionsdir bash-completion`, renamed to + match the name of the command it completes (e.g. "gst-launch-1.0", with + an additional symlink named "gst-inspect-1.0"), where it will be + autoloaded when needed. + test-gstreamer-completion.sh is (for now) in tests/misc -- it might be + worth creating "tests/check/tools", with all the necessary automake + boilerplate, and moving test-gstreamer-completion.sh there, and have it + run automatically with "make check". + IF YOU'RE NEW TO BASH COMPLETION SCRIPTS + ---------------------------------------- + "complete -F _gst_launch gst-launch-1.0" means that bash will run the + function "_gst_launch" to generate possible completions for the command + "gst-launch-1.0". + "_gst_launch" must return the possible completions in the array variable + COMPREPLY. (Note on bash syntax: "V=(a b c)" assigns three elements to + the array "V"). + "compgen" prints a list of possible completions to standard output. Try + it: + compgen -W "abc1 abc2 def" -- "a" + compgen -f -- "/" + The last argument is the word currently being completed; compgen uses it + to filter out the non-matching completions. We put "--" first, in case + the word currently being completed starts with "-" or "--", so that it + isn't treated as a flag to compgen. + For the documentation of COMP_WORDS, COMP_CWORD, etc see + http://www.gnu.org/software/bash/manual/html_node/Bash-Variables.html#index-COMP_005fCWORD-180 + See also: + * http://www.gnu.org/software/bash/manual/html_node/Programmable-Completion.html + * http://www.gnu.org/software/bash/manual/html_node/Programmable-Completion-Builtins.html + The bash-completion package provides the helper function + "_init_completion" which populates variables "cur", "prev", and "words". + See + http://anonscm.debian.org/gitweb/?p=bash-completion/bash-completion.git;a=blob;f=bash_completion;h=870811b4;hb=HEAD#l634 + Note that by default, bash appends a space to the completed word. When + the completion is "property=" we don't want a trailing space; calling + "compopt -o nospace" modifies the currently-executing completion + accordingly. See + http://www.gnu.org/software/bash/manual/html_node/Programmable-Completion-Builtins.html#index-compopt + +2012-11-13 16:36:46 +0000 David Rothlisberger + + * tools/gstreamer-completion: + tools/gstreamer-completion: Updated to work with the binary registry + The original registry was in xml format (~/.gstreamer-*/registry.xml). A + binary registry format was added in 2007 (commit ebf0c9d3) and made the + default in 2008 (commit 3f39fd7e). In 0.10 you could still choose at + "configure" time to use the xml registry instead; in 1.0 the binary + registry is your only choice. + This change to gstreamer-completion should work with either format + because it parses the output of "gst-inspect" instead of reading the + registry file directly. + Note that _gst_launch no longer needs an explicit "return 0" because, + unlike the previous grep command, compgen always returns 0 (unless a + genuine error occurs). + Just like the previous implementation by David Schleef, this "only + completes names of features, but that's 90% of what I want it for." + +2013-04-29 21:11:36 +0200 Stefan Sauer + + * docs/random/porting-to-1.0.txt: + porting-to-1.0.txt: nit clarification + It is the process context that matters. + +2013-04-29 13:20:11 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Always leave TYPEFIND mode when we're stopping typefinding + +2013-04-29 13:03:24 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Simplify code + This is only called when in TYPEFIND mode. + +2013-04-29 12:58:07 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Push pending events independent of the existence of a downstream chain function and peer + Downstream might create a peer only as result of the events in theory. + +2013-04-29 12:56:54 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Only push CAPS event once if we get one from upstream + https://bugzilla.gnome.org/show_bug.cgi?id=692784 + +2013-04-29 12:54:27 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Stop typefinding if we get a CAPS event from upstream + +2013-04-29 12:52:46 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Improve handling of GAP events + There's still room for improvement though. + +2013-04-29 12:48:29 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Forward events that should happen before the caps event directly + There's no point in storing them and sending them later, and doing so would + later require to distinguish between events that should come before caps and + after. + https://bugzilla.gnome.org/show_bug.cgi?id=692784 + +2013-04-29 12:48:13 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Only push pending buffers and events if we have caps + +2013-04-29 12:39:20 +0200 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + typefind: Remove code that would cause caps to be sent twice + Whenever we set typefind->caps we will also send a caps event downstream. + +2013-04-27 20:33:06 +0200 Wim Taymans + + * docs/pwg/advanced-allocation.xml: + pwg: improve allocation docs + +2013-04-27 11:46:13 +0100 Tim-Philipp Müller + + * libs/gst/check/gstcheck.c: + check: set CK_TIMEOUT_MULTIPLIER on ARM + https://bugzilla.gnome.org/show_bug.cgi?id=695599 + +2013-04-27 00:05:45 +0100 Tim-Philipp Müller + + * plugins/elements/gsttypefindelement.c: + * tests/check/pipelines/simple-launch-lines.c: + typefind: fix caps leak when used in connection with uridecodebin and playbin + Don't leak forced sink caps. + +2013-04-22 18:08:43 -0300 Thibault Saunier + + * libs/gst/controller/gsttimedvaluecontrolsource.c: + controller: Fix element-type annotations + +2013-04-25 16:38:49 +0200 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + inputselector: Try to not push read-only buffers + We should only increase the refcount before pushing if we're + really going to use the buffer afterwards. + +2013-04-25 07:15:39 +0200 Alessandro Decina + + * tests/check/gst/gstpad.c: + tests: add check for FLUSH pad probes + +2013-04-24 08:40:32 +0200 Alessandro Decina + + * gst/gstpad.c: + gstpad: run probes for FLUSH events sent with gst_pad_send_event + Move probe handling in gst_pad_send_event_unchecked so that probes are run for + FLUSH events too. + +2013-04-24 15:58:49 +0200 Sebastian Dröge + + * libs/gst/net/gstnetclientclock.c: + * libs/gst/net/gstnettimeprovider.c: + netclock: Add support for IPv6 + +2013-04-24 12:30:07 +0100 Tim-Philipp Müller + + * docs/random/porting-to-1.0.txt: + porting-to-1.0.txt: add troubleshooting section + Add note about "cannot register existing type `GstObject'" warning. + +2013-04-23 11:47:54 +0200 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Only infer TS if PTS interpolation is enabled + Otherwise this is breaking timestamps of formats that + need reordering. + https://bugzilla.gnome.org/show_bug.cgi?id=597662 + +2013-04-23 11:17:05 +0200 Wim Taymans + + * gst/gstpad.c: + pad: notify caps property on NULL as well + Also notify the caps property when it changes to NULL + +2013-04-23 11:16:16 +0200 Wim Taymans + + * gst/gstpad.c: + pad: clarify locking + +2013-04-22 23:50:17 +0100 Tim-Philipp Müller + + * MAINTAINERS: + * README: + * README.static-linking: + * common: + Automatic update of common submodule + From 3cb3d3c to 5edcd85 + +2013-04-19 15:01:20 +0200 Sebastian Dröge + + * docs/design/Makefile.am: + * docs/design/part-context.txt: + * gst/gstcontext.c: + part-context: Write some design documentation about GstContext + +2013-04-19 13:21:34 +0200 Sebastian Dröge + + * docs/design/part-caps.txt: + part-caps: Add more information about caps features, caps semantics and how to use them + +2013-04-19 11:23:31 +0200 Sebastian Dröge + + * docs/design/part-caps.txt: + * gst/gstcapsfeatures.c: + capsfeatures: Add documentation about ANY GstCapsFeatures + +2013-04-19 10:24:06 +0200 Sebastian Dröge + + * libs/gst/base/gstbasesink.c: + basesink: Don't set last_render_time if we're checking for a late buffer before ::prepare() + This makes sure that at least one buffer per second is rendered if buffers + are dropped before ::prepare. Without this change, at least one buffer per + second wouldn't be too late before ::prepare anymore but would be dropped + before ::render because of last_render_time being set before ::prepare + already. + +2013-02-08 03:57:44 -0200 Andre Moreira Magalhaes (andrunko) + + * gst/gstvalue.c: + gstvalue: Add compare function for caps + +2013-01-15 16:57:20 -0300 Thiago Santos + + * libs/gst/base/gstdataqueue.c: + * libs/gst/base/gstdataqueue.h: + * win32/common/libgstbase.def: + dataqueue: add gst_data_queue_peek + This function works just like gst_data_queue_pop, but it doesn't + remove the object from the queue. + Useful when inspecting multiple GstDataQueues to decide from which + to pop the element from. + Add: gst_data_queue_peek + +2013-04-18 10:14:09 +0100 Tim-Philipp Müller + + * tests/check/gst/.gitignore: + tests: ignore new test binary + +2013-04-18 10:13:30 +0100 Tim-Philipp Müller + + * tools/gst-launch.c: + tools: update for latest context API changes + +2013-04-18 10:17:44 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstcontext.c: + * gst/gstcontext.h: + * tests/check/gst/gstcontext.c: + * win32/common/libgstreamer.def: + context: Add gst_context_writable_structure() and let get_structure() return const again + +2013-04-18 00:44:32 +0100 Tim-Philipp Müller + + * gst/printf/printf-parse.c: + * tests/check/gst/gstinfo.c: + printf: fix handling of old printf extension specifiers for ABI compatibility + Fixes abort when the old specifiers are used. Fix up the conversion + specifier, it would get overwritten with 'c' below to the extension + format char, which then later is unhandled, leading to the abort. + Also fix up and enable unit test for this. + https://bugzilla.gnome.org/process_bug.cgi + +2013-04-18 00:28:00 +0100 Tim-Philipp Müller + + * tests/check/gst/gstinfo.c: + tests: add unit test for old printf extension specifiers + To make sure we maintain binary compatibility with the old + specifiers. + https://bugzilla.gnome.org/show_bug.cgi?id=698242 + +2013-04-18 00:19:23 +0100 Tim-Philipp Müller + + * libs/gst/check/gstcheck.h: + check: run skipped tests if explicitly requested via GST_CHECKS + If a test that's disabled with tcase_skip_broken_test() is listed + in the GST_CHECKS environment variable, run it anyway. + +2013-04-17 13:47:35 +0200 Sebastian Dröge + + * tools/gst-launch.c: + gst-launch: Add GstContext support + gst-launch will collect all the contexts from the pipeline elements + and update the overall pipeline context with it. + +2013-04-17 12:44:29 +0200 Sebastian Dröge + + * tests/check/Makefile.am: + * tests/check/gst/gstcontext.c: + context: Add unit test for GstContext + +2013-04-17 12:17:49 +0200 Sebastian Dröge + + * gst/gstcontext.c: + * gst/gstcontext.h: + context: Return a non-const GstStructure to make code simpler and update docs + +2013-03-29 14:56:57 +0100 Philippe Normand + + * docs/design/part-scheduling.txt: + * gst/gstquery.h: + * win32/common/gstenumtypes.c: + query: new _BANDWIDTH_LIMITED flag + Source elements with limited bandwidth capabilities and supporting + buffering for downstream elements should set this flag when answering + a scheduling query. This is useful for the on-disk buffering scenario + of uridecodebin to avoid checking the URI protocol against a list of + hardcoded protocols. + Bug 693484 + +2013-04-16 09:55:00 +0100 Tim-Philipp Müller + + * docs/random/porting-to-1.0.txt: + docs: fix missing flacdec in porting-to-1.0 pipeline example + +2013-04-16 09:03:52 +0100 Tim-Philipp Müller + + * docs/random/porting-to-1.0.txt: + docs: add note about decoders and parsers to porting-to-1.0 doc + +2012-10-24 11:58:35 +0200 Sebastian Dröge + + * configure.ac: + * gst/gstplugin.h: + * plugins/elements/Makefile.am: + gst: Add better support for static plugins + API: GST_PLUGIN_STATIC_DECLARE() + API: GST_PLUGIN_STATIC_REGISTER() + Based on a patch by Håvard Graff . + This now allows GST_PLUGIN_DEFINE() to create a static plugin if + GST_PLUGIN_BUILD_STATIC is defined. The resulting plugin can be + statically linked or dynamically linked during compilation but + can't be dynamically loaded during runtime. + Also adds GST_PLUGIN_STATIC_DECLARE() and GST_PLUGIN_STATIC_REGISTER(), + which allows to register a static linked plugin easily. + It is still required to manually register every single statically linked + plugin from inside the application as this can't be automated in a portable + way. + A new configure parameter --enable-static-plugins was added that allows + to build all plugins we build here as static plugins. + Fixes bug #667305. + +2013-04-12 13:50:39 +1200 Douglas Bagnall + + * docs/manual/appendix-porting.xml: + manual: Patch manual to refer to porting guide + https://bugzilla.gnome.org/show_bug.cgi?id=697845 + +2013-04-13 19:43:10 +0300 Sreerenj Balachandran + + * gst/gstpluginfeature.c: + pluginfeature: Fix the GstPluginFeature name comparison. + The gst_plugin_feature_rank_compare_func() should return + negative value, if the rank of both PluginFeatures are equal and + the name of first PluginFeature comes before the second one. + https://bugzilla.gnome.org/show_bug.cgi?id=697990 + +2013-04-14 17:54:22 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 2736592 to 3cb3d3c + +2013-04-14 17:25:35 +0100 Tim-Philipp Müller + + * autogen.sh: + * common: + Automatic update of common submodule + From aed87ae to 2736592 + +2013-04-14 11:33:41 +0100 Tim-Philipp Müller + + * gst/printf/printf.c: + * gst/printf/printf.h: + printf: disable some unused printf variants + +2013-04-14 11:23:10 +0100 Tim-Philipp Müller + + * gst/printf/gst-printf.h: + printf: use sprintf() to work around glibc complaining about %n in a writable format string + Don't use snprintf(), but use sprintf instead and do our own + length calculations, because glibc may complain about us passing + %n in a format string if the string is in writable memory, and + here the format string is always in writable memory since we + construct it on the fly. This happens if glibc has been compiled + with _FORTIFY_SOURCE=2, which seems to be the case on some + distros/systems). On the upside, we now use the sprintf code path + on all systems which should be better from a maintenance point + of view. + https://bugzilla.gnome.org/show_bug.cgi?id=697970 + +2013-04-13 12:18:28 +0100 Tim-Philipp Müller + + * tests/check/gst/gstpoll.c: + tests: skip all GstPoll tests on Windows + As they don't work there, and it's non-trivial to fix. + https://bugzilla.gnome.org/show_bug.cgi?id=697609 + +2013-04-13 12:00:12 +0100 Tim-Philipp Müller + + * tools/gst-inspect.c: + gst-inspect: only add a '*' for non-'gpointer' pointers + Spotted by Jose Antonio Santos Cadena. + https://bugzilla.gnome.org/show_bug.cgi?id=697791 + +2013-04-12 14:48:29 +0200 Gwenole Beauchesne + + * gst/gstplugin.h: + plugin: fix name expansion for GST_PLUGIN_DEFINE macro + Make GST_PLUGIN_DEFINE use G_STRINGIFY() to convert the name argument + into a meaningful string. The advantage of this is that `name' can be + expanded from other macros defined in the plug-in element. + Signed-off-by: Gwenole Beauchesne + https://bugzilla.gnome.org/show_bug.cgi?id=697872 + +2013-04-13 11:35:49 +0100 Tim-Philipp Müller + + * 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/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: + po: add new translatable strings + +2013-04-12 23:58:52 +0100 Tim-Philipp Müller + + * gst/Makefile.am: + * gst/gst_private.h: + * gst/gstelement.c: + * gst/gstinfo.c: + printf: don't build if debugging subsystem was disabled + +2013-04-10 11:51:37 +0100 Tim-Philipp Müller + + * configure.ac: + * gst/printf/Makefile.am: + * gst/printf/gst-printf.h: + printf: deal with some of the HAVE_FOO used in the printf code + Probably needs some more work for MSVC. + +2013-04-08 19:42:27 +0100 Tim-Philipp Müller + + * gst/printf/README: + * gst/printf/vasnprintf.c: + printf: fix alloca use for windows with mingw32 + Don't use just GLIB_HAVE_ALLOCA_H to check if alloca is available, + that's just for the header. GLib may define alloca for us otherwise + too irrespective of GLIB_HAVE_ALLOCA_H. + Fixes compiler warning with mingw32: + gst/printf/vasnprintf.c:73:0: warning: "alloca" redefined + +2013-04-07 20:11:21 +0100 Tim-Philipp Müller + + * configure.ac: + * gst/printf/Makefile.am: + * gst/printf/vasnprintf.c: + printf: enable and fix compiler warnings + But suppress -Wformat-nonliteral warnings since sprintf + is used with a runtime-generated format string in our + vasnprintf implementation. + +2013-04-07 18:21:00 +0100 Tim-Philipp Müller + + * gst/printf/printf-parse.c: + * gst/printf/vasnprintf.c: + * gst/printf/vasnprintf.h: + printf: fix up dodgy use of #if HAVE_FOO and #if !HAVE_FOO + Should use #ifdef and #ifndef. + +2013-04-07 17:36:29 +0100 Tim-Philipp Müller + + * gst/printf/Makefile.am: + printf: mark internal functions as internal + +2013-04-07 17:29:02 +0100 Tim-Philipp Müller + + * gst/printf/printf-parse.c: + printf: skip pointer extension signifier chars after %p + So they don't get printed after the serialised pointer string. + +2013-04-07 17:21:10 +0100 Tim-Philipp Müller + + * gst/printf/vasnprintf.c: + printf: don't leak serialised pointer extension strings + +2013-04-07 17:02:55 +0100 Tim-Philipp Müller + + * gst/printf/printf-parse.c: + printf: handle old GST_PTR_FORMAT %P and GST_SEGMENT_FORMAT %Q defines too + For binary backwards compatibility. + +2013-04-07 16:41:40 +0100 Tim-Philipp Müller + + * gst/printf/printf-args.c: + * gst/printf/printf-args.h: + * gst/printf/printf-parse.c: + * gst/printf/printf-parse.h: + * gst/printf/vasnprintf.c: + printf: make printf parser recognise our pointer extension format + and call the hook to get a string for the pointer instead. + https://bugzilla.gnome.org/show_bug.cgi?id=613081 + +2013-03-30 18:28:38 +0000 Tim-Philipp Müller + + * gst/gstinfo.c: + * gst/gstinfo.h: + * gst/printf/Makefile.am: + * gst/printf/README: + * gst/printf/printf-extension.c: + * gst/printf/printf-extension.h: + printf: add infrastructure for pointer extensions hook + Does not do anything yet. On a sidenote, we can't just use + %p\001 or so to signal the extension because g-i complains + about an invalid ascii character then, so have to resort to + something more elaborate, such as %p\aA etc. + https://bugzilla.gnome.org/show_bug.cgi?id=613081 + +2013-03-30 17:20:13 +0000 Tim-Philipp Müller + + * configure.ac: + * docs/gst/gstreamer-sections.txt: + * gst/gstconfig.h.in: + * gst/gstelement.c: + * gst/gstelement.h: + * gst/gstinfo.c: + * gst/gstinfo.h: + info: use new internal printf for debug message printing + and remove all the printf extension/specifier stuff for + the system printf. Next we need to add back the custom + specifiers to our own printf implementation. + https://bugzilla.gnome.org/show_bug.cgi?id=613081 + +2013-03-30 15:13:32 +0000 Tim-Philipp Müller + + * configure.ac: + * gst/Makefile.am: + * gst/printf/Makefile.am: + * gst/printf/README: + * gst/printf/asnprintf.c: + * gst/printf/gst-printf.h: + * gst/printf/printf-args.c: + * gst/printf/printf-args.h: + * gst/printf/printf-parse.c: + * gst/printf/printf-parse.h: + * gst/printf/printf.c: + * gst/printf/printf.h: + * gst/printf/vasnprintf.c: + * gst/printf/vasnprintf.h: + printf: add our own printf implementation for debug logging + We will add support for our own printf modifiers, so we can + get nice debug log output on all operating systems irrespective + of the specific libc version used. + https://bugzilla.gnome.org/show_bug.cgi?id=613081 + +2013-04-12 16:13:15 +0100 Wim Taymans + + * gst/gsttaglist.c: + taglist: avoid triggering an assertion + When deserialization of the structure fails, return a NULL taglist instead of + asserting. + +2013-04-11 14:54:32 +0200 Jose Antonio Santos Cadenas + + * tools/gst-inspect.c: + gst-inspect: add pointer mark to signal and action return types that are pointers + When the return type of a signal or action is a pointer, it + should have an asterisk to mark it as such. + https://bugzilla.gnome.org/show_bug.cgi?id=697791 + +2013-04-11 22:32:39 +0100 Tim-Philipp Müller + + * docs/random/porting-to-1.0.txt: + docs: document type change of playbin's connection-speed property in porting docs + +2013-04-11 14:31:01 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * win32/common/libgstreamer.def: + buffer: add _gst_max_memory() function + Add the a function to query the maximum amount of memory blocks that can be + added to a buffer. Also improve the docs for _insert_memory(). + +2013-04-11 14:04:45 +0100 Wim Taymans + + * libs/gst/net/gstnettimeprovider.c: + nettimeprovider: notify of changed bound address + Notify when the bound address is known, just like the port. + +2013-04-11 13:55:47 +0100 Wim Taymans + + * tools/gst-launch.c: + launch: handle PROGRESS messages + Wait for all PROGRESS messages (if any) to complete before going to the PLAYING + state. This is the only way we can wait for live elements to complete their + operations. + This is interesting for elements like rtspsrc that do some asynchronous network + requests as part of going to the PAUSED state. It could be possible that it, for + example, provides a clock and then we would like to wait until it completes + so that we can use the provided clock when going to PLAYING. + +2013-04-11 15:05:08 +1200 Douglas Bagnall + + * docs/pwg/advanced-negotiation.xml: + Toggle upstream and downstream in RECONFIGURE paragraph. + +2013-04-11 10:11:25 +1200 Douglas Bagnall + + * libs/gst/base/gstcollectpads.c: + GstCollectPads documentation: gst_collect_pads_read is gone. + +2013-04-10 21:24:38 +0200 Stefan Sauer + + * gst/gstbus.c: + bus: fix the precondition for gst_bus_disable_sync_message_emission() + Use the right variable and invert the test. The precondition should catch + someone calling to once too often. + +2013-04-09 19:37:06 -0400 Olivier Crête + + * gst/gstcapsfeatures.c: + capsfeatures: Init debug category before ever using it + +2013-04-09 20:59:36 +0200 Stefan Sauer + + * common: + Automatic update of common submodule + From 04c7a1e to aed87ae + +2013-04-03 21:32:54 +0400 Руслан Ижбулатов + + * docs/manuals.mak: + Use xlstproc instead of docbook2html + +2013-04-09 10:17:45 +0100 Tim-Philipp Müller + + * libs/gst/net/gstnetclientclock.c: + netclientclock: bind socket before querying local address + Fails on windows otherwise. + https://bugzilla.gnome.org/show_bug.cgi?id=697608 + +2013-04-08 13:14:35 +0400 Руслан Ижбулатов + + * configure.ac: + configure: Also check for clock_gettime in libpthread + libwinpthreads provides POSIX time API. + It also provides libpthread alias for itself, for compatibility, so that + is what we will link with. + Fixes #697550 + +2013-04-08 15:30:07 +0400 Руслан Ижбулатов + + * gst/gstsystemclock.c: + * gst/gstutils.c: + clock: Do use HAVE_CLOCK_GETTIME + Fixes #697549 + +2013-04-08 14:42:15 +0400 Руслан Ижбулатов + + * tests/check/gst/gstabi.c: + * tests/check/gst/struct_i386w.h: + libsabi: Special struct size values for W32 + These account for both possible type size mismatch AND -mms-bitfields + packing. Sizes are taken from an i686-w64-mingw32-built GStreamer, + gcc 4.8.0, mingw-w64 svn-r5685. + Fixes #697551 + +2013-04-09 09:22:39 +0400 Руслан Ижбулатов + + * tests/check/gst/gstpad.c: + tests: fix GstPad test on windows and in CK_FORK=no mode + Need to clear buffer lists at the end of each test. + https://bugzilla.gnome.org/show_bug.cgi?id=697610 + +2013-04-06 16:09:54 -0700 David Schleef + + * tools/gst-launch.c: + gst-launch: Fix space in fault message + +2013-04-06 22:10:58 +0200 Sebastian Dröge + + * gst/gstcapsfeatures.c: + capsfeatures: Copy ANY flag when copying caps features too + +2013-04-06 21:49:25 +0200 Sebastian Dröge + + * gst/gstcaps.c: + * tools/gst-inspect.c: + caps: Handle ANY caps features properly in more places + +2013-04-06 21:21:39 +0200 Sebastian Dröge + + * tests/check/gst/gstcaps.c: + caps: Add test for operations on caps with ANY features + +2013-04-06 21:09:49 +0200 Sebastian Dröge + + * gst/gstcaps.c: + caps: Properly handle ANY caps features in caps operations + +2013-04-05 21:10:48 +0200 Stefan Sauer + + * gst/gstbus.c: + bus: update signal docs for gst_bus_enable_sync_message_emission() + +2013-04-05 10:15:37 +0200 Wim Taymans + + * plugins/elements/gstmultiqueue.c: + multiqueue: ignore empty not-linked queues + We need to ignore the not-linked queues in the underrun and overrun callbacks + because they are expected to be empty. + +2013-04-04 23:12:52 +0100 Tim-Philipp Müller + + * gst/gstcaps.c: + caps: fix caps feature leak + Fixes leaks in 14 core unit tests including + gst/gstcaps. + +2013-04-04 19:16:23 +0200 Wim Taymans + + * plugins/elements/gstmultiqueue.c: + multiqueue: start pushing again on RECONFIGURE + When we got NOT_LINKED before and we receive a RECONFIGURE event, start pushing + again on the source pad. + See https://bugzilla.gnome.org/show_bug.cgi?id=676304 + +2013-04-04 19:07:29 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: start pushing again on RECONFIGURE + When we got NOT_LINKED before and we receive a RECONFIGURE event, start pushing + again on the source pad. + See https://bugzilla.gnome.org/show_bug.cgi?id=676304 + +2013-04-04 19:06:35 +0200 Wim Taymans + + * plugins/elements/gstqueue.c: + queue: start pushing again on RECONFIGURE + When we got NOT_LINKED before and we receive a RECONFIGURE event, start pushing + again on the source pad. + See https://bugzilla.gnome.org/show_bug.cgi?id=676304 + +2013-04-04 17:59:10 +0200 Wim Taymans + + * gst/gststructure.c: + structure: simplify is_subset check + Iterate over the fields of the superset instead of those of the subset. + This way we can check the presence of the subset field and do the subset check + in one iteration. + +2013-04-04 17:46:09 +0200 Wim Taymans + + * gst/gstcaps.c: + caps: update docs, is_subset() works now + +2013-04-04 16:39:23 +0200 Wim Taymans + + * gst/gstbufferpool.c: + bufferpool: fix docs + +2013-04-04 16:20:24 +0200 Wim Taymans + + * gst/gstpad.c: + * gst/gstpad.h: + * win32/common/libgstreamer.def: + pad: add gst_pad_store_sticky_event() + Rewire some internal functions and expose a new + gst_pad_store_sticky_event() function. + API: gst_pad_store_sticky_event() + +2013-04-04 15:45:23 +0200 Wim Taymans + + * gst/gstpad.h: + pad: clarify docs + +2013-04-04 15:45:15 +0200 Wim Taymans + + * gst/gstpad.c: + pad: improve debug + +2013-04-04 10:17:30 +0200 Wim Taymans + + * gst/gstsegment.c: + segment: don't WARN, just DEBUG + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=696911 + +2013-03-30 11:06:59 +0000 Nicolas Dufresne + + * gst/gstsegment.c: + segment: Fix seeking when position is slightly outside the segment + Very often, when the end of a segment is detected by demuxer, the position + is slightly outside the segment boundaries. Currently, if that is the case + the base will be set to NONE instead of normal accumulation. This would + break non-flushing seeks in oggdemux and most likely other demuxers. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=696899 + +2013-04-03 17:29:51 +0200 Wim Taymans + + * win32/common/libgstreamer.def: + defs: update + +2013-04-03 16:02:34 +0200 Wim Taymans + + * gst/gst.c: + gst: add stream flags + +2013-04-02 18:17:00 -0600 Brendan Long + + * docs/random/porting-to-1.0.txt: + porting-to-1.0.txt: subtitle text media types changed as well + https://bugzilla.gnome.org/show_bug.cgi?id=697153 + +2013-04-02 23:51:06 +0100 Tim-Philipp Müller + + * gst/gstcontext.c: + * gst/gstevent.c: + * gst/gstevent.h: + * tests/check/gst/.gitignore: + docs: more since markers and other docs fixes + +2013-04-02 23:21:39 +0100 Tim-Philipp Müller + + * gst/gstcapsfeatures.c: + docs: add since markers to capsfeatures docs + +2013-04-02 23:18:42 +0100 Tim-Philipp Müller + + * scripts/git-update.sh: + scripts: add some more modules to git-update.sh + https://bugzilla.gnome.org/show_bug.cgi?id=697058 + +2013-04-02 23:04:51 +0100 Tim-Philipp Müller + + * scripts/gst-uninstalled: + gst-uninstalled: add uninstalled orc/orc-test/.libs to library paths + This is needed by the unit tests in gst-plugins-base, -good etc. + Spotted by Alex Kaye. + https://bugzilla.gnome.org/show_bug.cgi?id=697093 + +2013-04-02 22:13:22 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstcaps.c: + * gst/gstcapsfeatures.c: + * gst/gstcapsfeatures.h: + * tests/check/gst/gstcapsfeatures.c: + capsfeatures: Add GST_CAPS_FEATURES_ANY + This is equal to any other caps features but results in unfixed caps. It + would be used by elements that only look at the buffer metadata or are + currently working in passthrough mode, and as such don't care about any + specific features. + +2013-04-01 22:13:10 +0100 Tim-Philipp Müller + + * gst/gstinfo.c: + info: minor cosmetic changes + Let's not use ugly leading underscores for + static functions. + +2013-04-01 21:23:21 +0100 Tim-Philipp Müller + + * gst/gstinfo.c: + info: fix object printing of caps features in debug log + +2013-04-01 16:38:43 +0200 Stefan Sauer + + * docs/design/draft-tracing.txt: + draft-tracing: update draft design with timer ideas + +2013-03-30 17:03:44 +0100 Stefan Sauer + + * gst/gstinfo.c: + info: refactor pretty printing objects + Extract formatters into local functions. Change the structure filtering so that + it works for taglists too. + +2013-03-30 16:39:38 +0100 Stefan Sauer + + * gst/gstelement.c: + element: make post_message and query more alike + +2013-04-01 10:20:01 +0200 Sebastian Dröge + + * tools/gst-inspect.c: + gst-inspect: Print caps features too + +2013-04-01 10:19:25 +0200 Sebastian Dröge + + * gst/gstcapsfeatures.c: + capsfeatures: For copying features it's not required to have no parent refcount + +2013-04-01 10:19:01 +0200 Sebastian Dröge + + * gst/gstcaps.c: + caps: Set features' parent refcount in gst_caps_set_features() too + +2013-04-01 10:18:39 +0200 Sebastian Dröge + + * gst/gstcaps.c: + caps: Set sysmem features if explicitely requested + +2013-03-31 19:09:46 +0200 Sebastian Dröge + + * docs/design/part-caps.txt: + design: Add the caps features and describe how the caps operations actually work + +2013-03-30 15:35:19 +0100 Sebastian Dröge + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + * gst/Makefile.am: + * gst/gst.c: + * gst/gst.h: + * gst/gst_private.h: + * gst/gstcaps.c: + * gst/gstcaps.h: + * gst/gstcapsfeatures.c: + * gst/gstcapsfeatures.h: + * gst/gstinfo.c: + * gst/gststructure.c: + * gst/gstvalue.c: + * gst/gstvalue.h: + * tests/check/Makefile.am: + * tests/check/gst/gstcaps.c: + * tests/check/gst/gstcapsfeatures.c: + * win32/common/libgstreamer.def: + caps: Add new data type for handling caps features to the caps + These are meant to specify features in caps that are required + for a specific structure, for example a specific memory type + or meta. + Semantically they could be though of as an extension of the media + type name of the structures and are handled exactly like that. + +2013-03-31 15:30:19 +0100 Tim-Philipp Müller + + * gst/gstevent.h: + event: add SELECT and UNSELECT stream flags for stream-start event + So demuxers can signal which audio/video/subtitle streams should + be selected by default and which should not be selected + automatically. + API: GST_STREAM_FLAG_SELECT + API: GST_STREAM_FLAG_UNSELECT + https://bugzilla.gnome.org/show_bug.cgi?id=695968 + https://bugzilla.gnome.org/show_bug.cgi?id=690911 + +2013-01-06 20:27:54 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstevent.c: + * gst/gstevent.h: + * tests/check/gst/gstevent.c: + * win32/common/libgstreamer.def: + event: add stream flags to stream-start event + API: gst_event_set_stream_flags() + API: gst_event_parse_stream_flags() + API: GST_STREAM_FLAG_NONE + API: GST_STREAM_FLAG_SPARSE + https://bugzilla.gnome.org/show_bug.cgi?id=600648 + +2013-03-31 11:26:32 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstbin.c: + * gst/gstelement.c: + * gst/gstelement.h: + * win32/common/libgstreamer.def: + element: Add API to get the last set context from an element + Elements should override GstElement::set_context() and also call + gst_element_set_context() to keep this context up-to-date with + the very latest context they internally use. + +2013-03-30 14:04:28 +0100 Stefan Sauer + + * docs/design/draft-tracing.txt: + design: add initial tracing design doc + +2013-03-30 11:47:29 +0100 Sebastian Dröge + + * gst/gstpad.c: + pad: Let gst_pad_get_allowed_caps() pass the caps own caps as filter + This will reduce the number of caps created downstream and we don't + need to intersect in the very end with the pad's own caps. + +2013-03-30 10:24:27 +0100 Josep Torra + + * libs/gst/base/gstbasesink.c: + basesink: fixes compiler warning + gstbasesink.c: In function 'gst_base_sink_chain_unlocked': + gstbasesink.c:3204: warning: 'ret' may be used uninitialized in this function + +2013-03-29 19:01:59 +0100 Stefan Sauer + + * gst/gstchildproxy.c: + childproxy: fix gir warning + +2013-03-29 18:49:14 +0100 Edward Hervey + + * docs/pwg/building-boiler.xml: + Revert "pwg: Fix example" + This reverts commit 5d64f27d881274a40f0441bb8c5b3816fdfc5b9e. + *sigh* + +2012-11-06 09:41:58 +0100 Edward Hervey + + * docs/pwg/building-boiler.xml: + pwg: Fix example + +2012-11-11 13:52:25 +0100 Edward Hervey + + * gst/gstpad.c: + pad: Remove SEGMENT sticky events when flushing + When flushing, it is expected that upstream will send a SEGMENT + event afterwards. + This also avoids stray SEGMENT events from coming through after a + flush. + +2013-03-28 15:35:13 +0100 Sebastian Dröge + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + * gst/Makefile.am: + * gst/gst.c: + * gst/gst_private.h: + * gst/gstbin.c: + * gst/gstcontext.c: + * gst/gstcontext.h: + * gst/gstelement.c: + * gst/gstelement.h: + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstinfo.c: + * gst/gstmessage.c: + * gst/gstmessage.h: + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gstquery.c: + * gst/gstquery.h: + * win32/common/libgstbase.def: + * win32/common/libgstreamer.def: + gst: Add new GstContext miniobject for sharing contexts in a pipeline + +2013-03-28 16:42:50 +0100 Stefan Sauer + + * libs/gst/controller/gstargbcontrolbinding.c: + argb-controlbinding: fix messed up property setter + This was misassigning the control sources. It was also leaking the old values if + a control source would be replaced. + +2013-03-27 18:25:08 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: reset next_pts upon SEGMENT event + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=691481 + +2013-02-26 19:58:49 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbaseparse.h: + baseparse: more inter-timestamp tracking + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=691481 + +2013-03-26 19:22:18 -0400 Olivier Crête + + * docs/gst/gstreamer-sections.txt: + * gst/gstallocator.c: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * win32/common/libgstreamer.def: + buffer: Add annotations and pygi friendly extraction function + API: gst_buffer_extract_dup + +2013-03-27 17:08:51 +0100 Wim Taymans + + * docs/random/porting-to-1.0.txt: + porting: hopefully clarify a little + +2013-03-25 18:11:54 -0700 David Schleef + + * gst/gstutils.c: + Update docs for gst_pad_create_stream_id_printf() + To indicate that format strings should be alpha sortable. + +2013-03-25 09:16:05 +0100 Sebastian Dröge + + * tests/check/gst/gstcaps.c: + caps: Add unit test for GST_CAPS_{ANY,NONE} and GST_STATIC_CAPS_{ANY,NONE} + https://bugzilla.gnome.org/show_bug.cgi?id=696435 + +2013-03-25 09:19:24 +0100 Sebastian Dröge + + * gst/gstcaps.c: + caps: Fix gst_static_caps_get(GST_STATIC_CAPS_NONE) + https://bugzilla.gnome.org/show_bug.cgi?id=696435 + +2013-03-21 21:00:54 -0400 Nicolas Dufresne + + * libs/gst/base/gstbasesrc.c: + basesrc: Don't send error if negotiate fails because we are flushing + Negotiation may be aborted by a flush from another thread that need to + stop the task (i.e. seek). Check that case and silently pause the task. + https://bugzilla.gnome.org/show_bug.cgi?id=696357 + +2013-03-24 17:53:35 +0000 Tim-Philipp Müller + + * docs/design/part-toc.txt: + * gst/gsttoc.c: + toc: some documentation updates + +2013-03-22 20:02:57 +0000 Tim-Philipp Müller + + * docs/pwg/building-queryfn.xml: + docs: fix typo in query function example in Plugin Writer's Guide + https://bugzilla.gnome.org/show_bug.cgi?id=696142 + +2013-03-07 12:11:30 +0100 Jonas Holmberg + + * tests/check/libs/collectpads.c: + tests: fix spurious failure in test_collect collectpads test + pop() in collected callback. + There were three threads in the test cases that hanged: the test thread and two + threads that push buffers. Each thread push one buffer on one pad. There are + two pads in the collectpads so the second buffer will trigger the + collect-callback. + This is what happens when the hang occurs: + The first thread pushes a buffer and initializes a cookie to the value of a + counter in the collectpads object and waits on a cond for the counter to change + and for someone to consume the buffer (i.e. _pop() it). + The second thread pushes a buffer and calls the collected callback, which + signals the cond that the test thread is waiting for. + The test thread pops both buffers (without holding any lock). Each call to + _pop() increases the counter broadcasts the condition that the first thread is + now waiting for. It then joins both threads (hangs). + The first thread wakes up and returns, since its buffer has been consumed. + The second thread starts executing again. When the callback, called by the + second thread, has returned it initializes a cookie to the value of a counter, + which has already prematurely been increased by the test thread when it popped + the buffers, and wait's on a cond for the counter to change and for someone to + consume the buffer (i.e. _pop() it). Since the buffer has already been poped + and the counter has already been increased it will be stuck forever. + https://bugzilla.gnome.org/show_bug.cgi?id=685555 + +2013-03-16 12:05:39 +0000 Tim-Philipp Müller + + * scripts/gst-uninstalled: + gst-uninstalled: remove ffmpeg libs from dynamic linker paths + We link those libs into the plugin statically, or use external + system libs, but never the internal snapshot dynamically. + +2013-03-16 12:00:55 +0000 Tim-Philipp Müller + + * scripts/gst-uninstalled: + gst-uninstalled: add gst-editing-serves to GI_TYPELIB_PATH + So pygi can find it. + https://bugzilla.gnome.org/show_bug.cgi?id=695937 + +2013-03-12 13:53:57 +0000 Tim-Philipp Müller + + * gst/gstutils.h: + utils: make sure slow GST_READ_UINT* variants don't have unexpected side effects + Fixes unit test on systems where unaligned memory access is not possible. + https://bugzilla.gnome.org/show_bug.cgi?id=695599 + +2013-03-05 11:14:41 +0100 Wim Taymans + + * tools/gst-launch.c: + launch: don't exit the loop on buffering in paused + When we receive a buffering message of 100% in the paused state, we exit + the event_loop and move to the PLAYING state. What should happen is that + we wait for both ASYNC-DONE and 100% buffering before continueing. + +2013-03-08 13:15:32 +0100 Stefan Sauer + + * docs/design/part-controller.txt: + design: update controller design and add some thoughs for future stuff + +2013-03-08 08:13:06 +0100 Stefan Sauer + + * libs/gst/controller/gstdirectcontrolbinding.c: + docs: mention clipping of values in control-binding docs + +2013-03-08 08:10:20 +0100 Stefan Sauer + + * tests/check/gst/gstcontroller.c: + controller: code cleanups + Use a property for accessing the control-source on the binding. Drop base_init + on the test object. + +2013-03-07 11:46:33 +0100 Sebastian Dröge + + * gst/gstquery.c: + query: gst_query_get_n_allocation_params() returns a new ref to the allocator + +2013-03-07 11:35:03 +0100 Stefan Sauer + + * tests/check/libs/controller.c: + controller: remove a bogus test + We previously forgot to initilize the amplitde property to the default and thus it was 0.0. Therefore a default lfo controlsource returned a series of 0.0 and the test was asserting on that. + +2013-03-07 09:15:14 +0100 Stefan Sauer + + * gst/gstcontrolbinding.c: + * libs/gst/controller/gstargbcontrolbinding.c: + * libs/gst/controller/gstdirectcontrolbinding.c: + controlbinding: relax the pspec for the control-source + We can change control sources on controlbindings. + +2013-03-07 09:12:59 +0100 Stefan Sauer + + * libs/gst/controller/gstlfocontrolsource.c: + lfo: set a sensible lower boundary for the frequency + Use DBL_MIN, which is a the smalles double greater than zero that is not in + denormal format. This exposes the limit better than the runtime check. + +2013-03-06 23:59:28 +0000 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 2de221c to 04c7a1e + +2013-03-06 16:40:27 +0100 Stefan Sauer + + * libs/gst/controller/gstlfocontrolsource.c: + lfocontrolsource: init the amplitude to the default and update the docs + +2013-03-05 11:30:22 +0100 Sebastian Dröge + + * scripts/gst-uninstalled: + gst-uninstalled: Add all the base/bad libraries and remove obsolete ones + +2013-03-03 16:00:11 +0000 Tim-Philipp Müller + + * libs/gst/base/gstbasesink.c: + basesink: fix use of uninitialized variable + Running suite(s): GstBaseSink + ==22023== Conditional jump or move depends on uninitialised value(s) + ==22023== at 0x505FFCE: gst_base_sink_get_sync_times (gstbasesink.c:1936) + ==22023== by 0x5068C80: gst_base_sink_do_sync (gstbasesink.c:2379) + ==22023== by 0x506BCD2: gst_base_sink_default_wait_event (gstbasesink.c:2903) + ==22023== by 0x50633A4: gst_base_sink_default_event (gstbasesink.c:2918) + ==22023== by 0x6F5C216: gst_fake_sink_event (gstfakesink.c:383) + ==22023== by 0x505F164: gst_base_sink_event (gstbasesink.c:3108) + ==22023== by 0x52FA090: gst_pad_send_event_unchecked (gstpad.c:4822) + ==22023== by 0x5303756: gst_pad_send_event (gstpad.c:4984) + ==22023== by 0x40165B: basesink_test_gap (basesink.c:148) + +2013-03-03 12:06:36 +0100 Sebastian Dröge + + * gst/gstbuffer.c: + buffer: Fix memory copying logic in copy_into() + https://bugzilla.gnome.org/show_bug.cgi?id=695035 + +2013-03-03 11:28:32 +0100 Sebastian Dröge + + * gst/gstregistrychunks.c: + registrychunks: Use correct print format specifiers to fix compiler warnings + +2013-02-22 14:22:01 -0800 David Schleef + + * gst/gstobject.c: + Fix misspellings of 'continuous' + +2013-02-22 14:56:49 -0800 David Schleef + + * libs/gst/base/gstcollectpads.c: + collectpads: take DTS into account + Importantly, this patch converts DTS to running time. Less importantly, + and possibly a problem for some muxers, is that it orders buffers by + DTS (if it is valid, otherwise PTS). This is generally correct, but + might be somewhat surprising to muxers. + Also note that once converted to running time, DTS can end up negative. + +2013-02-28 22:59:43 +0100 Stefan Sauer + + * docs/manual/advanced-dparams.xml: + manual: improve the controller docs a little more + Reword some sections. Explain value mappings better. + +2013-02-28 19:40:32 +0000 Tim-Philipp Müller + + * scripts/gst-uninstalled: + gst-uninstalled: add gst-libav to pkg-config path + +2013-02-27 22:15:48 +0100 Stefan Sauer + + * gst/gstsegment.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + seeking: add more logging for seeking + Especially add logging to error code paths. + +2013-02-27 10:09:56 +0100 Sebastian Dröge + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + buffer: Gracefully handle gst_memory_copy() returning NULL without crashing + gst_buffer_copy_into() and gst_buffer_resize_range() can now fail. + +2013-02-26 17:33:30 +0100 Wim Taymans + + * gst/gstallocator.c: + * win32/common/libgstreamer.def: + allocator: small internal cleanups + Rename System memory allocator to GstAllocatorSysmem and the memory to + GstMemorySystem. + +2013-02-26 15:37:24 +0100 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstmemory.c: + * gst/gstmemory.h: + memory: add method to check memory type + Add a method to check if a memory was allocated from an allocator of + a given type. + API: gst_memory_is_type() + +2013-02-26 15:36:10 +0100 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + docs: improve docs a little + +2013-02-26 15:32:25 +0100 Wim Taymans + + * docs/design/part-gstbin.txt: + * docs/design/part-messages.txt: + * gst/gstbin.c: + use GST_MESSAGE_DURATION_CHANGED in docs and code + +2013-02-26 14:40:38 +0100 Wim Taymans + + * gst/gstmemory.c: + memory: don't unref allocator too soon + Unref the allocator *after* we have freed the memory. We also need to keep + a ref to the allocator around because following the now freed memory would + lead to crashes. + +2013-02-26 09:08:49 +0100 Sebastian Dröge + + * gst/gstbuffer.c: + buffer: Fix inverted logic for deciding if memory should be shared or copied + https://bugzilla.gnome.org/show_bug.cgi?id=694717 + +2013-02-26 07:50:13 +0100 Stefan Sauer + + * docs/random/porting-to-1.0.txt: + porting: mention segment accumulation in the porting guide + This needs more detail, but at least gives people a hint on the issue. + +2013-02-26 07:48:35 +0100 Stefan Sauer + + * gst/gstmessage.c: + docs: s/start/done/ copy'n'paste mistake + +2013-02-25 13:57:43 +0100 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstquery.c: + * gst/gstquery.h: + * win32/common/libgstreamer.def: + query: Add new API to remove allocation params and pools from the allocation query + +2013-02-25 13:24:33 +0100 Sebastian Dröge + + * gst/gstquery.c: + query: Document that the first allocator in the allocation query should allow mapping to system memory + +2013-02-24 09:24:26 +0100 Sebastian Dröge + + * gst/gstmemory.c: + memory: Keep a reference to the allocator + Otherwise the allocator might get freed while it's still used + by the memory + +2013-02-24 09:33:03 +0100 Sebastian Dröge + + * gst/gstbuffer.c: + buffer: If sharing a GstMemory fails, fall back to copying it + +2013-02-23 18:36:15 +0000 Tim-Philipp Müller + + * docs/random/porting-to-1.0.txt: + docs: porting-to-1.0.txt: some element names have changed + +2013-02-23 08:19:48 +0100 Sebastian Dröge + + * gst/gstmemory.h: + memory: It's contiguous, not continous + +2013-02-22 12:41:09 +0100 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstmemory.h: + memory: Add new memory flag to specify that memory can't be mapped + +2013-02-22 09:02:22 +0100 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstmemory.h: + memory: Add memory flag to mark physically continous memory + +2013-02-16 23:02:21 +0000 Tim-Philipp Müller + + * libs/gst/base/gstbasetransform.c: + basetransform: don't pass NULL outcaps to transform_size on shutdown + gst_pad_get_current_caps() on the source pad might yield NULL caps + if we're being shut down and the source pad has already been + deactivated by the other thread that's changing state. Just bail + out in that case, instead of passing NULL caps to the transform_size + function, which it might not expect. + Fixes spurious warnings in audioresample shutdown unit test. + https://bugzilla.gnome.org/show_bug.cgi?id=693996 + +2013-02-21 10:18:14 +0100 Sebastian Dröge + + * scripts/gst-uninstalled: + gst-uninstalled: Add ORC + +2013-02-19 18:00:48 +0000 Tim-Philipp Müller + + * gst/gstutils.h: + * tests/check/gst/gstutils.c: + utils: avoid unexpected side-effects of GST_WRITE_* macros + Make sure the data argument is only evaluated once. + +2013-02-19 17:36:50 +0000 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/check/gstcheck.h: + * tests/check/gst/gstutils.c: + check: add some more fail_unless_*() macros for convenience + API: fail_unless_equals_int_hex + API: assert_equals_int_hex + API: fail_unless_equals_int64_hex + API: assert_equals_int64_hex + API: fail_unless_equals_uint64_hex + API: assert_equals_uint64_hex + API: fail_unless_equals_pointer + API: assert_equals_pointer + +2013-02-19 12:42:32 +0000 Tim-Philipp Müller + + * scripts/gst-uninstalled: + scripts: add new -base allocators library to gst-uninstalled search paths + +2013-02-18 20:47:04 +0100 Stefan Sauer + + * tests/check/libs/collectpads.c: + collectpads: add two more tests using collectpads within an element + Add a static plugin with a rudimentary element using collectpads and do some + pipeline based tests. + +2013-02-17 12:50:03 -0800 David Schleef + + * docs/manual/appendix-porting.xml: + docs: Fix some ambiguous wording + +2013-02-17 19:53:55 +0100 Stefan Sauer + + * libs/gst/controller/gsttriggercontrolsource.c: + triggercontrolsource: add missing end_iter check for sequence + Avoid accessing the end-iter, this is a marker without a data field. + +2013-02-17 13:20:20 +0100 Stefan Sauer + + * gst/gstelement.c: + docs: link to the appropriate messages from gst_elements_set_state() docs + For an async state change return one would wait for ASYNC_DONE or STATE_CHANGED. + +2013-02-16 14:20:06 +0000 Tim-Philipp Müller + + * gst/gstbuffer.h: + buffer: add since marker for new COPY_DEEP buffer flag + +2013-02-16 14:59:02 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + buffer: add option to deep copy a buffer + Add a buffer copy flag to force a memory copy in all cases. + +2013-02-14 14:09:13 +0000 Tim-Philipp Müller + + * gst/gstutils.c: + Revert "utils: Use gst_pad_get_pad_template() in gst_element_get_compatible_pad_template()" + This reverts commit 1a1a9e143fb0e155d7627aa8e489cd5d04bc093c. + This breaks the pipelines/tagschecking unit test for some reason + (fakesrc ! capsfilter ! qtmux linking fails now). It might be + a bug in the unit test of course, but someone will need to + investigate this. Reverting for now. + https://bugzilla.gnome.org/show_bug.cgi?id=692508 + +2013-02-15 13:08:18 +0100 Wim Taymans + + * gst/gstallocator.c: + allocator: improve fallback copy function + Only use the allocator of the copied memory when we can use the default + _alloc function on it. Otherwise we will have to use the default + allocator for the copy. + +2013-02-14 13:55:10 +0000 Tim-Philipp Müller + + * docs/gst/running.xml: + docs: fix location in user's home directory where GStreamer looks for plugins + It's based on the xdg user data dir now in 1.0. + +2013-01-25 06:50:27 -0300 Niv Sardi + + * gst/gstutils.c: + utils: Use gst_pad_get_pad_template() in gst_element_get_compatible_pad_template() + motivation comes from: /* FIXME: why not gst_pad_get_pad_template (pad); */ + this code path is quite nicer, we now only revert to creating the template + if gst_pad_get_pad_template fails. + with this fork, we gain a non-allocation of GstCaps *templcaps + https://bugzilla.gnome.org/show_bug.cgi?id=692508 + +2013-02-13 00:27:28 +0000 Krzysztof Konopko + + * tools/gst-launch.c: + gst-launch: Use g_unix_signal_add() to handle keyboard interruption + Current implementation uses a traditional signal handler and a 250ms + timeout callback in the event loop. Adding a GSource with + g_unix_signal_add() to the GMainLoop is a much more elegant solution. + The signal handler with this approach can send a message to the bus + directly rather than set a flag as all dispatching intricacies are handled + by GLib. + https://bugzilla.gnome.org/show_bug.cgi?id=693481 + +2013-02-14 00:07:22 +0000 Tim-Philipp Müller + + * docs/gst/running.xml: + docs: flesh our 'Running GStreamer' bits a bit + https://bugzilla.gnome.org/show_bug.cgi?id=693607 + +2013-02-13 23:27:16 +0000 Tim-Philipp Müller + + * tools/gst-launch.1.in: + docs: flesh out gst-launch-1.0 man page a little + Fix up default location of the registry. + Mention more options for GST_DEBUG (wildcards and + named debug levels). + Explain what to do with the dot files that can be + produced by setting GST_DEBUG_DUMP_DOT_DIR. + https://bugzilla.gnome.org/show_bug.cgi?id=693607 + +2012-12-27 00:03:06 +0100 Gert Michael Kulyk + + * docs/manual/advanced-metadata.xml: + docs: fix advanced-metadata code example in manual + https://bugzilla.gnome.org/show_bug.cgi?id=690751 + +2013-02-13 16:52:13 +0000 Tim-Philipp Müller + + * gst/gstmessage.c: + * tests/check/gst/gstmessage.c: + message: accept NULL error argument in gst_message_parse_{error,warning,info} + And simplify code a bit while at it. + https://bugzilla.gnome.org/show_bug.cgi?id=693704 + +2013-02-13 17:00:23 +0100 Sebastian Dröge + + * gst/gstvalue.c: + * tests/check/gst/gstvalue.c: + value: Remove set-style bitmask intersection/union/subtraction functions + Set operations on the bitmasks don't make much sense and result + in invalid caps when used as a channel-mask. They are now handled + exactly like integers. + This functionality was not used anywhere except for tests. + https://bugzilla.gnome.org/show_bug.cgi?id=691370 + +2013-02-13 11:19:06 +0100 Sebastian Dröge + + * gst/gstbin.c: + bin: The latency query should return TRUE by default, different to other queries + Fixes unit test failures caused by f3d268de7f7fb1161778a9a95e0d54d8c89ef626 + +2013-02-13 10:46:37 +0100 Sebastian Dröge + + * gst/gststructure.c: + * tests/check/gst/gstcaps.c: + structure: Make sure that subsets have all fields of the superset + "video/x-h264,parsed=(boolean)true" is not a superset of + "video/x-h264,stream-format=(string)byte-stream,alignment=(string)nal" + for example. + https://bugzilla.gnome.org/show_bug.cgi?id=693365 + +2013-02-12 12:32:23 -0800 David Schleef + + * win32/common/libgstbase.def: + update exports for baseparse API changes + +2013-02-12 12:31:42 -0800 David Schleef + + * libs/gst/base/gstbaseparse.c: + baseparse: Fix doc typo + +2013-02-11 16:51:48 -0800 David Schleef + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbaseparse.h: + baseparse: add gst_base_parse_set_ts_at_offset() + Sets the buffer timestamps based on last seen timestamps at a + particular offset into the frame. + API: gst_base_parse_set_ts_at_offset() + +2013-02-11 16:42:41 -0800 David Schleef + + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstadapter.h: + adapter: Add gst_adapter_prev_[pd]ts_at_offset() + Original patch written by Michael Smith . + API: gst_adapter_prev_pts_at_offset() + API: gst_adapter_prev_dts_at_offset() + +2013-02-09 18:14:09 +0100 Philippe Normand + + * gst/gstbin.c: + bin: query sink elements and source pads of the bin + gst_bin_query() now forwards the query to the source pads as well if + none of the sinks of the bin satisfied the query. This helps in the + case of DURATION queries done a bin containing a source element. + Fixes bug 638749 + +2013-02-07 12:47:02 +0100 Alexander Schrab + + * gst/gstbin.c: + bin: Let gst_bin_send_event() send events to ghost pads as well + +2013-02-11 22:52:25 +0100 Stefan Sauer + + * gst/gstutils.c: + * libs/gst/base/gstbasesrc.c: + compat: kill more uses of gst_pad_set_caps() + +2013-02-12 00:08:51 +1100 Tim 'mithro' Ansell + + * gst/gstvalue.c: + gstvalue: Adding offset to GstSegment serialize/deserialize. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=693587 + +2013-02-09 12:32:02 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: improve PTS interpolating + ... and tracking of DTS. Fixes cases where PTS is locked on to the + DTS of an incoming buffer with no PTS with invalid data, leading to + no outgoing PTS (since it is not allowed smaller than DTS). + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=691481 + +2013-02-08 21:28:18 +0100 Stefan Sauer + + * docs/random/porting-to-1.0.txt: + docs: add more porting details + +2013-02-08 21:21:48 +0100 Stefan Sauer + + * gst/gstcontrolbinding.c: + * gst/gstobject.c: + * libs/gst/controller/gstdirectcontrolbinding.c: + controlbinding: error handling for binding controlsources to wrong properties + Add warning if property is not suitable for controlling. When adding a control- + binding check that pspec!=NULL. + +2013-02-07 13:08:49 +0100 Wim Taymans + + * gst/gstelement.c: + element: remove old docs about iterators + +2013-02-07 12:52:26 +0100 Wim Taymans + + * gst/gstbin.c: + bin: remove old comment + The iterators now return a GValue and not the object directly anymore. + +2013-02-07 12:50:08 +0100 Wim Taymans + + * gst/gstbin.c: + bin: reset GValue from iterator after usage + +2013-02-05 17:15:37 +0100 Wim Taymans + + * tests/check/libs/basesink.c: + tests: add basesink test + +2013-02-05 17:19:50 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: handle sync of EOS after item without duration + After a buffer or GAP without duration, an EOS event should be rendered + immediately instead of waiting for the end of the segment. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=692868 + +2013-02-02 11:55:52 -0800 Nate Bogdanowicz + + * gst/gstpipeline.c: + gstpipeline: fix failed assertion caused by seeking pipeline with NULL clock + Under certain GST_STATE_CHANGED_PAUSED_TO_PLAYING transitions, a pipeline with + a NULL clock will fail an assertion due to an unchecked call to gst_object_ref(). + This is fixed by simply adding a check and only ref-ing if the clock is not NULL. + https://bugzilla.gnome.org/show_bug.cgi?id=693065 + +2013-02-05 13:44:06 +0100 Wim Taymans + + * gst/gststructure.h: + structure: change argument name for docs + +2013-02-04 10:30:32 +0100 Stefan Sauer + + * gst/gstdebugutils.c: + debugutils: fix order of caps on an unnegotiated link + headlabel is the sink_pad (where the link points to) and not the other way around. + +2013-02-01 21:59:41 +0100 Stefan Sauer + + * docs/libs/gstreamer-libs-docs.sgml: + * docs/libs/gstreamer-libs-sections.txt: + * docs/libs/gstreamer-libs.types: + * gst/gstcontrolbinding.c: + * libs/gst/controller/gstargbcontrolbinding.c: + * libs/gst/controller/gstdirectcontrolbinding.c: + docs: update the controller docs + Add the control bindings to the docs. Add a little more detail. + +2013-02-01 21:57:45 +0100 Stefan Sauer + + * docs/random/porting-to-1.0.txt: + porting: a few updates for the porting guide + +2013-01-30 13:06:44 +0000 Tim-Philipp Müller + + * libs/gst/base/gstdataqueue.c: + dataqueue: can't pass a GType through GINT_TO_POINTER + Use GSIZE_TO_POINTER instead. sizeof(GType) may be larger + than sizeof(gulong) and sizeof(int), so the casts may + chop off some bits from the GType value on some architectures. + +2013-01-29 12:40:52 +0100 Alexander Schrab + + * tests/check/elements/queue.c: + tests: unit test to trigger the queue/flushing race condition bug for allocation queries + https://bugzilla.gnome.org/show_bug.cgi?id=692691 + +2013-01-28 11:05:28 +0100 Alexander Schrab + + * plugins/elements/gstqueue.c: + queue: remove query from queue if queue is flushing + When querying a queue that is flushing we end up adding + a query to the queuearray without taking a reference to + that query (because the normal functionality is to block + until that query is done and discarded from the queue). + This later causes problem if the query is unreffed outside + of the queue before we discard the queue. There is a check + to avoid unreffing any lingering query-objects, but since + the query has been deleted that check fails. + This commit depends on other fixes done to gst_queue_array_find() + and gst_queue_array_drop_element(). + https://bugzilla.gnome.org/show_bug.cgi?id=692691 + +2013-01-30 11:55:18 +0000 Tim-Philipp Müller + + * libs/gst/base/gstqueuearray.c: + queuearray: make _find() find the value if no compare function is provided + Allow NULL as compare function for direct value lookup. + https://bugzilla.gnome.org/show_bug.cgi?id=692691 + +2013-01-30 11:34:15 +0000 Tim-Philipp Müller + + * tests/check/libs/queuearray.c: + tests: check return value of gst_queue_array_drop_element() too + Was added when the API was made public in git master. + https://bugzilla.gnome.org/show_bug.cgi?id=692691 + +2013-01-29 22:54:21 +0000 Tim-Philipp Müller + + * tests/check/libs/queuearray.c: + tests: one more test for gst_queue_array_drop_element() + https://bugzilla.gnome.org/show_bug.cgi?id=692691 + Conflicts: + tests/check/libs/queuearray.c + +2013-01-28 11:05:28 +0100 Alexander Schrab + + * libs/gst/base/gstqueuearray.c: + queuearray: fix gst_queue_array_find() + https://bugzilla.gnome.org/show_bug.cgi?id=692691 + +2013-01-28 11:05:28 +0100 Alexander Schrab + + * libs/gst/base/gstqueuearray.c: + queuearray: fix gst_queue_array_drop_element() + https://bugzilla.gnome.org/show_bug.cgi?id=692691 + Conflicts: + libs/gst/base/gstqueuearray.c + +2013-01-29 16:55:23 +0200 Sreerenj Balachandran + + * libs/gst/base/gstbitreader-docs.h: + docs: align the comments correctly with the declaration in bitreader docs + https://bugzilla.gnome.org/show_bug.cgi?id=692809 + +2013-01-29 09:45:23 +0100 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: handle renegotiation correctly + Don't retry to negotiate when we fail to negotiate but instead produce a + NOT_NEGOTIATED error. We only want to retry negotiation if the result from + gst_pad_push() returned NOT_NEGOTIATED. + +2013-01-28 20:41:20 +0100 Stefan Sauer + + * common: + Automatic update of common submodule + From a942293 to 2de221c + +2013-01-28 13:05:44 +0100 Wim Taymans + + * tests/examples/streams/stream-status.c: + example: fix FIXME in example + Use setpriority to raise priority + +2013-01-27 06:20:51 -0800 Simon Feltman + + * gst/Makefile.am: + g-i: add built enumtypes headers and sources to gir creation + Add gstenumtypes.h/c for inclusion with g-ir-scanner. This fixes + problems where introspection based bindings think GstState is + typeless due to the GType not being included as an annotation. + https://bugzilla.gnome.org/show_bug.cgi?id=691185 + +2013-01-27 09:18:00 +0530 B.Prathibha + + * tests/check/pipelines/stress.c: + tests: use g_timeout_add_seconds in pipeline stress test + https://bugzilla.gnome.org/show_bug.cgi?id=692612 + +2013-01-24 17:50:31 -0500 Olivier Crête + + * docs/libs/gstreamer-libs-sections.txt: + docs: Put the right path for the gstttestclock include file + +2013-01-24 15:50:17 +0100 Wim Taymans + + * docs/pwg/advanced-negotiation.xml: + pwg: rename variable + The filter variable was used twice for different things. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=692432 + +2013-01-17 21:35:48 -0300 Niv Sardi + + * gst/gstpad.c: + gst_pad_check_reconfigure: only remove flag if set. + the code ifed a debug statement, that can't be right. anyway, the way it is, + we don't really need that branch, as we set the flag to unset only if set + (and that can't fail) hence the end result is always to unset the flag. + Signed-off-by: Niv Sardi + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=691985 + +2013-01-17 21:43:25 -0300 Niv Sardi + + * libs/gst/base/gstbasesrc.c: + basesrc: set NEED_RECONFIGURE flag if negotiate fails + When negotiation fails, mark the pad as needing a reconfigure again so + that it gets picked up again next time. + Signed-off-by: Niv Sardi + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=691986 + +2013-01-19 12:51:56 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstutils.c: + * gst/gstutils.h: + * tests/check/gst/gstpad.c: + * win32/common/libgstreamer.def: + pad: add gst_pad_get_stream_id() utility function + API: gst_pad_get_stream_id() + +2013-01-18 16:05:09 +0000 Tim-Philipp Müller + + * tools/gst-launch.1.in: + tools: minor addition to gst-launch-1.0 man page + https://bugzilla.gnome.org/show_bug.cgi?id=692015 + +2013-01-18 16:01:11 +0000 Tim-Philipp Müller + + * tools/gst-launch.1.in: + tools: update gst-launch-1.0 man page for new debug levels + There are more debug levels these days, not only 0-5. + https://bugzilla.gnome.org/show_bug.cgi?id=692015 + +2013-01-17 00:38:14 -0600 Daniel Díaz + + * tests/check/gst/gstabi.c: + * tests/check/gst/struct_arm.h: + * tests/check/libs/libsabi.c: + * tests/check/libs/struct_arm.h: + tests: fix ABI check struct sizes for ARM + and re-enable ABI check for ARM. + https://bugzilla.gnome.org/show_bug.cgi?id=691828 + +2013-01-16 17:24:42 +0000 Tim-Philipp Müller + + * libs/gst/base/gstadapter.c: + docs: add a note to the gst_adapter_take_buffer() docs about buffer flags + https://bugzilla.gnome.org/show_bug.cgi?id=682110 + +2013-01-16 11:29:47 +0000 Tim-Philipp Müller + + * tests/check/gst/gstabi.c: + * tests/check/libs/libsabi.c: + tests: disable ABI checks for architectures where the struct sizes are not up-to-date + https://bugzilla.gnome.org/show_bug.cgi?id=691828 + +2013-01-15 15:03:43 +0000 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 2a068ce to a942293 + +2013-01-15 13:47:32 +0000 Tim-Philipp Müller + + * docs/gst/Makefile.am: + * docs/libs/Makefile.am: + * docs/plugins/Makefile.am: + * gst/Makefile.am: + * libs/gst/base/Makefile.am: + * libs/gst/check/Makefile.am: + * libs/gst/controller/Makefile.am: + * libs/gst/net/Makefile.am: + * tests/check/Makefile.am: + Use GST_*_1_0 environment variables everywhere + The _1_0 suffixed environment variables override the + non-suffixed ones, so if we're in an environment that + sets the _1_0 suffixed ones, such as jhbuild, we need + to set those to make sure ours actually always get + used. + +2013-01-15 13:47:13 +0000 Tim-Philipp Müller + + * 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/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: + po: update for new translated string + +2013-01-15 09:42:20 +0000 Tim-Philipp Müller + + * gst/gstpipeline.c: + pipeline: add allow-none annotation for gst_pipeline_new()'s name property + +2013-01-14 20:02:42 +0000 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstbaseparse.c: + docs: minor GstBaseParse docs fixes + Expose docs for gst_base_parse_finish_frame(). + +2013-01-14 17:01:22 +0100 Wim Taymans + + * libs/gst/base/gsttypefindhelper.c: + typefind: handle map failure + +2013-01-14 17:00:46 +0100 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: handle map failure + +2013-01-14 17:00:23 +0100 Wim Taymans + + * libs/gst/base/gstadapter.c: + adapter: handle map failure + +2013-01-13 14:45:31 +0000 Tim-Philipp Müller + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbaseparse.h: + baseparse: add vfuncs to intercept queries + Useful for video parses that want to attach matter or + find out if downstream supports certain metas. + API: GstBaseParseClass::src_query() + API: GstBaseParseClass::sink_query() + https://bugzilla.gnome.org/show_bug.cgi?id=691475 + +2013-01-12 20:54:26 +0000 Tim-Philipp Müller + + * libs/gst/base/gstbaseparse.c: + baseparse: fix up name of default event vfuncs + +2013-01-10 11:34:14 +0100 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + * gst/gstcontrolbinding.h: + controlbinding: hide one unused typedef + This is not used internally. + +2013-01-10 11:33:42 +0100 Stefan Sauer + + * gst/gstcontrolbinding.c: + * gst/gstcontrolsource.c: + docs: improve api docs for controlsource and -binding + +2013-01-05 16:30:04 +0000 Tim-Philipp Müller + + * tests/check/gst/gstghostpad.c: + tests: fix leak in ghostpad unit test + The created pad is never used and overwritten with + another newly-created pad a few lines below. + +2013-01-04 12:27:38 +0000 Tim-Philipp Müller + + * gst/gstsystemclock.h: + docs: minor systemsclock doc fix + +2013-01-03 10:16:18 +0100 Sebastian Dröge + + * libs/gst/base/gstbasesink.c: + basesink: Initialize uninitialized variable + +2012-12-30 23:35:48 +0100 Thijs Vermeir + + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstadapter.h: + adapter: return gssize from gst_adapter_masked_scan_* functions + As the return value of this function is -1 when the match is not found + +2013-01-01 10:23:59 +0100 Sebastian Dröge + + * libs/gst/base/gstbasesink.c: + basesink: Check if buffers are too late before calling prepare/prepare_list + https://bugzilla.gnome.org/show_bug.cgi?id=690936 + +2012-12-30 23:48:47 +0000 Tim-Philipp Müller + + * configure.ac: + configure: replace deprecated AM_CONFIG_HEADER with AC_CONFIG_HEADERS + AM_CONFIG_HEADER has been removed in the just-released automake 1.13: + https://lists.gnu.org/archive/html/automake/2012-12/msg00038.html + https://bugzilla.gnome.org/show_bug.cgi?id=690881 + +2012-12-22 16:50:49 +0000 Tim-Philipp Müller + + * gst/gstcaps.c: + * gst/gststructure.c: + * gst/gsttaglist.c: + caps, structure, taglist: micro-optimisations + Avoid some unnecessary GValue copying by making use of + gst_structure_id_take_value() where possible. + +2012-12-22 16:29:03 +0000 Tim-Philipp Müller + + * gst/gstvalue.c: + gstvalue: some micro-optimisations + Avoid unnecessary value copying, and unnecessary init/unset + cycles which all go through the value table. There's a bunch + of places where we copy a value and then unset it in the next + line, instead of just taking over the source value. + +2012-12-22 16:53:47 +0100 Thijs Vermeir + + * scripts/create-uninstalled-setup.sh: + scripts: fix location of repository with ssh + +2012-12-21 16:36:37 +0100 Wim Taymans + + * gst/gstbin.c: + * gst/gstbin.h: + bin: add flag to disable resync state change + Add a GST_BIN_FLAG_NO_RESYNC that disables a resync when an element is added, + removed or linked in the bin. This is interesting for complex bins that + dynamically add elements to themselves and want to manage the state of those + elements without interference from resyncs. + See https://bugzilla.gnome.org/show_bug.cgi?id=690420 + +2012-12-21 10:09:30 +0100 Wim Taymans + + * docs/design/part-synchronisation.txt: + docs: update synchronization document a little + +2012-12-20 16:40:04 +0100 Wim Taymans + + * gst/gstsystemclock.h: + systemclock: add OTHER clock type + Add an OTHER clock type so that subclasses are able to mark themselves as + using some other clock source than the realtime or monotonic clock. + +2012-12-20 13:31:02 +0100 Branko Subasic + + * plugins/elements/gstmultiqueue.c: + multiqueue: correct overrun handling + The control of wheteher a SingleQueue is full is not correct. + Rewrote single_queue_overrun_cb() so it checks the correct variables + when checking if the queue has reached the hard limits, and to + increase the max buffer limit once for each call. + https://bugzilla.gnome.org/show_bug.cgi?id=690557 + +2012-12-20 11:59:54 +0100 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: implement buffering query for all modes + Also implement the buffering query for STREAM mode. + +2012-12-20 11:30:25 +0100 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: refactor buffering percent and stats + Make methods to get the current buffering percent and the stats. We will use + this in the query later. + +2012-12-13 13:47:29 +0100 Arnaud Vrac + + * libs/gst/base/gstbaseparse.c: + baseparse: fix invalid output timestamps in some cases + +2012-12-14 15:22:27 +0100 Wim Taymans + + * docs/design/part-element-sink.txt: + * docs/design/part-events.txt: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * plugins/elements/gstidentity.c: + * plugins/elements/gstoutputselector.c: + NEWSEGMENT -> SEGMENT + +2012-12-14 14:03:43 +0000 Tim-Philipp Müller + + * docs/plugins/gstreamer-plugins.args: + * docs/plugins/gstreamer-plugins.prerequisites: + * docs/plugins/gstreamer-plugins.signals: + * docs/plugins/inspect/plugin-coreelements.xml: + * docs/random/porting-to-1.0.txt: + docs: update plugin docs + Update args/signals etc. + +2012-12-14 11:09:30 +0100 Wim Taymans + + * gst/gstsample.c: + * gst/gststructure.c: + add debug category + Adding a debug category is nicer than logging to the default category + +2012-12-14 11:08:57 +0100 Wim Taymans + + * gst/gstelement.c: + element: improve debug + +2012-12-13 14:48:35 +0100 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: call _stop when start failed + When we failed to complete the start, call stop again. This makes sure that all + successfull calls to _start are paired with a _stop. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=687845 + +2012-12-12 16:44:14 +0000 Sebastian Dröge + + * libs/gst/base/Makefile.am: + * libs/gst/base/base.h: + * libs/gst/check/Makefile.am: + * libs/gst/check/check.h: + * libs/gst/check/gstcheck.h: + * libs/gst/controller/Makefile.am: + * libs/gst/controller/controller.h: + * libs/gst/net/Makefile.am: + * libs/gst/net/net.h: + libs: Use foo/foo.h as single-include header consistently everywhere + https://bugzilla.gnome.org/show_bug.cgi?id=688785 + +2012-12-11 16:46:18 +0100 Wim Taymans + + * libs/gst/base/gstbaseparse.c: + baseparse: pass DTS and PTS to handle_buffer + This makes it handle the timestamps correctly and avoids using a wrong timestamp + for the output. + +2012-12-11 16:46:01 +0100 Wim Taymans + + * libs/gst/base/gstbaseparse.c: + baseparse: improve debug + Add pts and dts in debug log + +2012-11-03 16:59:39 +0000 Andrzej Bieniek + + * tools/gst-launch.c: + gst-launch: report execution time in GST_TIME_FORMAT + https://bugzilla.gnome.org/show_bug.cgi?id=687523 + +2012-12-10 11:55:42 +0100 Wim Taymans + + * gst/gstplugin.c: + plugin: protect against NULL filename in debug + See https://bugzilla.gnome.org/show_bug.cgi?id=689948 + +2012-12-06 09:48:08 +0100 Wim Taymans + + * gst/gstbufferpool.h: + bufferpool: clarify docs + +2012-12-05 14:56:48 +0100 Wim Taymans + + * gst/gstcaps.c: + caps: fix docs + +2012-12-05 14:24:14 +0100 Wim Taymans + + * libs/gst/base/gstadapter.c: + adapter: fix 0.10 docs to make more sense in 1.0 + +2012-12-05 14:03:27 +0100 Wim Taymans + + * libs/gst/base/gstadapter.c: + adapter: fix docs for 1.0 + Add parent to chain function signature and use it. + +2012-11-30 10:41:51 +0100 Wim Taymans + + * gst/gstmessage.c: + message: add reset-time type string + +2012-11-30 10:41:36 +0100 Wim Taymans + + * gst/gstbin.c: + bin: remove some casts + +2012-11-28 18:08:52 +0000 Tim-Philipp Müller + + * docs/random/porting-to-1.0.txt: + docs: add link to python porting doc and app dev manual to porting-to-1.0.txt + +2012-11-28 17:36:55 +0100 Edward Hervey + + * configure.ac: + configure.ac: Update libtool versioning + In order for 1.x and 1.(x+1) versions to not invade on each other + we need to have different lib versions. + So we need a consistent and predictable scheme: + library version number = MINOR * 100 + MICRO + Ex: + 1.0.0 => 0 (duh) + 1.0.3 => 3 + 1.1.0 => 100 + 1.1.1 => 101 + 1.2.0 => 120 + 1.10.5 => 1005 + .... + +2012-11-26 18:16:52 -0500 Luis de Bethencourt + + * scripts/gst-uninstalled: + add gst-editing-services to PKG_CONFIG_PATH + +2012-11-26 00:51:38 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + docs: clean up sections file for pad probe defines that moved into enum + +2012-11-26 00:20:26 +0000 Tim-Philipp Müller + + * common: + * gst/Makefile.am: + * pkgconfig/gstreamer-uninstalled.pc.in: + * pkgconfig/gstreamer.pc.in: + gst: don't require gthread-2.0 + We don't need to link to gthread-2.0 any longer, since all + the normal thread-related stuff is in GLib proper, and we + don't use g_thread_init() any more. + https://bugzilla.gnome.org/show_bug.cgi?id=689043 + +2012-11-25 23:42:57 +0000 Tim-Philipp Müller + + * configure.ac: + * pkgconfig/gstreamer-uninstalled.pc.in: + * pkgconfig/gstreamer.pc.in: + gstreamer-1.0.pc: move gmodule-no-export-2.0 dependency to Requires.private + Users of GStreamer are not generally expected to use the GModule API + directly. so don't force them all to link against it. + While we're at it, no need to define this via configure.ac really, just + put the dependencies directly into the .pc.in file. + +2012-11-25 23:26:47 +0000 Tim-Philipp Müller + + * docs/manual/appendix-integration.xml: + * docs/manual/basics-init.xml: + * gst/gst.c: + docs: remove all mention of g_thread_init() + It's been deprecated since GLib 2.32 and isn't needed any + longer. + +2012-11-25 18:11:38 +0000 Tim-Philipp Müller + + * libs/gst/base/gstdataqueue.c: + dataqueue: reduce debug log spam a bit + Log locking/unlocking with TRACE debug level. + +2012-11-23 21:09:45 +0100 Alessandro Decina + + * gst/gstevent.c: + event: fix annotation for gst_event_parse_stream_start + +2012-11-23 13:36:09 +0000 Tim-Philipp Müller + + * gst/gstpad.h: + pad: document more pad probe values + +2012-11-23 13:34:24 +0000 Tim-Philipp Müller + + * libs/gst/check/gsttestclock.h: + testclock: remove unnecessary include + +2012-11-23 13:32:07 +0000 Tim-Philipp Müller + + * tests/check/gst/gstclock.c: + tests: fix clock unit test build failure after header changes + https://bugzilla.gnome.org/show_bug.cgi?id=688785 + +2012-11-23 12:47:25 +0000 Tim-Philipp Müller + + * gst/gstpad.h: + pad: don't use parenthesis for ORed pad probe flag enums + glib-mkenum doesn't like them for some reason. + https://bugzilla.gnome.org/show_bug.cgi?id=688804 + +2012-11-23 10:58:25 +0100 Olivier Crête + + * gst/gstpad.h: + pad: Put all of the probe types in the enum so they work with bindings + https://bugzilla.gnome.org/show_bug.cgi?id=688804 + +2012-11-20 23:13:33 -0800 Evan Nemerson + + * libs/gst/base/Makefile.am: + * libs/gst/base/gstbase.h: + * libs/gst/check/Makefile.am: + * libs/gst/check/gstcheck.h: + * libs/gst/controller/Makefile.am: + * libs/gst/controller/gstcontroller.h: + * libs/gst/net/gstnet.h: + libs: Add missing single include headers and use them in GIRs + +2012-11-20 16:34:28 +0100 Wim Taymans + + * tests/check/libs/gsttestclock.c: + tests: don't use deprecated thread API + +2012-11-20 16:19:52 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: add some debug + +2012-11-20 16:19:16 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: reset START_TIME when needed + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=685870 + +2012-11-20 15:37:11 +0100 Sebastian Dröge + + * gst/gstvalue.h: + value: Make G-I happy by hiding gst_g_thread_get_type() + +2012-11-20 15:07:37 +0100 Christian Fredrik Kalager Schaller + + * gstreamer.spec.in: + Remove xfig from spec file + +2012-11-20 15:06:14 +0100 Sebastian Dröge + + * gst/gstvalue.c: + value: Use the GLib GType for GThread if compiling against GLib 2.35.3 or newer + +2012-11-20 12:56:12 +0100 Sebastian Dröge + + * gst/gst.c: + gst: Don't set the locale in gst_init() + The function init_pre() in gstreamer/gst/gst.c calls setlocale(LC_ALL, ""), + which sets the locale to the values specified in the environment. This is + wrong for two reasons: + 1. It is absolutely not the task of a library to decide on the correct locale + for a program. Some programs change the locale for various (good or bad) + reasons, and libraries should respect that. Programs where GStreamer's + overwriting of the locale causes bugs include Emacs [1, 2], Sublime Text [3], + and Lua [4]. + [1] http://debbugs.gnu.org/cgi/bugreport.cgi?bug=12392 + [2] http://bugzilla.novell.com/show_bug.cgi?id=779426 + [3] http://www.sublimetext.com/forum/viewtopic.php?f=3&t=8543 + [4] https://github.com/pavouk/lgi/issues/19 + Note that setting the locale can cause problems for programs that are not even + linked against GStreamer. In the case of Emacs, for example, GStreamer seems + to be initialized through GTK via libcanberra. + 2. Setting the locale is not thread-safe, and therefore should not be done in a + library. + https://bugzilla.gnome.org/show_bug.cgi?id=685650 + +2012-11-16 19:41:48 +0100 Arnaud Vrac + + * libs/gst/base/gstbaseparse.c: + baseparse: forward stream-start event in push mode + +2012-11-19 13:38:30 +0100 Christian Fredrik Kalager Schaller + + * docs/README: + * docs/manual/state-diagram.fig: + * docs/random/wtay/player.fig: + Remove two last .fig files from build, they are now replaced with .svg files. That said I don't think either .fig file was still being used anywhere. With this change and the one in common GStreamer no longer depends on xfig. + +2012-11-19 13:16:48 +0100 Christian Fredrik Kalager Schaller + + Merge branch 'master' of ssh://git.freedesktop.org/git/gstreamer/gstreamer + +2012-11-19 11:23:32 +0000 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From b497c4f to a72faea + +2012-11-19 11:45:07 +0100 Christian Fredrik Kalager Schaller + + * docs/manual/state-diagram.svg: + * docs/random/wtay/player.svg: + Add SVG versions of .fig file + +2012-11-17 10:27:11 +0000 Tim-Philipp Müller + + * tests/examples/manual/Makefile.am: + examples: don't compile testrtpool example if pthreads are not available like on win32 + Based on patch by: italarab@gmail.com + https://bugzilla.gnome.org/show_bug.cgi?id=688511 + +2012-11-13 21:13:00 +0100 Arnaud Vrac + + * plugins/elements/gstinputselector.c: + inputselector: fix clock leak in wait_running_time + https://bugzilla.gnome.org/show_bug.cgi?id=688477 + +2012-11-17 00:13:14 +0000 Tim-Philipp Müller + + * gst/gstcompat.h: + gstcompat.h: move more deprecated API into the deprecated section + https://bugzilla.gnome.org/show_bug.cgi?id=675598 + +2012-11-14 12:20:54 +0100 Philippe Normand + + * gst/gsttask.c: + task: documentation update + GStaticRecMutex usage has been replaced by GRecMutex, reflect this + change in the documentation. + +2012-11-14 10:55:15 +0000 Tim-Philipp Müller + + * libs/gst/check/gsttestclock.c: + testclock: port to new GLib threading API + +2012-11-13 23:11:34 +0000 Tim-Philipp Müller + + * gst/gstcompat.h: + * libs/gst/base/gstadapter.c: + * tests/check/libs/adapter.c: + tests: gst_adapter_prev_timestamp -> gst_adapter_prev_pts + https://bugzilla.gnome.org/show_bug.cgi?id=675598 + +2012-11-13 22:42:05 +0000 Tim-Philipp Müller + + * libs/gst/check/gsttestclock.c: + * libs/gst/check/gsttestclock.h: + * tests/check/libs/.gitignore: + testclock: minor cleanups, add since markers for gtk-doc + https://bugzilla.gnome.org/show_bug.cgi?id=683012 + +2012-08-30 01:58:41 +0200 Sebastian Rasmussen + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/check/Makefile.am: + * libs/gst/check/gsttestclock.c: + * libs/gst/check/gsttestclock.h: + * tests/check/libs/gsttestclock.c: + check: allow GstTestClock to handle clock notifications + API: gst_test_clock_peek_id_count() + API: gst_test_clock_has_id() + API: gst_test_clock_peek_next_pending_id() + API: gst_test_clock_wait_for_next_pending_id() + API: gst_test_clock_wait_for_pending_id_count() + API: gst_test_clock_process_next_clock_id() + API: gst_test_clock_get_next_entry_time() + https://bugzilla.gnome.org/show_bug.cgi?id=683012 + +2012-11-13 21:29:01 +0000 Tim-Philipp Müller + + * libs/gst/check/Makefile.am: + check: add dependency on gstcheck header files for exports.sym + So exports.sym gets updated correctly, and our new symbols get + exported correctly, which makes g-ir-scanner much happier in + terms of linking. + https://bugzilla.gnome.org/show_bug.cgi?id=683012 + +2012-08-29 16:11:10 +0200 Sebastian Rasmussen + + * docs/libs/Makefile.am: + * docs/libs/gstreamer-libs-docs.sgml: + * docs/libs/gstreamer-libs-sections.txt: + * docs/libs/gstreamer-libs.types: + * libs/gst/check/Makefile.am: + * libs/gst/check/gsttestclock.c: + * libs/gst/check/gsttestclock.h: + * tests/check/Makefile.am: + * tests/check/libs/gsttestclock.c: + check: add GstTestClock as a deterministic clock for testing + API: GstTestClock + API: gst_test_clock_new() + API: gst_test_clock_new_with_start_time() + API: gst_test_clock_set_time() + API: gst_test_clock_advance_time() + https://bugzilla.gnome.org/show_bug.cgi?id=683012 + +2012-11-09 21:10:42 +0000 Tim-Philipp Müller + + * libs/gst/base/gstbasesrc.c: + basesrc: fix debug message + +2012-11-08 20:22:19 +0000 Tim-Philipp Müller + + * gst/gststructure.h: + structure: re-indent header file + Tabs to spaces. + +2012-11-12 11:40:59 +0100 Sebastian Dröge + + * gst/gstvalue.c: + * gst/gstvalue.h: + * win32/common/libgstbase.def: + * win32/common/libgstreamer.def: + value: API: Add boxed type for GThread + +2012-11-12 10:30:08 +0100 Sebastian Dröge + + * tools/gst-inspect.c: + gst-inspect: Fix indention for printing typefinder features + +2012-11-12 01:40:42 +0100 Sebastian Rasmussen + + * gst/gstinfo.c: + info: fix compiler warning when debugging disabled + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=688130 + +2012-11-10 09:50:49 +0100 Alessandro Decina + + * plugins/elements/gstqueue.c: + queue: remove unused label. Fixes compiler warning. + +2012-10-29 12:08:31 +0000 Alessandro Decina + + * plugins/elements/gstqueue.c: + * tests/check/elements/queue.c: + queue: don't fail in _sink_event for sticky events + Implement the same behaviour as gst_pad_push_event when pushing sticky events + fails, that is don't fail immediately but fail when data flow resumes and upstream + can aggregate properly. + This fixes segment seeks with decodebin and unlinked audio or video branches. + Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=687899 + +2012-11-09 16:50:50 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + basesink: add simple rate control + Add a max-bitrate property that will slightly delay rendering of buffers if it + would exceed the maximum defined bitrate. This can be used to do + rate control on network sinks, for example. + API: GstBaseSink::max-bitrate + API: gst_base_sink_set_max_bitrate() + API: gst_base_sink_get_max_bitrate() + +2012-11-08 15:33:01 +1100 Matthew Waters + + * gst/gstbufferpool.c: + bufferpool: lock before unlock in _get_config + Fixes deadlock on Windows + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=687896 + +2012-11-07 18:15:11 +0000 Tim-Philipp Müller + + * configure.ac: + configure: update courtesy of autoupdate + +2012-11-07 17:59:49 +0000 Tim-Philipp Müller + + * common: + common: update for AG_GST_PLUGIN_DOCS python checks + +2012-11-06 18:29:28 +0100 Olivier Crête + + * docs/gst/running.xml: + * tools/gst-launch.1.in: + Document GST_DEBUG_FILE + +2012-11-06 17:03:47 +0000 Tim-Philipp Müller + + * tools/gst-inspect.c: + gst-inspect: fix alignment of rank, etc. + +2012-11-06 16:58:04 +0000 Tim-Philipp Müller + + * plugins/elements/gstelements.c: + elements: fix leading space in plugin description string + +2012-11-03 20:38:00 +0000 Tim-Philipp Müller + + * plugins/elements/gstdataurisrc.c: + * plugins/elements/gstdataurisrc.h: + * tests/check/elements/dataurisrc.c: + Fix FSF address + https://bugzilla.gnome.org/show_bug.cgi?id=687520 + +2012-11-03 20:44:48 +0000 Tim-Philipp Müller + + * COPYING: + * docs/random/LICENSE: + * gst/gettext.h: + * gst/glib-compat-private.h: + * gst/glib-compat.c: + * gst/glib-compat.h: + * gst/gst-i18n-app.h: + * gst/gst-i18n-lib.h: + * gst/gst.c: + * gst/gst.h: + * gst/gst_private.h: + * gst/gstallocator.c: + * gst/gstallocator.h: + * gst/gstatomicqueue.c: + * gst/gstatomicqueue.h: + * gst/gstbin.c: + * gst/gstbin.h: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstbufferlist.c: + * gst/gstbufferlist.h: + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + * gst/gstbus.c: + * gst/gstbus.h: + * gst/gstcaps.c: + * gst/gstcaps.h: + * gst/gstchildproxy.c: + * gst/gstchildproxy.h: + * gst/gstclock.c: + * gst/gstclock.h: + * gst/gstcompat.h: + * gst/gstconfig.h.in: + * gst/gstcontrolbinding.c: + * gst/gstcontrolbinding.h: + * gst/gstcontrolsource.c: + * gst/gstcontrolsource.h: + * gst/gstdatetime.c: + * gst/gstdatetime.h: + * gst/gstdebugutils.c: + * gst/gstdebugutils.h: + * gst/gstelement.c: + * gst/gstelement.h: + * gst/gstelementfactory.c: + * gst/gstelementfactory.h: + * gst/gstelementmetadata.h: + * gst/gsterror.c: + * gst/gsterror.h: + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstformat.c: + * gst/gstformat.h: + * gst/gstghostpad.c: + * gst/gstghostpad.h: + * gst/gstinfo.c: + * gst/gstinfo.h: + * gst/gstiterator.c: + * gst/gstiterator.h: + * gst/gstmacros.h: + * gst/gstmemory.c: + * gst/gstmemory.h: + * gst/gstmessage.c: + * gst/gstmessage.h: + * gst/gstmeta.c: + * gst/gstmeta.h: + * gst/gstminiobject.c: + * gst/gstminiobject.h: + * gst/gstobject.c: + * gst/gstobject.h: + * gst/gstpad.c: + * gst/gstpad.h: + * gst/gstpadtemplate.c: + * gst/gstpadtemplate.h: + * gst/gstparamspecs.c: + * gst/gstparamspecs.h: + * gst/gstparse.c: + * gst/gstparse.h: + * gst/gstpipeline.c: + * gst/gstpipeline.h: + * gst/gstplugin.c: + * gst/gstplugin.h: + * gst/gstpluginfeature.c: + * gst/gstpluginfeature.h: + * gst/gstpluginloader.c: + * gst/gstpluginloader.h: + * gst/gstpoll.c: + * gst/gstpoll.h: + * gst/gstpreset.c: + * gst/gstpreset.h: + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gstquery.c: + * gst/gstquery.h: + * gst/gstregistry.c: + * gst/gstregistry.h: + * gst/gstregistrybinary.c: + * gst/gstregistrybinary.h: + * gst/gstregistrychunks.c: + * gst/gstregistrychunks.h: + * gst/gstsample.c: + * gst/gstsample.h: + * gst/gstsegment.c: + * gst/gstsegment.h: + * gst/gststructure.c: + * gst/gststructure.h: + * gst/gstsystemclock.c: + * gst/gstsystemclock.h: + * gst/gsttaglist.c: + * gst/gsttaglist.h: + * gst/gsttagsetter.c: + * gst/gsttagsetter.h: + * gst/gsttask.c: + * gst/gsttask.h: + * gst/gsttaskpool.c: + * gst/gsttaskpool.h: + * gst/gsttoc.c: + * gst/gsttoc.h: + * gst/gsttocsetter.c: + * gst/gsttocsetter.h: + * gst/gsttrace.c: + * gst/gsttrace.h: + * gst/gsttypefind.c: + * gst/gsttypefind.h: + * gst/gsttypefindfactory.c: + * gst/gsttypefindfactory.h: + * gst/gsturi.c: + * gst/gsturi.h: + * gst/gstutils.c: + * gst/gstutils.h: + * gst/gstvalue.c: + * gst/gstvalue.h: + * gst/gstversion.h.in: + * gst/math-compat.h: + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstadapter.h: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbaseparse.h: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasesrc.h: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + * libs/gst/base/gstbitreader-docs.h: + * libs/gst/base/gstbitreader.c: + * libs/gst/base/gstbitreader.h: + * libs/gst/base/gstbytereader-docs.h: + * libs/gst/base/gstbytereader.c: + * libs/gst/base/gstbytereader.h: + * libs/gst/base/gstbytewriter-docs.h: + * libs/gst/base/gstbytewriter.c: + * libs/gst/base/gstbytewriter.h: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstcollectpads.h: + * libs/gst/base/gstdataqueue.c: + * libs/gst/base/gstdataqueue.h: + * libs/gst/base/gstindex.c: + * libs/gst/base/gstindex.h: + * libs/gst/base/gstmemindex.c: + * libs/gst/base/gstpushsrc.c: + * libs/gst/base/gstpushsrc.h: + * libs/gst/base/gstqueuearray.c: + * libs/gst/base/gstqueuearray.h: + * libs/gst/base/gsttypefindhelper.c: + * libs/gst/base/gsttypefindhelper.h: + * libs/gst/check/gstbufferstraw.c: + * libs/gst/check/gstbufferstraw.h: + * libs/gst/check/gstcheck.c: + * libs/gst/check/gstcheck.h: + * libs/gst/check/gstconsistencychecker.c: + * libs/gst/check/gstconsistencychecker.h: + * libs/gst/check/libcheck/check.c: + * libs/gst/check/libcheck/check.h.in: + * libs/gst/check/libcheck/check_error.c: + * libs/gst/check/libcheck/check_error.h: + * libs/gst/check/libcheck/check_impl.h: + * libs/gst/check/libcheck/check_list.c: + * libs/gst/check/libcheck/check_list.h: + * libs/gst/check/libcheck/check_log.c: + * libs/gst/check/libcheck/check_log.h: + * libs/gst/check/libcheck/check_msg.c: + * libs/gst/check/libcheck/check_msg.h: + * libs/gst/check/libcheck/check_pack.c: + * libs/gst/check/libcheck/check_pack.h: + * libs/gst/check/libcheck/check_print.c: + * libs/gst/check/libcheck/check_print.h: + * libs/gst/check/libcheck/check_run.c: + * libs/gst/check/libcheck/check_str.c: + * libs/gst/check/libcheck/check_str.h: + * libs/gst/controller/gstargbcontrolbinding.c: + * libs/gst/controller/gstargbcontrolbinding.h: + * libs/gst/controller/gstdirectcontrolbinding.c: + * libs/gst/controller/gstdirectcontrolbinding.h: + * libs/gst/controller/gstinterpolationcontrolsource.c: + * libs/gst/controller/gstinterpolationcontrolsource.h: + * libs/gst/controller/gstlfocontrolsource.c: + * libs/gst/controller/gstlfocontrolsource.h: + * libs/gst/controller/gsttimedvaluecontrolsource.c: + * libs/gst/controller/gsttimedvaluecontrolsource.h: + * libs/gst/controller/gsttriggercontrolsource.c: + * libs/gst/controller/gsttriggercontrolsource.h: + * libs/gst/helpers/gst-plugin-scanner.c: + * libs/gst/net/gstnet.h: + * libs/gst/net/gstnetaddressmeta.c: + * libs/gst/net/gstnetaddressmeta.h: + * libs/gst/net/gstnetclientclock.c: + * libs/gst/net/gstnetclientclock.h: + * libs/gst/net/gstnettimepacket.c: + * libs/gst/net/gstnettimepacket.h: + * libs/gst/net/gstnettimeprovider.c: + * libs/gst/net/gstnettimeprovider.h: + * plugins/elements/gstcapsfilter.c: + * plugins/elements/gstcapsfilter.h: + * plugins/elements/gstelements.c: + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesink.h: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstfakesrc.h: + * plugins/elements/gstfdsink.c: + * plugins/elements/gstfdsink.h: + * plugins/elements/gstfdsrc.c: + * plugins/elements/gstfdsrc.h: + * plugins/elements/gstfilesink.c: + * plugins/elements/gstfilesink.h: + * plugins/elements/gstfilesrc.c: + * plugins/elements/gstfilesrc.h: + * plugins/elements/gstidentity.c: + * plugins/elements/gstidentity.h: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstinputselector.h: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstmultiqueue.h: + * plugins/elements/gstoutputselector.c: + * plugins/elements/gstoutputselector.h: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue.h: + * plugins/elements/gstqueue2.c: + * plugins/elements/gstqueue2.h: + * plugins/elements/gsttee.c: + * plugins/elements/gsttee.h: + * plugins/elements/gsttypefindelement.c: + * plugins/elements/gsttypefindelement.h: + * plugins/elements/gstvalve.c: + * plugins/elements/gstvalve.h: + * scripts/create-uninstalled-setup.sh: + * scripts/five-bugs-a-day.pl: + * tests/benchmarks/caps.c: + * tests/benchmarks/capsnego.c: + * tests/benchmarks/complexity.c: + * tests/benchmarks/controller.c: + * tests/benchmarks/gstbufferstress.c: + * tests/benchmarks/gstclockstress.c: + * tests/benchmarks/gstpollstress.c: + * tests/benchmarks/init.c: + * tests/benchmarks/mass-elements.c: + * tests/check/elements/capsfilter.c: + * tests/check/elements/fakesink.c: + * tests/check/elements/fakesrc.c: + * tests/check/elements/fdsrc.c: + * tests/check/elements/filesink.c: + * tests/check/elements/filesrc.c: + * tests/check/elements/identity.c: + * tests/check/elements/multiqueue.c: + * tests/check/elements/queue.c: + * tests/check/elements/queue2.c: + * tests/check/elements/selector.c: + * tests/check/elements/tee.c: + * tests/check/elements/valve.c: + * tests/check/generic/sinks.c: + * tests/check/generic/states.c: + * tests/check/gst/gst.c: + * tests/check/gst/gstabi.c: + * tests/check/gst/gstatomicqueue.c: + * tests/check/gst/gstbin.c: + * tests/check/gst/gstbuffer.c: + * tests/check/gst/gstbufferlist.c: + * tests/check/gst/gstbus.c: + * tests/check/gst/gstcaps.c: + * tests/check/gst/gstchildproxy.c: + * tests/check/gst/gstclock.c: + * tests/check/gst/gstcontroller.c: + * tests/check/gst/gstdatetime.c: + * tests/check/gst/gstelement.c: + * tests/check/gst/gstelementfactory.c: + * tests/check/gst/gstevent.c: + * tests/check/gst/gstghostpad.c: + * tests/check/gst/gstindex.c: + * tests/check/gst/gstinfo.c: + * tests/check/gst/gstiterator.c: + * tests/check/gst/gstmemory.c: + * tests/check/gst/gstmessage.c: + * tests/check/gst/gstmeta.c: + * tests/check/gst/gstminiobject.c: + * tests/check/gst/gstobject.c: + * tests/check/gst/gstpad.c: + * tests/check/gst/gstparamspecs.c: + * tests/check/gst/gstpipeline.c: + * tests/check/gst/gstplugin.c: + * tests/check/gst/gstpoll.c: + * tests/check/gst/gstpreset.c: + * tests/check/gst/gstquery.c: + * tests/check/gst/gstregistry.c: + * tests/check/gst/gstsegment.c: + * tests/check/gst/gststructure.c: + * tests/check/gst/gstsystemclock.c: + * tests/check/gst/gsttag.c: + * tests/check/gst/gsttagsetter.c: + * tests/check/gst/gsttask.c: + * tests/check/gst/gsttoc.c: + * tests/check/gst/gsttocsetter.c: + * tests/check/gst/gsturi.c: + * tests/check/gst/gstutils.c: + * tests/check/gst/gstvalue.c: + * tests/check/libs/adapter.c: + * tests/check/libs/basesink.c: + * tests/check/libs/basesrc.c: + * tests/check/libs/bitreader.c: + * tests/check/libs/bytereader.c: + * tests/check/libs/bytewriter.c: + * tests/check/libs/collectpads.c: + * tests/check/libs/controller.c: + * tests/check/libs/gstlibscpp.cc: + * tests/check/libs/gstnetclientclock.c: + * tests/check/libs/gstnettimeprovider.c: + * tests/check/libs/libsabi.c: + * tests/check/libs/queuearray.c: + * tests/check/libs/transform1.c: + * tests/check/libs/typefindhelper.c: + * tests/check/pipelines/cleanup.c: + * tests/check/pipelines/parse-disabled.c: + * tests/check/pipelines/parse-launch.c: + * tests/check/pipelines/queue-error.c: + * tests/check/pipelines/seek.c: + * tests/check/pipelines/simple-launch-lines.c: + * tests/check/pipelines/stress.c: + * tests/check/tools/gstinspect.c: + * tests/examples/memory/my-memory.c: + * tests/examples/memory/my-memory.h: + * tests/examples/memory/my-vidmem.c: + * tests/examples/memory/my-vidmem.h: + * tests/examples/metadata/read-metadata.c: + * tests/examples/streams/testrtpool.c: + * tests/examples/streams/testrtpool.h: + * tests/examples/typefind/typefind.c: + * tests/misc/network-clock-utils.scm: + * tests/misc/network-clock.scm: + * tools/gst-inspect.c: + * tools/gst-launch.c: + * tools/gst-typefind.c: + * tools/tools.h: + * win32/common/gstconfig.h: + * win32/common/gstversion.h: + Fix FSF address + https://bugzilla.gnome.org/show_bug.cgi?id=687520 + +2012-10-31 19:33:30 +0000 Tim-Philipp Müller + + * docs/plugins/gstreamer-plugins.args: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue.h: + queue: add "flush-on-eos" property + In flush-on-eos=true mode any data remaining in the queue is + discarded when an EOS event is received, and the EOS passed + downstream as soon as possible (instead of waiting for all + buffers in the queue to get processed by downstream first). + May or may not be useful in capture/encoding scenarios. + +2012-10-31 18:32:38 +0000 Tim-Philipp Müller + + * common: + common: update for python detection + Fixes docs build. + +2012-10-31 17:37:37 +0000 Tim-Philipp Müller + + * common: + * configure.ac: + configure: let AG_GST_PLUGIN_DOCS check for python + And update common for move from AS_PATH_PYTHON to AM_PATH_PYTHON, + which as a side-effect should pick up newer python versions as well. + https://bugzilla.gnome.org/show_bug.cgi?id=563903 + +2012-10-30 10:04:44 +1100 Jan Schmidt + + * libs/gst/base/gstcollectpads.c: + collectpads: Clarify docs about the buffer handler callback. + Clarify that the callback owns a ref on a passed buffer. + +2012-10-30 10:04:14 +1100 Jan Schmidt + + * plugins/elements/gstmultiqueue.c: + multiqueue: Add EOS status to debug output about filled/unfilled + +2012-10-22 00:31:09 +1100 Jan Schmidt + + * tests/check/libs/collectpads.c: + check: Add a simple test for the CollectPads buffer collect callback + +2012-10-29 13:26:10 +0000 Tim-Philipp Müller + + * libs/gst/base/Makefile.am: + * libs/gst/check/Makefile.am: + * libs/gst/controller/Makefile.am: + * libs/gst/net/Makefile.am: + g-i: fix "can't resolve libraries to shared libraries: gstcheck-1.0" build error + Revert --library=libfoo-1.0.la -> --library=foo-1.0 change made + in previous commit. Turns out that was wrong, despite what the + man page says. + https://bugzilla.gnome.org/show_bug.cgi?id=603710 + +2012-10-29 11:30:30 +0000 Tim-Philipp Müller + + * gst/gstutils.c: + pad: downgrade 'creating random stream-id' debug log message + No need for it to be a warning. + +2012-06-13 13:02:48 +0100 Vincent Penquerc'h + + * libs/gst/base/gstbaseparse.c: + baseparse: prevent excessively high memory usage with long streams + Large streams would index one frame every second, which can get quite + large with multi-hour streams, so add an additional byte-based + minimum distance as well, which will kick in for long streams + and make sure we never have more than a couple of thousand index + entries. + https://bugzilla.gnome.org/show_bug.cgi?id=666053 + +2012-10-28 17:17:49 +0000 Tim-Philipp Müller + + * libs/gst/base/Makefile.am: + * libs/gst/check/Makefile.am: + * libs/gst/controller/Makefile.am: + * libs/gst/net/Makefile.am: + libs: g-i: avoid multiple libraries in the shared-library tag + Using multiple libraries causes problems for the C# bindings and + will for similiar languages such as Java when there are bindings + for them. + Also change --library=libgstfoo-X.la to --library=gstfoo-X as + the man page suggests it should be done. + https://bugzilla.gnome.org/show_bug.cgi?id=679315 + +2012-10-28 15:53:19 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstpluginfeature.c: + * gst/gstpluginfeature.h: + * win32/common/libgstreamer.def: + pluginfeature: add gst_plugin_feature_get_plugin_name() + API: gst_plugin_feature_get_plugin_name() + https://bugzilla.gnome.org/show_bug.cgi?id=571832 + +2012-10-27 14:40:14 +0100 Tim-Philipp Müller + + * gst/gstinfo.c: + info: allow setting of GST_DEBUG levels by name + e.g. GST_DEBUG=*:INFO,*src:LOG + +2012-06-29 12:38:52 -0400 Thibault Saunier + + * gst/gst.c: + gst: make us of the new gst_debug_set_threshold_from_string function + https://bugzilla.gnome.org/show_bug.cgi?id=679152 + +2012-06-29 12:05:36 -0400 Thibault Saunier + + * docs/gst/gstreamer-sections.txt: + * gst/gstinfo.c: + * gst/gstinfo.h: + * win32/common/libgstreamer.def: + info: add a function to set debug threshold from a GST_DEBUG-style string + Use the same format as with the GST_DEBUG environment variable. + API: gst_debug_set_threshold_from_string() + https://bugzilla.gnome.org/show_bug.cgi?id=679152 + +2012-10-25 15:27:23 +0200 Sebastian Dröge + + * tests/check/libs/queuearray.c: + queuearray: Fix unit test + +2012-10-22 10:13:20 +0200 Sebastian Dröge + + * docs/libs/gstreamer-libs-docs.sgml: + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/Makefile.am: + * libs/gst/base/gstdataqueue.c: + * libs/gst/base/gstdataqueue.h: + * libs/gst/base/gstqueuearray.c: + * libs/gst/base/gstqueuearray.h: + * plugins/elements/Makefile.am: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstmultiqueue.h: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue.h: + * plugins/elements/gstqueuearray.h: + * win32/common/libgstbase.def: + dataqueue/queuearray: Make public API again + These are actually used outside of coreelements nowadays. + Also hide lots of internals and add padding and documentation. + +2012-10-25 12:10:27 +0100 Tim-Philipp Müller + + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * win32/common/config.h: + * win32/common/gstversion.h: + Back to feature development + +=== release 1.0.2 === + +2012-10-25 00:04:49 +0100 Tim-Philipp Müller + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstversion.h: + Release 1.0.2 + +2012-10-24 16:13:34 +0400 Руслан Ижбулатов + + * tests/examples/manual/Makefile.am: + examples: link testrtpool to pthreads + Fixes #686787 + +2012-10-24 11:46:01 +0200 Sebastian Dröge + + * gst/gstevent.c: + event: Allow GST_CLOCK_TIME_NONE as duration for GAP events + +2012-10-24 11:16:12 +0200 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: use new GCond for async state change + Use a new GCond, protected with the object lock, to signal completion + of the async state change. We can't reuse the live lock because that + one can be locked when the create function blocks. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=686723 + +2012-10-22 20:25:43 +0200 Miguel Angel Cabrera Moya + + * gst/gstallocator.c: + allocator: fix memory leak in _fallback_mem_copy + https://bugzilla.gnome.org/show_bug.cgi?id=686658 + +2012-10-22 20:33:06 +0200 Miguel Angel Cabrera Moya + + * gst/gstpreset.c: + preset: remove variable not read + https://bugzilla.gnome.org/show_bug.cgi?id=686659 + +2012-10-22 15:04:26 +0200 Sebastian Dröge + + * configure.ac: + * libs/gst/check/libcheck/Makefile.am: + * m4/ax_pthread.m4: + * tests/examples/streams/Makefile.am: + configure: Properly check for pthread + The old check failed on Android for example. + +2012-10-22 10:25:40 +0200 Sebastian Dröge + + * gst/gstinfo.c: + info: Don't use GST_DEBUG() in gst_debug_add_log_function() and related functions unconditionally + If GStreamer was not initialized yet this will cause g_warnings(). + +2012-10-20 19:44:43 +0100 Tim-Philipp Müller + + * libs/gst/base/gstcollectpads.h: + collectpads: fix g-i annotation for GstCollectPadsBufferFunction + We pass ownership of the buffer to the function. + +2012-10-20 12:54:06 +0100 Tim-Philipp Müller + + * docs/libs/Makefile.am: + * gst/gst.c: + g_type_init() is no longer required and deprecated in glib >= 2.35.0 + https://bugzilla.gnome.org/show_bug.cgi?id=686456 + +2012-10-19 13:36:33 -0700 Michael Smith + + * gst/gstsample.c: + GstSample: fix typo in G-I annotations, allows creating GstSamples from bindings. + +2012-10-18 15:31:17 +0200 Sebastian Dröge + + * gst/gstpoll.c: + poll: Fix compiler warning about constness + passing argument 1 of 'g_mutex_lock' discards 'const' qualifier from pointer target type + passing argument 1 of 'g_mutex_unlock' discards 'const' qualifier from pointer target type + +2012-10-17 17:34:26 +0100 Tim-Philipp Müller + + * plugins/elements/gstdataurisrc.c: + Use gst_element_class_set_static_metadata() + where possible. Avoids some string copies. Also re-indent + some stuff. Also some indent fixes here and there. + +2012-10-17 16:49:19 +0100 Tim-Philipp Müller + + * gst/gstbin.c: + * gst/gstpipeline.c: + bin, pipeline: use gst_element_class_set_static_metadata() + So the strings aren't copied. + +2012-10-16 12:31:50 +0200 Sebastian Dröge + + * gst/gstelement.c: + * gst/gstelement.h: + element: API: Add GstElement::post_message() vfunc + Conflicts: + gst/gstelement.h + +2012-10-16 11:54:54 +0200 Wim Taymans + + * docs/pwg/advanced-events.xml: + pwg: link to caps and qos chapters + +2012-10-16 11:20:59 +0200 Wim Taymans + + * docs/pwg/building-boiler.xml: + * docs/pwg/building-queryfn.xml: + * docs/pwg/pwg.xml: + pwg: add section about query function + +2012-10-16 11:12:38 +0200 Wim Taymans + + * docs/pwg/building-eventfn.xml: + pwg: fix event function + +2012-10-15 19:56:36 +0100 Tim-Philipp Müller + + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstcollectpads.h: + collectpads: minor docs fixes + +2012-10-15 19:55:42 +0100 Tim-Philipp Müller + + * libs/gst/base/gstcollectpads.c: + collectpads: fix buffer leak in clip_time + +2012-10-15 18:44:52 +0200 Mark Nauwelaerts + + * libs/gst/base/gstcollectpads.c: + collectpads: call clip function with user data + +2012-10-15 14:06:45 +0200 Wim Taymans + + * docs/pwg/pwg.xml: + pwg: reorder some chapters + Reorder some chapter so that they match the steps done in the + element. + +2012-10-15 13:59:50 +0200 Wim Taymans + + * docs/pwg/advanced-negotiation.xml: + pwg: small tweaks to negotiation + +2012-10-15 13:44:51 +0200 Wim Taymans + + * docs/pwg/advanced-negotiation.xml: + pwg: improve negotiation documentation some more + +2012-10-15 12:10:46 +0200 Wim Taymans + + * docs/design/part-negotiation.txt: + * docs/pwg/advanced-negotiation.xml: + pwg: update negotiation part + +2012-10-15 12:10:11 +0200 Wim Taymans + + * docs/design/part-synchronisation.txt: + docs: update synchronization docs + +2012-10-12 16:58:03 +0200 Wim Taymans + + * docs/pwg/advanced-negotiation.xml: + pwg: work on rewriting caps negotiation docs + +2012-10-12 16:09:26 +0200 Wim Taymans + + * docs/design/part-negotiation.txt: + design: rename passthrough negotiation + Rename passthrough negotiation to transform negotiation to avoid + confusion with passthrough operation. + +2012-10-12 13:15:48 +0200 Wim Taymans + + * docs/manual/basics-elements.xml: + * docs/manual/basics-pads.xml: + manual: no more new-decoded-pad + +2012-10-12 13:13:32 +0200 Wim Taymans + + * docs/manual/advanced-dataaccess.xml: + * docs/manual/appendix-compiling.xml: + * docs/manual/manual.xml: + manual: move embedding elements to separate chapter + +2012-10-12 13:01:28 +0200 Wim Taymans + + * docs/pwg/advanced-qos.xml: + pwg: small example for throttle + +2012-10-12 12:55:57 +0200 Wim Taymans + + * docs/pwg/advanced-qos.xml: + * docs/pwg/pwg.xml: + pwg: add info about QoS + +2012-10-12 12:55:25 +0200 Wim Taymans + + * docs/pwg/intro-basics.xml: + pwg: adds some more links + +2012-10-12 12:55:03 +0200 Wim Taymans + + * docs/design/part-qos.txt: + qos: messages are posted, not dropped + +2012-10-12 10:35:43 +0200 Wim Taymans + + * docs/manual/communication.png: + * docs/manual/diagrams-general.svg: + * docs/manual/diagrams-pipelines.svg: + * docs/manual/gstreamer-overview.png: + * docs/manual/mime-world.png: + * docs/manual/thread-buffering.png: + manual: update graphics + +2012-10-11 17:10:17 +0200 Wim Taymans + + * docs/manual/advanced-buffering.xml: + * tests/examples/manual/.gitignore: + * tests/examples/manual/Makefile.am: + manual: add example of no-rebuffer buffering strategy + +2012-10-11 17:10:04 +0200 Wim Taymans + + * docs/manual/basics-bus.xml: + * docs/manual/intro-gstreamer.xml: + manual: small tweaks + +2012-10-11 17:09:29 +0200 Wim Taymans + + * gst/gstquery.c: + query: buffering time left is in milliseconds + +2012-10-11 17:07:39 +0200 Wim Taymans + + * docs/manual/basics-bins.xml: + manual: add some text about bin state change order + +2012-10-10 16:43:58 +0200 Wim Taymans + + * docs/manual/highlevel-playback.xml: + * tests/examples/manual/Makefile.am: + manual: talk about playsink + Talk about playsink and give an example of its usage. + +2012-10-10 14:11:43 +0200 Wim Taymans + + * tests/check/elements/dataurisrc.c: + replace some playbin2 -> playbin + +2012-10-10 13:08:31 +0200 Wim Taymans + + * docs/manual/advanced-autoplugging.xml: + * docs/manual/highlevel-playback.xml: + * docs/manual/manual.xml: + * tests/examples/manual/Makefile.am: + manual: add something about uridecodebin + +2012-10-10 11:35:01 +0200 Mark Nauwelaerts + + * libs/gst/base/gstcollectpads.c: + collectpads: ensure all timestamps are in same time domain + ... by not only processing incoming buffers through a clip function, + but also other timestamps such as those coming from GAP event. + +2012-10-10 10:36:32 +0200 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesrc.h: + docs: adjust some parameter mismatches + +2012-10-10 11:34:27 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Downgrade GST_WARNING to GST_INFO + It's usually not a problem if a query fails if there's no peer, + especially as it will happen during pad linking (caps query) + quite often and spams the logs. + +2012-10-09 17:06:04 +0200 Wim Taymans + + * docs/manual/advanced-autoplugging.xml: + * tests/examples/manual/.gitignore: + * tests/examples/manual/Makefile.am: + manual: remove outdated autoplugging section + Remove autoplugging chapter and point to decodebin/playbin examples. + +2012-10-09 16:12:01 +0200 Wim Taymans + + * docs/manual/advanced-threads.xml: + * tests/examples/manual/.gitignore: + * tests/examples/manual/Makefile.am: + manual: Talk about threading + Rework the threading chapter. + Talk about stream-status and give some examples on how to change + the thread priorities. + +2012-10-09 15:57:29 +0200 Wim Taymans + + * docs/design/part-stream-status.txt: + design: improve stream-status document + +2012-10-09 15:31:19 +0200 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: retrieve the result from start_complete + gst_base_src_start_complete() can fail when the thread could not be + started, for example. Make sure it causes the state change to fail by + retrieving the result from _start_complete(). + +2012-10-09 15:31:04 +0200 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: improve debug + +2012-10-09 10:24:34 +0200 Wim Taymans + + * gst/gstpad.h: + pad: small docs fixes and remove a 0.11 fixme + +2012-10-08 16:42:11 +0200 Wim Taymans + + * docs/design/part-buffering.txt: + * docs/manual/advanced-buffering.xml: + * docs/manual/manual.xml: + manual: talk a bit about buffering + +2012-10-08 13:22:30 +0200 Wim Taymans + + * docs/manual/advanced-clocks.xml: + * docs/pwg/advanced-clock.xml: + docs: improve clock chapter + +2012-10-08 10:39:30 +0200 Wim Taymans + + * docs/manual/advanced-dataaccess.xml: + * tests/examples/manual/Makefile.am: + manual: add example for effect switching + +2012-10-08 09:11:53 +0200 Wim Taymans + + * docs/design/part-preroll.txt: + * docs/design/part-sparsestreams.txt: + docs: small updates + +2012-10-07 16:48:25 +0100 Tim-Philipp Müller + + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * win32/common/config.h: + * win32/common/gstversion.h: + Back to development (bug-fixing) + +=== release 1.0.1 === + +2012-10-07 13:10:33 +0100 Tim-Philipp Müller + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstversion.h: + Release 1.0.1 + +2012-10-07 00:15:49 +0100 Tim-Philipp Müller + + * tests/check/gst/struct_i386.h: + * tests/check/libs/struct_i386.h: + tests: update struct_i386.h for ABI checks + Fixes make check on 32-bit x86. + +2012-10-06 17:26:21 +0100 Tim-Philipp Müller + + * tests/check/gst/struct_ppc32.h: + * tests/check/libs/struct_ppc32.h: + tests: update struct_ppc32.h for ABI checks + Fixes make check on 32-bit PowerPC. + +2012-10-06 14:55:35 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 6c0b52c to 6bb6951 + +2012-10-06 12:08:34 +0100 Tim-Philipp Müller + + * tests/examples/manual/.gitignore: + examples: .gitignore more binaries from the manual + +2012-10-05 16:04:52 +0200 Wim Taymans + + * docs/design/Makefile.am: + * docs/design/part-block.txt: + * docs/design/part-probes.txt: + docs: remove obsolete part-block document + Merge the part-block document into part-probes + +2012-10-05 09:42:59 +0200 Wim Taymans + + * gst/gstpad.c: + pad: resend dropped events + If we try to push sticky events but a probe dropped them, we don't mark + the event as received and mark the pad as PENDING_EVENTS. This ensures + that we resend the event the next time. For this we need to let the + custom flow return from the probe trickle up to + gst_pad_push_event_unchecked() so that we can differentiate between + OK and DROPPED probe returns. + +2012-10-05 07:14:17 +0200 Wim Taymans + + * gst/gstpad.c: + pad: don't store sticky events on flushing/EOS pads + Don't store sticky events on flushing or EOS pads. This was done + correctly for source pads but not for sink pads. + +2012-10-04 11:24:09 +0100 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstbasetransform.c: + * win32/common/libgstbase.def: + docs: add Since markers for new API and add it to docs and .def file + +2012-10-04 11:50:58 +0200 Wim Taymans + + * docs/manual/advanced-dataaccess.xml: + * tests/examples/manual/Makefile.am: + manual: add dynamic capsfilter example + +2012-10-04 11:18:19 +0200 Wim Taymans + + * plugins/elements/gstcapsfilter.c: + capsfilter: don't prefer passthrough + Basetransform should not try to negotiate in passthrough mode but + respect the order of what we return in the transform_caps method. + A typical case is that you specify some specific new caps in the + caps property but also allow the current caps to pass. + +2012-10-04 11:15:36 +0200 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + basetrans: add an option to prefer passthrough + Basetransform attempts to do passthrough mode regardless of the order of + the transform_caps method. Add a method to disable this. + This is needed for elements like capsfilter that want to transform caps + based on the order of the caps property. + +2012-10-04 10:01:19 +0200 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetrans: improve some comments + +2012-10-03 17:17:02 +0200 Wim Taymans + + * docs/manual/advanced-autoplugging.xml: + * docs/manual/advanced-dataaccess.xml: + manual: talk some more about dynamic pipelines + +2012-10-03 13:49:34 +0200 Wim Taymans + + * gst/gstmeta.c: + meta: don't put essential logic in g_return_val_* + +2012-10-03 13:45:22 +0200 Wim Taymans + + * docs/pwg/advanced-allocation.xml: + * libs/gst/net/gstnetaddressmeta.c: + * tests/check/gst/gstmeta.c: + meta: do metadata registration threadsafe + We need to use g_once to register the metadata implementations + only once. + See https://bugzilla.gnome.org/show_bug.cgi?id=685332 + +2012-10-03 13:35:20 +0200 Wim Taymans + + * gst/gstmeta.c: + meta: handle multiple implementation registration + First check that we can actually register the implementation before + making a GstMetaInfo. If we can't register we would otherwise end + up with an undefined type and an invalid GstMetaInfo. + It's possible that type registration fails because another metadata + with the same implementation name was already registered. + +2012-10-03 13:12:44 +0200 Wim Taymans + + * docs/manual/advanced-dataaccess.xml: + manual: use CDATA for code blocks + then we don't have to escape special token anymore. + +2012-10-03 13:09:00 +0200 Wim Taymans + + * docs/manual/advanced-dataaccess.xml: + * tests/examples/manual/Makefile.am: + manual: add partial preroll example with probes + +2012-10-03 10:53:20 +0200 Wim Taymans + + * docs/manual/advanced-dataaccess.xml: + manual: add more stuff about probes + +2012-10-02 17:23:28 +0200 Wim Taymans + + * docs/manual/advanced-dataaccess.xml: + manual: start talking about dynamic pipeline changes + +2012-10-02 16:47:05 +0200 Wim Taymans + + * docs/manual/advanced-dataaccess.xml: + manual: move section around + +2012-10-02 16:44:28 +0200 Wim Taymans + + * docs/manual/advanced-dataaccess.xml: + * tests/examples/manual/Makefile.am: + pwg: add appsink docs + +2012-10-02 16:15:19 +0200 Wim Taymans + + * docs/manual/advanced-dataaccess.xml: + * tests/examples/manual/Makefile.am: + pwg: rewite data-access chapter + Rewrite the data-access chapter so that we talk about appsrc instead + of the fakesrc hacks. + +2012-10-02 13:22:35 +0200 Wim Taymans + + * docs/design/draft-klass.txt: + * docs/manual/advanced-dataaccess.xml: + * docs/manual/advanced-metadata.xml: + * docs/manual/appendix-integration.xml: + * gst/gstpreset.c: + * po/README: + * tools/gst-plot-timeline.py: + docs: some 0.10 -> 1.0 changes + +2012-10-02 13:12:39 +0200 Wim Taymans + + * docs/pwg/advanced-allocation.xml: + pwg: add allocation query example + +2012-10-02 12:49:17 +0200 Wim Taymans + + * docs/pwg/advanced-allocation.xml: + pwg: add bufferpool docs + +2012-10-02 11:34:47 +0200 Wim Taymans + + * docs/manual/appendix-programs.xml: + * docs/manual/manual.xml: + * docs/pwg/advanced-allocation.xml: + pwg: flesh out allocation docs + Add more examples. + Add example for implementing new metadata. + Add programs to the docs (again?), it seems to contain useful info. + +2012-10-01 16:59:41 +0200 Wim Taymans + + * docs/pwg/titlepage.xml: + pwg: add new author + +2012-10-01 16:55:55 +0200 Wim Taymans + + * docs/pwg/advanced-allocation.xml: + pwg: add allocation docs + +2012-10-01 16:46:03 +0200 Wim Taymans + + * docs/design/part-buffer.txt: + * docs/design/part-bufferpool.txt: + * docs/design/part-meta.txt: + docs: update design docs + +2012-10-01 13:28:54 +0200 Wim Taymans + + * docs/design/part-bufferpool.txt: + * docs/design/part-memory.txt: + * docs/pwg/advanced-allocation.xml: + * docs/pwg/pwg.xml: + docs: more docs fixes + Fix allocator design doc + Add beginning of allocation chapter in the pwg + +2012-10-01 11:47:46 +0200 Wim Taymans + + * docs/pwg/appendix-checklist.xml: + * docs/pwg/appendix-porting.xml: + * docs/pwg/other-manager.xml: + * docs/pwg/other-ntoone.xml: + pwg: final cleanups for 1.0 + +2012-10-01 11:24:52 +0200 Wim Taymans + + * docs/pwg/advanced-events.xml: + * docs/pwg/other-base.xml: + pwg: fix events and base classes + +2012-10-01 10:40:54 +0200 Wim Taymans + + * docs/pwg/advanced-tagging.xml: + pwg: fixup tag docs + +2012-10-01 09:48:48 +0200 Wim Taymans + + * docs/pwg/advanced-interfaces.xml: + pwg: patch up the section about interfaces + +2012-09-30 04:05:36 +1000 Jan Schmidt + + * libs/gst/base/gstbasesrc.c: + basesrc: Fix seamless segment function + The 3rd parameter of gst_base_src_new_seamless_segment in + 0.10 is the time associated with the start of the new segment, + not the position in the new segment. Fix the name of the parameter, + the docs, and the implementation to match the needs of the only + extant consumer: DVD playback. + +2012-09-29 14:35:58 +0100 Tim-Philipp Müller + + * gst/gstvalue.c: + * tests/check/gst/gstcaps.c: + value: avoid duplicates when intersecting lists + Fixes negotiation taking a ridiculous amount of + time (multiple 10s of seconds on a core2) when + there are duplicate entries in lists. + Could have a negative performance impact on other + scenarios because we now have to iterate the + dest list to avoid duplicates, but we don't + have a lot of lists any more these days, and + they tend to be small anyway. The negatives + are hopefully countered by the positive effects + of reducing the list length early on in the + process. And in any case, it's the right thing + to do. + Based on patch by Andre Moreira Magalhaes. + https://bugzilla.gnome.org/show_bug.cgi?id=684981 + +2012-09-29 00:27:03 +0100 Tim-Philipp Müller + + * docs/pwg/building-boiler.xml: + pwg: minor update + https://bugzilla.gnome.org/show_bug.cgi?id=621121 + +2012-09-28 23:53:53 +0200 Wim Taymans + + * docs/faq/dependencies.xml: + faq: add missing tag + +2012-09-28 15:17:27 -0400 Olivier Crête + + * gst/gstminiobject.c: + * tests/check/gst/gstmemory.c: + miniobject: Always reject WRITE locks on READONLY miniobjects + Verify that mapping a read-only memory as read doesnt make it writable + +2012-09-28 20:38:20 +0100 Tim-Philipp Müller + + * docs/faq/dependencies.xml: + * docs/random/autotools: + * docs/random/moving-plugins: + docs: purge all mention of liboil, update FAQ + https://bugzilla.gnome.org/show_bug.cgi?id=673285 + +2012-09-28 16:03:15 +0200 Wim Taymans + + * docs/pwg/advanced-clock.xml: + * docs/pwg/advanced-dparams.xml: + * docs/pwg/advanced-interfaces.xml: + pwg: update for 1.0 + Rewrite clock part. + start on interfaces + +2012-09-28 13:25:49 +0200 Wim Taymans + + * docs/pwg/advanced-request.xml: + pwg: rework dynamic pads docs + +2012-09-28 13:25:30 +0200 Wim Taymans + + * docs/pwg/advanced-scheduling.xml: + pwg: rework scheduling docs + +2012-09-28 13:24:52 +0200 Wim Taymans + + * docs/pwg/building-props.xml: + * docs/pwg/other-base.xml: + pwg: remove some GST_BOILERPLATE + +2012-09-28 11:18:11 +0200 Wim Taymans + + * docs/design/part-activation.txt: + docs: update activation design docs + +2012-09-28 10:41:54 +0200 Wim Taymans + + * gst/gstpad.c: + * gst/gstpad.h: + pad: fix activate docs + +2012-09-28 10:04:51 +0200 Wim Taymans + + * docs/pwg/advanced-negotiation.xml: + pwg: fix more negotiation for 1.0 + +2012-09-27 16:59:04 +0200 Olivier Blin + + * gst/gstinfo.c: + info: do not register printf extension for %p + This happened when glib was not using system printf, and caused the + internal gstreamer printf extensions to be used for all %p printfs, + causing crashes. + https://bugzilla.gnome.org/show_bug.cgi?id=684970 + +2012-09-27 17:21:53 +0200 Wim Taymans + + * docs/pwg/advanced-negotiation.xml: + pwg: fix some negotiation to 1.0 + +2012-09-27 14:42:07 +0200 Wim Taymans + + * docs/pwg/building-props.xml: + * docs/pwg/building-state.xml: + * docs/pwg/building-testapp.xml: + pwg: more updates for 1.0 + +2012-09-27 13:57:46 +0200 Wim Taymans + + * docs/pwg/building-chainfn.xml: + * docs/pwg/building-eventfn.xml: + * docs/pwg/building-pads.xml: + * docs/pwg/pwg.xml: + pwg: more updates for 1.0 + +2012-09-27 11:53:36 +0200 Wim Taymans + + * docs/pwg/building-boiler.xml: + pwg: update boiler to 1.0 + +2012-09-27 11:06:06 +0200 Wim Taymans + + * gst/gstghostpad.c: + ghostpad: also ref the internal pad for activate functions + Also take a ref to the internal pad in the activate functions + +2012-09-24 18:26:16 -0400 Olivier Crête + + * gst/gstghostpad.c: + proxypad: Hold a reference to the internal pad while pushing through it + https://bugzilla.gnome.org/show_bug.cgi?id=684809 + +2012-09-25 14:44:54 -0400 Olivier Crête + + * tests/check/gst/gstghostpad.c: + tests: Test the case where ghost pads are removed while streaming + https://bugzilla.gnome.org/show_bug.cgi?id=684809 + +2012-09-27 09:44:07 +0200 Wim Taymans + + * tests/check/Makefile.am: + * tests/check/libs/libsabi.c: + * tests/check/libs/struct_arm.h: + * tests/check/libs/struct_hppa.h: + * tests/check/libs/struct_i386.h: + * tests/check/libs/struct_ppc32.h: + * tests/check/libs/struct_ppc64.h: + * tests/check/libs/struct_sparc.h: + * tests/check/libs/struct_x86_64.h: + tests: enable library abi checks + +2012-09-26 23:32:35 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + docs: fix up basesrc/basesink docs formatting + +2012-09-26 17:08:30 +0200 Wim Taymans + + * tests/check/Makefile.am: + * tests/check/gst/struct_arm.h: + * tests/check/gst/struct_hppa.h: + * tests/check/gst/struct_i386.h: + * tests/check/gst/struct_ppc32.h: + * tests/check/gst/struct_ppc64.h: + * tests/check/gst/struct_sparc.h: + * tests/check/gst/struct_x86_64.h: + tests: add abi checks + Enable abi checks again. + Fix abi sizes for x86_64, copy the file to other archs. + +2012-09-26 16:26:48 +0200 Wim Taymans + + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + update docs for 1.0 API + +2012-09-26 14:15:01 +0200 Mark Nauwelaerts + + * gst/gsturi.c: + uri: use proper 'transfer floating' annotation + https://bugzilla.gnome.org/show_bug.cgi?id=664099 + +2012-09-26 13:19:13 +0200 Wim Taymans + + * plugins/elements/gsttypefindelement.c: + * plugins/elements/gsttypefindelement.h: + typefind: send STREAM-START event + Send a STREAM_START event when we are operating in pull mode. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=684424 + +2012-09-26 10:55:28 +0200 Mark Nauwelaerts + + * gst/gstsegment.h: + segment: mark GstSegmentFlags as flags rather than enum + ... which really makes a difference when trying to serialize + a flags value which is a combination of flags, which is hard + to do as an enum type. + +2012-09-26 10:54:06 +0200 Mark Nauwelaerts + + * plugins/elements/gstidentity.c: + identity: retimestamp both pts and dts when doing so + +2012-09-26 15:01:42 +1000 Jan Schmidt + + * libs/gst/base/gstbaseparse.c: + baseparse: Move some run of the mill debug statements to LOG level + +2012-09-26 14:23:52 +1000 Jan Schmidt + + * libs/gst/base/gstbaseparse.c: + baseparse: Output timestamps after a seek. + Reinitialise the DTS after a seek so as to continue + generating timestamps when baseparse is not downstream + of a demuxer. + Fixes: #684538 + +2012-09-25 17:06:45 +0200 Wim Taymans + + * docs/manual/appendix-programs.xml: + * docs/manual/basics-pads.xml: + * docs/pwg/advanced-types.xml: + * docs/pwg/building-boiler.xml: + * docs/pwg/building-pads.xml: + * docs/pwg/other-ntoone.xml: + * tools/gst-launch.1.in: + * tools/gst-typefind.1.in: + docs: updates + MIME-type -> Media type + Fix some old gst-inspect output + +2012-09-25 16:53:08 +0200 Wim Taymans + + * docs/pwg/intro-basics.xml: + * docs/pwg/intro-preface.xml: + pwg: update for 1.0 API + +2012-09-25 15:11:33 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + docs: add section for metadata + +2012-09-25 13:09:38 +0200 Sebastian Dröge + + * gst/gstelement.c: + * gst/gstelementfactory.c: + elementfactory: Fail if no valid element factory metadata is set + +2012-09-25 13:09:28 +0200 Sebastian Dröge + + * gst/gstplugin.c: + plugin: Fail if no valid plugin metadata is set + +2012-09-25 15:06:43 +0200 Mark Nauwelaerts + + * plugins/elements/gstidentity.c: + identity: also track and store segment info in single segment mode + +2012-09-25 14:40:20 +0200 Wim Taymans + + * docs/manual/advanced-autoplugging.xml: + * docs/manual/advanced-dataaccess.xml: + * docs/manual/advanced-interfaces.xml: + * docs/manual/advanced-threads.xml: + * docs/manual/appendix-checklist.xml: + * docs/manual/appendix-integration.xml: + * docs/manual/appendix-porting.xml: + * docs/manual/basics-bins.xml: + * docs/manual/basics-bus.xml: + * docs/manual/basics-data.xml: + * docs/manual/basics-elements.xml: + * docs/manual/basics-helloworld.xml: + * docs/manual/highlevel-components.xml: + * docs/manual/intro-basics.xml: + * docs/manual/manual.xml: + * docs/random/porting-to-1.0.txt: + * tests/examples/manual/Makefile.am: + manual: fix up the manual + MIME-type -> media types + Fix up the manual in various places with the 1.0 way of doing things + such as probes, static elements, scheduling, ... + Add porting from 0.10 to 1.0 chapter. + Add probe example to build. + Remove some docs for remove components such as GstMixer and + GstPropertyProbe, XML... + +2012-09-24 16:50:50 +0200 Wim Taymans + + * docs/manual/intro-gstreamer.xml: + docs: gst-python is no more + gst-python is no more and gst-libav is one of the main modules that + we release. + +2012-09-24 16:31:34 +0200 Wim Taymans + + * libs/gst/base/gstbasesink.c: + docs: fix basesink docs + +2012-09-24 16:25:36 +0200 Wim Taymans + + * docs/faq/getting.xml: + * docs/faq/troubleshooting.xml: + * docs/faq/using.xml: + docs: update FAQ + Change versions. + Use tools with version prefix. + +2012-09-25 13:15:14 +0100 Tim-Philipp Müller + + * 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/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: + po: update translations for typo fix + +2012-09-25 13:14:53 +0100 Tim-Philipp Müller + + * gst/gsttaglist.c: + taglist: fix typo in translated string + Spotted by Chris Leonard. + https://bugzilla.gnome.org/show_bug.cgi?id=684755 + +2012-09-25 09:27:59 +0200 Sebastian Dröge + + * gst/gstpluginfeature.c: + pluginfeature: Remove 0.11.9X->1.0.0 version mangling + +2012-09-25 01:02:03 +0100 Josep Torra Valles + + * tests/benchmarks/complexity.c: + * tests/benchmarks/gstpollstress.c: + benchmarks: printf format fixes to make intel compiler happy + https://bugzilla.gnome.org/show_bug.cgi?id=552657 + +2012-09-25 00:55:59 +0100 Josep Torra Valles + + * libs/gst/base/gsttypefindhelper.c: + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gsttee.c: + * tools/gst-launch.c: + * tools/tools.h: + Make intel compiler happier + https://bugzilla.gnome.org/show_bug.cgi?id=552657 + +2012-09-24 16:31:54 +0100 Tim-Philipp Müller + + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * win32/common/config.h: + * win32/common/gstversion.h: + Back to development (bug fixing) + +=== release 1.0.0 === + +2012-09-24 12:19:16 +0100 Tim-Philipp Müller + + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + Release 1.0.0 + +2012-09-24 00:39:26 +0100 Tim-Philipp Müller + + * docs/random/porting-to-1.0.txt: + docs: update 0.11 references in porting guide + +2012-09-24 00:37:27 +0100 Tim-Philipp Müller + + * docs/random/porting-to-0.11.txt: + * docs/random/porting-to-1.0.txt: + docs: rename porting-to-0.11.txt to porting-to-1.0.txt + +2012-09-23 19:56:43 +0100 Tim-Philipp Müller + + * libs/gst/check/gstcheck.h: + check: fix FIXME printing for tcase_skip_broken_test() + +2012-09-23 17:30:50 +0100 Tim-Philipp Müller + + * docs/random/release: + docs: update release doc + Create tags for releases without the ugly RELEASE- prefix. + +2012-09-23 12:42:01 +0100 Tim-Philipp Müller + + * libs/gst/base/gstcollectpads.c: + collectpads: don't forward random stream-start event + It's not right, and we don't know what extra properties + that event might have set in future (e.g. sparseness). + This change means collectpad users need to create their + own stream-start event now. We could add a utility + function that creates a stream-start event based on + the input stream-start events. + +2012-09-22 16:07:15 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 4f962f7 to 6c0b52c + +2012-09-21 21:13:27 +0200 Mark Nauwelaerts + + * docs/manual/advanced-dparams.xml: + manual: update controller documentation + +2012-09-21 21:13:13 +0200 Mark Nauwelaerts + + * gst/gstobject.c: + object: update controller documentation + +2012-09-18 15:22:03 +0200 Bastian Winkler + + * tools/gst-launch.1.in: + man: Fix syntax for value lists in caps strings + Value lists use curly brackets instead of parentheses + https://bugzilla.gnome.org/show_bug.cgi?id=684293 + +2012-09-20 14:48:17 -0400 Olivier Crête + + * gst/gstpad.c: + * tests/check/gst/gstpad.c: + pad: Remove pad probes only once + Also add test to make sure that if a pad probe is removed while it's + callback is running, the cleanup_hook isn't called again if it + returns GST_PAD_PROBE_REMOVE + +2012-09-19 15:01:46 -0400 Olivier Crête + + * docs/gst/gstreamer-sections.txt: + * gst/gstpad.c: + * gst/gstpad.h: + * win32/common/libgstreamer.def: + pad: Add functions to safely access GstProbeInfo data pointer + This is so that introspection based bindings can access it. + https://bugzilla.gnome.org/show_bug.cgi?id=684402 + +2012-09-19 23:25:54 +0100 Tim-Philipp Müller + + * docs/manual/basics-bins.xml: + docs: remove reference to 0.8 GstBin API from manual + https://bugzilla.gnome.org/show_bug.cgi?id=684048 + +2012-09-19 15:14:35 +0200 Mark Nauwelaerts + + * plugins/elements/gstidentity.c: + identity: transform GAP event in single segment mode + +2012-09-19 09:44:08 +0100 Tim-Philipp Müller + + * libs/gst/base/gstcollectpads.c: + docs: collectpads doc fixes + +2012-09-18 21:49:41 +0200 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: check acquire result value + Check the result value from _buffer_pool_acquire() and return the + value when allocation failed. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=684285 + +2012-09-18 12:14:34 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Fix refcount bug by unreffing the correct variable + +=== release 0.11.99 === + +2012-09-17 17:56:44 +0100 Tim-Philipp Müller + + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + Release 0.11.99 + +2012-09-17 13:35:26 +0100 Tim-Philipp Müller + + * configure.ac: + * gst/Makefile.am: + * gst/gst.h: + * libs/gst/base/Makefile.am: + * libs/gst/check/Makefile.am: + * libs/gst/controller/Makefile.am: + * libs/gst/net/Makefile.am: + * win32/vs10/Common.props: + Remove GST_USE_UNSTABLE_API guard and defines + +2012-09-17 13:09:58 +0200 Sebastian Dröge + + * gst/gstpad.c: + * gst/gstpad.h: + * tests/check/gst/gstghostpad.c: + pad: Add parent parameter to the link and unlink functions + Fixes part of bug #683995. + +2012-09-16 23:20:46 +0100 Tim-Philipp Müller + + * gst/gststructure.c: + * gst/gstvalue.c: + * tests/check/gst/gsttag.c: + sample: add serialisation/deserialisation functions for GstSample + Since these things are inside taglists now, it would be good to be + able to print them and deserialise them. + https://bugzilla.gnome.org/show_bug.cgi?id=681322 + +2012-09-15 21:56:07 +0200 Christian Fredrik Kalager Schaller + + * gstreamer.spec.in: + Switch to F18 naming of the package + +2012-09-15 18:43:39 +0200 Mark Nauwelaerts + + * docs/manual/advanced-autoplugging.xml: + * docs/manual/basics-elements.xml: + * tools/gst-inspect.c: + use gst_element_factory_get_metadata to replace obsolete API + +2012-09-14 17:52:14 +0200 Mark Nauwelaerts + + * docs/manual/advanced-metadata.xml: + * docs/manual/basics-bus.xml: + replace gst_tag_list_free with gst_tag_list_unref + +2012-09-14 17:08:49 +0200 Mark Nauwelaerts + + * plugins/elements/gstdataurisrc.c: + replace gst_element_class_set_details_simple with gst_element_class_set_metadata + +2012-09-14 17:00:23 +0200 Mark Nauwelaerts + + * tests/check/gst/gstcontroller.c: + * tests/check/gst/gstpreset.c: + * tests/check/libs/controller.c: + * tests/check/libs/test_transform.c: + * tests/check/pipelines/parse-launch.c: + * tests/examples/controller/control-sources.c: + replace gst_element_class_set_details_simple with gst_element_class_set_metadata + +2012-09-06 16:32:35 +0200 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetrans: whitespace fix + +2012-09-14 14:08:18 +0100 Tim-Philipp Müller + + * docs/plugins/gstreamer-plugins-docs.sgml: + docs: indexers are no more + https://bugzilla.gnome.org/show_bug.cgi?id=684018 + +2012-09-14 13:34:24 +0200 Wim Taymans + + * tests/examples/stepping/framestep1.c: + tests: fix for appsink return value addition + +2012-09-14 02:54:52 +0100 Tim-Philipp Müller + + * configure.ac: + Back to development + +=== release 0.11.94 === + +2012-09-14 02:46:34 +0100 Tim-Philipp Müller + + * ChangeLog: + * configure.ac: + * docs/plugins/gstreamer-plugins.args: + * docs/plugins/gstreamer-plugins.hierarchy: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + Release 0.11.94 + +2012-09-14 01:28:46 +0100 Olivier Crête + + * gst/gstpad.c: + pad: don't try to pretty-print event after we've given away ownership + Might cause crashes with debug logging enabled. + https://bugzilla.gnome.org/show_bug.cgi?id=683996 + +2012-09-14 01:17:54 +0100 Tim-Philipp Müller + + * 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/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: + po: update translations + +2012-09-14 00:30:37 +0100 Tim-Philipp Müller + + * gst/gstcompat.h: + gstcompat: fix backwards compat macro for gst_message_new_duration + Name it properly, so it, like, works. Clearly no one actually + used that.. + +2012-09-13 12:00:08 +0200 Wim Taymans + + * docs/pwg/advanced-types.xml: + * docs/pwg/intro-basics.xml: + docs: fix formats a little + +2012-09-13 11:38:52 +0200 Wim Taymans + + * win32/common/libgstbase.def: + defs: add new baseparse function + +2012-09-13 11:38:33 +0200 Wim Taymans + + * tools/gst-launch.1.in: + docs: fourcc is no more + +2012-09-13 11:35:41 +0200 Wim Taymans + + * docs/design/draft-klass.txt: + * docs/design/part-missing-plugins.txt: + * docs/faq/using.xml: + * docs/manual/advanced-dataaccess.xml: + * docs/manual/appendix-checklist.xml: + * docs/manual/appendix-programs.xml: + * docs/manual/basics-pads.xml: + * docs/pwg/advanced-negotiation.xml: + * docs/pwg/building-boiler.xml: + * docs/pwg/building-pads.xml: + * docs/pwg/other-ntoone.xml: + * libs/gst/base/gstbasetransform.c: + * plugins/elements/gstcapsfilter.c: + * plugins/elements/gsttee.c: + * tests/benchmarks/caps.c: + * tests/benchmarks/capsnego.c: + * tests/check/gst/gststructure.c: + * tools/gst-launch.1.in: + docs: fix some docs + from git grep for ffmpegcolorspace and x-raw- + +2012-09-13 10:48:08 +0200 Wim Taymans + + * libs/gst/base/gstbaseparse.h: + parse: add missing declaration + +2012-09-13 10:24:16 +0200 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: indent fix + +2012-09-12 22:44:37 -0700 Jan Schmidt + + * libs/gst/base/gstbaseparse.c: + baseparse: Add a mode/flag for disabling PTS interpolation + To be used by sub-classes implementing video formats with reordering + such as MPEG. + +2012-09-10 18:38:57 -0700 Jan Schmidt + + * libs/gst/base/gstbaseparse.c: + baseparse: Handle GAP and still-frame events. + Hacky, because the still-frame code all lives in -base, where we + can't use it - so this is a hacky duplication of -base code. Not + sure which way to fix this: Move baseparse to -base, or move still-frame + events to core? + +2012-09-04 19:38:26 -0700 Jan Schmidt + + * libs/gst/base/gstbaseparse.c: + baseparse: Restructure event handling + Make the event handling more like what videodecoder does, + to ensure that all events are passed to child classes before being + placed on the pending queue or pushed onward. + +2012-09-03 10:30:08 -0700 Jan Schmidt + + * libs/gst/base/gstbaseparse.c: + baseparse: Store incoming cached events in reverse order + Reverse the list just before sending. Prepending is more efficient + than appending, so this saves some cycles. + +2012-09-02 23:32:50 -0700 Jan Schmidt + + * libs/gst/base/gstbaseparse.c: + baseparse: First attempt at handling both DTS and PTS + +2012-09-13 00:38:21 +0100 Tim-Philipp Müller + + * gst/gsttaglist.c: + taglist: add warning when we get something else than a sample for a sample tag + Facilitate GstBuffer -> GstSample transition for some tags, + could be hard to catch otherwise when creating tags, since + it'll only be apparent later when someone tries to read the + tags. + +2012-09-12 14:14:31 +0200 Andreas Frisch + + * gst/gstelementfactory.c: + elementfactory: don't crash if no element klass has been set + https://bugzilla.gnome.org/show_bug.cgi?id=683865 + +2012-09-12 23:12:14 +0200 Stefan Sauer + + * tests/check/libs/collectpads.c: + collectpads: fix a misplaced ')' + +2012-09-12 21:20:46 +0100 Tim-Philipp Müller + + * gst/gsterror.c: + error: don't tell people to file a bug for negotiation errors + +2012-09-12 20:54:50 +0200 Stefan Sauer + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstcollectpads.h: + * tests/check/libs/collectpads.c: + * win32/common/libgstbase.def: + collectpads: remove gst_collect_pads_add_pad_full + Rename gst_collect_pads_add_pad_full() to gst_collect_pads_add_pad() and fix all + invocations. + +2012-09-12 17:16:41 +0200 Mark Nauwelaerts + + * plugins/elements/gstfilesink.c: + filesink: fix build on Cygwin + ... where __fbufsize is not available + +2012-09-12 13:00:15 +0100 Tim-Philipp Müller + + * tests/check/elements/queue2.c: + Revert "tests: fix buffer leak in queue2 unit test" + This reverts commit 232fd2953eb00f694b667e7796704f5974cea452. + This was already fixed. + +2012-05-24 13:08:16 +0100 Tim-Philipp Müller + + * plugins/elements/gstqueue2.c: + queue2: fix possible data corruption in ring buffer mode when seeking + Fix race that could cause data corruption when seeking in ring buffer + mode. + In perform_seek_to_offset(), called from the demuxer's pull_range + request, we drop the lock, tell upstream (usually a http source) + to seek to a different offset, then re-acquire the lock before we + do things to the ranges. However, between us sending the seek event + and re-acquiring the lock, the source thread might already have pushed + some data and moved along the range's writing_pos beyond the seek + offset. In that case we don't want to set the writing position back + to the requested seek position, as it would cause data to be written + to the wrong offset in the file or ring buffer. + Reproducible doing seek-emulated fast-forward/backward on 006653. + Conflicts: + plugins/elements/gstqueue2.c + +2012-05-24 13:06:47 +0100 Tim-Philipp Müller + + * tests/check/elements/queue2.c: + tests: fix buffer leak in queue2 unit test + +2012-09-12 12:23:22 +0200 Mark Nauwelaerts + + * libs/gst/check/gstcheck.h: + check: remove glib deprecation compatibility trickery + +2012-09-12 12:22:53 +0200 Mark Nauwelaerts + + * libs/gst/check/gstbufferstraw.c: + * libs/gst/check/gstcheck.c: + * libs/gst/check/gstcheck.h: + * tests/check/elements/queue.c: + * tests/check/elements/tee.c: + check: port to the new GLib thread API + +2012-09-12 11:52:25 +0200 Mark Nauwelaerts + + * tests/check/elements/fakesink.c: + * tests/check/elements/filesrc.c: + * tests/check/elements/multiqueue.c: + * tests/check/elements/queue.c: + * tests/check/elements/queue2.c: + * tests/check/elements/tee.c: + * tests/check/generic/sinks.c: + * tests/check/gst/gstbus.c: + * tests/check/gst/gstevent.c: + * tests/check/gst/gstghostpad.c: + * tests/check/gst/gstiterator.c: + * tests/check/gst/gstpad.c: + * tests/check/gst/gstpipeline.c: + * tests/check/gst/gstsystemclock.c: + * tests/check/gst/gsttagsetter.c: + * tests/check/gst/gsttocsetter.c: + * tests/check/libs/collectpads.c: + tests: port to new GLib thread API + +2012-09-12 11:49:55 +0200 Mark Nauwelaerts + + * tests/benchmarks/gstbufferstress.c: + * tests/benchmarks/gstclockstress.c: + * tests/benchmarks/gstpollstress.c: + tests: benchmarks: align error message with code + +2012-09-11 19:49:58 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstpad.c: + * gst/gstpad.h: + * libs/gst/base/gstbaseparse.c: + * win32/common/libgstreamer.def: + pad: expose gst_pad_mode_get_name() and use it in baseparse + +2012-09-11 13:22:57 +0100 Tim-Philipp Müller + + * scripts/create-uninstalled-setup.sh: + * scripts/gst-uninstalled: + scripts: update for gst-ffmpeg -> gst-libav + Now that we have a gst-libav git repository (symlinked to gst-ffmpeg). + +2012-09-11 17:27:03 +0200 Mark Nauwelaerts + + * gst/gstquery.c: + query: adjust test logic for scheduling mode with flagS + +2012-09-11 16:39:34 +0200 Mark Nauwelaerts + + * docs/gst/gstreamer-sections.txt: + * gst/gstquery.c: + * gst/gstquery.h: + * win32/common/libgstreamer.def: + query: add convenience API to query for scheduling mode and flags + +2012-09-11 16:29:12 +0200 Wim Taymans + + * docs/design/part-events.txt: + * docs/gst/gstreamer-sections.txt: + * gst/gst.c: + * gst/gstbuffer.h: + * gst/gstevent.c: + * gst/gstevent.h: + * libs/gst/base/gstcollectpads.c: + * libs/gst/check/gstconsistencychecker.c: + * tests/check/gst/gstevent.c: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstenumtypes.h: + * win32/common/libgstreamer.def: + events: remove STREAM_CONFIG + We won't be able to implement this so it's better to move it out of the way. + +2012-09-11 16:09:37 +0200 Wim Taymans + + * libs/gst/base/gstcollectpads.h: + collectpads: clean up header indentation + +2012-09-11 11:34:11 +0200 Wim Taymans + + * gst/gstutils.c: + utils: allow NULL stream_id also when 0 srcpads + We usually first create the stream_id for the stream_start event and then add + the pad to the element. This means that this functions should work when there + are no pads on the element yet. + +2012-09-10 21:39:32 +0100 Tim-Philipp Müller + + * gst/gstquery.c: + * libs/gst/base/gstbaseparse.c: + * plugins/elements/gsttypefindelement.c: + baseparse, typefind: only activate in pull mode if upstream is seekable + Upstream might support pull mode, but only sequential pulls, + which isn't gonna do much for us. + https://bugzilla.gnome.org/show_bug.cgi?id=634927 + +2012-09-10 20:30:32 +0100 Tim-Philipp Müller + + * docs/random/porting-to-0.11.txt: + porting-to-0.11.txt: some minor fixes + +2012-09-10 16:52:46 +0100 Tim-Philipp Müller + + * gst/gstsample.c: + sample: free info structure with sample if there is one and fix copy with NULL info structure + +2012-09-10 12:20:15 +0200 Mark Nauwelaerts + + * gst/gstmemory.h: + memory: add padding to GstMapInfo + +2012-09-10 12:12:02 +0200 Mark Nauwelaerts + + * libs/gst/controller/gstdirectcontrolbinding.c: + * libs/gst/controller/gsttimedvaluecontrolsource.h: + libs: adjust comment style + +2012-09-10 12:11:23 +0200 Mark Nauwelaerts + + * gst/gstcompat.h: + * gst/gstobject.c: + gst: remove some defunct commented code + +2012-09-10 12:00:22 +0200 Wim Taymans + + * docs/random/porting-to-0.11.txt: + docs: improve porting doc + +2012-09-10 10:08:09 +0200 Wim Taymans + + * tests/check/tools/gstinspect.c: + tests: disable deprecation warnings + define GLIB_DISABLE_DEPRECATION_WARNINGS earlier so that it is defined before + the glib headers are loaded or else we trip over the GValueArray deprecations in + gst-inspect.c. + +2012-09-07 01:02:10 +0100 Tim-Philipp Müller + + * libs/gst/controller/gstdirectcontrolbinding.c: + controller: fix direct control binding double -> int conversion + Round properly to nearest integer. Fixes controller + unit test on PowerPC G4. + +2012-09-06 15:06:08 +0100 Tim-Philipp Müller + + * tests/examples/helloworld/helloworld.c: + examples: fix bus/fd leak in hello world example + https://bugzilla.gnome.org/show_bug.cgi?id=683470 + +2012-09-05 19:55:10 +0100 Tim-Philipp Müller + + * gst-element-check.m4: + gst-element-check.m4: fix action-if-found and not-found invocation + Arguments got shifted back by one. + +2012-09-05 15:37:13 +0200 Mark Nauwelaerts + + * libs/gst/base/gstcollectpads.c: + collectpads: handle GAP event + +2012-09-04 12:13:11 +0200 Wim Taymans + + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + basesink: wait_eos -> wait_event + Fix a FIXME. Now we can also pass the GAP event to the subclass. + +2012-09-03 18:45:03 +0100 Tim-Philipp Müller + + * tests/examples/controller/Makefile.am: + examples: update Makefile.am android bits in controller example + Should fix build failure reported on IRC. + +2012-08-30 19:15:42 +0200 Wim Taymans + + * gst/gstpad.c: + pad: check sticky events also after pad block + Recheck for sticky events after doing a pad block because the pad block could + have caused a relink and then we need to resend the events to the newly linked + pad. + Fixes things like switching of visualisations. + +2012-09-02 02:04:14 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbaseparse.c: + baseparse: update for gst_message_new_duration -> _duration_changed() + +2012-09-02 01:17:44 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * docs/random/porting-to-0.11.txt: + * gst/gstbin.c: + * gst/gstcompat.h: + * gst/gstmessage.c: + * gst/gstmessage.h: + * gst/gstquark.c: + * gst/gstquark.h: + * win32/common/libgstreamer.def: + message: rename GST_MESSAGE_DURATION -> GST_MESSAGE_DURATION_CHANGED + The duration should be re-queried via a query using the + normal path, we don't want applications to use the value + from the message itself, since it might no match what a + duration query done from the sink upstream might yield. + Also disables duration caching in GstBin. It should be + added back again at some point. + +2012-09-01 23:54:23 +0100 Tim-Philipp Müller + + * configure.ac: + configure: add reminder to remove GST_UNSTABLE_API stuff before 1.0.0 + +2012-09-01 18:06:58 +0100 Tim-Philipp Müller + + * .gitignore: + * Makefile.am: + * configure.ac: + * gst-element-check.m4: + * gst-element-check.m4.in: + gst-element-check.m4: rename AM_GST_ELEMENT_CHECK to GST_ELEMENT_CHECK + And allow passing of a minimum version (if not needed, pass 1.0). + https://bugzilla.gnome.org/show_bug.cgi?id=682968 + +2012-09-01 17:50:14 +0100 Tim-Philipp Müller + + * tests/check/.gitignore: + * tests/check/Makefile.am: + * tests/check/tools/gstinspect.c: + tests: add check for gst-inspect --exists functionality + +2012-09-01 17:47:58 +0100 Tim-Philipp Müller + + * tools/gst-inspect.c: + tools: add --exists and --atleast-version option to gst-inspect + For checking if an element exists with a given minimum version. + Will use that in our new GST_ELEMENT_CHECK m4 macro. + https://bugzilla.gnome.org/show_bug.cgi?id=682968 + +2012-09-01 17:32:04 +0100 Tim-Philipp Müller + + * gst/gstpluginfeature.c: + pluginfeature: disable version mangling for post-1.0.0 release + Just in case we don't grep for FIXME 1.0 before the release. + +2012-08-31 11:31:45 -0700 Jan Schmidt + + * libs/gst/base/gstbasesink.c: + basesink: Make GAP events actually trigger preroll + Slightly hacky approach needing refinement + +2012-08-31 06:25:22 -0700 Jan Schmidt + + * gst/gstpad.c: + gstpad: make some debug statements more verbose + +2012-08-31 06:23:53 -0700 Jan Schmidt + + * gst/gstghostpad.c: + * plugins/elements/gstinputselector.c: + ghostpad: Make some debugging more verbose + Also, remove an unnecessary #include in input-selector + +2012-08-28 15:44:48 -0700 Jan Schmidt + + * gst/gstsegment.c: + GstSegment: Fix doc description string last_stop->position + +2012-08-30 19:47:57 +0100 Arnaud Vrac + + * plugins/elements/gstinputselector.c: + inputselector: fix clock leak + https://bugzilla.gnome.org/show_bug.cgi?id=682997 + +2012-08-29 22:57:02 +0100 Tim-Philipp Müller + + * tools/gst-inspect.c: + tools: output gst-inspect errors to stderr + +2012-08-28 07:39:50 +0200 Alban Browaeys + + * gst/gstvalue.c: + value: fix crash serialising a 0 flags value when there's no name for it + Fixes segfault when doing gst-launch-1.0 -v -m camerabin + (encodebin notifies a 0 value for its "flag" property). + https://bugzilla.gnome.org/show_bug.cgi?id=682958 + +2012-08-24 23:14:57 +0100 Tim-Philipp Müller + + * gst/gst.c: + gst: log performance warning debug message if glib emulates atomic ops + +2012-08-23 13:51:27 +0100 Lionel Landwerlin + + * gst/Makefile.am: + gst: use configure-detected or externally provided glib-mkenums + To ease cross-compilation. + https://bugzilla.gnome.org/show_bug.cgi?id=677620 + +2012-08-22 13:29:34 +0200 Stefan Sauer + + * common: + Automatic update of common submodule + From 668acee to 4f962f7 + +2012-08-22 13:14:56 +0200 Stefan Sauer + + * configure.ac: + configure: bump gtk-doc req to 1.12 (mar-2009) + This allows us to e.g. unconditionally use gtkdoc-rebase. + +2012-08-21 13:30:52 +0200 Wim Taymans + + * gst/gstmemory.h: + memory: add _make_writable + +2012-08-21 00:03:37 +0100 Tim-Philipp Müller + + * docs/random/porting-to-0.11.txt: + docs: mention some media type changes in porting-to-0.11.txt doc + +2012-08-20 13:51:05 +0100 Tim-Philipp Müller + + * docs/random/porting-to-0.11.txt: + docs: minor update to porting doc for child proxy lookup method + And a typo fix. + +2012-08-20 11:31:51 +0200 Wim Taymans + + * gst/gstallocator.c: + allocator: make a copy with the same alignment + When making a copy of the memory allocated from the default memory allocator, + make sure the new copy has the same alignment as the original memory. + See https://bugzilla.gnome.org/show_bug.cgi?id=680796 + +2012-08-19 17:51:00 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbaseparse.c: + baseparse: make seeking in DEFAULT format work if the subclass can convert for us + We only deal in TIME format ourselves, but if the subclass can handle + converting other formats into TIME format, we can support that too. + Fixes seeking in DEFAULT (sample) format with flacparse, + and the flacdec unit test. + +2012-08-18 21:42:23 +0100 Tim-Philipp Müller + + * tools/gst-launch.1.in: + tools: minor fixes to gst-launch man page + +2012-08-17 12:23:50 +0200 Stefan Sauer + + * gst/gstpreset.c: + preset: implement child_proxy support + Elements such as the GstIirEqualizerNBands would so far not store the properties + of their children. Now we also grab the properties of child elements and try to + restore them. + +2012-08-14 18:44:38 +0200 Edward Hervey + + * plugins/elements/gstinputselector.c: + inputselector: Wait for other streams to advance on unselected pads + Otherwise we end up dropping a lot of data in the case where data starts + arriving on the non-selected pad, resulting in big gaps in stream switching + +2012-08-14 18:43:54 +0200 Edward Hervey + + * plugins/elements/gstinputselector.c: + inputselector: More debug statements + +2012-08-14 18:42:31 +0200 Edward Hervey + + * plugins/elements/gstinputselector.c: + inputselector: Don't forward stream-start sticky events + Only one STREAM_START event should be let through, else it will + confuse downstream elements that think a new stream is starting + whereas in fact we are just switching to a different input. + In the future we might want to let them through but with the same + sequence number. + +2012-08-14 15:46:35 +0200 Sebastian Dröge + + * docs/libs/gstreamer-libs-sections.txt: + * win32/common/libgstbase.def: + docs: Add new basesrc/basetransform API to the docs + +2012-08-07 17:38:53 +0200 Víctor Manuel Jáquez Leal + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + basetransform: getters for pool and allocator + Sometimes a transform filter would need the buffer pool or the memory + allocator negotiated by the base class, for example, for querying different + parameters, such as a bigger number of buffers to allocate by the buffer pool. + This patch expose a two getters accessors: one for the buffer pool and the + other for the memory allocator. + +2012-08-07 17:35:48 +0200 Víctor Manuel Jáquez Leal + + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasesrc.h: + basesrc: getters for pool and allocator + Sometimes the sources would use the buffer pool or the memory allocator for + something else than just allocating output buffers; for example, querying for + different parameters, such as a bigger number of buffers to allocate by the + pool. + This patch expose a two getters accessors: one for the buffer pool and the + other for the memory allocator. + +2012-08-14 00:39:18 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstregistry.c: + * gst/gstregistry.h: + * win32/common/libgstreamer.def: + registry: remove some unused and in their current form pointless API + Not so useful: just adds/reads stuff from an internal GList without + actually doing anything with those paths, so remove for now: + gst_registry_add_path + gst_registry_get_path_list + https://bugzilla.gnome.org/show_bug.cgi?id=608841 + +2012-08-12 13:27:06 +0100 Tim-Philipp Müller + + * gst/parse/grammar.y: + parse: fix up for gst_child_proxy_lookup() only working on child proxy interfaces + https://bugzilla.gnome.org/show_bug.cgi?id=681681 + +2012-08-12 13:24:18 +0100 Tim-Philipp Müller + + * gst/gstchildproxy.c: + * gst/gstchildproxy.h: + childproxy: make gst_child_proxy_lookup() a proper GstChildProxy method + No longer accept any old GObjects. This makes things nicer for + bindings. If a utility function that handles both nicely + is deemed worthwhile, we can still add one to gstutils. + https://bugzilla.gnome.org/show_bug.cgi?id=681681 + +2012-08-13 00:01:16 +0100 Tim-Philipp Müller + + * gst/gstvalue.c: + value: when serialising arrays or lists, handle types we can't serialise more gracefully + https://bugzilla.gnome.org/show_bug.cgi?id=681322 + +2012-08-12 19:39:46 +0100 Tim-Philipp Müller + + * libs/gst/check/gstconsistencychecker.c: + consistencychecker: add some more details to failure messages + Mention pad where the problem occured, and the event name. + +2012-08-12 18:36:09 +0100 Tim-Philipp Müller + + * tests/check/Makefile.am: + * tests/check/libs/collectpads.c: + tests: fix collectpads test + After an EOS we must send a FLUSH_STOP event if + we want to send data again. + +2012-08-12 18:31:13 +0100 Tim-Philipp Müller + + * gst/gstevent.c: + event: fix leak in gst_event_parse_stream_start() + gst_structure_id_get() will make a copy of the string + extracted, but we're assigning it to a const gchar *. + +2012-08-12 16:40:03 +0100 Tim-Philipp Müller + + * tests/check/gst/gstpipeline.c: + tests: make pipeline test valgrind clean + +2012-08-12 16:37:02 +0100 Tim-Philipp Müller + + * tests/check/Makefile.am: + * tests/check/gst/gstpipeline.c: + tests: fix pipeline unit test + Which was disabled because it failed. + +2012-08-12 15:48:20 +0100 Tim-Philipp Müller + + * scripts/create-uninstalled-setup.sh: + scripts: fix unterminated quoted string in create-uninstalled-setup.sh + +2012-08-12 00:12:56 +0100 Tim-Philipp Müller + + * docs/random/porting-to-0.11.txt: + docs: mention gst_video_format_parse_caps() in porting guide + +2012-08-11 22:19:32 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.c: + * gst/gstbufferpool.c: + * gst/gstcontrolbinding.h: + * gst/gstevent.c: + * gst/gstmemory.h: + * gst/gstmessage.h: + * gst/gstminiobject.c: + * gst/gstminiobject.h: + * gst/gsttaglist.c: + * gst/gsttaglist.h: + * gst/gsttoc.c: + * gst/gstutils.c: + docs: fix up docs a bit + +2012-08-11 22:18:13 +0100 Tim-Philipp Müller + + * gst/gstchildproxy.c: + childproxy: fix up g-i annotation for _lookup() paramspec return value + No ref is returned here. + +2012-08-11 22:17:35 +0100 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: update .def file for new buffer functions + +2012-08-10 22:58:56 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbaseparse.c: + baseparse: fix reverse playback with upstream demuxers that support it + Don't just return FALSE for seek events with negative rates when + operating in push mode. An upstream demuxer may support this just + fine, so if we're not operating in pull mode always check upstream + first if it can handle the seek event. This fixes reverse playback + where the upstream demuxer supports it (e.g. with qtdemux). The + same code would work fine in 0.10, because baseparse will just + call the default pad event handler if FALSE was returned from the + baseparse event handler, and the pad event handler will just + forward it upstream. In 0.11 the baseclass or subclass is + responsible for chaining up to the parent class or forwarding the + event upstream in any case. + Disable reverse playback in pull mode for now, there seems to + be something going wrong with the segment configuration in that + case. + +2012-08-04 11:48:52 -0300 Thiago Santos + + * libs/gst/base/gstbasetransform.c: + basetransform: do not error on not-negotiated + Don't error out too early and let upstream decide if it can + workaround a not-negotiated problem + https://bugzilla.gnome.org/show_bug.cgi?id=681198 + +2012-08-04 11:48:13 -0300 Thiago Santos + + * libs/gst/base/gstbasesrc.c: + basesrc: retry on not-negotiate if a reconfigure is pending + Before erroring out on not-negotiated returns, check if the pad + has the reconfigure flag set and retry. + https://bugzilla.gnome.org/show_bug.cgi?id=681198 + +2012-08-04 11:42:05 -0300 Thiago Santos + + * gst/gstpad.c: + * gst/gstpad.h: + * win32/common/libgstreamer.def: + pad: add gst_pad_needs_reconfigure + Add an alternative version of gst_pad_check_reconfigure that doesn't + clear the reconfigure flag. + Useful for increasing error resilience without duplicating the + reconfigure code in pad task functions. + API: gst_pad_needs_reconfigure + https://bugzilla.gnome.org/show_bug.cgi?id=681198 + +2012-07-29 15:44:45 -0700 Evan Nemerson + + * gst/gstpad.h: + pad: add GST_PAD_LINK_CHECK_DEFAULT to GstPadLinkCheck + This allows introspection-based bindings to access + Gst.PadLinkCheck.DEFAULT instead of + Gst.PAD_LINK_CHECK_DEFAULT. + https://bugzilla.gnome.org/show_bug.cgi?id=678301 + +2012-07-29 14:57:41 -0700 Evan Nemerson + + * gst/gstbuffer.c: + buffer: mark gst_buffer_wrapped* data as array + https://bugzilla.gnome.org/show_bug.cgi?id=678301 + +2012-07-24 13:26:00 -0700 Evan Nemerson + + * gst/gstobject.c: + * gst/gsttoc.c: + introspection: fix some warnings generated by g-ir-scanner. + https://bugzilla.gnome.org/show_bug.cgi?id=678301 + +2012-07-30 21:46:18 -0700 Evan Nemerson + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + buffer: convert gst_buffer_* macros to functions + GObject Introspection does not support macros. + This is needed for bindings. We can still add back + macros or inline functions again later if we think + it's worth it. + https://bugzilla.gnome.org/show_bug.cgi?id=678301 + +2012-08-10 13:50:41 +0100 Tim-Philipp Müller + + * libs/gst/net/gstnetclientclock.c: + netclientclock: fix printf format in debug message + +2012-08-10 12:23:03 +0200 Wim Taymans + + * gst/gstbufferpool.c: + bufferpool: fix max_buffers handling + When max_buffers > 0 and the pool is empty, actually try to allocate more + buffers up to the max_buffers limit. + We need to add a counter for this to count how many buffers we allocated and + check this against the max_buffers limit. + Reorganise and clean up some code. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681153 + +2012-08-10 09:19:25 +0100 Tim-Philipp Müller + + * libs/gst/net/gstnetclientclock.c: + netclientclock: simplify by using g_socket_condition_timed_wait() + No need to use a custom main context and custom timeout sources, + just use g_socket_condition_timed_wait() instead, which was added + for exactly this case. + Also seems to help with the unit test deadlocking with glib 2.33.x + https://bugzilla.gnome.org/show_bug.cgi?id=681575 + +2012-08-09 19:15:29 +0100 Tim-Philipp Müller + + * gst/gstobject.c: + gstobject: fix double string escaping in gst_object_default_deep_notify() + Make output of gst-launch -v readable again. + last-message = "event\ \ \ \*\*\*\*\*\*\*\ \(fakesink0:sink\)\ E\ \(type:\ tag\ \(20510\)\,\ GstTagList-stream\,\ taglist\=\(taglist\)\"taglist\\\,\\\ video-codec\\\=\\\(string\\\)H264\\\,\\\ + minimum-bitrate\\\=\\\(uint\\\)636611\\\,\\\ bitrate\\\=\\\(uint\\\)980729\\\,\\\ maximum-bitrate\\\=\\\(uint\\\)1116707\\\;\"\;\)\ 0x15bc760" + vs. + last-message = event ******* (fakesink0:sink) E (type: tag (20510), GstTagList-stream, taglist=(taglist)"taglist\,\ video-codec\=\(string\)H264\,\ minimum-bitrate\=\(uint\)856039\,\ bitrate + \=\(uint\)1019748\,\ maximum-bitrate\=\(uint\)1116707\;";) 0x11149e0 + +2012-08-09 16:18:59 +0200 Wim Taymans + + * gst/gstminiobject.c: + miniobject: check writability + fix the writability check for miniobjects. We should check the shared counter. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681450 + +2012-08-08 16:08:44 +0200 Sebastian Dröge + + * gst/gstallocator.c: + allocator: Set the alignment at the correct place in GstAllocationParams + +2012-08-08 16:18:15 +0100 Tim-Philipp Müller + + * configure.ac: + * win32/common/config.h: + Back to development + +=== release 0.11.93 === + +2012-08-08 15:05:08 +0100 Tim-Philipp Müller + + * configure.ac: + * gstreamer.doap: + * win32/common/config.h: + Release 0.11.93 + +2012-08-08 14:49:23 +0100 Tim-Philipp Müller + + * tests/check/gst/gstobject.c: + tests: remove silly test_fail_abstract_new check + Our check would make sure that GLib segfaults when + someone tries to instantiate an abstract type, which + is an extremely useful thing to check for. + In newer GLibs this is fixed and we get an abort with + a g_error() now it seems, so let's just remove this + check entirely. + +2012-08-08 09:53:26 +0100 Tim-Philipp Müller + + * tests/examples/stepping/framestep1.c: + examples: don't put things with side effects inside g_assert() + They will be defined away to NOOPs otherwise in release builds. + +2012-08-08 09:13:38 +0100 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: update for stream-id API additions + +2012-08-08 00:54:49 +0100 Tim-Philipp Müller + + * gst/parse/grammar.y: + parse: fix for new GstChildProxy::child-added signal callback signature + Fixes crash with gst-launch-1.0 uridecodebin uri=... suburi=... ! .. + +2012-08-07 10:46:17 +0200 Sebastian Dröge + + * gst/gstbus.c: + bus: Add allow-none to the function argument of gst_bus_set_sync_handler() + https://bugzilla.gnome.org/show_bug.cgi?id=681139 + +2012-08-06 16:33:57 +0400 Руслан Ижбулатов + + * docs/gst/Makefile.am: + docs: Make sure scanner gets required libraries + +2012-08-06 20:08:07 +0100 Tim-Philipp Müller + + * libs/gst/check/gstconsistencychecker.c: + consistencychecker: print which event we received before stream-start + +2012-08-06 20:04:09 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbasesrc.c: + basesrc: don't try to answer URI queries with NULL URIs + Should make unit tests in -base that use appsrc a bit happier. + +2012-07-29 14:25:34 +0200 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesrc.c: + * tests/check/elements/queue.c: + * tests/check/gst/gstbin.c: + * tests/check/gst/gstpad.c: + event: Update for stream-start event API changes + +2012-07-28 08:37:00 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gstutils.c: + * gst/gstutils.h: + event: Add new stream-id field to the stream-start event + This is supposed to allow uniquely identifying a single stream. + +2012-07-27 17:41:43 +0200 Edward Hervey + + * plugins/elements/gstinputselector.c: + inputselector: Use the first created pad by default + This guarantees a bit more consistency in which input stream will + be selected by default. It would previously be the first pad on which + an event/buffer/query was received ... which was racy and non-predictable. + +2012-07-27 17:38:34 +0200 Edward Hervey + + * gst/gstelement.c: + element: Specify the order of pad iterators + The order of returned pads wasn't specified before, so let's specify + it and use an order which might prove the most useful : the order in + which pads were added to the element. + If someone changes the order, make sure users of those iterators from + now on don't rely on that order ! + +2012-08-05 17:16:27 +0100 Tim-Philipp Müller + + * libs/gst/check/gstcheck.h: + check: add tcase_skip_broken_test() define + Skips broken tests but logs an ERROR-level message to + draw attention to that fact. + +2012-08-05 17:12:35 +0100 Tim-Philipp Müller + + * tests/check/libs/.gitignore: + tests: update .gitignore for queuearray test binary + +2012-08-05 17:11:46 +0100 Tim-Philipp Müller + + * tests/check/libs/gstnetclientclock.c: + tests: fix spurious netclientclock test failures + Give clocks a bit more time to synchronise. + +2012-08-05 16:59:35 +0100 Tim-Philipp Müller + + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstenumtypes.h: + * win32/common/gstversion.h: + win32: update generated files + +2012-08-05 16:41:21 +0100 Tim-Philipp Müller + + * plugins/elements/gstinputselector.c: + input-selector: use generic marshaller for "block" action signal + +2012-08-05 16:37:24 +0100 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From 94ccf4c to 668acee + +2012-08-04 13:37:32 +0100 Tim-Philipp Müller + + * gst/gstallocator.c: + * gst/gstbuffer.c: + buffer, defaultmem: add option to poison memory before freeing it + Might be useful to track down certain bugs. + +2012-08-03 23:54:33 +0100 Tim-Philipp Müller + + * gst/gst.c: + gst: ref/unref taglist scope enum in gst_init() + Fixes make check and distcheck + +2012-08-03 00:05:53 +0100 Tim-Philipp Müller + + * gst/gstplugin.c: + plugin: warn if plugin name starts with a " + This can easily happen as side-effect of the plugin name + in GST_PLUGIN_DEFINE no longer being a string in 0.11, but + a name to G_STRINGIFY. + +2012-08-02 13:19:27 +0100 Tim-Philipp Müller + + * docs/random/porting-to-0.11.txt: + docs: update porting-to-0.11 document with a "soft" API changes checklist + Point out some API changes that the compiler won't + be able to warn about. + +2012-08-02 11:33:41 +0100 Tim-Philipp Müller + + * tools/gst-launch.c: + tools: fix printing of partial dates in gst-launch + +2012-08-02 11:15:16 +0100 Tim-Philipp Müller + + * tools/gst-launch.c: + Revert "tools: print TOC scope" + This reverts commit ee6ab7c93638a6519acb976699a6ad149d520a95. + The application will probably only ever receive global TOCs, + so don't really need this. + +2012-08-01 17:49:27 +0100 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: add new tag list scope symbols + +2012-08-01 11:58:55 +0100 Tim-Philipp Müller + + * plugins/elements/gsttypefindelement.c: + typefind: send segment_done event in addition to segment_done message + +2012-07-31 17:25:50 +0200 Sebastian Dröge + + * libs/gst/base/gstbasesrc.c: + * plugins/elements/gstfilesrc.c: + basesrc: Add default handler for URI query in GstURIHandler subclasses + +2012-07-28 17:33:52 +0200 Sjoerd Simons + + * libs/gst/check/libcheck/check.h.in: + check: unbreak fail #define + The fail() definition was changed to not fail with non-GCC compilers, + unfortunately the change was incorrect and appended the first argument + of fail to the expression string instead of making it the message. + This change does mean that fail() now requires a message to be passed + along. + https://bugzilla.gnome.org/show_bug.cgi?id=680755 + +2012-07-29 23:37:19 +0200 Jens Georg + + * gst/gstbuffer.c: + buffer: Update annotations + https://bugzilla.gnome.org/show_bug.cgi?id=680805 + +2012-07-29 23:20:07 +0200 Jens Georg + + * gst/gstutils.c: + utils: Update annotation for get_compatible_pad + https://bugzilla.gnome.org/show_bug.cgi?id=680804 + +2012-07-28 21:23:24 -0400 Thibault Saunier + + * gst/gsturi.c: + uri: Fix wrong 'array zero-terminated=1' annotation for strings + +2012-07-28 11:02:30 +0100 Tim-Philipp Müller + + * docs/design/part-toc.txt: + docs: update TOC design docs a little + +2012-07-28 09:41:30 +0100 Tim-Philipp Müller + + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstquark.c: + * gst/gstquark.h: + event: make TOC event multi-sticky + We need to send two kinds of TOCs downstream as events, + and need both to stick to the pads. + https://bugzilla.gnome.org/show_bug.cgi?id=678742 + +2012-07-28 08:30:36 +0100 Tim-Philipp Müller + + * tools/gst-launch.c: + tools: print TOC scope + +2012-07-27 23:56:54 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gst.c: + * gst/gsttoc.c: + * gst/gsttoc.h: + * tests/check/gst/gsttoc.c: + * tests/check/gst/gsttocsetter.c: + * win32/common/libgstreamer.def: + toc: add GstTocScope and require it in the constructor + This is because we need to be able to signal different TOCs + to downstream elements such as muxers and the application, + and because we need to send both types as events (because + the sink should post the TOC messages for the app in the + end, just like tag messages are now posted by the sinks), + and hence need to make TOC events multi-sticky. + https://bugzilla.gnome.org/show_bug.cgi?id=678742 + +2012-07-27 23:54:00 +0100 Tim-Philipp Müller + + * scripts/create-uninstalled-setup.sh: + scripts: create-uninstalled-setup.sh: check for basic build tools and deps + .. before checking out stuff. + +2012-07-27 23:52:12 +0200 Sebastian Dröge + + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gsttaglist.c: + * gst/gsttaglist.h: + * libs/gst/base/gstbaseparse.c: + * tests/check/gst/gstevent.c: + * tests/check/gst/gstutils.c: + tag: Add a scope to taglists + This specifies if a given taglist applies to the complete + medium or only this specific stream. By default a taglist + has a stream scope. + Fixes bug #677619. + +2012-07-27 17:09:45 +0200 Wim Taymans + + * gst/gstsegment.c: + * gst/gstsegment.h: + * tests/check/gst/gstsegment.c: + segment: add offset field + Add an offset field that is used to track at what position the segment was + updated. This is used to set the running time to 0 when we do a flushing + seek that doesn't update the position. + See https://bugzilla.gnome.org/show_bug.cgi?id=680306 + +2012-07-27 15:19:57 +0200 Wim Taymans + + * gst/gstelement.c: + * gst/gstelement.h: + * gst/gstsegment.c: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * plugins/elements/gsttypefindelement.c: + * tests/check/gst/gstevent.c: + * tests/check/gst/gststructure.c: + Update for new seeking variable name + When seeking, the start value and type are now called start and start_type. + +2012-07-27 14:53:03 +0200 Wim Taymans + + * gst/gstsegment.c: + segment: small cleanup + Move the code to update the segment at the end of the function. + +2012-07-27 12:05:25 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * win32/common/libgstreamer.def: + Update docs and .def file for taglist API change + +2012-07-27 13:02:52 +0200 Wim Taymans + + * gst/gstsegment.c: + segment: remove redundant checks + We don't need to check the segment format anymore because we asserted on them + being equal before. + +2012-07-27 12:24:03 +0200 Wim Taymans + + * tests/check/gst/gstsegment.c: + tests: improve segment tests + +2012-07-27 12:12:37 +0200 Wim Taymans + + * gst/gstallocator.c: + * gst/gstallocator.h: + * tests/examples/memory/my-memory.c: + * tests/examples/memory/my-vidmem.c: + allocator: remove user_data from alloc vmethod + Remove the user_data from the alloc vmethod. Subclasses that implement a new + alloc function can also implement their own vmethod to pass extra arguments. We + can then also require that custom allocators implement an alloc function so that + gst_allocator_alloc() always works. + +2012-07-27 10:41:54 +0200 Wim Taymans + + * tests/check/gst/gstsegment.c: + tests: remove segment accumulation checks + Remove the checks because there is no more segment accumulation. + +2012-07-26 16:44:15 +0100 Tim-Philipp Müller + + * gst/gsttaglist.c: + * gst/gsttaglist.h: + taglist: make GST_TAG_APPLICATION_DATA also a GstSample + That way additional meta-data can be passed along with it. + +2012-07-26 15:51:10 +0100 Tim-Philipp Müller + + * docs/random/porting-to-0.11.txt: + * gst/gsttaglist.c: + * gst/gsttaglist.h: + * tests/check/gst/gsttag.c: + taglist: gst_tag_list_get_buffer*() => gst_tag_list_get_sample*() + Image tags and other tags are now of GstSample type. + +2012-07-26 15:26:09 +0100 Tim-Philipp Müller + + * tools/gst-launch.c: + gst-launch: print image tags and other GstSample tags properly + These tags are now of type GstSample not GstBuffer. + +2012-07-24 21:38:35 +0200 Stefan Sauer + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstcollectpads.h: + * win32/common/libgstbase.def: + collectpads: remove unimplemented api + We can always add this back if we need it. Fixes parts of #670852. + +2012-07-24 13:49:36 +0200 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: also account for frame size when merely scanning for frame + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680495 + +2012-07-24 13:48:39 +0200 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: remove obsolete function parameter + +2012-07-24 12:38:15 +0200 Wim Taymans + + * plugins/elements/gsttypefindelement.c: + typefind: require bytes before typefinding + Require that we have some bytes in the adapter before we attempt to typefind. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680479 + +2012-07-23 18:49:13 +0200 Christian Fredrik Kalager Schaller + + * gstreamer.spec.in: + update spec file with latest changes + +2012-07-23 16:27:34 +0200 Wim Taymans + + * gst/gstbufferlist.c: + * gst/gstbufferlist.h: + bufferlist: pass index as gint to _insert + Make the idx argument of _insert() a gint because we allow -1 as a value. + Improve annotation. + +2012-07-23 13:40:38 +0200 Wim Taymans + + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstidentity.c: + plugins: print flags better + print the buffer flags as a hex number so that it becomes easier to see what + flags are set. + +2012-07-18 17:03:45 +0200 Sebastian Rasmussen + + * gst/gstpoll.c: + gstpoll: Improve warning message when re-adding fd to fdset + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680181 + +2012-07-23 08:44:04 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 98e386f to 94ccf4c + +2012-07-20 00:49:28 +0100 Tim-Philipp Müller + + * gst/gststructure.c: + * gst/gstvalue.c: + value: add GstTagList serialisation/deserialisation + So we can serialise/deserialise taglists inside structures, + which used to work automagically before because GstTagList + was just a typedef to GstStructure (same for the GType), + but now that it's a separate GType we need to register + explicit functions for this. + Helps with GDP stuff in pipelines/streamheader tests. + +2012-07-20 09:38:47 +0200 Philippe Normand + + * 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/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: + po: Update .po files + +2012-07-19 13:51:23 +0200 Mark Nauwelaerts + + * tests/check/gst/gstbuffer.c: + tests: gstbuffer: add tests for some mulitple map combinations + +2012-07-19 13:35:34 +0200 Wim Taymans + + * gst/gstminiobject.c: + miniobject: fix sharedness check + +2012-07-19 13:20:27 +0200 Wim Taymans + + * gst/gstminiobject.c: + miniobject: refuse write when object is shared + In all cases, refuse to write an object when it is shared by more than one + object (also when the object was locked before). + See https://bugzilla.gnome.org/show_bug.cgi?id=679145 + +2012-07-18 15:21:33 +0200 Mark Nauwelaerts + + * tests/check/gst/gstbuffer.c: + tests: gstbuffer: extend buffer copy test + +2012-07-19 12:42:05 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: set buffering-left to 0 on 100% buffering + Set the buffering-left field in the query to 0 when we are completely buffered. + Improve the debug. + +2012-07-19 12:14:29 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: fix buffering query + Fix the buffering query, fill in the right buffering-left and estimated-total + values. + +2012-07-19 10:54:16 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: fix the buffering-left in the buffering message + The buffering-left field in the buffering message should contain a time estimate + in milliseconds about for long the buffering is going to take. We can calculate + this value when we do rate_estimates. + +2012-07-19 10:14:18 +0200 Wim Taymans + + * gst/gstmessage.c: + message: improve buffering message defaults + Remove the estimated-total field, this should not be part of the buffering + message. + Set the default value of buffering-left to 0 when the percent is 100. + +2012-07-18 17:44:54 +0200 Wim Taymans + + * gst/gstpad.c: + pad: fix debug line + Use QUERY_TYPE on query types. + +2012-07-18 17:35:58 +0200 Wim Taymans + + * gst/gstghostpad.c: + * gst/gstghostpad.h: + * win32/common/libgstreamer.def: + ghostpad: remove custom function + Remove custom pad functions, the default ones are better. + +2012-07-18 17:30:30 +0200 Wim Taymans + + * gst/gstpad.c: + * gst/gstpad.h: + pad: add PROXY_SCHEDULING flag + Add a flag that makes the default query handler forward the scheduling query. + +2012-07-18 17:30:04 +0200 Wim Taymans + + * gst/gstutils.c: + utils: fix docs + +2012-07-18 16:20:41 +0200 Wim Taymans + + * gst/gstpad.c: + * gst/gstutils.c: + pad: improve query caps function + In the proxy_query_caps function, also filter against the filter in the query. + We don't need to filter against the filter in the query anymore in the default + caps query function because we already did this in the proxy_query_caps. + +2012-07-18 11:17:23 +0200 Wim Taymans + + * docs/design/part-framestep.txt: + * gst/gstsegment.c: + * libs/gst/base/gstbasesink.c: + basesink: handle -1 step amounts + Define a 0 and -1 step amount. They used to almost do the same thing but now, 0 + cancels/stops the current step and -1 keeps on stepping until the end of the + segment. + See https://bugzilla.gnome.org/show_bug.cgi?id=679378 + +2012-07-18 12:30:59 +0100 Tim-Philipp Müller + + * gst/gstquery.c: + query: fix gst_query_parse_nth_allocation_pool() annotation + It returns a ref to the pool. + +2012-07-17 15:52:53 +0200 Edward Hervey + + * tests/check/gst/gstghostpad.c: + check: Avoid deadlock + Queries will be sent when pipeline goes down to NULL, which would + result in the probe being called ... but can't take the lock. + +2012-07-17 15:50:09 +0200 Edward Hervey + + * gst/gstghostpad.c: + gstghostpad: Forward queries in both direction + Use the peer of the internal pad to forward them, instead of the + target which only exists for the ghostpad (and not the internal + proxy pad). + +2012-07-17 11:20:43 +0200 Edward Hervey + + * docs/gst/gstreamer-sections.txt: + docs: More entries + +2012-07-18 09:15:51 +0100 Tim-Philipp Müller + + * plugins/elements/gstqueue.c: + queue: answer SCHEDULING query + Instead of letting the default query handler fail. + +2012-07-17 19:20:23 +0100 Tim-Philipp Müller + + * plugins/elements/gstqueue2.c: + queue2: handle CAPS event and drop it if operating in ring buffer mode + Fixes "Unexpected event of kind caps can't be added in temp file" + warning when doing download buffering. + +2012-07-17 12:57:59 +0200 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + buffer: make _foreach_meta more powerful + Make _foreach_meta return FALSE when the foreach function returned FALSE. + +2012-07-17 12:52:59 +0200 Wim Taymans + + * gst/gstbufferlist.c: + * gst/gstbufferlist.h: + bufferlist: improve foreach function + Make the foreach function return FALSE when one of the function calls returned + FALSE. + +2012-07-17 12:50:24 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: add more debug + +2012-07-17 12:40:54 +0200 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: fix debug string + +2012-07-17 09:57:47 +0200 Wim Taymans + + * gst/gstparse.c: + * gst/parse/grammar.y: + * gst/parse/types.h: + parse: fix some debug + +2012-07-17 09:48:00 +0200 Wim Taymans + + * gst/gstparse.c: + parse: only escape spaces outside of quotes + When we escape spaces to keep arguments together, only escape when the space is + outside a "" string. + See https://bugzilla.gnome.org/show_bug.cgi?id=673319 + +2012-07-17 09:44:10 +0200 Wim Taymans + + * gst/gstparse.c: + Revert "parse: escape \ with a \ as well, so that we don't lose the \ when unescaping" + This reverts commit dd9fedb41f1ada8e1f8bd5346fccd3d068d543cb. + This is not the right place to escape the \, we should only escape the spaces to + keep the arguments together that were provided as one group (with quotes on the + shell). + +2012-07-10 12:27:11 -0700 Evan Nemerson + + * gst/gstutils.c: + utils: set return type of gst_parse_bin_* to GstBin for introspection + +2012-06-30 12:33:43 -0700 Evan Nemerson + + * libs/gst/net/gstnettimepacket.c: + nettimepacket: add missing array annotation to gst_net_time_packet_new + +2012-06-29 17:33:49 -0700 Evan Nemerson + + * gst/gstformat.c: + introspection: add missing array annotation to gst_formats_contains + +2012-07-16 20:54:17 +0200 Stefan Sauer + + * gst/gstbin.c: + * tests/check/gst/gstbin.c: + bin: aggregate durations like in adder + Stop querying the duration once an element return unknown and return unknown + as a final result. This avoid eventually cutting off a stream too early. + Add a tests to docuement the behavior. + +2012-07-16 00:24:46 +0100 Tim-Philipp Müller + + * gst/gstdatetime.c: + datetime: just return NULL on short input strings instead of a warning + We want to be able to use this function on random non-NULL input, + this should not result in a runtime-critical. + +2012-07-15 12:59:44 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbaseparse.c: + baseparse: fix seekability querying with formats with headers like FLAC + Move code that checks for upstream seekability and all that to + the right place, otherwise it will never be done for formats + that have headers such as FLAC, as handle_and_push frame will + be called the first time only after headers have been processed + (and framecount is > 0). This then makes us report that we + can't seek, which disables the seek bar in totem. + +2012-07-14 20:33:30 +0100 Tim-Philipp Müller + + * plugins/elements/gstdataqueue.c: + * plugins/elements/gstdataqueue.h: + plugins: embed GstAueueArray in dataqueue struct as well + +2012-07-14 20:28:54 +0100 Tim-Philipp Müller + + * plugins/elements/gstelements.c: + plugins: don't use one-time array in plugin_init + +2012-07-14 20:26:04 +0100 Tim-Philipp Müller + + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue.h: + queue: embed GstQueueArray structure + +2012-07-14 20:00:30 +0100 Tim-Philipp Müller + + * plugins/elements/gstcapsfilter.h: + * plugins/elements/gstfakesink.h: + * plugins/elements/gstfakesrc.h: + * plugins/elements/gstfdsink.h: + * plugins/elements/gstfdsrc.h: + * plugins/elements/gstfilesink.h: + * plugins/elements/gstfilesrc.h: + * plugins/elements/gstfunnel.h: + * plugins/elements/gstidentity.h: + * plugins/elements/gstinputselector.h: + * plugins/elements/gstmultiqueue.h: + * plugins/elements/gstoutputselector.h: + * plugins/elements/gstqueue.h: + * plugins/elements/gstqueue2.h: + * plugins/elements/gstqueuearray.h: + * plugins/elements/gsttee.h: + * plugins/elements/gsttypefindelement.h: + * plugins/elements/gstvalve.h: + plugins: sprinkle some more G_GNUC_INTERNAL + +2012-07-14 19:38:39 +0100 Tim-Philipp Müller + + * plugins/elements/gstqueuearray.c: + * plugins/elements/gstqueuearray.h: + plugins: add init/clear functions to GstQueueArray + +2012-07-14 19:24:57 +0100 Tim-Philipp Müller + + * libs/gst/base/Makefile.am: + * plugins/elements/Makefile.am: + * plugins/elements/gstdataqueue.h: + * plugins/elements/gstqueue.h: + * plugins/elements/gstqueuearray.c: + * plugins/elements/gstqueuearray.h: + * tests/check/libs/queuearray.c: + * win32/common/libgstbase.def: + base: make GstQueueArray private to coreelements for now + Keep it private until we have a reason to make it public. + +2012-07-14 19:08:24 +0100 Tim-Philipp Müller + + * gst/gsttaglist.c: + taglist: check value type matches tag type when adding values to a taglist + +2012-07-14 18:52:50 +0100 Tim-Philipp Müller + + * gst/gstinfo.c: + info: make taglists and datetime loggable via GST_PTR_FORMAT + +2012-07-13 12:05:15 +0200 Wim Taymans + + * libs/gst/base/gstbaseparse.c: + baseparse: send seek event upstream first + First try to let upstream handle the seek event, then fail if the event is + something we don't understand. + +2012-07-13 09:43:59 +0200 Wim Taymans + + * tests/check/gst/gstpad.c: + pad: fix test raciness + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679506 + +2012-07-12 13:17:51 +0100 Tim-Philipp Müller + + * scripts/gst-uninstalled: + gst-uninstalled: fix gst-ffmpeg plugin path again + +2012-07-12 12:09:13 +0100 Tim-Philipp Müller + + * scripts/gst-uninstalled: + gst-uninstalled: add clutter-gst and refine plugin search paths + +2012-07-12 00:34:22 +1000 Jan Schmidt + + * gst/gstpad.c: + gstpad: Move sticky flag clearing code to gst_pad_activate_mode + The ghostpad code directly activates/deactivates the child code by + calling gst_pad_activate_mode, rather than gst_pad_set_active, so + make sure to clear the flags in gst_pad_activate_mode(), which should + catch all cases. + +2012-07-11 12:40:10 +0200 Wim Taymans + + * gst/gstevent.c: + event: improve annotation + +2012-07-11 12:37:05 +0200 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: handle step end correctly + when we have a new step event with a -1 amount, make sure that we follow the + regular code path so that the stop_end handler is called as usual. This takes + care of flushing the buffer in case of a flushing step and also posts a step end + message. + See https://bugzilla.gnome.org/show_bug.cgi?id=679378 + +2012-07-11 13:14:57 +0200 Sebastian Dröge + + * win32/common/libgstbase.def: + * win32/common/libgstnet.def: + win32: Fix exported symbols list for real now + +2012-07-11 11:21:18 +0200 Stefan Sauer + + * gst/gstsegment.c: + segment: remove removed api from the docs. + +2012-07-11 12:46:31 +0200 Sebastian Dröge + + * win32/common/libgstbase.def: + * win32/common/libgstnet.def: + * win32/common/libgstreamer.def: + win32: Updated exported symbols list + +2012-07-11 12:45:51 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gsttoc.c: + * gst/gsttoc.h: + toc: Add functions to retrieve the parent GstToc/GstTocEntry of a GstTocEntry + +2012-07-10 18:15:20 +0300 Anton Belka + + * gst/gsttoc.c: + toc: Fix gst_toc_find_entry() + Recursive search for the required entry, instead of returning the + top-level entry that contains an entry with the search UID. + +2012-07-11 10:26:13 +0200 Edward Hervey + + * libs/gst/base/gstbaseparse.c: + baseparse: Push STREAM_START in pull-mode + +2012-07-11 10:24:51 +0200 Edward Hervey + + * gst/gststructure.c: + structure: Demote WARNING to DEBUG + It is not an issue to get fields that don't exist, calling code should + handle that. + +2012-07-10 11:46:41 +0200 Edward Hervey + + * gst/gst.c: + * gst/gstatomicqueue.c: + * gst/gstatomicqueue.h: + * gst/gstbin.c: + * gst/gstbin.h: + * gst/gstbuffer.h: + * gst/gstbufferlist.c: + * gst/gstbufferlist.h: + * gst/gstbus.c: + * gst/gstcaps.c: + * gst/gstcaps.h: + * gst/gstclock.c: + * gst/gstclock.h: + * gst/gstconfig.h.in: + * gst/gstdatetime.c: + * gst/gstdebugutils.h: + * gst/gstelement.c: + * gst/gstelement.h: + * gst/gstelementfactory.c: + * gst/gstelementfactory.h: + * gst/gsterror.h: + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstghostpad.c: + * gst/gstinfo.c: + * gst/gstinfo.h: + * gst/gstiterator.c: + * gst/gstmessage.c: + * gst/gstmessage.h: + * gst/gstminiobject.c: + * gst/gstpad.c: + * gst/gstpad.h: + * gst/gstpadtemplate.c: + * gst/gstparamspecs.c: + * gst/gstparamspecs.h: + * gst/gstparse.c: + * gst/gstparse.h: + * gst/gstpipeline.c: + * gst/gstplugin.c: + * gst/gstplugin.h: + * gst/gstpluginfeature.c: + * gst/gstpluginfeature.h: + * gst/gstpoll.c: + * gst/gstpoll.h: + * gst/gstpreset.c: + * gst/gstquery.c: + * gst/gstquery.h: + * gst/gstregistry.c: + * gst/gstsample.c: + * gst/gstsegment.c: + * gst/gstsegment.h: + * gst/gststructure.c: + * gst/gsttaglist.c: + * gst/gsttaglist.h: + * gst/gsttagsetter.c: + * gst/gsttask.c: + * gst/gsttaskpool.c: + * gst/gsttaskpool.h: + * gst/gsttoc.c: + * gst/gsttocsetter.c: + * gst/gsttrace.h: + * gst/gsttypefind.c: + * gst/gsttypefind.h: + * gst/gsttypefindfactory.c: + * gst/gsturi.c: + * gst/gstutils.c: + * gst/gstutils.h: + * gst/gstvalue.c: + * gst/gstvalue.h: + * gst/gstversion.h.in: + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbaseparse.h: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasesrc.h: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + * libs/gst/base/gstbitreader-docs.h: + * libs/gst/base/gstbitreader.c: + * libs/gst/base/gstbitreader.h: + * libs/gst/base/gstbytereader-docs.h: + * libs/gst/base/gstbytereader.c: + * libs/gst/base/gstbytereader.h: + * libs/gst/base/gstbytewriter-docs.h: + * libs/gst/base/gstbytewriter.c: + * libs/gst/base/gstbytewriter.h: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstcollectpads.h: + * libs/gst/base/gstindex.c: + * libs/gst/base/gsttypefindhelper.c: + * libs/gst/check/gstcheck.c: + * libs/gst/check/gstcheck.h: + * libs/gst/check/gstconsistencychecker.c: + * libs/gst/check/gstconsistencychecker.h: + * plugins/elements/gstdataqueue.c: + * plugins/elements/gstdataqueue.h: + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstfdsrc.c: + * plugins/elements/gstfilesink.c: + * plugins/elements/gstidentity.c: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstoutputselector.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gstvalve.c: + * plugins/elements/gstvalve.h: + Remove 0.10-related documentation and "Since" markers + +2012-07-10 00:39:37 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbasesrc.c: + basesrc: provide fallback in case a create function doesn't know about provided buffers + In 0.11 the caller may provide a buffer to be filled by the source to + pull_range/get_range/create, but it's easy to miss this new case when + porting code from 0.10. Provide fallback that copies the created data + into the provided buffer for now. + This makes oggdemux in pull-mode work with dataurisrc. + +2012-07-10 10:31:00 +0200 Wim Taymans + + * gst/gstquery.c: + * gst/gstquery.h: + * libs/gst/base/gstbasetransform.c: + query: copy structure in _add_allocation_meta() + Make gst_query_add_allocation_meta() take a copy of the passed caps instead of + taking ownership. This makes it easier for the caller in most cases because it + doesn't have to make a copy and deal with NULL values. + +2012-07-10 10:11:57 +0200 Wim Taymans + + * gst/gst.c: + gst: add new flags + +2012-07-09 23:47:53 +0200 Matej Knopp + + * gst/gstminiobject.c: + miniobject: fix exclusive lock/unlock race + +2012-07-10 00:59:40 +0100 Tim-Philipp Müller + + * plugins/elements/gstdataurisrc.c: + dataurisrc: copy into provided buffer if a buffer is provided + +2012-07-09 21:51:07 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * plugins/elements/gsttypefindelement.c: + basesrc, basesink, baseparse, typefind: use GST_SEGMENT_FLAG with segment flags + +2012-07-09 22:11:31 +0200 Stefan Sauer + + * gst/gstsegment.c: + * gst/gstsegment.h: + segment: also copy the segment flag + Fixes segmented seeks (as tested e.g. in the adder tests in base). + +2012-07-09 20:55:00 +0100 Tim-Philipp Müller + + * plugins/elements/gstdataqueue.h: + plugins: sprinkle G_GNUC_INTERNAL for dataqueue functions + And remove padding, since this is not public API any more. + +2012-07-09 20:48:56 +0100 Tim-Philipp Müller + + * gst/gst_private.h: + * gst/parse/types.h: + gst: sprinkle some G_GNUC_INTERNAL for internal functions + +2012-07-09 20:09:55 +0100 Tim-Philipp Müller + + * tests/check/gst/gsttoc.c: + * tests/check/gst/gsttocsetter.c: + tests: fix toc unit tests + Meant to check subsubentry, not subentry. + +2012-07-09 18:58:24 +0100 Tim-Philipp Müller + + * tests/check/gst/gsttoc.c: + tests: minor toc test clean-up + +2012-07-09 18:51:37 +0100 Tim-Philipp Müller + + * tests/check/gst/gsttoc.c: + * tests/check/gst/gsttocsetter.c: + tests: turn toc check macros into proper functions + So we can see the line number of the check that fails. + +2012-07-09 20:31:00 +0200 Edward Hervey + + * win32/common/libgstbase.def: + * win32/common/libgstnet.def: + * win32/common/libgstreamer.def: + win32: Update defs file for API changes/addition + +2012-07-09 20:29:29 +0200 Edward Hervey + + * tests/check/gst/gstbin.c: + * tests/check/gst/gstparamspecs.c: + * tests/check/pipelines/cleanup.c: + * tests/check/pipelines/simple-launch-lines.c: + check: Update tests for new STREAM_START message + +2012-07-09 20:28:54 +0200 Edward Hervey + + * tests/check/gst/gstbin.c: + check: Ensure STREAM_START message is posted + A STREAM_START message is posted if and only if all sinks in the + bin/pipeline received the STREAM_START event + +2012-07-09 20:28:20 +0200 Edward Hervey + + * libs/gst/base/gstbasesink.c: + basesink: Post a STREAM_START message when we see the event + +2012-07-09 20:27:44 +0200 Edward Hervey + + * gst/gstbin.c: + gstbin: collect and aggregate STREAM_START messages + when all sinks have posted a STREAM_START, the bin will forward a + new STREAM_START message to the parent bin or application + +2012-07-09 20:08:15 +0200 Edward Hervey + + * gst/gstmessage.c: + * gst/gstmessage.h: + * win32/common/libgstreamer.def: + gstmessage: New GST_MESSAGE_STREAM_START + message counterpart to the GST_EVENT_STREAM_START event + +2012-07-09 19:59:33 +0200 Edward Hervey + + * tests/check/gst/gstbin.c: + check: Unit test for EOS message + Make sure we get the aggregated message if and only if all sinks + received an EOS event + +2012-07-09 19:56:15 +0200 Stefan Sauer + + * libs/gst/base/gstcollectpads.c: + collectpads: add STREAM_START handling + Use a flag to forward the first STREAM_START + +2012-07-09 16:20:49 +0100 Tim-Philipp Müller + + * docs/design/part-caps.txt: + * docs/design/part-streams.txt: + docs: update stream docs for SEGMENT_START event + +2012-07-09 16:48:56 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + docs: fix more docs + +2012-07-09 16:22:04 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstallocator.h: + docs: fix docs a little more + +2012-07-09 16:02:50 +0200 Wim Taymans + + * gst/Makefile.am: + * gst/gstallocator.c: + * gst/gstallocator.h: + * gst/gstbuffer.h: + * gst/gstbufferpool.c: + * gst/gstmemory.c: + * gst/gstmemory.h: + * gst/gstquery.c: + * gst/gstquery.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * tests/examples/memory/memory_test.c: + * tests/examples/memory/my-memory.c: + * tests/examples/memory/my-memory.h: + * tests/examples/memory/my-vidmem.c: + memory: Make GstAllocator a GstObject + Make GstAllocator a GstObject instead of a GstMiniObject, like bufferpool. + Make a new gstallocator.c file. Make a GstAllocator subclass for the default + allocator. + +2012-07-09 13:20:30 +0200 Wim Taymans + + * gst/gstmemory.c: + memory: remove unused macros + +2012-07-09 13:20:05 +0200 Wim Taymans + + * gst/gstclock.c: + * tests/check/gst/gstclock.c: + clock: make abstract + Make the GstClock type abstract. + Fix a horrible hack in the clock unit test. + +2012-07-09 15:37:28 +0200 Sebastian Dröge + + * plugins/elements/gstqueue.c: + queue: Fix handling of min-threshold and serialized queries + Only consider the queue empty if the minimum thresholds + are not reached and data is at the queue head. Otherwise + we would block forever on serialized queries. + This also makes sending of serialized events, like caps, happen + faster and potentially improves negotiation performance. + Fixes bug #679458. + +2012-07-09 13:15:46 +0100 Tim-Philipp Müller + + * gst/gsttoc.c: + toc: remove padding now that the structs are private + +2012-07-09 13:12:27 +0100 Tim-Philipp Müller + + * gst/gsttoc.c: + * gst/gsttoc.h: + * tests/check/gst/gsttoc.c: + toc: add gst_toc_dump() function for debugging + API: gst_toc_dump() + +2012-07-03 00:07:11 +0100 Tim-Philipp Müller + + * gst/gstbus.c: + * gst/gstclock.c: + * gst/gstsystemclock.c: + * tests/check/gst/gstpipeline.c: + bus, clock: make sure these never have a floating ref + Clear the initial floating ref in the init function for + busses and clocks. These objects can be set on multiple + elements, so there's no clear parent-child relationship + here. Ideally we'd just not make them derive from + GInitiallyUnowned at all, but since we want to keep + using GstObject features for debugging, we'll just do + it like this. + This should also fix some problems with bindings, which + seem to get confused when they get floating refs from + non-constructor functions (or functions annotated to + have a 'transfer full' return type). This works now: + from gi.repository import GObject, Gst + GObject.threads_init() + Gst.init(None) + pipeline=Gst.Pipeline() + bus = pipeline.get_bus() + pipeline.set_state(Gst.State.NULL) + del pipeline; + https://bugzilla.gnome.org/show_bug.cgi?id=679286 + https://bugzilla.gnome.org/show_bug.cgi?id=657202 + +2012-07-08 20:15:33 +0200 Stefan Sauer + + * tools/gst-inspect.c: + inspect: suppress glib deprecations warnings for G_VALUE_ARRAY + +2012-07-07 23:13:20 +0100 Tim-Philipp Müller + + * tests/check/gst/gstvalue.c: + tests: add more tests for datetime value serialisation/deserialisation + Esp. of partial datetimes. + +2012-07-07 22:46:00 +0100 Tim-Philipp Müller + + * gst/gst_private.h: + * gst/gstvalue.c: + * tests/check/gst/gstvalue.c: + value: use datetime serialise/deserialise functions for datetimes + This re-uses existing code and makes sure we properly serialise + and deserialise datetimes where not all fields are set (thus + fixing some warnings when serialising such datetimes). + +2012-07-07 22:40:12 +0100 Tim-Philipp Müller + + * gst/gstdatetime.c: + datetime: do our own serialisation so we can serialise microseconds as well + We still don't do that in _to_iso8601_string() though, since + this will probably mostly be used in tags, where it doesn't + matter so much and the microsecond argument might not be + well-received by some tag readers. + +2012-07-07 19:43:50 +0100 Tim-Philipp Müller + + * gst/gstdatetime.c: + datetime: when deserialising parse microseconds if available + +2012-07-07 16:01:41 +0100 Tim-Philipp Müller + + * gst/gstdatetime.c: + datetime: fix second parsing failure case when deserialising datetime + When we fail to parse the number of seconds, reset the value to -1 + instead of passing some error value as seconds. Also, we can still + try to parse timezone information. + +2012-07-07 15:44:57 +0100 Tim-Philipp Müller + + * tests/examples/memory/my-memory.c: + * tests/examples/memory/my-vidmem.c: + examples: fix debug log print formats in memory examples + +2012-07-07 01:37:50 +0200 Sebastian Rasmussen + + * gst/gstinfo.c: + gstinfo: Add destroy notify arguments to debug stubs + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679535 + +2012-07-06 20:37:06 +0200 Sebastian Rasmussen + + * gst/gststructure.c: + gststructure: Set lcopy string const exactly as glib's macro + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679534 + +2012-07-06 17:19:21 +0200 Wim Taymans + + * gst/gstmemory.c: + * gst/gstmemory.h: + * tests/examples/memory/my-memory.c: + * tests/examples/memory/my-vidmem.c: + memory: expose the GstAllocation structure + Expose the GstAllocation structure and provide an _init function. This makes it + easier to make 'subclasses' of the allocator that contain more info. + It also allows us to expose the flags on the allocator miniobject. + Make a flag to note that the allocator uses a custom alloc function. + +2012-07-06 12:45:29 +0200 Edward Hervey + + * gst/gststructure.c: + structure: Demote WARNING to INFO + It is common to use gst_structure_get() to know if a field is present + or not. + +2012-07-06 11:41:52 +0200 Edward Hervey + + * tools/gst-inspect.c: + gst-inspect: Remove unused define + +2012-07-06 11:41:33 +0200 Edward Hervey + + * tests/check/libs/libsabi.c: + check: gstcontroller.h doesn't exist anymore + +2012-07-06 11:40:47 +0200 Edward Hervey + + * tests/check/libs/basesrc.c: + check: Use consistencycheck on basesrc + +2012-07-06 11:38:58 +0200 Edward Hervey + + * libs/gst/check/gstconsistencychecker.c: + consistencychecker: Check for STREAM_START event + Check that it is always before any serialized event. + +2012-07-06 10:13:28 +0100 Tim-Philipp Müller + + * plugins/elements/gsttypefindelement.c: + * plugins/elements/gsttypefindelement.h: + typefindelement: remove unimplemented maximum property + +2012-07-06 10:09:55 +0100 Tim-Philipp Müller + + * plugins/elements/gsttee.c: + * plugins/elements/gsttee.h: + tee: remove unimplemented has-sink-loop property + +2012-07-06 10:07:56 +0100 Tim-Philipp Müller + + * plugins/elements/gstqueue2.c: + queue2: remove deprecated temp-location use, make it read-only + +2012-07-06 09:57:52 +0100 Tim-Philipp Müller + + * plugins/elements/gstidentity.c: + * plugins/elements/gstidentity.h: + identity: remove deprecated check-perfect property + Replaced by the more specific check-imperfect-{timestamp,offset} + +2012-07-06 11:49:47 +0200 Wim Taymans + + * gst/gstquery.c: + * gst/gstquery.h: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + query: use more generic structure for meta params + +2012-07-06 11:22:43 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstquery.c: + * gst/gstquery.h: + query: make find_allocation_meta method + Make gst_query_find_allocation_meta() that also return the index of the metadata + and replaces gst_query_has_allocation_meta(). + +2012-07-06 11:00:38 +0200 Wim Taymans + + * gst/gstquery.c: + * gst/gstquery.h: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + query: add flags to allocation query + Make it possible to add API specific flags to the ALLOCATION query. This makes + it possible to also check what kinds of subfeatures of the metadata API are + supported. + +2012-07-06 09:11:48 +0200 Wim Taymans + + * tests/examples/memory/memory_test.c: + tests: remove unused includes + +2012-07-05 18:07:52 +0200 Wim Taymans + + * tests/examples/memory/Makefile.am: + * tests/examples/memory/memory_test.c: + * tests/examples/memory/my-memory.h: + * tests/examples/memory/my-vidmem.c: + * tests/examples/memory/my-vidmem.h: + memory: add more examples + Add an example of a custom allocator with a custom API. + +2012-07-05 17:11:01 +0200 Wim Taymans + + * gst/gstmemory.c: + * gst/gstmemory.h: + * tests/examples/memory/Makefile.am: + * tests/examples/memory/memory_test.c: + * tests/examples/memory/my-memory.c: + * tests/examples/memory/my-memory.h: + memory: add gst_memory_init() + Add a method that memory implementations can call to initialize the standard + GstMemory structure. + Move the parent handling in the _free handler. + Rearrange some internal function parameters so that the order is consistent. + Add more memory examples + +2012-07-05 16:17:53 +0200 Wim Taymans + + * gst/gstminiobject.c: + miniobject: fix some miniobject docs + +2012-07-05 14:25:13 +0200 Wim Taymans + + * configure.ac: + * tests/examples/Makefile.am: + * tests/examples/memory/.gitignore: + * tests/examples/memory/Makefile.am: + * tests/examples/memory/memory_test.c: + tests: add memory example + +2012-07-05 12:25:45 +0100 Tim-Philipp Müller + + * tests/check/gst/gsttoc.c: + tests: fix toc unit test build by removing toc query stuff there too + +2012-07-05 13:03:10 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstquark.c: + * gst/gstquark.h: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * win32/common/libgstreamer.def: + event: Add format and position to the segment-done event + +2012-07-05 12:53:57 +0200 Wim Taymans + + * docs/design/part-buffer.txt: + * docs/design/part-memory.txt: + * docs/design/part-miniobject.txt: + docs: update docs + +2012-07-05 12:17:55 +0200 Wim Taymans + + * gst/gstminiobject.h: + miniobject: increase amount of possible flags + +2012-07-05 12:52:51 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstevent.c: + * gst/gstevent.h: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + event: Implement segment-done event + +2012-07-05 12:37:01 +0200 Sebastian Dröge + + * docs/design/part-toc.txt: + part-toc: Remove section about TOC query + +2012-07-05 12:34:43 +0200 Sebastian Dröge + + * win32/common/libgstbase.def: + * win32/common/libgstreamer.def: + win32: Update exported symbols list + +2012-07-05 12:31:58 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstquery.c: + * gst/gstquery.h: + query: Remove the TOC query, it's not very useful now that we have sticky events + +2012-07-03 18:49:18 +0200 Sebastian Dröge + + * gst/gstquark.c: + * gst/gstquark.h: + quark: Remove unneeded quarks + +2012-07-03 18:45:05 +0200 Sebastian Dröge + + * docs/design/part-toc.txt: + * docs/gst/gstreamer-sections.txt: + * gst/gsttoc.c: + * gst/gsttoc.h: + * tests/check/gst/gsttoc.c: + * tests/check/gst/gsttocsetter.c: + * tools/gst-launch.c: + * win32/common/libgstbase.def: + * win32/common/libgstnet.def: + * win32/common/libgstreamer.def: + toc: Make structures opaque and clean up function names and fields a bit + +2012-07-04 17:02:09 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer:fix debug category + +2012-07-04 16:38:15 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstbufferlist.c: + * gst/gstcaps.c: + * gst/gstcaps.h: + * gst/gstevent.c: + * gst/gstmemory.c: + * gst/gstmemory.h: + * gst/gstmessage.c: + * gst/gstminiobject.c: + * gst/gstminiobject.h: + * gst/gstquery.c: + * gst/gstsample.c: + * gst/gsttaglist.c: + * gst/gsttoc.c: + * tests/check/gst/gstmemory.c: + * win32/common/libgstreamer.def: + miniobject: add lock functionality to GstMiniObject + Move the locking methods from GstMemory to GstMiniObject. + Add a miniobject flag to enable LOCKABLE objects. LOCKABLE objects can + use the lock/unlock API to control the access to the object. + Add a minobject flag that allows you to lock an object in readonly mode. + Modify the _is_writable() method to check the shared counter for LOCKABLE + objects. This allows us to control writability separately from the refcount for + LOCKABLE objects. + +2012-07-04 16:04:28 +0200 Wim Taymans + + * gst/gst_private.h: + * gst/gstinfo.c: + info: add new locking debug category + +2012-07-04 12:28:56 +0200 Wim Taymans + + * gst/gstmemory.c: + memory: fix is_exclusive + +2012-07-04 12:03:32 +0200 Wim Taymans + + * gst/gstmemory.h: + memory: add LOCK_FLAG_READWRITE define + +2012-07-04 11:48:37 +0200 Wim Taymans + + * docs/design/part-memory.txt: + memory: update docs + +2012-07-04 10:12:43 +0200 Wim Taymans + + * gst/gstmemory.c: + memory: small cleanup + +2012-07-03 13:50:06 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gst.c: + * win32/common/libgstreamer.def: + update for new symbols + +2012-07-03 13:47:49 +0200 Wim Taymans + + * gst/gstmemory.c: + memory: Fix the NO_SHARE flag in the constructor + The NO_SHARE flag does not influence the exclusiveness of the buffer initially + but only if a _share operation can be done. Otherwise, we would not be able to + WRITE map a buffer memory because it would have a share count of at least 2. + +2012-07-03 13:47:30 +0200 Wim Taymans + + * gst/gstmemory.c: + memory: only check the locking refcount + +2012-07-03 13:46:40 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: fix resize + Correctly update the exclusive locks + +2012-07-03 13:45:03 +0200 Wim Taymans + + * gst/gstmemory.h: + memory: Use lock flags for map flags + We implement the locking in gst_memory_map with the lock flags, make matching + flags the same number so that we can use the map flags directly as lock flags. + +2012-07-03 12:18:02 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: lock memory EXCLUSIVE + lock the memory that the buffer references as EXCLUSIVE. This makes sure that + when we share the memory with other buffers that it becomes unwritable. + +2012-07-03 12:16:19 +0200 Wim Taymans + + * gst/gstmemory.c: + memory: cleanup the locking code + cleanup and fix the locking code + +2012-07-03 09:48:32 +0200 Wim Taymans + + * docs/design/part-memory.txt: + * gst/gstmemory.c: + * gst/gstmemory.h: + memory: expose the internal locking api + Expose the internally used methods for locking and unlocking the object. Pass + the access mode to the unlock function for extra checks and because we need it + for the EXCLUSIVE locks. + Make some new defines to specify the desired locking. + Add a new EXCLUSIVE lock mode which will increment the shared counter. Objects + with a shared counter > 1 will not be lockable in WRITE mode. + +2012-06-29 16:37:05 +0200 Mark Nauwelaerts + + * tests/check/gst/gstbuffer.c: + tests: gstbuffer: extend buffer copy test + ... to check for independence of copied buffer. + +2012-07-04 18:32:47 +0100 Tim-Philipp Müller + + * gst/gstregistry.c: + registry: remove outdated bits of warning message + I think we can be reasonable sure people are using an up-to-date + gst-uninstalled script now. + +2012-07-04 18:16:23 +0100 Tim-Philipp Müller + + * gst/gstpluginloader.c: + * gst/gstregistry.c: + Add versioned variants of some environment variables + Improve parallel installability in setups like jhbuild by + providing versioned variants of some environment variables: + GST_REGISTRY_1_0 + GST_PLUGIN_PATH_1_0 + GST_PLUGIN_SYSTEM_PATH_1_0 + GST_PLUGIN_SCANNER_1_0 + will now be checked before checking the unversioned ones. + https://bugzilla.gnome.org/show_bug.cgi?id=679407 + +2012-07-04 17:55:58 +0100 Tim-Philipp Müller + + * gst/gstsample.h: + docs: fix typo in GstSample docs + +2012-07-04 17:36:55 +0100 Tim-Philipp Müller + + * gst/gsturi.c: + * tests/check/gst/gsturi.c: + uri: there are valid URI protocols with only two letters, like fd:// + We added a minimum length of three letters originally so we would + fail to recognise DOS/Windows-style filenames as valid URIs (as we + should). Two should be just fine as well. + +2010-10-13 13:36:08 +0200 Edward Hervey + + * win32/common/libgstbase.def: + win32: API additions + +2009-09-29 09:54:24 +0200 Edward Hervey + + * plugins/elements/gstdataqueue.c: + * plugins/elements/gstdataqueue.h: + dataqueue: Use GstQueueArray + +2009-09-28 17:31:49 +0200 Edward Hervey + + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue.h: + queue: Use new GstQueueArray for local storage. + Makes _chain() and _loop() 25% faster + +2009-09-29 09:06:13 +0200 Edward Hervey + + * tests/check/Makefile.am: + * tests/check/libs/queuearray.c: + check: New unit test for GstQueueArray + +2009-09-28 17:30:04 +0200 Edward Hervey + + * libs/gst/base/Makefile.am: + * libs/gst/base/gstqueuearray.c: + * libs/gst/base/gstqueuearray.h: + * win32/common/libgstbase.def: + libs: New growing-only queue. + This is a queue which has the same API as GQueue, except that: + * It uses an array, instead of a doubled-linked-list + * The array can only grow. + This code is not-threadsafe. It is up to the owner to make sure the + proper locking is taken before calling this API. + +2012-07-04 16:16:04 +0100 Tim-Philipp Müller + + * docs/design/part-segments.txt: + * gst/gstsegment.c: + * gst/gstsegment.h: + segment: make sure we don't have unmapped seek flags littering out segment flags + Make GstSeekFlag to GstSegmentFlag conversion explicit, and + set only those seek flags in the segment flags which are + mapped. This makes sure we don't have extraneous flags + littering our segment flag field, which also fixes the + debug printing/serialisation of segment events in the + debug log. + +2012-07-04 10:24:11 +0100 Tim-Philipp Müller + + * docs/random/porting-to-0.11.txt: + docs: minor porting-to-0.11.txt update + +2012-07-04 10:23:06 +0100 Tim-Philipp Müller + + * tests/check/gst/gstdatetime.c: + tests: make checks for from/to_g_date_time() actually work properly + +2012-06-29 21:52:47 -0400 Joshua M. Doe + + * docs/gst/gstreamer-sections.txt: + * gst/gstdatetime.c: + * gst/gstdatetime.h: + * tests/check/gst/gstdatetime.c: + * win32/common/libgstreamer.def: + datetime: add conversion to/from GDateTime + Exposes existing constructor. + API: gst_date_time_to_g_date_time() + API: gst_date_time_new_from_g_date_time() + https://bugzilla.gnome.org/show_bug.cgi?id=679080 + +2012-07-04 08:52:08 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstutils.c: + * gst/gstutils.h: + * win32/common/libgstreamer.def: + utils: remove unused gst_print_* functions + +2012-07-03 22:24:22 +0100 Tim-Philipp Müller + + * gst/gstpad.c: + pads: no need to deactivate pads that are already in PAD_MODE_NONE + +2012-07-03 22:20:40 +0100 Tim-Philipp Müller + + * gst/gstbin.c: + * gst/gstelement.c: + * gst/gstpad.c: + pads: make pad activation debug logs a bit more readable + +2012-07-03 19:15:25 +0100 Tim-Philipp Müller + + * tests/check/elements/fakesrc.c: + tests: add unit test for element re-use using fakesrc + +2012-07-03 19:04:54 +0100 Tim-Philipp Müller + + * gst/gstpad.c: + pad: clear EOS flag when deactivating pads fixing element re-use + +2012-07-03 17:25:21 +0200 Sebastian Dröge + + * libs/gst/base/gstbasesink.c: + basesink: Post TOC messages on the bus in the sinks, similar to tags + +2012-07-03 12:38:55 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: fix the _get_mapped function + Fix the internal _get_mapped function. gst_memory_make_mapped() takes ownership + of the memory so we need to keep an additional ref until we are done. + +2012-07-03 12:23:36 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: add more debug log + +2012-07-03 10:02:55 +0200 Sebastian Dröge + + * gst/gstevent.h: + event: The GAP event is (partially) implemented now, STREAM_CONFIG isn't + +2012-06-28 16:42:08 +0800 Chun-wei Fan + + * libs/gst/controller/gstargbcontrolbinding.c: + * libs/gst/controller/gstdirectcontrolbinding.c: + controlbindings: include gst/math-compat.h for isnan() + Due to the usage of isnan(), where an implementation is added into + gst/math-compat.h. Fixes build on Visual C++. + https://bugzilla.gnome.org/show_bug.cgi?id=679112 + +2012-06-29 16:52:31 +0800 Chun-wei Fan + + * gst/math-compat.h: + math-compat.h: add implementation for isnan() for Visual C++ + Visual C++ does not have isnan(), so add fallback to + math-compat.h (could use _isnan() in this case, but + this makes it work for all cases where isnan is missing). + https://bugzilla.gnome.org/show_bug.cgi?id=679112 + +2012-06-29 10:56:34 +0800 Chun-wei Fan + + * plugins/elements/gstfdsink.c: + fdsink.c: fix G_OS_WIN32 #ifdef + Postpone the #ifdef to a point after glib.h (via gstfdsink.h) is included + so that the needed defines and header includes can be done correctly, + especially on Visual C++ builds. + https://bugzilla.gnome.org/show_bug.cgi?id=679112 + +2012-05-27 23:09:43 +0300 Raimo Järvi + + * tests/check/gst/gstdatetime.c: + tests: fix build of datetime unit test in Windows + Also include config.h for all the #ifdef HAVE_XYZ. + https://bugzilla.gnome.org/show_bug.cgi?id=676935 + +2012-06-29 11:19:07 +0200 Wim Taymans + + * gst/gstobject.c: + gstobject: don't use g_strdup_value_contents() + g_strdup_value_contents() does some extra escaping, preventing us from using the + output on the console to be used directly. + +2012-06-28 14:41:43 +0100 Tim-Philipp Müller + + * docs/gst/running.xml: + docs: expand a bit more on GST_DEBUG docs + +2012-06-28 11:02:19 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * win32/common/libgstreamer.def: + buffer: add _append_region function + Make a gst_buffer_append_region() function that allows you to append a memory + region from one buffer to another. This is a more general version of + gst_buffer_append(). + +2012-06-28 09:36:34 +0200 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: handle DTS and PTS + Use DTS and PTS of the subclass. + Calculate PTS from DTS on keyframes. + +2012-06-27 23:01:13 +0100 Tim-Philipp Müller + + * tests/check/gst/gstdatetime.c: + tests: test datetime deserialisation a bit more + +2012-06-27 23:00:08 +0100 Tim-Philipp Müller + + * gst/gstdatetime.c: + datetime: ignore 0 days or months in dates + Handle 0 months or days correctly in date strings, so that + 2012-06-00 is parsed the same as 2012-06, for example. + +2012-01-01 16:38:08 +0100 Idar Tollefsen + + * configure.ac: + * m4/check-checks.m4: + build: Make sure AC_INCLUDES_DEFAULT is used + Without using AC_INCLUDES_DEFAULT explicitly, + certain platforms will complain that the header + was found, but not usable by the compiler. + This happens for instance on Solaris where certain + headers are needed to pull in proper defines. + Also upgrade to newer autoconf syntax and use proper quoting. + https://bugzilla.gnome.org/show_bug.cgi?id=667293 + +2012-06-27 20:52:52 +0100 Tim-Philipp Müller + + * tests/check/gst/gstbin.c: + tests: fix bus leak in GstBin test_state_change_skip test + Still not valgrind clean though. + +2012-06-27 19:59:29 +0100 Christophe Fergeau + + * gst/gstparse.c: + parse: escape \ with a \ as well, so that we don't lose the \ when unescaping + If we have a file called Foo\Bar.ogg, there is no way to pass + that filename properly to filesrc in gst_parse_launch(), since + gst_parse_unescape() will just unescape \x to x. + Not cherry-picking this into 0.10 since there are apparently + apps that work around this problem and which would break if + we fixed it there too. + https://bugzilla.gnome.org/show_bug.cgi?id=673319 + +2012-06-27 16:37:54 +0100 Tim-Philipp Müller + + * gst/gstelementfactory.h: + elementfactory: annotate some of the type defines for g-i + Type is not picked up yet though, and we still need + to annotate values for the 'simple' defines. + https://bugzilla.gnome.org/show_bug.cgi?id=677925 + +2012-06-27 14:48:55 +0100 Tim-Philipp Müller + + * gst/gstclock.h: + clock: annotate GST_CLOCK_TIME_NONE with its value for g-i + The value now gets picked up, but it still thinks the type + is a 'gint'. + https://bugzilla.gnome.org/show_bug.cgi?id=678928 + +2012-06-27 13:19:23 +0100 Tim-Philipp Müller + + * tests/check/gst/gstdatetime.c: + tests: add some datetime serialisation/deserialisation tests + https://bugzilla.gnome.org/show_bug.cgi?id=678031 + +2012-06-27 13:16:07 +0100 Tim-Philipp Müller + + * gst/gst_private.h: + * gst/gstdatetime.c: + * gst/gstvalue.c: + datetime: fix compare function + Take into account that not all fields might be valid (though they + are valid in the GDateTime structure). But we should just return + unordered if the set fields don't match. Also, don't check + microseconds when comparing datetimes, since we don't serialise + those by default if they're available. This ensures date times are + still regarded as equal after serialising+deserialising. + +2012-06-18 08:06:49 +0200 Oleksij Rempel + + * docs/gst/gstreamer-sections.txt: + * gst/gstdatetime.c: + * gst/gstdatetime.h: + * win32/common/libgstreamer.def: + datetime: add serialisation to and deserialisation from ISO 8601 strings + Some tag parsers and writers use same datetime format based on ISO 8601. + We can reduce some code by creating some general functions for it. + API: gst_date_time_to_iso8601_string() + API: gst_date_time_new_from_iso8601_string() + https://bugzilla.gnome.org/show_bug.cgi?id=678031 + +2012-06-07 11:30:48 +0100 Lionel Landwerlin + + * Makefile.am: + * configure.ac: + * tests/Makefile.am: + configure: add --disable-tools and --disable-benchmarks options + Add option to avoid build binaries. When building for platforms like + android, you might want to not link any "final" binary, mostly because + it requires special link flags or other parts of code that aren't + in the C library. + https://bugzilla.gnome.org/show_bug.cgi?id=677621 + +2012-06-26 20:41:18 +0100 Tim-Philipp Müller + + * gst/gst_private.h: + * gst/gstevent.c: + * gst/gstmessage.c: + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gstquery.c: + * gst/gsttoc.c: + * tests/check/gst/gsttoc.c: + toc: put toc directly into event/message/query structure + Now that TOCs are refcounted and have a GType, we can just + stuff a ref of the TOC directly into the various toc + event/message/query structures and get rid of lots of + cracktastic GstStructure <-> GstToc serialisation and + deserialisation code. We lose some TOC sanity checking + in the process, but that should really be done when + it's being created anyway. + +2012-06-26 18:22:33 +0100 Tim-Philipp Müller + + * gst/gstbus.c: + Revert "bus: skip gst_bus_create_watch as GSource is not introspectable" + This reverts commit 930e36a89bc5c2a0f2e4ab7a73bfa630c1e0336a. + This shouldn't have been pushed, since GSource is now handled + (https://bugzilla.gnome.org/show_bug.cgi?id=657725) + +2011-08-29 13:57:03 -0300 Johan Dahlin + + * gst/gstbus.c: + bus: skip gst_bus_create_watch as GSource is not introspectable + https://bugzilla.gnome.org/show_bug.cgi?id=657640 + +2012-06-26 17:35:22 +0100 Tim-Philipp Müller + + * docs/random/porting-to-0.11.txt: + docs: some more additions to the porting-to-0.11 guide + +2012-06-26 17:27:31 +0100 Tim-Philipp Müller + + * tools/gst-inspect.c: + * tools/gst-launch.c: + * tools/gst-typefind.c: + * tools/tools.h: + tools: minor clean-up + Get rid of superfluous argument. + +2012-06-26 17:04:01 +0100 Tim-Philipp Müller + + * tools/gst-inspect.c: + * tools/gst-launch.c: + * tools/gst-typefind.c: + * tools/tools.h: + tools: remove useless g_set_prgname() wrapper + +2012-06-26 16:55:30 +0100 Tim-Philipp Müller + + * tools/gst-launch.c: + tools: point people to right binary when a crash happens + "gst-launch" is the 0.10 wrapper script, using that with + gdb is not going to yield great results. + +2012-06-26 16:42:36 +0100 Tim-Philipp Müller + + * configure.ac: + configure: bump GLib requirement to now-released stable version + +2012-06-26 16:42:10 +0100 Tim-Philipp Müller + + * plugins/elements/gstinputselector.c: + inputselector: remove some dead code for old GLib versions + +2012-06-25 23:17:32 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gsttoc.c: + * gst/gsttoc.h: + * win32/common/libgstreamer.def: + toc: add more entry types + Make entry types less abstract. + https://bugzilla.gnome.org/show_bug.cgi?id=678742 + +2012-06-17 12:48:04 +1000 Jan Schmidt + + * docs/random/porting-to-0.11.txt: + a couple of notes for the 0.11 porting guide + +2012-06-26 09:51:10 +0200 Wim Taymans + + * gst/gstminiobject.c: + * gst/gstminiobject.h: + * win32/common/libgstreamer.def: + miniobject: add steal_qdata + Rework the qdata code a little + +2012-06-25 19:52:44 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gsttocsetter.c: + * gst/gsttocsetter.h: + * tests/check/gst/gsttocsetter.c: + * win32/common/libgstreamer.def: + tocsetter: clean up and update API for refcounted TOCs + Let's keep it simple for now: + gst_toc_setter_reset_toc() -> gst_toc_setter_reset() + gst_toc_setter_get_toc_copy() -> removed + gst_toc_setter_get_toc() -> returns a ref now + gst_toc_setter_get_toc_entry_copy() -> removed, + use TOC functions instead + gst_toc_setter_get_toc_entry() -> removed, + use TOC functions instead + gst_toc_setter_add_toc_entry() -> removed, + to avoid problems with (refcount-dependent) + writability of TOC; use TOC functions instead + +2012-06-25 09:32:41 +0200 Wim Taymans + + * gst/gstmemory.h: + memory: improve docs + Mention that custom allocator functions can pass whatever they want to the + user_data. + +2012-04-06 18:00:33 +0400 Alexander Saprykin + + * gst/gsttagsetter.c: + tagsetter: use G_DEFINE_INTERFACE_* macro + https://bugzilla.gnome.org/show_bug.cgi?id=673641 + +2012-04-06 17:59:35 +0400 Alexander Saprykin + + * gst/gsttocsetter.c: + * gst/gsttocsetter.h: + tocsetter: use G_DEFINE_INTERFACE_* macro + https://bugzilla.gnome.org/show_bug.cgi?id=673641 + +2012-06-25 00:10:53 +0100 Tim-Philipp Müller + + * docs/design/part-toc.txt: + docs: update design docs for TOC API changes too + +2012-06-24 20:10:34 +0100 Tim-Philipp Müller + + * gst/gsttocsetter.c: + * tests/check/gst/gsttoc.c: + * tests/check/gst/gsttocsetter.c: + * tools/gst-launch.c: + tocsetter, gst-launch, tests: update for GstToc API changes + +2012-06-24 20:08:33 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gsttoc.c: + * gst/gsttoc.h: + * win32/common/libgstreamer.def: + toc: make GstToc and GstTocEntry mini objects + Because we can, and in order to make them refcounted. + +2012-06-23 21:42:58 +0100 Tim-Philipp Müller + + * gst/gsttaglist.c: + taglist: fix confusing log message + +2012-06-23 21:35:33 +0100 Tim-Philipp Müller + + * gst/gstvalue.c: + value: fix int64 - int64 range intersection on big endian systems + Works better if we use the v_int64 field of the GValue instead of v_int. + +2012-06-23 19:56:12 +0100 Tim-Philipp Müller + + * gst/gstbuffer.c: + * gst/gstbufferlist.c: + * gst/gstcaps.c: + * gst/gstevent.c: + * gst/gstmemory.c: + * gst/gstmessage.c: + * gst/gstminiobject.c: + * gst/gstminiobject.h: + * gst/gstquery.c: + * gst/gstsample.c: + * gst/gsttaglist.c: + miniobjects: pass copy, dispose and free function to gst_mini_object_init() + So mini objects don't have to poke into the GstMiniObject part + of the structure. Saves lines of code, and seems slightly cleaner. + We don't have proper OO hierarchies or methods here after all. + +2012-06-23 17:05:05 +0100 Tim-Philipp Müller + + * gst/gsttaglist.c: + taglist: remove some outdated FIXMEs and comments + +2012-06-23 17:04:53 +0100 Tim-Philipp Müller + + * gst/gstsample.c: + sample: some more g-i annotations + +2012-06-23 16:59:10 +0100 Tim-Philipp Müller + + * gst/gstvalue.c: + * tests/check/gst/gsttag.c: + sample: add compare function for GstSample + Should make gst_tag_list_is_equal() work properly with image tags. + https://bugzilla.gnome.org/show_bug.cgi?id=672637 + +2012-06-23 16:30:03 +0100 Tim-Philipp Müller + + * gst/gstvalue.c: + value: fix buffer compare function + +2012-06-23 14:41:50 +0100 Tim-Philipp Müller + + * tests/check/gst/gsturi.c: + tests: add unit test for gst_element_make_from_uri() + https://bugzilla.gnome.org/show_bug.cgi?id=645467 + +2012-06-23 14:41:17 +0100 Tim-Philipp Müller + + * gst/parse/grammar.y: + parse: update for gst_element_make_from_uri() change + +2012-06-23 14:40:17 +0100 Tim-Philipp Müller + + * gst/gsturi.c: + * gst/gsturi.h: + uri: add error argument to gst_element_make_from_uri() + So callers can differentiate between there not being a + handler for the protocol, and them not accepting the URI + for some reason. + https://bugzilla.gnome.org/show_bug.cgi?id=645467 + +2012-06-23 12:37:16 +0100 Tim-Philipp Müller + + * gst/gstmemory.h: + memory: annotate GstMapInfo data as array for g-i + +2012-06-20 12:53:04 +0100 Tim-Philipp Müller + + * tools/gst-launch.c: + tools: remove pointless get_state() in gst-launch + State changes to NULL state are always sync. + +2012-06-21 01:28:43 -0300 Thiago Santos + + * plugins/elements/gstinputselector.c: + inputselector: avoid notify-tags holding lock + unlock before issuing this notification to prevent + deadlocks when other elements reacts to new tags. + Fixes #678220 + +2012-06-18 16:54:29 -0300 Thiago Santos + + * scripts/gst-uninstalled: + gst-uninstalled: add gst-p-bad gst-libs to the path + Makes videoparsers and camerabins from bad usable from an uninstalled + environment at osx + +2012-06-20 13:28:08 +0200 Wim Taymans + + * gst/gstinfo.c: + * gst/gstinfo.h: + * tests/check/gst/gstinfo.c: + info: add destroy notify to gst_debug_add_log_function() + +2012-06-20 13:27:33 +0200 Wim Taymans + + * gst/gstpad.c: + pad: improve introspection annotation + +2012-06-20 12:29:35 +0200 Wim Taymans + + * gst/gstbin.c: + * gst/gstbus.c: + * gst/gstbus.h: + * tests/check/generic/sinks.c: + * tests/check/gst/gstbin.c: + * tests/examples/streams/rtpool-test.c: + * tests/examples/streams/stream-status.c: + * tools/gst-launch.c: + bus: add GDestroyNotify to set_sync_handler() + +2012-06-20 12:06:11 +0200 Wim Taymans + + * win32/common/libgstreamer.def: + defs: update + +2012-06-20 11:59:09 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstpad.c: + * gst/gsttask.c: + * gst/gsttask.h: + task: add separate methods to add enter/leave callback + Remove the structure of callbacks and replace with separate methods to register + each callback. This is much more binding friendly. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=677898 + +2012-06-20 10:31:49 +0200 Wim Taymans + + * gst/gstpad.c: + * gst/gstpad.h: + * gst/gsttask.c: + * gst/gsttask.h: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gsttypefindelement.c: + * tests/check/gst/gstmessage.c: + * tests/check/gst/gsttask.c: + task: add GDestroyNotify to _new + Add a GDestroyNotify to the user_data we pass to gst_task_new() + Change gst_pad_start_task() to also take the notify + +2012-06-20 09:58:14 +0200 Wim Taymans + + * docs/random/porting-to-0.11.txt: + * gst/gstclock.c: + * gst/gstclock.h: + * gst/gstmeta.c: + * tests/check/gst/gstsystemclock.c: + * win32/common/libgstnet.def: + * win32/common/libgstreamer.def: + clock: remove _full version + Rename gst_clock_id_wait_async_full() to gst_clock_id_wait_async() + and remove the old gst_clock_id_wait_async() version. + +2012-06-20 09:22:40 +0200 Wim Taymans + + * libs/gst/net/gstnettimepacket.c: + * libs/gst/net/gstnettimepacket.h: + nettimepacket: make boxed + +2012-06-19 19:55:30 -0700 Evan Nemerson + + * libs/gst/net/gstnettimepacket.c: + net: fix some argument names in documentation + +2012-06-19 19:55:02 -0700 Evan Nemerson + + * libs/gst/controller/gstdirectcontrolbinding.c: + * libs/gst/controller/gstlfocontrolsource.c: + * libs/gst/controller/gsttimedvaluecontrolsource.h: + controller: assorted minor introspection fixes + +2012-06-19 19:53:54 -0700 Evan Nemerson + + * libs/gst/check/gstcheck.c: + check: add some missing documentation, including annotations + +2012-06-19 18:41:04 -0700 Evan Nemerson + + * libs/gst/base/gstbitreader.c: + * libs/gst/base/gstbitreader.h: + * libs/gst/base/gstbytereader.h: + * libs/gst/base/gstbytewriter.c: + base: add some missing introspection annotations + +2012-06-19 17:37:59 -0700 Evan Nemerson + + * gst/gsttaskpool.c: + task pool: set scope of gst_task_pool_push callback to async + +2012-06-19 17:33:45 -0700 Evan Nemerson + + * gst/gstatomicqueue.c: + * gst/gstbuffer.c: + * gst/gstelementfactory.c: + * gst/gsttaskpool.c: + introspection: add missing return value annotations + +2012-06-19 16:09:10 -0700 Evan Nemerson + + * gst/gstbus.h: + * gst/gstinfo.h: + * gst/gstminiobject.h: + * gst/gsttask.h: + * gst/gsttaskpool.h: + * gst/gsttypefind.h: + introspection: rename some "data" arguments to "user_data" + GObject Introspection will automatically treat "user_data" arguments + as closure data. + +2012-06-19 16:08:46 -0700 Evan Nemerson + + * gst/gsttoc.h: + toc: add some missing element-type annotations + +2012-06-19 16:06:49 -0700 Evan Nemerson + + * gst/gstbufferpool.h: + buffer pool: put GstBufferPoolAcquireParams typedef before struct + Works around https://bugzilla.gnome.org/show_bug.cgi?id=581525 + +2012-06-19 16:14:46 +0200 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: preroll and sync on gap events + +2012-06-19 16:08:00 +0200 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: reorganize the code a little + Move the code to get the sync times together. + +2012-06-19 14:30:37 +0100 Sebastian Dröge + + * gst/gstmemory.h: + memory: Fix docs typo + +2012-06-19 14:05:21 +0200 Wim Taymans + + * gst/gstclock.h: + clock: assert about timestamp overflows + Assert when converting to timeval and timespec about overflows. This can happen + on platforms with 32bits long. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=678181 + +2012-06-19 10:13:15 +0200 Wim Taymans + + * win32/common/libgstreamer.def: + defs: remove gst_pad_set_caps + +2012-06-19 10:32:10 +0100 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + inputselector: Only proxy the allocation query for the active pad and send reconfigure events to the old/new pad when switching pads + +2012-06-18 16:14:19 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstcompat.h: + * gst/gstpad.c: + * gst/gstpad.h: + pad: move gst_pad_set_caps() to compat + We want code to explicitly send a caps event instead. + +2012-06-18 16:13:22 +0200 Wim Taymans + + * gst/gstutils.c: + utils: fix some docs + +2012-06-18 15:52:05 +0200 Wim Taymans + + * docs/random/porting-to-0.11.txt: + docs: small doc fix + +2012-06-18 15:28:20 +0200 Sebastian Rasmussen + + * gst/gstclock.h: + clock: fix compiler warning + Cast to the right value, it might indeed overflow but we want the compiler to + ignore that. + +2012-06-18 15:22:26 +0200 Wim Taymans + + * gst/gstminiobject.c: + * gst/gstminiobject.h: + miniobject: hide qdata array layout + +2012-06-18 15:21:31 +0200 Wim Taymans + + * docs/design/part-meta.txt: + docs: clarify qdata wrt to metadata + +2012-06-18 15:21:12 +0200 Wim Taymans + + * win32/common/libgstreamer.def: + defs: update for new api + +2012-06-15 16:56:46 -0700 Evan Nemerson + + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbytewriter.c: + introspection: assorted introspection and documentation fixes in base + +2012-06-15 18:35:05 -0700 Evan Nemerson + + * libs/gst/base/gstadapter.c: + adapter: add missing element-type annotations + +2012-06-15 16:14:49 -0700 Evan Nemerson + + * gst/gstatomicqueue.c: + * gst/gstatomicqueue.h: + atomic queue: register as boxed type + +2012-06-15 16:43:30 -0700 Evan Nemerson + + * gst/gstbin.c: + * gst/gstbus.c: + * gst/gstchildproxy.c: + * gst/gstchildproxy.h: + * gst/gstclock.c: + * gst/gstcontrolbinding.c: + * gst/gstcontrolbinding.h: + * gst/gstcontrolsource.c: + * gst/gstcontrolsource.h: + * gst/gstevent.c: + * gst/gstobject.c: + * gst/gstpad.h: + * gst/gstpadtemplate.c: + * gst/gstpipeline.c: + * gst/gsttaglist.c: + * gst/gstutils.c: + introspection: assorted introspection and documentation fixes + These changes are to clean up syntax issues such as missing colons, + missing spaces, etc., and minor issues such as argument names in + headers not matching the implementation and/or documentation. + +2012-06-15 14:50:48 -0700 Evan Nemerson + + * gst/gsttocsetter.c: + * gst/gsttocsetter.h: + toc setter: change GstTocSetterIFace to GstTocSetterInterface + Without this GObject Introspection does not recognize the connection + to GstTocSetter. + +2012-06-18 12:15:57 +0200 Wim Taymans + + * gst/gstbufferpool.c: + bufferpool: update docs a little + +2012-06-18 11:36:25 +0200 Wim Taymans + + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + * win32/common/libgstbase.def: + basesink: wait_eos() -> wait() + Rename gst_base_sink_wait_eos() to gst_base_sink_wait() to avoid confusion and + introspection problems with the ::wait_eos vmethod. Also this method can be used + to wait for other things than EOS. Update the docs a little. + +2012-06-18 10:13:38 +0200 Wim Taymans + + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + bufferpool:check caps argument + Caps should be NULL or fixed when configured in a bufferpool + +2012-06-15 17:01:37 +0200 Wim Taymans + + * gst/gstcaps.c: + caps: NULL is not a valid caps anymore + +2012-06-15 15:48:42 +0200 Wim Taymans + + * docs/design/part-buffering.txt: + docs: review the buffering docs + +2012-06-15 15:36:41 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: fix percent scaling + Use _scale functions to scale the percent values. + Correctly scale the percent values in the buffering ranges. + +2012-06-15 14:54:48 +0200 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: avoid flush when starting + When we are doing the initial seek in startup, avoid doing a flush + (and unlock) because we know that the task is not started yet. + +2012-06-15 12:58:10 +0200 Wim Taymans + + * win32/common/libgstreamer.def: + defs: update + +2012-06-15 12:55:20 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstbufferlist.c: + * gst/gstelementfactory.c: + * gst/gstevent.c: + * gst/gstghostpad.c: + * gst/gstminiobject.c: + * gst/gstminiobject.h: + * gst/gstpad.c: + * gst/gstquery.c: + * gst/gstquery.h: + docs: improve API docs + +2012-06-15 00:00:12 +0100 Tim-Philipp Müller + + * gst/gstmemory.c: + alllocator: no need to store structure size inside the structure + +2012-06-14 23:54:22 +0100 Tim-Philipp Müller + + * gst/gstquery.c: + query: no need to store the size of the structure inside the structure + +2012-06-14 23:52:41 +0100 Tim-Philipp Müller + + * gst/gstevent.c: + event: no need to store the size of the structure inside the structure + +2012-06-14 23:49:10 +0100 Tim-Philipp Müller + + * gst/gstbufferlist.c: + bufferlist: no need to store the size of the structure inside the structure + +2012-06-14 23:45:14 +0100 Tim-Philipp Müller + + * gst/gstcaps.c: + caps: no need to store the size of the caps structure inside the structure + +2012-06-14 23:41:57 +0100 Tim-Philipp Müller + + * gst/gstmessage.c: + message: no need to store size of the message structure inside the structure + +2012-06-14 23:38:54 +0100 Tim-Philipp Müller + + * gst/gstsample.c: + sample: no need to store the size of the sample structure inside the structure + +2012-06-14 23:36:29 +0100 Tim-Philipp Müller + + * gst/gsttaglist.c: + taglist: no need to store the size of the tag list structure inside the structure + +2012-06-15 11:24:46 +0200 Wim Taymans + + * gst/gstminiobject.c: + miniobject: expand docs a little + Add blurb about qdata and weak refs. + +2012-06-15 10:44:24 +0200 Wim Taymans + + * gst/gstminiobject.c: + * gst/gstminiobject.h: + * win32/common/libgstreamer.def: + miniobject: add qdata + Keep track of qdata for miniobjects. Reuse the weak ref array for this because + we can. + +2012-06-15 10:56:13 +0200 Wim Taymans + + * gst/gstminiobject.c: + miniobject: fix error in the weak ref handling + When 2 weak refs are added, the array is not resized big enough. + Simplify the weak ref handling code. + Free memory when we remove all weak refs. + Allow installing the same weak ref multiple times, like in gobject. + +2012-06-14 17:11:11 +0200 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbufferlist.c: + * gst/gstcaps.c: + * gst/gstevent.c: + * gst/gstmemory.c: + * gst/gstmessage.c: + * gst/gstminiobject.c: + * gst/gstminiobject.h: + * gst/gstquery.c: + * gst/gstsample.c: + * gst/gsttaglist.c: + miniobject: remove the size field + The size field is used by subclasses to store the total allocated size of the + memory for this miniobject. Because miniobject doesn't really do anything with + this field we can move it to the subclasses. + +2012-06-14 16:30:12 +0200 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstmemory.c: + * gst/gstmemory.h: + * libs/gst/check/gstcheck.h: + * tests/check/gst/gstmemory.c: + * win32/common/libgstreamer.def: + memory: make GstMemory a miniobject + +2012-06-14 16:27:26 +0200 Wim Taymans + + * gst/gsttrace.c: + trace: always print miniobject refcount + +2012-06-14 15:40:43 +0200 Wim Taymans + + * gst/gstmemory.c: + memory: fix copy function + Make the copy function map to ref because we can't safely copy the user_data. + +2012-06-14 15:33:50 +0200 Wim Taymans + + * gst/gstmemory.c: + * gst/gstmemory.h: + * win32/common/libgstreamer.def: + memory: make GstAllocator a miniobject + +2012-06-12 13:26:35 +0200 David Svensson Fors + + * plugins/elements/gstfunnel.c: + gstfunnel: avoid access of freed pad + Save the value of the pad's got_eos in gst_funnel_release_pad, + before calling gst_element_remove_pad. This is because + gst_element_remove_pad may free the pad. + https://bugzilla.gnome.org/show_bug.cgi?id=678017 + +2012-06-14 14:05:15 +0100 Vincent Penquerc'h + + * gst/gstelement.c: + element: fix pad transfer annotation from none to full + since the pad will be unreffed. + +2012-06-13 10:52:48 +0200 Wim Taymans + + * gst/gstbin.c: + * gst/gstmessage.c: + * gst/gstmessage.h: + * libs/gst/base/gstbasesink.c: + message: add the running-time to the async-done message + Add the running-time of the buffer that caused the async operation to complete + to the async-done message. + Update bin to handle the new async-done message. + +2012-06-13 10:51:04 +0200 Wim Taymans + + * gst/gstpipeline.c: + * libs/gst/base/gstbasesink.c: + pipeline: use reset_time message to reset the start time + Use the new RESET_TIME message to reset the start-time of the pipeline to the + requested time. + Make basesink request a new running-time when the flush-stop message tells it to + insteasd of waiting for preroll. + +2012-06-13 10:16:27 +0200 Wim Taymans + + * gst/gstmessage.c: + * gst/gstmessage.h: + * gst/gstquark.c: + * gst/gstquark.h: + * win32/common/libgstreamer.def: + message: add a new message to reset time + Add a new message to reset the pipeline running_time. Currently reseting the + pipeline can only be requested in the async_done message which means that the + pipeline needs to be prerolled. It is better to move this to a separate message. + +2012-06-12 17:11:51 +0200 Wim Taymans + + * gst/gstbin.c: + bin: always recurse into bins when doing state changes + Never skip the state change of a bin because it needs to update the base time of + its children when needed. + +2012-06-13 00:30:48 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + docs: update for new datetime api + +2012-06-13 00:28:00 +0100 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: update .def file for latest API + +2012-06-13 00:25:24 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + docs: add new datetime API + +2012-06-13 00:21:32 +0100 Tim-Philipp Müller + + * tests/check/gst/gstdatetime.c: + tests: add some basic unit tests for partial date time fields + +2012-06-12 23:52:02 +0100 Tim-Philipp Müller + + * gst/gstdatetime.c: + * gst/gstdatetime.h: + datetime: clean-ups and new API adjustments + Remove constructors we don't want: + gst_date_time_new_ymd_h() because we don't want to + support hour-only for now; + gst_date_time_new_ymd_hm() because we don't want to + add constructors with time info where the caller doesn't + have to think about what timezone the time is in. + Lots of compulsive clean-up. Docs fixes. Replace + has_minute() and has_hour() with has_time(). + +2012-06-12 22:35:42 +0200 Oleksij Rempel + + * gst/gstdatetime.c: + * gst/gstdatetime.h: + datetime: allow GstDateTime where not all fields are set + In order to deserialise and re-serialise dates and date times + from tags properly, we need to be able to express partial + dates (e.g. YYYY or YYYY-MM) and date times. + We only support partial date times where all the more + significant fields above the first unset field are set + (e.g. YYYY-00-DD is not supported). + Calling _get_foo() when foo is not set is not allowed + any more, callers need to check which fields are set + first. + https://bugzilla.gnome.org/show_bug.cgi?id=677757 + +2012-06-12 22:45:09 +0100 Tim-Philipp Müller + + * gst/gstmessage.c: + * gst/gstquark.c: + * gst/gstquark.h: + message: fix up minor inconsistency in structure name of state-changed message + +2012-06-12 11:42:30 -0700 Evan Nemerson + + * gst/gstbin.h: + * gst/gstclock.h: + * gst/gstelement.h: + * gst/gstobject.c: + * gst/gstpadtemplate.h: + introspection: add some missing annotations + +2012-06-12 14:24:27 +0200 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: handle flush events on the element as well + Handle flush-start and flush-stop sent on the element as well and send them + downstream. Make sure to send a segment event after the flush stop. + +2012-06-12 11:05:05 +0200 Stefan Sauer + + * gst/gstchildproxy.c: + childproxy: add a few more comments + +2012-06-11 20:34:00 +0200 Stefan Sauer + + * gst/gstchildproxy.h: + childproxy: fix signal handler signatures in class + When adding the name parameter, we forgot to add it here too. + +2012-06-11 10:59:49 +0200 Stefan Sauer + + * gst/gstbin.c: + * gst/gstchildproxy.c: + * gst/gstchildproxy.h: + * tests/check/gst/gstchildproxy.c: + childproxy: use GstChildProxy instead of GObject on the public api + Fix usage and also cleanup gst_object api use on gobjects. + +2012-06-11 15:49:10 +0200 Wim Taymans + + * gst/gstelement.h: + element: remove unused UNPARENTING flag + +2012-06-11 15:41:58 +0200 Wim Taymans + + * gst/gstbin.c: + bin: reorganize _remove_func to avoid races + Make the gst_bin_remove_func more like the add_func. Check if the element we try + to remove from the bin has the bin as the parent and set the parent flag to NULL + immediately, this allows us to avoid concurrent remove operations without using + the UNPARENTING element flag. After we unparented the element from the bin, we + update the bin state and remove the element from the list. Finally we unlink + all the pads. + This avoids a race condition where the element could still claim to have the + bin as the parent while the bin didn't have a pointer to the element anymore. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=647759 + +2012-06-10 12:48:00 -0400 Matej Knopp + + * plugins/elements/gsttypefindelement.c: + typefindelement: Only send caps when pad is being activated + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=677819 + +2012-06-10 12:41:12 -0400 Matej Knopp + + * gst/gstelement.c: + gstelement: Start over if subclass removed the next pad too + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=677818 + +2012-06-09 18:05:14 +0100 Tim-Philipp Müller + + * gst/gstdatetime.c: + datetime: remove fallback code for old GLibs + +2012-06-09 17:13:04 +0100 Tim-Philipp Müller + + * scripts/create-uninstalled-setup.sh: + scripts: add create-uninstalled-setup script + Little script that sets up things in ~/gst and clones + the main modules and prints some instructions. + From http://gstreamer.freedesktop.org/wiki/UninstalledSetup + +2012-06-08 15:45:38 +0200 Sebastian Dröge + + * plugins/elements/gstcapsfilter.c: + * plugins/elements/gsttypefindelement.c: + elements: Use gst_pad_set_caps() and don't ignore its return value + +2012-06-08 15:41:17 +0200 Sebastian Dröge + + * libs/gst/base/gstbasesrc.c: + basesrc: Don't ignore the return value of gst_pad_set_caps() and call it after the vfunc + +2012-06-08 15:36:40 +0200 Sebastian Dröge + + * libs/gst/base/gstbasesink.c: + basesink: Use gst_pad_set_caps() instead of the manual event fiddling + +2012-06-08 15:32:37 +0200 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + basetransform: Don't return the return value of gst_pad_set_caps() + e.g. it returns FALSE if incompatible caps are set on the pad. + +2012-06-06 19:02:00 +0200 Edward Hervey + + * gst/gstutils.h: + gstutils: Faster read macros + On platforms that can do unaligned read/write, we can read/write much faster + by just casting. + https://bugzilla.gnome.org/show_bug.cgi?id=599546 + +2012-06-07 12:49:10 +0200 Edward Hervey + + * tests/check/gst/gstutils.c: + check: Add a test for GST_READ_* macros + +2012-06-08 14:49:51 +0200 Edward Hervey + + * common: + Update common submodule + +2012-06-07 17:58:02 +0200 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: fix reconfigure + Use the pad methods to set and check the reconfigure flags + Clear the reconfigure flag before we negotiate so that we don't miss any + reconfigure events while negotiating + +2012-06-07 15:56:44 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 0.11.92 === + +2012-06-07 15:56:17 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/gstreamer-plugins.args: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + Release 0.11.92 + +2012-06-07 15:53:49 +0200 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/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 + +2012-06-07 15:28:39 +0200 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: release the object lock sooner + Release the object lock before we get the time of the clock because that code + might take other locks. + Fix potential clock refcount error because we released the object lock but + didn't ref the clock. + +2012-06-07 10:34:46 +0200 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: remove 0.11 fixme + We always require elements to have an unlock_stop vmethod. + +2012-06-06 18:11:13 +0200 Edward Hervey + + * gst/gstregistry.c: + registry: We name the registry after the target cpu + And not the host cpu + Conflicts: + gst/gstregistry.c + +2012-06-06 18:18:18 +0200 Edward Hervey + + * common: + Automatic update of common submodule + From 1fab359 to 03a0e57 + +2012-06-06 15:45:11 +0200 Wim Taymans + + * tests/check/gst/gsttoc.c: + tests: fix unit test after event change + Someone forgot to run make check before pushing... + +2012-06-06 11:06:32 +0300 Sreerenj Balachandran + + * libs/gst/base/gstadapter.c: + gstadapter: Align the comment description with public api instead of internal one. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=677536 + +2012-06-06 15:29:49 +0200 Wim Taymans + + * gst/gstelement.c: + element: fix pad cleanup in dispose + In the dispose handler we first need to release all the request pads and then + remove the remaining pads. This is because it is possible that releasing the + request pad might also cleanly remove some of the other dynamic pads, like + what rtpsession does. + https://bugzilla.gnome.org/show_bug.cgi?id=677436 + +2012-06-06 14:14:31 +0200 Sebastian Dröge + + * gst/gstevent.c: + * gst/gstevent.h: + event: Don't make the TOC event a multi-sticky event + Elements are supposed to merge upstream events. + +2009-10-13 17:24:34 +0200 Havard Graff + + * gst/gstpad.c: + Make sure that unlinked pads do not cause a return false on latency events. + Context: Latency configuration should not be + messed up because of not-linked pads. In general, + one return FALSE on latency distribution causes + the "overall" pipeline latency configuration to + fail. This shows up as noise in logs (warning). + Conflicts: + gst/gstpad.c + +2012-06-06 12:52:09 +0200 Wim Taymans + + * gst/gstevent.c: + * gst/gstevent.h: + * libs/gst/base/gstbaseparse.c: + * tests/check/gst/gstevent.c: + * tests/check/gst/gsttoc.c: + * tests/check/gst/gstutils.c: + event: add name to sticky_multi events + The name of the event is used to store multiple sticky events of a certain type + on a pad. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=676859 + +2012-06-06 09:59:55 +0200 Sebastian Dröge + + * docs/design/part-negotiation.txt: + design: Also mention that the order of the filter caps is important + +2012-06-06 09:15:04 +0200 Wim Taymans + + * gst/gstquery.c: + query: improve docs + +2012-06-06 09:13:11 +0200 Wim Taymans + + * gst/gstpad.c: + pad: only serialized events can't pass after EOS + Only serialized events can't be sent on pads that are EOS. Otherwise a seek + event would be refused as well. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=677520 + +2012-06-05 14:38:25 +0200 Wim Taymans + + * docs/design/part-negotiation.txt: + docs: talk about the filter caps + +2012-06-02 16:44:59 +0100 Tim-Philipp Müller + + * tests/check/gst/gsttag.c: + tests: add unit test for tag list writability + +2012-06-02 16:38:35 +0100 Tim-Philipp Müller + + * gst/gstmessage.c: + * tests/check/gst/gstmessage.c: + * tests/check/gst/gsttag.c: + * tests/check/gst/gsttagsetter.c: + * tests/examples/metadata/read-metadata.c: + gst_tag_list_free -> gst_tag_list_unref + +2012-06-02 16:29:45 +0100 Tim-Philipp Müller + + * docs/random/porting-to-0.11.txt: + docs: expand taglist section in porting-to-0.11 docs a bit + +2012-06-05 11:28:38 +0200 Wim Taymans + + * docs/design/part-negotiation.txt: + docs: update negotiation docs + Mention that the acceptcaps query does not have to be recursive + +2012-06-05 09:40:14 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: remove obsolete caps code + +2012-06-05 09:39:41 +0200 Wim Taymans + + * gst/gstutils.c: + utils: improve debug + +2012-06-05 09:21:10 +0200 Wim Taymans + + * tests/check/gst/gstutils.c: + tests: fix unit test + Before we can change the caps on a sinkpad with fixed caps we need to unfix the + pad caps. + +2012-06-05 09:10:05 +0200 Wim Taymans + + * gst/gstpad.c: + pad: don't pause task on EOS + Elements should not rely on core to pause tasks on EOS. + +2012-06-05 09:00:01 +0200 Wim Taymans + + * gst/gstpad.c: + pad: fix event type check + +2012-06-04 16:19:26 +0200 Wim Taymans + + * gst/gstpad.c: + pad: fix 'res' may be used uninitialized in this function + +2012-06-04 13:00:53 +0200 Sebastian Dröge + + * tests/check/elements/funnel.c: + funnel: Fix unit test + +2012-06-04 12:57:59 +0200 Sebastian Dröge + + * tests/check/elements/valve.c: + valve: Fix unit test + +2012-06-04 11:46:42 +0200 Sebastian Dröge + + * gst/gstpad.c: + * gst/gstpad.h: + pad: Don't accept any buffers or events after EOS + +2012-06-04 11:13:02 +0200 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: also perform state processing upon non-OK return + ... since processing might still continue (if e.g. NOT_LINKED) + and then proper state (e.g. offset) needs to be maintained + (e.g. to arrange for a new frame setup). + +2012-06-04 11:25:47 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Always return errors for EOS events immediately + For non-EOS events things will error out later during data + flow but after EOS events no data flow is happening. + See bug #677340. + +2012-06-04 09:27:35 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Only forward caps events to a pad if it accepts the caps + Fixes bug #677335. + +2012-06-02 20:01:01 +0200 Sebastian Dröge + + * gst/gstpad.c: + Revert "pad: Return FALSE if pushing of sticky events failed" + This reverts commit 0f924b922c712059d7752fc15b832551745ff27e. + Sticky events should always return TRUE when pushing and will + only cause failures during data flow later. + +2012-06-02 16:18:46 +0100 Tim-Philipp Müller + + * gst/gstpad.c: + pad: fix variable-set-but-not-used compiler warning + +2012-06-02 16:55:07 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: If pushing a sticky event failed, make sure to at least push any pending EOS events + Otherwise a pipeline where one sticky event fails to be sent will + never forward EOS events downstream. This can cause pipelines to + wait forever for EOS on errors. + +2012-06-02 16:02:07 +0200 Sebastian Dröge + + * gst/gstpad.c: + pad: Return FALSE if pushing of sticky events failed + Instead of just ignoring failure of pushing sticky events and + returning TRUE as if everything is fine. + +2012-06-01 16:34:16 +0200 Andre Moreira Magalhaes (andrunko) + + * plugins/elements/gstinputselector.c: + inputselector: Correctly get current running time when syncing to the segment information + Fixes bug #677263. + +2012-06-01 10:28:30 +0200 Edward Hervey + + * common: + Automatic update of common submodule + From f1b5a96 to 1fab359 + +2012-05-25 22:58:57 -0500 Mike Ruprecht + + * tests/check/elements/funnel.c: + tests: Add funnel test to cover EOS event handling + Ported from f3b2dd6f in the 0.10 branch + +2012-05-25 22:52:33 -0500 Mike Ruprecht + + * plugins/elements/gstfunnel.c: + funnel: Only emit EOS event if all sinkpads have received one + If multiple sources are plugged into the funnel and one of the + sources emits an EOS, that event is propogated through the funnel + even though other sources connected to the funnel may still be + pushing data. This patch waits to send an EOS event until the + funnel has received an EOS event on each sinkpad. + Ported from d397ea97 in 0.10 branch. + +2012-05-29 19:24:25 -0500 Mike Ruprecht + + * tests/check/elements/funnel.c: + tests: Fix invalid read when releasing request pads in funnel tests + +2012-05-29 19:23:07 -0500 Mike Ruprecht + + * plugins/elements/gstfunnel.c: + funnel: Fix buffer leak + +2012-05-31 17:45:29 +0200 Andre Moreira Magalhaes (andrunko) + + * plugins/elements/gstinputselector.c: + inputselector: Don't try to sync on the segment if it has no TIME format + ...and wait until it is actually configured and has a format before + trying to sync. + +2012-05-31 17:03:54 +0200 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + inputselector: No need to broadcast the signal in flush-stop + Everything stopped at this point already. + Conflicts: + plugins/elements/gstinputselector.c + +2012-05-31 13:07:49 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 92b7266 to f1b5a96 + +2012-05-31 10:10:41 +0100 Bastien Nocera + + * plugins/elements/gstqueue2.c: + queue2: Fix property name in the docs + temp-template, not temp-tmpl + https://bugzilla.gnome.org/show_bug.cgi?id=677170 + +2012-05-28 14:29:00 -0300 Andre Moreira Magalhaes (andrunko) + + * plugins/elements/gstinputselector.c: + * plugins/elements/gstinputselector.h: + inputselector: Properly sync when changing streams + This adds properties to use the clock time for deciding when + to drop buffers for inactive pads and a property to buffer all + not rendered buffers for the active pad to allow pad switching + without losing any buffers at all. + Conflicts: + plugins/elements/gstinputselector.c + +2012-05-30 12:44:56 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From ec1c4a8 to 92b7266 + +2012-05-30 11:18:39 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 3429ba6 to ec1c4a8 + +2012-05-29 08:48:36 +0100 Tim-Philipp Müller + + * gst/gsttaglist.c: + taglist: add guards to make sure taglist is writable when modifying it + Now that taglists are refcounted we need to check if they're + writable before modifying them. + +2012-05-28 23:54:10 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gsttaglist.c: + * gst/gsttaglist.h: + * win32/common/libgstreamer.def: + taglist: avoid unnecessary string copying when registering tags + Add gst_tag_register_static() - no need to copy all those + string constants, whether translated or not. + API: gst_tag_register_static() + +2012-05-28 00:08:56 +0100 Tim-Philipp Müller + + * libs/gst/check/gstcheck.c: + check: check for GLib-GIO criticals as well + +2012-05-28 00:08:18 +0100 Tim-Philipp Müller + + * gst/gsttagsetter.c: + * gst/gsttoc.c: + * plugins/elements/gstinputselector.c: + * tools/gst-launch.c: + gst_tag_list_free() -> gst_tag_list_unref() + +2012-05-27 23:58:27 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * docs/random/porting-to-0.11.txt: + * gst/gstcompat.h: + * gst/gsttaglist.c: + * gst/gsttaglist.h: + * tests/check/gst/gsttag.c: + * win32/common/libgstreamer.def: + taglist: make GstTagList a GstMiniObject + Which adds refcounting support, and other things. + +2012-05-27 20:31:30 +0100 Tim-Philipp Müller + + * gst/gstcaps.c: + caps: log freeing of caps at same log level as creation, i.e. TRACE + +2012-05-26 11:37:49 +0100 Tim-Philipp Müller + + * gst/gstevent.c: + * gst/gstmessage.c: + * gst/gstquark.c: + * gst/gstquark.h: + message, event: update for tag lists not being structures any more + +2012-05-21 00:31:29 +0100 Tim-Philipp Müller + + * gst/gsttaglist.c: + * gst/gsttaglist.h: + taglist: make proper struct not just a GstStructure + +2012-05-25 10:28:40 +0200 Josep Torra + + * gst/gst.c: + * gst/gstdebugutils.c: + debugutils: Fix static linking on OS X + The linking behaviour of external variables that are not initialized + in the compilation unit where they are defined is undefined. On OS X + this causes a linking failure when statically linking GStreamer. + +2012-05-25 09:17:17 +0100 Luis de Bethencourt + + * scripts/five-bugs-a-day.pl: + five-bugs-a-day: use splice to trim the bug list + +2012-05-24 23:30:29 +0100 Tim-Philipp Müller + + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstfakesrc.h: + fakesrc: put byte position rather than buffer count into GST_BUFFER_OFFSET + If we're sending a segment in BYTE format, the offset + should be in bytes as well. + +2012-05-24 11:48:19 +0100 Luis de Bethencourt + + * docs/design/part-segments.txt: + docs: fix a typo in part-segments.txt + +2012-05-24 11:02:53 +0200 Brian Cameron + + * libs/gst/base/gsttypefindhelper.c: + typefind: fix prototype of helper_find_suggest + The proto for helper_find_suggest has a different argument than the actual + function in the same file has. This causes the Sun Studio compiler to fail. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=676624 + Conflicts: + libs/gst/base/gsttypefindhelper.c + +2012-05-24 08:07:14 +0100 Tim-Philipp Müller + + * scripts/five-bugs-a-day.pl: + scripts: remove a stray print from debugging and fix up cron entry docs + +2012-05-24 09:03:12 +0200 Sebastian Dröge + + * scripts/five-bugs-a-day.pl: + five-bugs-a-day: Make #! to perl more portable + +2012-05-24 07:56:48 +0100 Tim-Philipp Müller + + * scripts/five-bugs-a-day.pl: + scripts: remove fixed 'known issue' from five-bugs-a-day script + This was with commas actually, and should be fixed now. + +2012-05-24 07:54:50 +0100 Tim-Philipp Müller + + * scripts/five-bugs-a-day.pl: + scripts: add five-bugs-a-day script + Cron fodder. + +2012-05-22 14:27:48 +0300 Sreerenj Balachandran + + * tests/examples/helloworld/helloworld.c: + tests: rename playbin2 to playbin and adding some debug info + +2012-05-22 18:27:36 +0200 Edward Hervey + + * gst/gsturi.c: + uri: Add some debug statements + +2012-05-22 13:51:47 +0200 Edward Hervey + + * win32/common/libgstreamer.def: + win32: Update defs file + +2012-05-21 09:14:39 +0200 Wim Taymans + + * tests/check/gst/gstbin.c: + bin: port unit test to 0.11 + +2012-05-21 15:14:51 +0200 Stefan Sauer + + * gst/gstelement.c: + * gst/gstutils.c: + docs: improve the seeking docs more. + Also mention it on _element_seek{,_simple} and be more precise why it happens. + +2012-05-21 13:17:21 +0200 Stefan Sauer + + * gst/gstelement.c: + * gst/gstevent.c: + docs: fix a typo and clarify event handling a bit more + Tell about async_done messages for some events and review the _event_new_seek + docs. + +2012-05-18 15:04:35 +0200 Wim Taymans + + * gst/gstbin.c: + * tests/check/gst/gstbin.c: + bin: try harder to avoid state changes in wrong direction + When the bin does an upward state change, try to avoid doing a downward state + change on the child and vice versa. + Add some more unit tests for this fix. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=621833 + +2012-05-18 20:11:55 +0300 Anton Belka + + * tools/gst-launch.c: + gst-launch: fix -c, --toc message + +2012-05-21 01:48:29 +0300 Anton Belka + + * gst/gsttoc.c: + * gst/gsttoc.h: + toc: Add boxed types for GstToc and GstTocEntry + +2012-05-20 18:23:57 +0100 Tim-Philipp Müller + + * gst/gsttoc.c: + * gst/gsttoc.h: + toc: fix type of pad parameter to gst_toc_entry_new_with_pad() + +2012-05-20 18:16:45 +0100 Tim-Philipp Müller + + * gst/gsttoc.c: + toc: use correct GType for tag lists + +2012-05-20 18:06:22 +0100 Tim-Philipp Müller + + * gst/gsttoc.c: + toc: avoid unnecessary GValue acrobatics + +2012-05-20 17:48:55 +0100 Tim-Philipp Müller + + * gst/gst.c: + * gst/gst_private.h: + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gsttoc.c: + toc: use global quark table + +2012-05-20 17:10:24 +0100 Tim-Philipp Müller + + * gst/gstquark.c: + toc: fix internal TOC query and event structure names + Make them consistent with all the other query and event names. + +2012-05-19 17:24:52 +0100 Tim-Philipp Müller + + * gst/gst_private.h: + * gst/gstpluginfeature.h: + pluginfeature: make GstPluginFeature structure private + Make GstPluginFeature opaque until we have time to + clean it up a little. Only GstElementFactory and + GstTypefindFactory derive from it, and they are + opaque already, and we currently don't support + custom plugin features in the registry anyway. + +2012-05-19 17:23:43 +0100 Tim-Philipp Müller + + * tests/check/gst/gstplugin.c: + * tools/gst-inspect.c: + tools, tests: don't access the GstPluginFeature structure directly + +2012-05-19 17:16:35 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstpluginfeature.c: + * gst/gstpluginfeature.h: + * win32/common/libgstreamer.def: + pluginfeature: add gst_plugin_feature_get_plugin() + Add function to retrieve plugin that provides this feature. + API: gst_plugin_feature_get_plugin() + +2012-05-19 16:21:39 +0100 Tim-Philipp Müller + + * common: + common: update for gstscanobj changes + +2012-05-19 15:51:53 +0100 Tim-Philipp Müller + + * gst/gst_private.h: + * gst/gstelementfactory.h: + * tests/check/gst/gstelementfactory.c: + elementfactory: make object struct opaque for now + Make GstElementFactory opaque until we have time to + clean it up a little. It's not something anyone + would need to derive from. + +2012-05-19 14:59:14 +0100 Tim-Philipp Müller + + * tools/gst-inspect.c: + tools: don't use private GstElementFactory API in gst-inspect + +2012-05-19 14:52:29 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstelementfactory.c: + * gst/gstelementfactory.h: + * win32/common/libgstreamer.def: + elementfactory: add gst_element_factory_get_metadata_keys() + API: gst_element_factory_get_metadata_keys() + +2012-05-18 09:52:09 +0200 Wim Taymans + + * tools/gst-launch.c: + launch: improve EOS on shutdown handling + When the -e option is selected, also wait for EOS when the pipeline produced an + error. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=630997 + +2012-05-16 18:53:15 +0300 Anton Belka + + * gst/gststructure.c: + docs: fix gst_structure_to_string() docs + +2012-05-16 13:24:23 +0200 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: throttle-time is used + +2012-05-16 12:08:44 +0200 Wim Taymans + + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + basesink: add prepare method + Add a prepare method that is called before sync happens. The purpose of this + method is to prepare the rendering of the giving buffer so that the following + render() call after sync is a quick as possible. + +2012-05-16 09:16:26 +0200 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: avoid potential deadlock + In gst_base_src_start_complete() we do a perform_seek() that will eventually + start the streaming thread which acquires the live lock and then goes to sleep + in the case of appsrc. Right after we perform seek we also try to acquire the + live lock which might then deadlock. + fix this by taking the stream lock before performing the seek. This makes sure + that the streaming thread cannot start and grab the live lock until we are done + and release the stream lock again. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=676048 + +2012-05-15 19:11:15 +0100 Tim-Philipp Müller + + * plugins/elements/gstfilesrc.c: + filesrc: remove references to mmap in comments and debug messages + +2012-05-15 16:38:30 +0200 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gsttoc.c: + * gst/gsttoc.h: + * tools/gst-launch.c: + * win32/common/libgstreamer.def: + gst: Rename gst_toc_entry_type_to_string() to gst_toc_entry_type_get_nick() + It's more consistent. + +2012-05-15 14:59:07 +0300 Anton Belka + + * tools/gst-launch.c: + gst-launch: fix print_toc_entry() + +2012-05-15 14:48:35 +0300 Anton Belka + + * docs/gst/gstreamer-sections.txt: + * gst/gsttoc.c: + * gst/gsttoc.h: + * win32/common/libgstreamer.def: + toc: API: Add gst_toc_entry_type_to_string() + +2012-05-14 03:57:50 +0200 Alban Browaeys + + * plugins/elements/gsttypefindelement.c: + typefindelement: if sink pad is activated do not change mode + In commit bf0964b6 a check for pad is activated was not carried. + This leads to attempt to pull while in push mode when force_caps + is set. In this case without the attached check even when activated + in pull mode we activate back to push mode. + This is from comment in previous code , case number eight: + 8. if the sink pad is activated, we are in pull mode. succeed. + - otherwise activate both pads in push mode and succeed. + Putting it back fixes playback of webm in webkit+gstreamer 1.0 . + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=676003 + +2012-05-13 16:59:24 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 0.11.91 === + +2012-05-13 16:02:36 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * common: + * configure.ac: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + Release 0.11.91 + +2012-05-13 16:02:18 +0200 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/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 + +2012-05-13 15:55:43 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From dc70203 to 3429ba6 + +2012-05-09 14:22:20 +0200 Sebastian Rasmussen + + * gst/gst.c: + gst: Only include init/deinit of alloc tracing when enabled + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=675806 + +2012-05-11 09:07:16 +0200 Wim Taymans + + * docs/design/part-block.txt: + * docs/design/part-element-sink.txt: + * docs/design/part-overview.txt: + * docs/design/part-preroll.txt: + * docs/design/part-probes.txt: + * docs/design/part-segments.txt: + * docs/design/part-states.txt: + * docs/pwg/advanced-events.xml: + * libs/gst/base/gstbasesrc.c: + docs: fix docs + GST_FLOW_WRONG_STATE -> GST_FLOW_FLUSHING + +2012-05-10 12:15:49 +0200 Wim Taymans + + * docs/design/part-bufferpool.txt: + docs: improve bufferpool docs + +2012-05-08 20:12:42 +0300 Anton Belka + + * tools/gst-launch.c: + gst-launch: print tags in toc + +2012-05-05 22:17:43 +0300 Raimo Järvi + + * gst/gstpoll.c: + * gst/gstsystemclock.c: + * plugins/elements/gstfilesrc.c: + * tests/check/elements/filesrc.c: + * tests/check/gst/gstpoll.c: + gst: Fix compiler warnings on mingw-w64 + https://bugzilla.gnome.org/show_bug.cgi?id=675525 + +2012-05-02 14:00:43 +0300 Sreerenj Balachandran + + * gst/gstmemory.c: + memory: add missing parameter to default_mem_map() + Fixes function signature for correctness. + https://bugzilla.gnome.org/show_bug.cgi?id=675289 + +2012-05-02 08:08:15 +0100 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: update .def file for new API + +2012-05-01 22:35:38 +0100 Tim-Philipp Müller + + * gst/gst_private.h: + * gst/gsttypefindfactory.h: + typefindfactory: make object struct opaque for now + Make opaque until we have time to clean it up a little. + +2012-05-01 22:30:32 +0100 Tim-Philipp Müller + + * gst/gsttypefindfactory.c: + * gst/gsttypefindfactory.h: + typefindfactory: fix return type of gst_type_find_factory_get_extensions() + +2012-05-01 22:28:11 +0100 Tim-Philipp Müller + + * libs/gst/base/gsttypefindhelper.c: + * tools/gst-inspect.c: + tools, base: don't poke into GstTypeFindFactory struct, use public API + +2012-05-01 22:33:30 +0100 Tim-Philipp Müller + + * gst/gsttypefindfactory.c: + * gst/gsttypefindfactory.h: + * libs/gst/base/gsttypefindhelper.c: + typefindfactory: add gst_type_find_factory_has_function() + Add API so people don't have to poke the struct for this. + +2012-05-01 15:52:14 -0300 Thiago Santos + + * gst/gstcaps.c: + gstcaps: Update docs for gst_caps_is_equal + NULL caps aren't valid caps in 1.0 and aren't accepted in + gst_caps_is_equal + +2012-05-01 19:47:05 +0100 Tim-Philipp Müller + + * gst/gsturi.c: + * tests/check/gst/gsturi.c: + uri: require URI protocol bit to be at least 3 characters to be valid + We want to return FALSE when run on a windows-style file path. + https://bugzilla.gnome.org/show_bug.cgi?id=674296 + +2012-04-26 17:26:50 +0200 Sebastian Dröge + + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + basetransform/basesrc: Do bufferpool configuration inside the default decide_allocation() implementation + This allows subclasses to override it, as is necessary for e.g. the + video-crop meta. It is now necessary that after decide_allocation() + there is always a allocator and a configured buffer pool inside the + query. + +2012-04-28 21:37:56 +0200 Matej Knopp + + * gst/gstghostpad.c: + ghostpad: set result on accept caps query when there is no peer + +2012-05-01 10:50:32 +0200 Wim Taymans + + * libs/gst/base/gstadapter.c: + * tests/check/libs/adapter.c: + adapter: remove _try_to_merge_up() + It causes the timestamp to go wrong, should not cause much of a performance + increase and in the cases where it is faster, it is broken in 0.10 as well. + We should try to review this when rewriting the adapter for 0.11 memory + features. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674791 + +2012-05-01 09:25:25 +0200 Wim Taymans + + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstadapter.h: + adapter: make internals private + Make the adapter fields private. + +2012-04-30 20:29:21 +0400 Руслан Ижбулатов + + * plugins/elements/gstfilesrc.c: + filesrc: rearrange sys/stat.h inclusion point for MinGW + gstplugin.h used to include this for us, but doesn't any longer. + https://bugzilla.gnome.org/show_bug.cgi?id=675171 + +2012-04-30 09:58:09 +0100 Vincent Penquerc'h + + * docs/design/part-seeking.txt: + * gst/gstsegment.h: + * win32/common/gstenumtypes.c: + event: add new seek snap flags + They can be used to select snapping behavior (to previous, next, or + nearest location, where relevant) when seeking. + The seeking implementation (eg, demuxer) may currently ignore some + or all of these flags. + +2012-04-29 20:06:58 +0100 Tim-Philipp Müller + + * gst/gstplugin.h: + docs: remove reference to removed API in plugin docs + +2012-04-29 20:06:38 +0100 Tim-Philipp Müller + + * gst/gstplugin.c: + plugin: avoid some relocations + +2012-04-29 18:35:11 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstplugin.c: + * gst/gstplugin.h: + * gst/gstregistry.c: + * win32/common/libgstreamer.def: + plugin: remove gst_plugin_name_filter + It's only used internally, most other users will likely + want to use gst_registry_find_plugin() directly instead + (and if not, they can easily walk the list and doing the + strcmp themselves). + +2012-04-29 17:46:32 +0100 Tim-Philipp Müller + + * gst/gst_private.h: + * gst/gstplugin.h: + * gst/gstpluginloader.c: + * gst/gstregistry.c: + * gst/gstregistrybinary.c: + * gst/gstregistrychunks.c: + * tools/gst-inspect.c: + plugin: use GstObject flags for plugin flags + +2012-04-29 17:03:32 +0100 Tim-Philipp Müller + + * gst/gst_private.h: + * gst/gstplugin.h: + plugin: make GstPlugin object structure opaque for now + There's no reason anyone would want to derive from this, so + just make opaque until we manage to make all the private bits + private properly (which I'm not doing right now because it's + more invasive and I have registry modifications locally which + touch all that code as well). + +2012-04-29 16:49:57 +0100 Tim-Philipp Müller + + * tools/gst-inspect.c: + tools: use public accessors for plugin description details + Mostly anyway (flags still need sorting out). + +2012-04-29 16:46:55 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstplugin.c: + * gst/gstplugin.h: + * win32/common/libgstreamer.def: + plugin: remove gst_plugin_get_module() + This is an implementation detail really, and it's not + clear what anyone would do with this. It's unused as + far as I'm aware, so just remove it for now. + +2012-04-29 16:20:50 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstplugin.c: + * gst/gstplugin.h: + * win32/common/libgstreamer.def: + plugin: add accessor for release date time string in plugin description + API: gst_plugin_get_release_date_string() + +2012-04-29 15:53:05 +0100 Tim-Philipp Müller + + * tests/check/gst/gstplugin.c: + tests: use public accessors to get plugin description details + +2012-04-29 13:28:09 +0100 Tim-Philipp Müller + + * gst/gstobject.c: + gstobject: give the 20th queue element a different name than the first queue2 one + Fixes issue with the default naming scheme. + +2012-04-18 17:37:25 +0400 Руслан Ижбулатов + + * gst/parse/grammar.y: + Fix format string in grammar.y + Fixes #674849 + +2012-04-25 20:14:13 +0200 Stefan Sauer + + * libs/gst/controller/gstdirectcontrolbinding.c: + controlbindings: add comments for sparse control source + +2012-04-25 20:10:11 +0200 Stefan Sauer + + * gst/gstcontrolbinding.c: + controller: emulate _get_g_value_array() + Add a default implementation on the baseclass. + +2012-04-25 09:47:10 +0200 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + * gst/gstcontrolbinding.c: + * gst/gstcontrolbinding.h: + * gst/gstcontrolsource.c: + * gst/gstobject.c: + * gst/gstobject.h: + * libs/gst/controller/gstargbcontrolbinding.c: + * libs/gst/controller/gstdirectcontrolbinding.c: + * libs/gst/controller/gstdirectcontrolbinding.h: + * tests/check/libs/controller.c: + * tests/examples/controller/control-sources.c: + * win32/common/libgstreamer.def: + controller: expand the api to offer functions for plain and GValue arrays + Rename the _get_value_array() functions to _get_g_value_array() and reintroduce + the former to operate on plain unboxed c datatypes (like in 0.10). The _g_value + variants are for bindings while the _value ones are more suited to processing + in elements. + +2012-04-25 18:11:03 +0200 Sebastian Dröge + + * scripts/gst-uninstalled: + gst-uninstalled: Add insanity, insanity-gst and gst-editing-services + +2012-04-25 09:06:05 +0200 Wim Taymans + + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + bufferpool: Reset the buffer before releasing into pool + Reset the buffer not after we acquire but before we release into the pool. This + makes sure that the pool only has buffers in a clean state and that we can set + extra metadata on buffers in the acquire method. this means that we need to + remove an argument from the method. + +2012-04-23 15:32:04 +0200 Wim Taymans + + * gst/gstbuffer.h: + buffer: MARKER is for the start of a talkspurt + +2012-04-24 16:01:52 +0200 Mark Nauwelaerts + + * tests/check/elements/queue2.c: + * tests/check/gst/gstpad.c: + tests: plug some leaks + +2012-04-23 17:04:57 +0200 Mark Nauwelaerts + + * libs/gst/base/gstcollectpads.c: + collectpads: do not unref flush_start twice + Based on patch by Matej Knopp + +2012-04-23 16:57:16 +0200 Mark Nauwelaerts + + * libs/gst/base/gstadapter.c: + adapter: refresh skip following merge_up attempt + ... as the latter might now adjust skip as well. + +2012-04-23 09:18:48 +0200 Sebastian Dröge + + * gst/gstmessage.h: + message: Remove comma at end of enum list + This comma confuses some compilers. + +2012-04-18 15:31:23 +0400 Руслан Ижбулатов + + * plugins/elements/gsttee.c: + tee: Remove unneeded unlock + +2012-04-18 05:12:55 +0400 Руслан Ижбулатов + + * gst/gstregistry.c: + registry: fix hardcoded 0.10 version in win32 pluginscanner + https://bugzilla.gnome.org/show_bug.cgi?id=674294 + +2012-04-17 15:37:27 +0200 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + * gst/gstmeta.h: + * tests/check/gst/gstmeta.c: + meta: add LOCKED flag + Add a new LOCKED flag to the metadata. Refuse removing LOCKED metadata from + a buffer. + Mark the metadata from the bufferpool LOCKED. + Add unit test for LOCKED flag + +2012-04-17 14:38:01 +0200 Mark Nauwelaerts + + * docs/libs/gstreamer-libs-docs.sgml: + * docs/libs/gstreamer-libs-sections.txt: + * docs/libs/gstreamer-libs.types: + * libs/gst/base/Makefile.am: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstcollectpads.h: + * libs/gst/base/gstcollectpads2.h: + * tests/check/Makefile.am: + * tests/check/libs/.gitignore: + * tests/check/libs/collectpads.c: + * tests/check/libs/gstlibscpp.cc: + * tests/check/libs/libsabi.c: + * win32/common/libgstbase.def: + * win32/vs10/base/base.vcxproj: + * win32/vs10/base/base.vcxproj.filters: + collectpads2: rename to collectpads + +2012-04-17 12:54:45 +0200 Mark Nauwelaerts + + * libs/gst/base/gstadapter.c: + adapter: ensure writable head buffer before skipping part of it + +2012-04-17 12:29:50 +0200 Mark Nauwelaerts + + Merge remote-tracking branch 'origin/0.10' + Conflicts: + libs/gst/base/gstcollectpads2.c + +2012-04-17 12:23:05 +0200 Mark Nauwelaerts + + * libs/gst/base/gstcollectpads2.c: + collectpads2: always recording incoming segment info if no buffer_func set + +2012-04-17 10:38:05 +0200 Wim Taymans + + * docs/gst/running.xml: + docs: update the debug and trace env var docs + +2012-04-17 10:33:59 +0200 Wim Taymans + + * gst/gsttrace.c: + trace: use g_parse_debug_string instead of atoi + Make the GST_TRACE env variable take a comma separated list of strings + describing the options to enable instead of a number. + +2012-04-16 21:14:17 +0000 Youness Alaoui + + * tools/gst-inspect.c: + gst-inspect: If running with --print-all, fix printing of the Children: line + +2012-04-16 21:14:02 +0000 Youness Alaoui + + * tools/gst-inspect.c: + gst-inspect: If running with --print-all, fix printing of signal names + +2012-04-16 16:36:52 +0200 Mark Nauwelaerts + + * win32/common/libgstbase.def: + win32: add new collectpads2 API to .def file + +2012-04-16 16:29:34 +0200 Mark Nauwelaerts + + Merge remote-tracking branch 'origin/0.10' + Conflicts: + libs/gst/base/gstcollectpads2.c + +2012-04-16 16:24:18 +0200 Mark Nauwelaerts + + * libs/gst/base/gstcollectpads2.c: + * libs/gst/base/gstcollectpads2.h: + collectpads2: provide query default and callback handling + ... which presently mainly serves to answer SEEKING query negatively + to dissuade upstream encoders from doing any seeking and + "header finalization" (since the returned result of pushing a + sticky event is fairly useless nowadays). + +2012-04-16 16:24:10 +0200 Mark Nauwelaerts + + * libs/gst/base/gstcollectpads2.c: + * libs/gst/base/gstcollectpads2.h: + collectpads2: modify event handling using a default event handler + ... that elements should "chain up" to. + +2012-04-16 15:35:23 +0200 Wim Taymans + + * gst/gstvalue.c: + segment: add rude serialization + Ass serialize and deserialize functions for GstSegment so that gdp and + gst_structure_to_string show the segment values. We convert to a GstSegment + first to make things easier.. + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674100 + +2012-02-03 17:08:35 +0000 Vincent Penquerc'h + + * libs/gst/base/gstcollectpads2.c: + collectpads2: assume 0 based segment if no time segment was provided + https://bugzilla.gnome.org/show_bug.cgi?id=669305 + +2012-04-16 10:28:15 +0200 Wim Taymans + + * gst/gstmemory.c: + memory: add size to debug log + +2012-04-16 10:27:29 +0200 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + inputselector: Set sequence number on segment events + +2012-04-16 10:22:53 +0200 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + inputselector: Forward all sticky events when switching pads + +2012-04-16 10:05:02 +0200 Sebastian Dröge + + * plugins/elements/gsttee.c: + tee: Store pad state directly inside the pads instead of GObject qdata + +2012-04-16 09:45:27 +0200 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + inputselector: Send reconfigure event on the new active pad when pads are switched + +2012-04-16 09:08:46 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 6db25be to dc70203 + +2012-04-14 03:27:29 +0200 Matej Knopp + + * libs/gst/base/gstadapter.c: + Remove skipped part of buffer when mapping the adapter + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674085 + +2012-04-14 10:24:38 +0200 Wim Taymans + + * tests/check/libs/adapter.c: + tests: add another adapter test + Test performance of merging + +2012-04-14 10:23:49 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: improve debug + +2012-04-13 14:22:34 +0200 Matej Knopp + + * plugins/elements/gstmultiqueue.c: + multiqueue: gst_single_queue_flush unlocks the queue twice + https://bugzilla.gnome.org/show_bug.cgi?id=674044 + +2012-04-13 13:36:37 +0200 Sebastian Dröge + + * autogen.sh: + * configure.ac: + configure: Modernize autotools setup a bit + Also we now only create tar.bz2 and tar.xz tarballs. + +2012-04-13 13:36:47 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 464fe15 to 6db25be + +2012-04-13 11:58:49 +0200 Mark Nauwelaerts + + * libs/gst/base/gstbasesink.c: + basesink: plug caps leak + +2012-04-13 08:10:19 +0200 Stefan Sauer + + * gst/gstcontrolbinding.c: + controlbinding: only take a weak ref on the object + Fixes the leaks in the tests. Added a TODO comment to eventually rework this + some more (while we can). + +2012-04-12 18:15:27 -0400 Reynaldo H. Verdejo Pinochet + + * Android.mk: + Sync Android.mk entries to the new major version + Change naming on the pkgconfig files to reflect + the 0.10 -> 1.0 bump. + +2012-04-12 14:59:52 +0200 Edward Hervey + + * libs/gst/controller/gstargbcontrolbinding.c: + * libs/gst/controller/gstdirectcontrolbinding.c: + * libs/gst/controller/gstlfocontrolsource.c: + * libs/gst/controller/gsttimedvaluecontrolsource.c: + controller: Chain up to parent class dispose/finalize + Avoids leaks + +2012-04-12 14:59:31 +0200 Edward Hervey + + * libs/gst/check/gstconsistencychecker.c: + consistencychecker: Use gst_object_{ref|unref} where applicable + Allows us to debug object life + +2012-04-12 14:58:47 +0200 Edward Hervey + + * gst/gstobject.c: + * gst/gstpluginfeature.c: + gst: Use gst_object_{ref|unref} where applicable + Allows us to debug object life + +2012-04-12 11:53:00 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: improve arg checking + Allow idx == 0 and length == -1 on empty buffers for the _range methods. + +2012-04-12 11:18:22 +0200 Sebastian Dröge + + * configure.ac: + Back to development + +=== release 0.11.90 === + +2012-04-12 09:57:01 +0200 Sebastian Dröge + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/gstreamer-plugins.prerequisites: + * docs/plugins/inspect/plugin-coreelements.xml: + * docs/plugins/inspect/plugin-coreindexers.xml: + * gstreamer.doap: + * win32/common/config.h: + Release 0.11.90 + +2012-04-12 09:56:43 +0200 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/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 + +2012-04-11 13:20:18 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: fix merge error + +2012-04-11 12:58:19 +0200 Wim Taymans + + * tests/check/elements/queue2.c: + queue2: set buffer to NULL before pull + +2012-04-11 12:54:36 +0200 Wim Taymans + + * tests/check/elements/queue2.c: + tests: port queue2 tests to 0.11 + +2012-04-11 12:50:50 +0200 Wim Taymans + + Merge remote-tracking branch 'origin/0.10' + Conflicts: + gst/gsttoc.c + plugins/elements/gstqueue2.c + +2012-04-11 12:34:55 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: signal delete before waiting + When we don't have the requested data in the ringbuffer and we move our read + pointer to the requested position, signal the delete cond to inform the writer + that we changed the current fill level. If we don't, the writer might stay + blocked and we might wait forever. + +2012-04-11 12:15:37 +0200 Wim Taymans + + * tests/check/elements/queue2.c: + queue2: add test for ringbuffer deadlock + +2012-04-11 12:02:50 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: update current read position before waiting + When we don't have enough bytes in the ringbuffer to satisfy the current + request, first update the current read position before waiting. If we don't do + that, the ringbuffer might appear full and the writer will never write more + bytes to wake us up. + +2012-04-11 12:00:10 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: add range only on sinkpad + Only add the range when we receive a segment event on the sinkpad. The add_range + method will modify the write position, which only makes sense to do on the + sinkpad. + +2012-04-11 11:55:56 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: fix debug message + We're not writing to the offset of the buffer + +2012-04-11 11:55:28 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: add_range already updates the level + +2012-04-10 14:11:26 +0400 Alexander Saprykin + + * gst/gsttoc.c: + toc: fix memory leaks while copying content + +2012-04-10 14:18:48 +0400 Alexander Saprykin + + * tests/check/gst/gsttocsetter.c: + tocsetter: fix memory leaks in unit test + +2012-04-10 14:16:50 +0400 Alexander Saprykin + + * tests/check/gst/gsttoc.c: + toc: fix memory leaks in unit test + +2012-04-10 14:18:48 +0400 Alexander Saprykin + + * tests/check/gst/gsttocsetter.c: + tocsetter: fix memory leaks in unit test + +2012-04-10 14:16:50 +0400 Alexander Saprykin + + * tests/check/gst/gsttoc.c: + toc: fix memory leaks in unit test + +2012-04-10 14:11:26 +0400 Alexander Saprykin + + * gst/gsttoc.c: + toc: fix memory leaks while copying content + +2012-04-10 19:39:58 +0300 Sreerenj Balachandran + + * gst/gstbuffer.c: + buffer: Clean up header files + +2012-04-10 16:07:52 +0200 Wim Taymans + + Merge remote-tracking branch 'origin/0.10' + +2012-04-10 16:04:54 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: clear seeking flag in all cases + Also clear the seeking flag when downstream is in pull mode. + +2012-04-10 12:55:31 +0200 Wim Taymans + + Merge remote-tracking branch 'origin/0.10' + Conflicts: + gst/gst.c + plugins/elements/gstqueue2.c + +2012-04-10 12:49:04 +0200 Wim Taymans + + * gst/gst.c: + gst: add toc entry ref/unref + +2012-04-10 12:09:53 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: set seeking flag with the queue lock + +2012-04-10 11:20:09 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + * plugins/elements/gstqueue2.h: + queue2: Keep track of the seeking state + Set the seeking flag right before we send a seek event upstream and discard all + data untill we see a flush-stop again. We need to do this because we activate + the range that we seek to immediately after sending the seek event and it is + possible that we receive data in our chain function from before the seek + which would then be added to the wrong range resulting in data corruption. + +2012-04-10 11:16:14 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: make range on newsegment for ringbuffer + When using the ringbuffer, handle the newsegment event like we handle it when + using the temp-file mode: create a new range for the new byte segment. The new + segment should normally already be created when we do a seek. + +2012-04-09 16:42:30 +0200 Sebastian Dröge + + Merge remote-tracking branch 'origin/0.10' + +2012-04-09 16:40:47 +0200 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: Don't use buffer after pushing it downstream + +2012-04-09 16:04:22 +0200 Sebastian Dröge + + Merge remote-tracking branch 'origin/0.10' + +2012-04-09 15:58:21 +0200 Sebastian Dröge + + * gst/gstelement.c: + element: Fail if a pad for a non-request template is requested + +2012-04-09 13:40:35 +0100 Tim-Philipp Müller + + * gst/gstelement.c: + * gst/gstquark.c: + * gst/gstquark.h: + element: use quarks when storing standard metadata in structures + +2012-04-09 13:05:07 +0100 Tim-Philipp Müller + + * plugins/elements/gstcapsfilter.c: + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstfdsink.c: + * plugins/elements/gstfdsrc.c: + * plugins/elements/gstfilesink.c: + * plugins/elements/gstfilesrc.c: + * plugins/elements/gstfunnel.c: + * plugins/elements/gstidentity.c: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstoutputselector.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gsttee.c: + * plugins/elements/gsttypefindelement.c: + * plugins/elements/gstvalve.c: + plugins: use new gst_element_class_set_static_metadata() + +2012-04-09 12:47:58 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstelement.c: + * gst/gstelement.h: + * win32/common/libgstreamer.def: + element: add gst_element_class_{set,add}_static_metadata() + Add gst_element_class_{add,set}_metadata() variants for static strings, + so we can avoid unnecessary g_strdup()s. + API: gst_element_class_add_static_metadata() + API: gst_element_class_set_static_metadata() + +2012-04-08 21:17:14 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gsttask.c: + * gst/gsttask.h: + * tests/examples/streams/stream-status.c: + task: remove gst_task_set_priority() + It doesn't actually do anything. + +2012-01-14 00:31:32 -0500 Matej Knopp + + * win32/vs10/Common.props: + * win32/vs10/Library.props: + * win32/vs10/Plugin.props: + * win32/vs10/ReadMe.txt: + * win32/vs10/Tool.props: + * win32/vs10/base/base.vcxproj: + * win32/vs10/base/base.vcxproj.filters: + * win32/vs10/controller/controller.vcxproj: + * win32/vs10/controller/controller.vcxproj.filters: + * win32/vs10/generated/generated.vcxproj: + * win32/vs10/generated/generated.vcxproj.filters: + * win32/vs10/gst-inspect/gst-inspect.vcxproj: + * win32/vs10/gst-inspect/gst-inspect.vcxproj.filters: + * win32/vs10/gst-launch/gst-launch.vcxproj: + * win32/vs10/gst-launch/gst-launch.vcxproj.filters: + * win32/vs10/gst-typefind/gst-typefind.vcxproj: + * win32/vs10/gst-typefind/gst-typefind.vcxproj.filters: + * win32/vs10/gstcoreelements/gstcoreelements.vcxproj: + * win32/vs10/gstcoreelements/gstcoreelements.vcxproj.filters: + * win32/vs10/gstreamer.sln: + * win32/vs10/gstreamer/gstreamer.vcxproj: + * win32/vs10/gstreamer/gstreamer.vcxproj.filters: + * win32/vs10/net/net.vcxproj: + * win32/vs10/net/net.vcxproj.filters: + win32: add VS 10 Project files + https://bugzilla.gnome.org/show_bug.cgi?id=666219 + +2012-04-08 18:25:39 +0100 Tim-Philipp Müller + + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstenumtypes.h: + * win32/common/gstversion.h: + win32: update for version changes + +2012-04-07 16:35:27 +0100 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/0.10' + +2012-04-07 16:06:22 +0100 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: add new TOC API to libgstreamer.def + Fixes 'make check'. + +2012-04-07 16:05:33 +0100 Tim-Philipp Müller + + * tests/check/gst/.gitignore: + tests: add new toc test binaries to .gitignore + +2012-04-07 16:04:14 +0100 Tim-Philipp Müller + + * gst/gst.c: + * gst/gst_private.h: + * gst/gstevent.c: + * gst/gstmessage.c: + * gst/gstquery.c: + * gst/gsttoc.c: + gst: don't export private TOC functions + +2012-04-07 15:42:08 +0100 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/0.10' + Conflicts: + gst/gstatomicqueue.c + +2012-02-24 15:24:42 +0100 Wim Taymans + + * gst/gstatomicqueue.c: + atomicqueue: fix race + After a writer has written to its reserved write location, it can only make the + location available for reading if all of the writers with lower locations have + finished. + +2012-02-24 12:51:24 +0100 Wim Taymans + + * gst/gstatomicqueue.c: + atomicqueue: fix subtle race + Fix a race where the reader would see the updated the tail pointer before the + write could write the data into the queue. Fix this by having a separate reader + tail pointer that is only incremented after the writer wrote the data. + +2012-04-07 15:20:05 +0100 Tim-Philipp Müller + + * plugins/elements/gstfilesrc.c: + filesrc: set default block size from local define + Doesn't actually change the default value, just makes use of the + define there is. Superficial testing with fakesink and jpegdec did + not reveal improved performance for bigger block sizes, so leave + default as it is. + +2012-04-06 16:46:58 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: don't update the current reading_pos in flush + A flush from the upstream element should not make buffering go to 0, the next + pull request might be inside a range that we have and then we don't need to + buffer at all. If the next pull is outside anything we have, buffering will + happen as usual anyway. + +2012-04-06 12:42:39 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: fix for merged changes + +2012-04-06 12:37:41 +0200 Wim Taymans + + Merge branch '0.10' + +2012-04-06 12:32:49 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: check the pad mode on the right pad + +2012-04-06 12:24:22 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: forward flush events correctly + We want to forward the flush events received on the sinkpad whenever the srcpad + is activated in pushmode, which can also happen when using the RINGBUFFER or + DOWNLOAD mode and downstream failed to activate us in pull mode. + +2012-04-05 21:56:05 +0200 Stefan Sauer + + * gst/gstcontrolbinding.c: + controlbinding: chain up on dispose and finalize + +2012-04-05 21:55:07 +0200 Stefan Sauer + + * gst/gstobject.c: + gstobject: unparent the controlbinding on dispose + +2012-04-05 21:07:55 +0200 Stefan Sauer + + * libs/gst/controller/gstargbcontrolbinding.c: + * libs/gst/controller/gstdirectcontrolbinding.c: + controller: dup the objects to avoid premature frees + +2012-04-05 21:06:14 +0200 Stefan Sauer + + * tests/check/gst/gstcontroller.c: + controller: add a finalizer for the test controlbindings + No idea why valgrind still inists that there are leaks. + +2012-04-05 18:42:30 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 7fda524 to 464fe15 + +2012-04-05 18:02:56 +0200 Sebastian Dröge + + * plugins/elements/gstdataurisrc.c: + gst: Update for GST_PLUGIN_DEFINE() API changes + +2012-04-05 14:17:16 +0200 Sebastian Dröge + + * docs/pwg/building-boiler.xml: + * gst/gstplugin.h: + * plugins/elements/gstelements.c: + gst: Change name parameter of GST_PLUGIN_DEFINE() to not take a string anymore + This will be needed when we later add support for static linking + of plugins without introducing new API or changing existing API. + +2012-04-05 13:23:00 +0200 Sebastian Dröge + + * configure.ac: + * gst/gstpluginfeature.c: + gstplugin: Add hack for handling 0.11.9X and 0.11.89.X with X>0 the same as 1.0.0 + Also update the version number to 0.11.89.1 + +2012-04-05 12:22:11 +0200 Mark Nauwelaerts + + * gst/gsttocsetter.c: + tocsetter: clear mutex upon free + +2012-04-05 10:56:22 +0200 Sebastian Dröge + + * gst/gstregistrybinary.h: + registry: Set registry version to 1.0.0 too + +2012-04-05 10:36:08 +0200 Wim Taymans + + Merge branch '0.10' + Conflicts: + plugins/elements/gstqueue2.c + +2012-04-05 10:03:02 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: stop waiting for more data after EOS + When we have EOS, read the remaining bytes in the buffer and make sure we don't + wait for more data. Also clip the output buffer to the amount of remaining + bytes. + +2012-04-05 09:56:52 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: check for filled buffer correctly + When using the ringbuffer mode, the buffer is filled when we reached the + max_level.bytes mark or the total size of the ringbuffer, whichever is smaller. + +2012-04-04 13:07:27 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: avoid waiting for a filled buffer + Use a threshold variable to hold the maximum distance from the current position + for with we will wait instead of doing a seek. + When using the ringbuffer and the requested offset is not available, avoid + waiting until the complete ringbuffer is filled but instead do a seek when the + requested data is further than the threshold. + Avoid doing the seek twice in the ringbuffer case. + Use the same threshold for ringbuffer and download buffering. + +2012-04-05 09:07:18 +0200 Alessandro Decina + + * gst/gstbuffer.c: + gstbuffer: fix compile warning + +2012-04-04 13:13:52 +0200 Sebastian Dröge + + * Makefile.am: + * configure.ac: + * docs/faq/developing.xml: + * docs/gst/Makefile.am: + * docs/gst/gstreamer-docs.sgml: + * docs/gst/running.xml: + * docs/libs/Makefile.am: + * docs/libs/gstreamer-libs-docs.sgml: + * docs/manual/basics-helloworld.xml: + * docs/plugins/Makefile.am: + * docs/plugins/gstreamer-plugins-docs.sgml: + * docs/random/autotools: + * docs/version.entities.in: + * gst-element-check.m4.in: + * gst/Makefile.am: + * gst/gstplugin.c: + * gst/gstpreset.c: + * gst/gstregistry.c: + * gst/gstversion.h.in: + * gstreamer.spec.in: + * libs/gst/base/Makefile.am: + * libs/gst/check/Makefile.am: + * libs/gst/controller/Makefile.am: + * libs/gst/helpers/Makefile.am: + * libs/gst/net/Makefile.am: + * pkgconfig/Makefile.am: + * pkgconfig/gstreamer-base-uninstalled.pc.in: + * pkgconfig/gstreamer-base.pc.in: + * pkgconfig/gstreamer-check-uninstalled.pc.in: + * pkgconfig/gstreamer-check.pc.in: + * pkgconfig/gstreamer-controller-uninstalled.pc.in: + * pkgconfig/gstreamer-controller.pc.in: + * pkgconfig/gstreamer-net-uninstalled.pc.in: + * pkgconfig/gstreamer-net.pc.in: + * pkgconfig/gstreamer-uninstalled.pc.in: + * pkgconfig/gstreamer.pc.in: + * plugins/elements/Makefile.am: + * tests/benchmarks/Makefile.am: + * tests/check/Makefile.am: + * tests/check/gst/gstpreset.c: + * tests/examples/adapter/Makefile.am: + * tests/examples/controller/Makefile.am: + * tests/examples/manual/Makefile.am: + * tools/Makefile.am: + * tools/gst-launch.1.in: + * tools/gstreamer-completion: + * win32/common/config.h: + gst: Change versioning + Remove GST_MAJORMINOR and replace it by GST_API_VERSION + Also set GST_VERSION_{MAJOR,MINOR,MICRO,NANO} explicitely + now. + All versions are at 1.0.0 now for the release soon but + API/ABI can still change until the 1.0.0 release. + Next release versions until 1.0.0 will be 0.10.9X and + these will be release candidates. GST_VERSION_* will + nonetheless stay at 1.0.0.0. + +2012-04-04 12:25:40 +0200 Sebastian Dröge + + Merge remote-tracking branch 'origin/0.10' + Conflicts: + docs/gst/gstreamer-sections.txt + gst/Makefile.am + gst/gst.c + gst/gst.h + gst/gstevent.c + gst/gstevent.h + gst/gstmessage.c + gst/gstmessage.h + gst/gstquark.c + gst/gstquark.h + gst/gstquery.c + gst/gstquery.h + gst/gsttoc.c + gst/gsttoc.h + gst/gsttocsetter.c + tests/check/Makefile.am + tests/check/gst/gsttoc.c + tests/check/gst/gsttocsetter.c + +2012-04-03 16:51:54 +0200 Wim Taymans + + * gst/gstbuffer.h: + buffer: improve _set_size() + +2012-04-03 16:44:58 +0200 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * win32/common/libgstreamer.def: + buffer: make get_sizes and _resize with ranges + Make the _get_sizes and _resize methods work on a range of memory to make them + more powerfull. + +2012-04-03 18:25:40 +0200 Mark Nauwelaerts + + * libs/gst/check/gstconsistencychecker.c: + consistencychecker: allow some more events before a segment event + +2012-04-03 15:46:29 +0200 Stefan Sauer + + * gst/gsttocsetter.c: + tocsetter: use new glib mutex api + +2012-04-02 23:17:21 +0100 Tim-Philipp Müller + + * tools/gst-launch.c: + tools: fix compiler warning + gst-launch.c: In function ‘print_toc_entry’: + gst-launch.c:446:3: error: the size of array ‘spc’ can’t be evaluated [-Werror=vla] + gst-launch.c:446:3: error: variable-sized object may not be initialized + +2012-04-02 23:29:24 +0100 Tim-Philipp Müller + + * tests/check/gst/.gitignore: + tests: add new unit test binaries to .gitignore + +2012-04-02 23:28:15 +0100 Tim-Philipp Müller + + * gst/gst.c: + gst: ref new entry enum types + Fixes 'make check', again. + +2012-04-02 23:24:22 +0100 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: add new API to .def file + Fixes 'make check'. + +2012-04-02 23:23:46 +0100 Tim-Philipp Müller + + * gst/gst_private.h: + * gst/gstevent.c: + * gst/gstmessage.c: + * gst/gstquery.c: + * gst/gsttoc.c: + toc: don't export private functions + +2012-04-02 23:17:21 +0100 Tim-Philipp Müller + + * tools/gst-launch.c: + tools: fix compiler warning + gst-launch.c: In function ‘print_toc_entry’: + gst-launch.c:446:3: error: the size of array ‘spc’ can’t be evaluated [-Werror=vla] + gst-launch.c:446:3: error: variable-sized object may not be initialized + +2012-04-02 23:16:39 +0100 Tim-Philipp Müller + + * 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/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: + po: update for new translatable strings + +2012-04-02 23:01:17 +0200 Stefan Sauer + + Merge remote-tracking branch 'origin/master' + +2012-04-02 22:09:07 +0200 Stefan Sauer + + * gst/gstevent.c: + * gst/gstmessage.c: + * gst/gstquery.c: + * gst/gsttoc.c: + * gst/gsttoc.h: + * tests/check/gst/gsttoc.c: + * tests/check/gst/gsttocsetter.c: + toc: port to 0.11 + +2012-03-22 08:36:02 +0100 Stefan Sauer + + * tools/gst-launch.c: + gst-launch: add -c, --toc to print the toc + Print the nested chapter and edition structure of the chapters message. + +2012-03-28 23:15:41 +0400 Alexander Saprykin + + * docs/design/Makefile.am: + * docs/design/part-toc.txt: + docs: add overview of GstToc usage + +2012-03-14 21:14:23 +0400 Alexander Saprykin + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + docs: Add GstToc and GstTocSetter sections with related functions + +2012-03-14 21:13:22 +0400 Alexander Saprykin + + * tests/check/Makefile.am: + * tests/check/gst/gsttocsetter.c: + gstchecks: Add unit test for the GstTocSetter + +2012-03-14 21:12:22 +0400 Alexander Saprykin + + * tests/check/Makefile.am: + * tests/check/gst/gsttoc.c: + gstchecks: Add unit test for the GstToc + +2012-03-14 20:45:35 +0400 Alexander Saprykin + + * gst/Makefile.am: + * gst/gst.h: + * gst/gsttocsetter.c: + * gst/gsttocsetter.h: + Add new GstTocSetter interface + +2012-03-14 20:42:56 +0400 Alexander Saprykin + + * gst/gstquery.c: + * gst/gstquery.h: + Add new TOC query + +2012-03-14 20:41:48 +0400 Alexander Saprykin + + * gst/gstmessage.c: + * gst/gstmessage.h: + Add new TOC message + +2012-03-14 20:40:32 +0400 Alexander Saprykin + + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstquark.c: + * gst/gstquark.h: + Add new TOC and TOC select events + +2012-03-14 20:01:51 +0400 Alexander Saprykin + + * gst/Makefile.am: + * gst/gst.c: + * gst/gst.h: + * gst/gst_private.h: + * gst/gsttoc.c: + * gst/gsttoc.h: + Add generic table of contents (TOC) support + +2012-04-02 21:15:09 +0200 Stefan Sauer + + Merge branch '0.10' + Conflicts: + docs/gst/gstreamer-sections.txt + gst/Makefile.am + gst/gst.c + gst/gst.h + gst/gstevent.c + gst/gstevent.h + gst/gstmessage.h + gst/gstquark.c + gst/gstquark.h + gst/gstquery.c + gst/gstquery.h + tests/check/Makefile.am + +2012-04-02 15:30:04 +0200 Sebastian Dröge + + Merge remote-tracking branch 'origin/0.10' + Conflicts: + libs/gst/base/gstbaseparse.c + +2012-04-02 15:13:24 +0200 Edward Hervey + + * libs/gst/base/gstbaseparse.c: + baseparse: always attempt to push if not-linked + This avoids ending up with plenty of pending data (since we'll only + try to parse/push one frame from the incoming buffer). + Fixes increasing memory consumption when parsers aren't linked + Conflicts: + libs/gst/base/gstbaseparse.c + +2012-04-02 15:13:24 +0200 Edward Hervey + + * libs/gst/base/gstbaseparse.c: + baseparse: always attempt to push if not-linked + This avoids ending up with plenty of pending data (since we'll only + try to parse/push one frame from the incoming buffer). + Fixes increasing memory consumption when parsers aren't linked + +2012-04-01 03:30:51 +0400 Руслан Ижбулатов + + * plugins/elements/gstfdsrc.c: + Timeout is not used on W32 + Fixes #673267 + +2012-04-02 11:09:50 +0200 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + trans: add transform_ip_on_passthrough + Add an option to control if transform_ip is called in passthrough mode or not. + for elements that don't want to look at the data in passthrough mode, this can + avoid some extra processing, mostly in subclasses. + +2012-03-22 08:36:02 +0100 Stefan Sauer + + * tools/gst-launch.c: + gst-launch: add -c, --toc to print the toc + Print the nested chapter and edition structure of the chapters message. + +2012-03-28 23:15:41 +0400 Alexander Saprykin + + * docs/design/Makefile.am: + * docs/design/part-toc.txt: + docs: add overview of GstToc usage + +2012-03-14 21:14:23 +0400 Alexander Saprykin + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + docs: Add GstToc and GstTocSetter sections with related functions + +2012-03-14 21:13:22 +0400 Alexander Saprykin + + * tests/check/Makefile.am: + * tests/check/gst/gsttocsetter.c: + gstchecks: Add unit test for the GstTocSetter + +2012-03-14 21:12:22 +0400 Alexander Saprykin + + * tests/check/Makefile.am: + * tests/check/gst/gsttoc.c: + gstchecks: Add unit test for the GstToc + +2012-03-14 20:45:35 +0400 Alexander Saprykin + + * gst/Makefile.am: + * gst/gst.h: + * gst/gsttocsetter.c: + * gst/gsttocsetter.h: + Add new GstTocSetter interface + +2012-03-14 20:42:56 +0400 Alexander Saprykin + + * gst/gstquery.c: + * gst/gstquery.h: + Add new TOC query + +2012-03-14 20:41:48 +0400 Alexander Saprykin + + * gst/gstmessage.c: + * gst/gstmessage.h: + Add new TOC message + +2012-03-14 20:40:32 +0400 Alexander Saprykin + + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstquark.c: + * gst/gstquark.h: + Add new TOC and TOC select events + +2012-03-14 20:01:51 +0400 Alexander Saprykin + + * gst/Makefile.am: + * gst/gst.c: + * gst/gst.h: + * gst/gst_private.h: + * gst/gsttoc.c: + * gst/gsttoc.h: + Add generic table of contents (TOC) support + +2012-04-01 12:01:34 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: reuse more code + +2012-04-01 11:42:52 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * tests/check/gst/gstbuffer.c: + * win32/common/libgstreamer.def: + buffer: make function to find memory in a buffer + Make a function to find the memory blocks for a region in a buffer. + +2012-03-31 21:26:22 +0200 Stefan Sauer + + * gst/gstchildproxy.c: + childproxy: fix more missing GST_OBJECT -> G_OBJECT use + +2012-03-31 18:34:23 +0200 Wim Taymans + + * libs/gst/base/gstadapter.c: + adapter: use buffer_wrap + +2012-03-31 17:10:35 +0200 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * win32/common/libgstreamer.def: + buffer: add peek_memory method + Add a peerk_memory method that simply fetches the memory at an offset without + refcounting or merging. + +2012-03-31 12:00:56 +0200 Wim Taymans + + * gst/parse/grammar.y: + grammar.y: fix childproxy code + It takes GObject and not GstObject now + +2012-03-30 22:46:02 +0200 Stefan Sauer + + * gst/gstbin.c: + * gst/gstchildproxy.c: + * gst/gstchildproxy.h: + childproxy: include the child name in the signal + +2012-03-30 22:44:31 +0200 Stefan Sauer + + * gst/parse/grammar.y: + parser: update for childproxy api changes + +2012-03-30 22:36:35 +0200 Stefan Sauer + + * gst/gstchildproxy.c: + childproxy: fix signal parameter types + +2012-03-30 22:17:09 +0200 Stefan Sauer + + * gst/gstbin.c: + * gst/gstchildproxy.c: + * gst/gstchildproxy.h: + * tests/check/gst/gstchildproxy.c: + childproxy: use GObject instead of GstObject + This makes it prossible to be used more widely. Fix implementations for the API + change. + +2012-03-30 22:01:55 +0200 Stefan Sauer + + * gst/gstchildproxy.c: + * gst/gstchildproxy.h: + childproxy: make get_child_by_name virtual + Allows implementations to use custom name->object mappings. + +2012-03-30 22:01:26 +0200 Stefan Sauer + + * gst/gstchildproxy.c: + childproxy: fix indentation + +2012-03-30 18:04:51 +0200 Wim Taymans + + * docs/design/part-buffer.txt: + * docs/gst/gstreamer-sections.txt: + * docs/random/porting-to-0.11.txt: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstbytewriter.c: + * plugins/elements/gstfakesrc.c: + * tests/check/gst/gstbuffer.c: + * tests/check/libs/bitreader.c: + * tests/check/libs/bytereader.c: + * tests/check/libs/typefindhelper.c: + * win32/common/libgstreamer.def: + buffer: improve the buffer memory methods + gst_buffer_take_memory -> gst_buffer_insert_memory because insert is what the + method does. + Make all methods deal with ranges so that we can replace, merge, remove and map + a certain subset of the memory in a buffer. With the new methods we can make + some code nicer and reuse more code. Being able to deal with a subset of the + buffer memory allows us to optimize more cases later (most notably RTP headers + and payload that could be in different memory objects). + Make some more convenient macros that call the more generic range methods. + +2012-03-30 16:53:09 +0200 Mark Nauwelaerts + + * plugins/elements/gsttypefindelement.c: + typefindelement: plug caps leaks + +2012-03-30 16:53:05 +0200 Mark Nauwelaerts + + * libs/gst/base/gsttypefindhelper.c: + typefindhelper: also unmap collected mapped buffers + +2012-03-30 16:53:00 +0200 Mark Nauwelaerts + + * libs/gst/base/gstbasetransform.c: + basetransform: plug caps leak + +2012-03-30 11:58:20 +0200 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbaseparse.h: + baseparse: Rename ::event() to ::sink_event() for consistency + +2012-03-30 11:49:16 +0200 Edward Hervey + + * libs/gst/base/gstbasesrc.h: + basesink: lower GST_BASE_SRC_FLAG_LAST + It wouldn't leave that much room for subclass users + +2012-03-30 08:55:33 +0200 Edward Hervey + + * win32/common/libgstbase.def: + win32: Update defs file + +2012-03-29 18:03:35 +0200 Sebastian Dröge + + * libs/gst/base/gstbytewriter.c: + bytewriter: Actually commit the .c file changes too + +2012-03-29 17:59:28 +0200 Sebastian Dröge + + * libs/gst/base/gstbytewriter.h: + bytewriter: Add unchecked/inline variant of gst_byte_writer_put_buffer() + +2012-03-29 17:53:47 +0200 Edward Hervey + + * gst/gstquery.c: + gstquery: Fix annotation + +2012-03-29 17:44:02 +0200 Edward Hervey + + * plugins/elements/gstqueue.c: + queue: Flush the internal queue when we see GST_FLOW_FLUSHING + Ensures that we don't end up with stale contents (like GstQuery) in + the internal GQueue after any blocking upstream thread returns. + +2012-03-29 17:43:17 +0200 Edward Hervey + + * plugins/elements/gstqueue.c: + queue: Don't unref GstQuery travelling through the queue + Unlike events and buffers, the reference is not given to us + +2012-03-29 17:08:49 +0200 Mark Nauwelaerts + + * gst/gstquery.c: + query: parsing allocation query need not provide reffed caps + ... in line with other query parsing function. + +2012-03-29 15:45:00 +0200 Fabrizio (Misto) Milo + + * gst/gstcaps.c: + caps: spelling fixes + +2012-03-29 15:28:44 +0200 Edward Hervey + + * gst/gstelement.h: + gstelement: lower GST_ELEMENT_FLAG_LAST + It wouldn't leave that much room for subclass users + +2012-03-29 15:18:33 +0200 Edward Hervey + + * gst/gstbuffer.c: + gstbuffer: Fix unitialized variable + gcc 4.5 complains otherwise :( + +2012-03-29 14:54:53 +0200 Sebastian Dröge + + Merge remote-tracking branch 'origin/0.10' + Conflicts: + plugins/elements/gstmultiqueue.c + +2012-03-29 14:45:41 +0200 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: Wake up all not-linked streams when a stream switches from linked to not-linked + We reset all the waiting streams, let them push another buffer to + see if they're now active again. This allows faster switching + between streams and prevents deadlocks if downstream does any + waiting too. + Also improve locking a bit, srcresult must be protected by the + multiqueue lock too because it's used/set from random threads. + +2012-03-29 14:32:24 +0200 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: Recompute high-time too when flushing, not only high-id + +2012-03-29 13:39:40 +0200 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + inputselector: Only wait until the active pad's running time is reached if the active pad already saw data + Otherwise we might block forever because upstream (e.g. multiqueue) is waiting + for the previously active stream to return forever (which is waiting here + in inputselector) before pushing something on the newly selected stream. + +2012-03-29 13:34:50 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.h: + * gst/gstbufferlist.c: + * gst/gstclock.c: + * gst/gstelementfactory.c: + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstiterator.c: + * gst/gstmemory.c: + * gst/gstmemory.h: + * gst/gstmessage.c: + * gst/gstmeta.c: + * gst/gstmeta.h: + * gst/gstminiobject.c: + * gst/gstminiobject.h: + * gst/gstobject.c: + * gst/gstpad.c: + * gst/gstpad.h: + * gst/gstpadtemplate.c: + * gst/gstpipeline.c: + * gst/gstquery.c: + * gst/gstquery.h: + * gst/gstregistry.c: + * gst/gstsample.c: + * gst/gstsegment.c: + * gst/gststructure.c: + * gst/gsttask.c: + * gst/gsttrace.c: + * gst/gsturi.c: + * gst/gstvalue.c: + docs: update more documentation + +2012-03-28 18:12:23 +0200 Wim Taymans + + * docs/pwg/advanced-events.xml: + * gst/gstbin.c: + * gst/gstbuffer.c: + * gst/gstbufferlist.c: + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + * gst/gstbus.c: + * gst/gstcaps.c: + * gst/gstclock.c: + * gst/gstelement.c: + * gst/gstevent.c: + * gst/gstminiobject.c: + * gst/gstpad.h: + * libs/gst/base/gstbasesrc.h: + review some docs + +2012-03-28 16:44:34 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: simplify and refactor _span and _merge + Unify the _span and _merge code paths and simplify now that we only use this + internally. + +2012-03-28 15:16:01 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: we always call _span with the buffer size + +2012-03-28 15:12:05 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: move some code around + +2012-03-28 15:08:44 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: we call _span always with 0 offset + +2012-03-28 13:08:59 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: remove always FALSE function argument + +2012-03-28 16:39:54 +0200 Mark Nauwelaerts + + * gst/gstbuffer.c: + buffer: delay buffer unref until buffer no longer needed + +2012-03-28 12:44:44 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * docs/random/porting-to-0.11.txt: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstutils.c: + * gst/gstutils.h: + * libs/gst/base/gstadapter.c: + * tests/check/gst/gstbuffer.c: + * win32/common/libgstreamer.def: + buffer: unify buffer merge methods + Add gst_buffer_append() which appends the memory blocks from one buffer to + another. Remove the old inefficient _merge() and _join() methods which forced a + premature memcpy in most cases. + Remove the _is_span() and _span() methods they are not needed anymore now that + we can _append(). Merging and spanning will be delayed until mapping or maybe + not at all when the element can deal with the different memory blocks. + +2012-03-27 15:24:49 -0400 Olivier Crête + + * gst/gstghostpad.c: + gstpad: Fix typo in docstring + +2012-03-27 15:24:49 -0400 Olivier Crête + + * gst/gstghostpad.c: + gstpad: Fix typo in docstring + +2012-03-27 15:16:55 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: re-enable _span offset calculations + when we _span two complete buffers, we can copy offsets and timestamps. + +2012-03-27 15:00:38 +0200 Wim Taymans + + * gst/gsttrace.c: + trace: add refcount to trace debug + +2012-03-27 14:59:06 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: add more _is_writable checks + Add some checks to assert on writability for functions that modify metadata. + +2012-03-27 12:40:36 +0200 Wim Taymans + + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + bufferpool: remove const from get/set_param + Remove the const from the GstCaps in get/set_param. set_param modifies + the refcount of the caps. + Don't increment the refcount of the caps result of get_param like we + do with other objects. + Update some annotiations. + +2012-03-27 12:39:53 +0200 Wim Taymans + + * gst/gstbufferpool.c: + bufferpool: fix annotation for _release + _release takes ownership of the buffer + +2012-03-27 12:31:18 +0200 Sebastian Dröge + + * gst/gstbus.c: + * gst/gstbus.h: + bus: Change the timeout argument type of gst_bus_poll() from GstClockTimeDiff to GstClockTime + This is more consistent with the other GstBus methods that have a timeout. + +2012-03-26 19:13:21 +0200 Wim Taymans + + * gst/gstcaps.c: + caps: remove old code + Remove attempt to delay _make_writable + +2012-03-26 18:07:35 +0200 Mark Nauwelaerts + + * gst/gstcaps.c: + caps: ensure writable caps prior to modification + +2012-03-26 17:38:50 +0200 Wim Taymans + + * gst/gstbufferpool.c: + bufferpool: check min/max_buffers + +2012-03-26 17:35:18 +0200 Wim Taymans + + * gst/gstquery.c: + query:fix copy-and-paste problem + +2012-03-26 11:54:59 +0200 Wim Taymans + + Replace master with 0.11 + +2012-03-23 18:51:52 +0100 Mark Nauwelaerts + + * gst/gstutils.c: + utils: add and improve debug messages + ... so they end up in a more expected debug category rather than oblivion. + +2012-03-22 15:54:55 +0100 Wim Taymans + + * configure.ac: + back to devel + +2012-03-22 15:49:36 +0100 Wim Taymans + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/gstreamer-plugins.args: + * docs/plugins/inspect-build.stamp: + * docs/plugins/inspect.stamp: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * 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/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: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstenumtypes.h: + * win32/common/gstversion.h: + Release 0.11.3 + +2012-03-22 15:22:57 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbasetransform.c: + basetransform: remove automatic and undocumented setting of always_in_place + ... which controls how to (forcibly) deal with (non-)writable data and + is not necessarily related to identical caps. + In particular, it is also not so helpful anymore with a more advanced + GstVideoFilter subclass which always has a transform_ip method currently, + even though its subclass may not have a corresponding _ip method. + +2012-03-22 10:45:06 +0100 Wim Taymans + + Merge branch 'master' into 0.11 + Conflicts: + configure.ac + +2012-03-22 08:35:25 +0100 Stefan Sauer + + * tools/gst-launch.c: + gst-launch: don't shadow global variable + +2012-03-21 12:10:21 +0100 Wim Taymans + + * libs/gst/Makefile.am: + dist net directory only once + +2012-03-21 09:00:45 +0100 Sebastian Dröge + + * gst/gstquery.c: + query: Only allow fixed caps in the accept-caps query + +2012-03-20 17:08:28 +0100 Wim Taymans + + * libs/gst/base/gstbaseparse.c: + baseparse: do queries more directly + Just call our internal query function instead of going through the pad and the + query handler etc. + +2012-03-20 17:08:00 +0100 Wim Taymans + + * libs/gst/base/gstadapter.c: + adapter: add some performance debug + +2012-03-20 13:14:55 +0100 Wim Taymans + + * gst/gstpad.c: + * libs/gst/base/gstbasesrc.c: + * plugins/elements/gstqueue2.c: + pad: improve docs of get/pull_range + Improve the docs of the get/pull_range functions, define the lifetime of the + buffer in case of errors and short reads. + Make sure the code does what the docs say. + +2012-03-20 10:20:29 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * tests/check/gst/gstevent.c: + buffer: improve gst_buffer_new_wrapped_full() + Make it possible to wrap all kinds of memory by exposing all properties to + gst_buffer_new_wrapped_full(). This makes it possible to also create writable + memory without a free function or memory with extra padding. + +2012-03-19 11:45:27 +0100 Wim Taymans + + * plugins/elements/gstmultiqueue.c: + multiqueue: handle serialized queries + +2012-03-16 22:51:14 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + basetransform: make more stuff private + +2012-03-16 22:25:38 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: small cleanups + +2012-03-16 21:37:10 +0100 Wim Taymans + + * gst/gstpad.c: + * gst/gstpad.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * plugins/elements/gsttypefindelement.c: + * tests/check/elements/filesrc.c: + pad: change the semantics of get/pull_range a little + Make it so that one can specify a buffer for get/pull_range where the downstream + element should write into. When passing NULL, upstream should allocate a buffer, + like in 0.10. + We also need to change the probes a little because before the pull probe, there + could already be a buffer passed. This then allows us to use the same PROBE + macro for before and after pulling. + While we're at the probes, make the query probe more powerful by handling the + GST_PAD_PROBE_DROP return value. Returning _DROP from a query probe will now + return TRUE upstream and will not forward the probe to the peer or handler. + Also handle _DROP for get/pull_range properly by not dispatching to the + peer/handler or by generating EOS when the probe returns DROP and no buffer. + Make filesrc handle the non-NULL buffer passed in the get_range function and + skip the allocation in that case, writing directly into the downstream provided + buffer. + Update tests because now we need to make sure to not pass a random value in the + buffer pointer to get/pull_range + +2012-03-16 21:36:33 +0100 Wim Taymans + + * plugins/elements/gsttypefindelement.c: + typefind: proxy allocation query + +2012-03-16 18:39:08 +0100 Wim Taymans + + * gst/gstevent.c: + event: fix docs a little, alloc_buffer is gone + +2012-03-15 22:09:02 +0100 Wim Taymans + + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + * gst/gstmemory.h: + * gst/gstquark.c: + * gst/gstquark.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * win32/common/libgstreamer.def: + bufferpool: split bufferpool configuration + Make separate methods to control the bufferpool and the allocator used by the + bufferpool. + Make it possible to change the allocator of a pool. + +2012-03-15 20:23:59 +0100 Wim Taymans + + * gst/gstquery.c: + * gst/gstquery.h: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * win32/common/libgstreamer.def: + query: rework the ALLOCATION query + Separate the bufferpool and allocator hints in the allocation query, some + of the values don't always make sense together. + Keep the bufferpool and its configuration together. + Keep the allocator and its parameters together. + Allow for multiple bufferpool configurations in the query. + +2012-03-15 16:50:31 +0100 Wim Taymans + + * gst/gstpad.c: + pad: comment and debug improvement + +2012-03-15 16:49:33 +0100 Wim Taymans + + * gst/gstutils.c: + utils: improve debug + also fix a potential memory leak + +2012-03-15 14:28:22 +0100 Wim Taymans + + * win32/common/libgstreamer.def: + defs: update + +2012-03-15 14:01:44 +0100 Wim Taymans + + * gst/gst.c: + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + GstBufferPoolParams -> GstBufferPoolAcquireParams + Because those flags are not from the bufferpool but for the acquire function. + +2012-03-15 13:28:28 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstbufferpool.c: + * gst/gstcompat.h: + * gst/gstmemory.c: + * gst/gstmemory.h: + * gst/gstvalue.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstfdsrc.c: + * plugins/elements/gstqueue2.c: + * tests/check/gst/gstbuffer.c: + * tests/check/gst/gstmemory.c: + * win32/common/libgstreamer.def: + memory: group allocation parameters in a struct + Group the extra allocation parameters in a GstAllocationParams structure to make + it easier to deal with them and so that we can extend them later if needed. + Make gst_buffer_new_allocate() take the GstAllocationParams for added + functionality. + Add boxed type for GstAllocationParams. + +2012-03-15 00:25:50 +0100 Wim Taymans + + * plugins/elements/gstfilesrc.c: + filesrc: only update buffer size on short read + +2012-03-15 00:24:40 +0100 Wim Taymans + + * gst/gstquery.c: + query: fix copy function + Copy the structure too. + +2012-03-15 00:23:57 +0100 Wim Taymans + + * gst/gstmemory.c: + memory: fix maxsize after align + when we align the data pointer, make sure to update the maxsize. + Add some more debug + +2012-03-14 22:58:34 +0100 Wim Taymans + + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + queue: remove useless PROXY_ALLOCATION flag + +2012-03-14 21:32:22 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbufferpool.c: + * gst/gstmemory.c: + * gst/gstmemory.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * tests/check/gst/gstbuffer.c: + * tests/check/gst/gstmemory.c: + memory: Add 0 padding + Change gst_allocator_alloc() so that we can also spicify flags and padding. + Add 2 new flags to mark the memory 0 prefixed/padded. This allows us to + remove some resizes in the base classes. + When allocating memory, memset prefix and padding with 0 when the flags tell + us to. + On resize, clear the zero padding flags if we can't guarantee the memory is + still 0 filled. + Update tests. + +2012-03-14 19:37:22 +0100 Wim Taymans + + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gstquery.c: + * gst/gstquery.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + query: also include padding in ALLOCATION query + Negotiating padding is needed on second thought so include it in the + ALLOCATION query. + Make the bufferpool take padding into account when allocating. + Make basesrc take padding into account. + Use padding and prefix when allocating in basetransform. + +2012-03-14 18:45:55 +0100 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: take prefix into account when allocating + Take into account the prefix that we received from the allocation query and use + it to allocate and resize a larger buffer. + +2012-03-14 17:16:36 +0100 Mark Nauwelaerts + + * gst/gstbufferpool.c: + bufferpool: free owned discarded pool config + +2012-03-14 16:27:31 +0100 Wim Taymans + + * gst/gstpad.c: + * libs/gst/base/gstbasesink.c: + pad: implement DRAIN handling + When we forward the DRAIN query and there is nothing to forward it to, assume we + are drained. + When a basesink receives a drain query, reply with TRUE. + +2012-03-14 16:14:12 +0100 Wim Taymans + + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gstquery.c: + * gst/gstquery.h: + * win32/common/libgstreamer.def: + query: add new drain query + With the new serialized downstream queries we can implement a drain query that + makes an element waits until a downstream element replies to the query. + +2012-03-14 16:01:15 +0100 Wim Taymans + + * gst/gstpad.c: + pad: make serialized queries push sticky events first + Before we can proceed with a serialized query, we need to be sure that all + sticky events were pushed. + +2012-03-14 15:42:47 +0100 Wim Taymans + + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstqueue2.c: + queues: warn when receiving a serialized event + .. until we implement it. + +2012-03-14 15:42:33 +0100 Wim Taymans + + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue.h: + queue: add support for serialized queries + +2012-03-14 15:29:12 +0100 Wim Taymans + + * gst/gstpad.c: + pad: take stream lock on serialized queries + +2012-03-14 15:16:56 +0100 Wim Taymans + + * gst/gstpad.c: + pad: enforce correct query direction + +2012-03-14 14:51:16 +0100 Wim Taymans + + * gst/gst.c: + * gst/gstquery.c: + * gst/gstquery.h: + * win32/common/libgstreamer.def: + query: register queries like events + Also register queries with a QueryType that allows us to check if the event is + sent in the right direction. Add a serialized query type because we will need + this for the allocation query. + Remove the QueryTypeDefinition stuff, it is not used anymore and we now use + custom queries and separate API for them. + Update defs. + +2012-03-14 12:42:00 +0100 Wim Taymans + + * libs/gst/base/gstadapter.c: + adapter: add more debug + +2012-03-13 15:40:37 +0100 Wim Taymans + + * gst/gstbin.c: + bin: remove old compat mode + +2012-03-13 15:40:23 +0100 Wim Taymans + + * gst/gstcaps.c: + caps: small docs update + +2012-03-13 10:04:36 +0100 Wim Taymans + + * docs/random/porting-to-0.11.txt: + * gst/gstcaps.c: + * gst/gstcaps.h: + caps: remove gst_caps_union() + Remove gst_caps_union(), use gst_caps_merge(). This function was not used + anymore and it is unclear what the difference is with _merge(). + +2012-03-12 23:05:01 +0000 Tim-Philipp Müller + + * configure.ac: + configure: bump AS_LIBTOOL version + API was added to collectpads2 + +2012-03-12 23:02:48 +0000 Tim-Philipp Müller + + * configure.ac: + configure: backport AS_LIBTOOL version from 0.10.36 release + Might fix issues with missing symbols for people who install GStreamer + from source and at some point jumped back and forth between git master + and the 0.10.36 release (or 0.10. branch). + +2012-03-12 23:08:00 +0100 Stefan Sauer + + * libs/gst/base/gstcollectpads2.c: + docs: fix function name and typo + +2012-03-12 19:52:03 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: get template caps only once + Get the template caps of the pads only once, avoids unecessary ref + and unrefs. + +2012-03-12 18:34:30 +0100 Wim Taymans + + * gst/gstcaps.c: + caps: delay _make_writable() until needed in _normalize() + Delay _make_writable() until we actually found a list and need to update the + caps. + +2012-03-12 18:25:38 +0100 Wim Taymans + + * gst/gstcaps.c: + caps: shortcut simplify earlier + A simple caps is already simplified, no need to check for fixedness. + +2012-03-12 18:22:05 +0100 Wim Taymans + + * gst/gstcaps.c: + caps: small cleanup, remove const + +2012-03-12 18:02:27 +0100 Wim Taymans + + * gst/gstcaps.c: + caps: small cleanups + +2012-03-12 16:40:38 +0100 Wim Taymans + + * gst/gstcaps.c: + caps: small doc improvement + +2012-03-12 16:18:45 +0200 Sreerenj Balachandran + + * configure.ac: + configure.ac: bump required GLib to 2.31.14 + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=671911 + +2012-03-12 13:50:45 +0000 Tim-Philipp Müller + + * docs/random/porting-to-0.11.txt: + docs: update porting-to-0.11.txt a little + +2012-03-12 12:35:07 +0100 Wim Taymans + + * gst/gstcaps.c: + caps: fix some 0.11 FIXMEs + +2012-03-12 12:21:34 +0100 Wim Taymans + + * gst/gstcaps.c: + * tests/check/gst/gstcaps.c: + caps: make _normalize take ownership of input + Make gst_caps_normalize() take ownership of the input so that it can more + intelligently decide when to copy or not. + +2012-03-12 11:38:37 +0100 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstcaps.c: + * gst/gstcaps.h: + * gst/gstmeta.c: + * gst/gstmeta.h: + * gst/gstquery.c: + * gst/gstregistrychunks.c: + * plugins/elements/gstcapsfilter.c: + * tests/check/gst/gstcaps.c: + * win32/common/libgstreamer.def: + caps: _do_simplify() -> _simplify() + Rename _do_simplify() to _simplify(). The name was introduced as a replacement + method for a deprecated method but we can now rename it again. + Fix some docs. + +2012-03-12 10:42:23 +0100 Wim Taymans + + * gst/gstcaps.c: + * gst/gstcaps.h: + * gst/gstregistrychunks.c: + * plugins/elements/gstcapsfilter.c: + * tests/check/gst/gstcaps.c: + caps: improve _do_simplify + Make gst_caps_do_simplify() take ownership of the input caps and produce a + simplified output caps. This removes the requirement of having writable input + caps and the method can make the caps writable only when needed. + +2012-03-12 10:41:28 +0100 Wim Taymans + + * tests/check/gst/gstpad.c: + tests: fix unit test + with the new caps API, there is more sharing and less copying going on so the + unit test refcounts are different. + +2012-03-12 09:03:42 +0000 Christian Fredrik Kalager Schaller + + * docs/faq/general.xml: + update license link to point to 2.1 license, instead of just generic lgpl file, which is always the latest and thus not correct for gstreamer + +2012-03-11 18:57:44 +0100 Wim Taymans + + * docs/manual/advanced-autoplugging.xml: + * gst/gstcaps.c: + * gst/gstcaps.h: + * gst/gstpadtemplate.c: + * gst/gstutils.c: + * gst/gstutils.h: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasesrc.h: + * libs/gst/base/gstbasetransform.c: + * tests/check/gst/gstcaps.c: + caps: avoid using in-place oprations + Rework some caps operations so they don't rely on writable caps but instead take + ownership of the input caps and do _make_writable() only when needed. + Remove some const from caps functions, it does not make much sense for + refcounted objects and does not allow us to return a refcount to the const input + caps. + Rework the base classes fixate vmethods to not operate on the caps in-place. + All this saves us around 30% of caps and structure copy and new operations. + +2012-03-11 17:22:01 +0100 Wim Taymans + + * gst/gststructure.c: + structure: add allocation debug + +2012-03-10 09:25:43 +0100 Wim Taymans + + * gst/gsttypefind.c: + * gst/gsttypefind.h: + * libs/gst/base/gsttypefindhelper.c: + * plugins/elements/gsttypefindelement.c: + * plugins/elements/gsttypefindelement.h: + typefind: remove const from refcounted GstCaps + Having const on refcounted objects require us to make copies instead of simply + taking a ref, don't do that. + +2012-03-10 09:15:43 +0100 Wim Taymans + + * gst/gstregistrychunks.c: + registry: avoid copy when caps are fixed + Avoid doing a useless copy when the caps are fixed and simplify will not do + anything. + +2012-03-09 16:14:02 +0100 Wim Taymans + + * gst/gstbuffer.c: + buffer: small optimizations + shortcut heavy work when buffer_resize does nothing. + Avoid an extra _ref when mapping a buffer. + Add some G_LIKELY. + +2012-03-09 15:03:11 +0100 Wim Taymans + + * docs/design/part-bufferpool.txt: + bufferpool: fix array types + +2012-03-09 14:30:01 +0100 Wim Taymans + + * docs/design/part-buffer.txt: + * docs/design/part-bufferpool.txt: + * docs/design/part-memory.txt: + * docs/design/part-meta.txt: + * docs/design/part-overview.txt: + * docs/design/part-scheduling.txt: + docs: update docs + +2012-03-09 11:53:54 +0100 Wim Taymans + + * gst/gstpad.c: + pad: also push sticky events on new event + Make a helper function check_sticky to check and push pending sticky events. + Move the handling of the result of pushing the sticky event inside the + push_event function, we need to mark the event as received when it was pushed + correctly. + Move the sticky events code outside of gst_pad_push_event_unchecked and + make it purely handle sending the event to the peer. + when pushing a sticky event, first store it on the pad. Then check and push any + pending sticky events when we get a serialized or sticky event on a srcpad. This + fixes the issue where sticky events are not pushed when an event is pushed. + +2012-03-09 11:52:29 +0100 Wim Taymans + + * gst/gstpad.c: + pad: store the received result from _foreach + If the foreach function changes the received state of the sticky event, make + sure we remember that. + +2012-03-09 11:52:11 +0100 Wim Taymans + + * gst/gstpad.c: + pad: add comment + +2012-03-09 11:49:08 +0100 Wim Taymans + + * tests/check/gst/gstpad.c: + test: add test to check sticky events order + Sticky events pushed on an unlinked pad should be stored on the pad. When the + pad is then linked and an event is pushed, the event should be merged with the + already existing sticky events and then the sticky events should be pushed in + the order that they were originally pushed. + +2012-03-09 11:48:40 +0100 Wim Taymans + + * tests/check/gst/gstutils.c: + test: fix typo in comment + +2012-03-08 20:08:20 +0000 Tim-Philipp Müller + + * tests/check/pipelines/seek.c: + tests: port pipeline/seek test to 0.11 + Doesn't fail in 0.11 of course, at least not on my machine. + +2012-03-08 19:55:30 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + Conflicts: + common + gst/gstpad.h + gst/gsttask.c + libs/gst/base/gstcollectpads2.h + +2012-03-08 16:30:49 +0000 Tim-Philipp Müller + + * gst/gstpad.c: + * gst/gsttask.c: + pad, task: improve debug logging + +2012-03-08 16:26:44 +0000 Tim-Philipp Müller + + * gst/gstpad.h: + * libs/gst/base/gstcollectpads2.h: + pads, collectpads2: get rid of superfluous brackets around static rec mutex calls + Makes it possible to define those calls to something for tracing. + +2012-03-08 16:25:20 +0000 Tim-Philipp Müller + + * common: + common: update common module + For make foo/bar.check-norepeat target. + +2012-03-08 15:23:56 +0000 Tim-Philipp Müller + + * tests/check/Makefile.am: + * tests/check/pipelines/.gitignore: + * tests/check/pipelines/seek.c: + tests: add minimal basesrc ! sink seeking unit test + Should reproduce 'GStreamer-WARNING **: wrong STREAM_LOCK count 0' + warnings (with make pipelines/seek.torture or pipelines/seek.forever + anyway, since it appears to be racy). + https://bugzilla.gnome.org/show_bug.cgi?id=670846 + +2011-12-26 00:18:29 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstvalue.c: + * gst/gstvalue.h: + * win32/common/libgstreamer.def: + value: remove gst_value_register_{subtract,union,intersect}_func() API + There isn't really any need to provide public API for that. It's not + used anywhere in practice, and we aim to provide an API that works + for GstCaps, not some kind of generic set manipulation API based on + GValue. Making this private also makes it easier to optimise this + later. We can always put it back if someone actually needs it. + +2012-03-08 10:47:39 +0100 Wim Taymans + + * plugins/elements/gsttee.c: + tee: fix refcount error + +2012-03-08 09:45:06 +0100 Wim Taymans + + * gst/gstpad.c: + * tests/check/gst/gstpad.c: + pad: return ANY for a pad without template + Because gst_pad_get_pad_template_caps() returns ANY when there is no template, + the query caps function should also return ANY when there is no template (and no + pad current caps) instead of EMPTY. + +2012-03-08 09:44:21 +0100 Wim Taymans + + * gst/gstpad.c: + pad: small cleanup + +2012-03-07 15:34:36 +0100 Wim Taymans + + * gst/gstmemory.c: + memory: add comment + +2012-03-08 10:32:02 +0100 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Fix merge mistake + +2012-03-08 10:19:52 +0100 Sebastian Dröge + + Merge branch 'master' into 0.11 + Conflicts: + libs/gst/base/gstbaseparse.c + libs/gst/base/gstbasetransform.c + plugins/elements/gsttee.c + +2012-03-07 11:23:56 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.h: + baseparse: arrange for properly disjoint frame flags + +2012-03-06 15:17:05 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: delay pool activation + Delay the activation of the bufferpool until we actually need a buffer from the + pool. + +2012-03-06 12:28:02 +0100 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Fix 'self-comparison always evaluates to true' + This was really a bug. + +2012-03-06 12:24:53 +0100 Sebastian Dröge + + * plugins/elements/gsttee.c: + tee: Fix 'use of logical '&&' with constant operand' compiler warning + This is actually a real bug. + +2012-03-06 12:23:15 +0100 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + basetransform: Fix 'equality comparison with extraneous parentheses' compiler warning + +2012-03-06 12:16:19 +0100 Sebastian Dröge + + * gst/gst.c: + gst: Fix 'comparison of unsigned enum expression >= 0 is always true' compiler warning + +2012-03-05 15:23:46 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: don't propose_allocation before negotiation + Answer the allocation query with FALSE when we are not negotiated yet because at + that point we have no idea if we need to proxy the allocation query or not. + +2012-03-05 14:41:12 +0100 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Fix handling of multiple newsegment events + Previously only the last would be pushed, which would cause + invalid running times downstream. This also fixes the handling + of update newsegment events. + +2012-03-05 14:25:57 +0100 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Also flush the close_segment + Pushing this after flushing will confuse downstream. + +2012-03-05 14:23:17 +0100 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Remove obsolete code and move gap handling to the correct place + The segment start adjustment code in pull mode should never trigger + anymore because the bisection code earlier would have already made + sure that we're at the desired position. + Also move the gap handling some lines below after sending the currently + configured segments. Otherwise we might fill gaps in a segment that is + not configured downstream yet. + +2012-03-05 13:12:18 +0100 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Clear some more state when receiving FLUSH_STOP + Like pending serialized events and the currently cached buffer. + +2012-03-05 13:00:38 +0100 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Only queue serialized events for sending them later + +2012-03-05 00:34:36 +0000 Tim-Philipp Müller + + * libs/gst/check/Makefile.am: + libgstcheck: export gst_consistency_checker_add_pad() + Fix build of the adder unit test in -base again. + +2012-03-02 17:32:28 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + basetransform: refine metadata filter and transform + Add a vmethod to filter metadata that should be passed upstream. By default, + don't pass anything. + Add a vmethod to transform metadata from the input buffer to the output buffer. + By default, nothing is transformed or copied. + +2012-03-02 17:04:05 +0100 Wim Taymans + + * gst/gst.h: + gst: include gstmeta.h + +2012-03-02 17:03:49 +0100 Wim Taymans + + * gst/gstbufferpool.c: + bufferpool: add more debug info + +2012-03-02 13:02:46 +0100 Wim Taymans + + * win32/common/libgstreamer.def: + defs: update + +2012-03-02 13:02:37 +0100 Wim Taymans + + * tests/check/gst/gstmeta.c: + tests: improve metadata test + +2012-03-02 12:45:23 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstmeta.h: + meta: add boolean to signal a region copy + Add a boolean to the metadata copy transform that signals if a only a + region is copied. + +2012-03-02 12:16:03 +0100 Stefan Sauer + + * libs/gst/check/gstconsistencychecker.c: + consitencychecker: don't fail on multiple flush_start events + This seems to be okay after a irc discussion. + +2012-03-02 11:57:52 +0100 Wim Taymans + + * gst/gstmeta.c: + * gst/gstmeta.h: + meta: transform docs + Use gst- prefix for metadata transform types. + +2012-03-02 11:04:21 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetrans: fix comment + +2012-03-02 11:05:48 +0100 Sebastian Dröge + + * Android.mk: + * Makefile.am: + * docs/gst/Makefile.am: + * gst/Makefile.am: + * gst/gst.h: + * gst/gstbin.c: + * gst/gstbus.c: + * gst/gstchildproxy.c: + * gst/gstelement.c: + * gst/gstmarshal.list: + * gst/gstobject.c: + * gst/gstpad.c: + * gst/gstpadtemplate.c: + * gst/gstregistry.c: + * gst/gsturi.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstindex.c: + * libs/gst/base/gstpushsrc.c: + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstidentity.c: + * plugins/elements/gsttypefindelement.c: + * win32/common/gstmarshal.c: + * win32/common/gstmarshal.h: + gst: Remove gstmarshal.[ch] completely and use the generic marshaller + Fixes bug #671130. + +2012-03-02 10:51:42 +0100 Sebastian Dröge + + * gst/Makefile.am: + gst: Don't install gstmarshal.h + The generic, FFI based marshaller should be used instead of these + and we definitely shouldn't export the marshallers in our public API. + +2012-03-01 17:39:17 +0100 Wim Taymans + + * gst/gst_private.h: + * gst/gstinfo.c: + * gst/gstmeta.c: + meta: improve debugging + Add category for metadata debug + +2012-03-01 17:38:54 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: improve debugging + +2012-03-01 17:38:27 +0100 Wim Taymans + + * gst/gstpad.c: + pad: improve debugging + +2012-03-01 15:18:04 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + basetransform: remove metadata tagged with the memory tag + Remove metadata that describes the particular memory of the buffer it is + attached to. We need to do this because in non-passthrough mode we will allocate + new memory for our output buffer. + +2012-03-01 15:17:37 +0100 Wim Taymans + + * gst/gstmeta.c: + * gst/gstmeta.h: + meta: add tag for memory metadata + +2012-03-01 14:49:38 +0100 Wim Taymans + + * gst/gstquery.c: + * gst/gstquery.h: + query: add method to remove allocation_meta + Also g_return_if_fail for out-of-bounds access instead of silently failing. + +2012-03-01 14:30:58 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + basetransform: improve propose_allocation + Improve the propose allocation vmethod by passing the downstream allocation + query to it. This way the vmethod implementation can use properties of the + downstream allocation to generate the upstream query result. If there is no + downstream quety, it means that the element is working in passthrough mode. + Implement a default decide_allocation. + +2012-03-01 11:11:43 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: clear allocation parameters in passthrough + Clear the allocation parameters when we operate in passthrough. + +2012-03-01 11:06:49 +0100 Wim Taymans + + * tests/check/elements/capsfilter.c: + * tests/check/elements/tee.c: + * tests/check/elements/valve.c: + * tests/check/gst/capslist.h: + * tests/check/gst/gstelementfactory.c: + * tests/check/gst/gstghostpad.c: + * tests/check/gst/gstpad.c: + * tests/check/gst/gststructure.c: + * tests/check/pipelines/parse-launch.c: + * tests/check/pipelines/queue-error.c: + tests: fix old caps in tests now that core warns + +2012-03-01 14:51:26 +0100 Sebastian Dröge + + * libs/gst/base/gstcollectpads2.c: + * libs/gst/check/gstconsistencychecker.c: + libs: Fix some merge mistakes + +2012-03-01 14:43:01 +0100 Sebastian Dröge + + Merge branch 'master' into 0.11 + Conflicts: + libs/gst/base/gstcollectpads2.c + libs/gst/check/gstconsistencychecker.c + +2012-02-28 12:03:46 +0100 Mark Nauwelaerts + + * gst/gstpad.c: + pad: fix some debug message typos + +2012-02-29 21:57:00 +0100 Stefan Sauer + + * libs/gst/check/gstconsistencychecker.c: + * libs/gst/check/gstconsistencychecker.h: + consitencychecker: add handling for sink-pads + Add a pad-probe for sink-pads. One can now add extra pads (belonging to the same + element) to a checker. This allows us to extend the checks. + +2012-02-29 17:20:23 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstmeta.c: + * gst/gstmeta.h: + * gst/gstquery.c: + * gst/gstquery.h: + * libs/gst/net/gstnetaddressmeta.c: + * libs/gst/net/gstnetaddressmeta.h: + * tests/check/gst/gstmeta.c: + * win32/common/libgstnet.def: + * win32/common/libgstreamer.def: + meta: split registration of API and implementation + Split out the registration of the metadata API and its implementation. Make a + GType for each metadata API. This allows us to store extra information with the + API type such as the tags. + Change the buffer API so that we can get the metadata using the API GType. + Change the query API so that we use the metadata API GType in the allocation + query instead of a string. + Update netaddress and unit tests + +2012-02-29 16:00:22 +0100 Wim Taymans + + * gst/gstminiobject.h: + minobject: small .h indent fix + +2012-02-29 12:41:44 +0000 Tim-Philipp Müller + + * gst/gststructure.c: + structure: print a g_warning() if someone tries to construct 0.10-style raw audio/video caps + +2012-02-29 08:44:04 +0100 Stefan Sauer + + * libs/gst/check/gstconsistencychecker.c: + consistencychecker: also check for duplicated flush_starts + +2012-02-28 20:36:59 +0100 Stefan Sauer + + * libs/gst/base/gstcollectpads2.c: + collectpads2: add more logging + +2012-02-28 16:17:47 +0100 Wim Taymans + + * gst/gstmeta.h: + * libs/gst/net/gstnetaddressmeta.c: + * tests/check/gst/gstmeta.c: + meta: add return vale to transform + Add a boolean return value so that we can see when a transform fails. + +2012-02-28 12:52:00 +0100 Wim Taymans + + * gst/gstmeta.c: + * gst/gstmeta.h: + * win32/common/libgstreamer.def: + meta: add method to check for a tag + +2012-02-28 12:51:27 +0100 Wim Taymans + + * tests/check/gst/gstmeta.c: + tests: fix unit test + +2012-02-28 11:34:48 +0100 Wim Taymans + + * gst/gstmeta.c: + * gst/gstmeta.h: + * libs/gst/net/gstnetaddressmeta.c: + meta: add support to tagging the metadata + Add support for adding tags to the metadata. with some standard keys, this + should make it possible to describe what the metadata refers to. We should be + able to use this information to decide if a transformation destroys the metadata + or not. + +2012-02-27 13:35:10 +0100 Edward Hervey + + * gst/gstquery.c: + * tools/gst-inspect.c: + Suppress deprecation warnings in selected files, for g_value_array_* mostly + +2012-02-27 11:46:08 +0100 Wim Taymans + + * tests/check/gst/gstbus.c: + tests: increase bus test timeout + +2012-02-21 20:43:48 +0000 Tim-Philipp Müller + + * tests/check/gst/gstdatetime.c: + tests: make datetime test more reliably when comparing two almost identical nows + Account for rounding errors in some places, and that two nows are + not always entirely identical, so allow some leeway when comparing + microseconds and seconds. Ran into this too often, esp. when the + system is under load. + +2012-02-27 09:48:06 +0100 Wim Taymans + + * gst/gst.h: + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + * gst/gstbus.c: + * gst/gstbus.h: + remove some useless includes in .h + +2012-02-27 09:02:07 +0100 Wim Taymans + + * gst/gstclock.c: + * gst/gstclock.h: + * gst/gstsystemclock.c: + * libs/gst/net/gstnetclientclock.c: + * tests/check/gst/gstsystemclock.c: + * win32/common/libgstreamer.def: + clock: make more stuff private + Expose methods to get and set the timeout because subclasses uses this. + +2012-02-26 20:45:14 +0100 Wim Taymans + + * gst/gstsystemclock.c: + * gst/gstsystemclock.h: + systemclock: make more stuff private + +2012-02-26 20:44:50 +0100 Wim Taymans + + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + bufferpool: make more stuff private + +2012-02-26 16:32:32 +0100 Wim Taymans + + * gst/gstbus.c: + * gst/gstbus.h: + bus: make more fields private + +2012-02-27 00:09:57 +0000 Tim-Philipp Müller + + * plugins/elements/gstfdsink.c: + fdsink: fix compilation after merge + +2012-02-27 00:08:39 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + Conflicts: + NEWS + RELEASE + configure.ac + docs/plugins/gstreamer-plugins.hierarchy + docs/plugins/inspect/plugin-coreelements.xml + libs/gst/base/gstcollectpads.c + libs/gst/base/gstcollectpads2.c + plugins/elements/gstfdsink.c + win32/common/config.h + win32/common/gstenumtypes.c + win32/common/gstversion.h + +2012-02-26 23:11:23 +0100 Stefan Sauer + + * libs/gst/base/gstcollectpads2.c: + collectpads2: rescue the annotation from collectpads + +2012-02-26 23:10:58 +0100 Stefan Sauer + + * libs/gst/base/gstcollectpads.c: + docs: fix a typo in comment + +2012-02-26 22:57:02 +0100 Stefan Sauer + + * libs/gst/base/gstcollectpads2.c: + collectpads2: move "MT save" tags to doc body + It is not useful to have "MT safe" tags randomly in body, returns or since paragraphs. + +2012-02-25 15:18:00 +0000 Tim-Philipp Müller + + * plugins/elements/gstfdsink.c: + fdsink: implement GstBaseSink::query instead of messing with the pad + +2012-02-25 15:08:55 +0000 Tim-Philipp Müller + + * plugins/elements/gstfdsink.c: + * plugins/elements/gstfdsink.h: + fdsink: implement SEEKING query + We may or may not support seeking. stdout to a + terminal doesn't support seeking, for example, but + ... ! fdsink > file.foo just might. + +2012-02-25 15:07:43 +0000 Tim-Philipp Müller + + * plugins/elements/gstfilesink.c: + filesink: implement SEEKING query + We may or may not do seeking, depends on the + output file/device really, it doesn't have to + be a file after all. + +2012-02-25 15:07:05 +0000 Tim-Philipp Müller + + * plugins/elements/gstfakesink.c: + fakesink: answer SEEKING query + We don't do seeking, in case anyone wants to know. + +2012-02-24 23:39:30 +0000 Tim-Philipp Müller + + * gst/gstregistrybinary.c: + registry: fix lseek() return code handling + lseek() returns the offset if successful, and this is != 0 and + does not indicate an error. And if it does actually fail, don't + return FALSE (0) as an int, but -1. None of these things are + likely to have made a difference, ever. I don't think the offset + seek can ever actually happen, the current file position and the + current offset should always be increased in lock step, unless + there was an error in which case we'd just error out. + +2012-02-24 23:19:51 +0000 Tim-Philipp Müller + + * gst/gstregistrybinary.c: + registry: don't forget to clean up registry temp file in another error case + Also clean up temp file if we get an error during write() rather + than just when doing fsync() or close(). + +2012-02-24 15:24:42 +0100 Wim Taymans + + * gst/gstatomicqueue.c: + atomicqueue: fix race + After a writer has written to its reserved write location, it can only make the + location available for reading if all of the writers with lower locations have + finished. + +2012-02-24 12:53:52 +0100 Wim Taymans + + * plugins/elements/gstdataurisrc.c: + * tests/check/elements/dataurisrc.c: + dataurisrc: fix docs and unit test + +2012-02-24 12:51:24 +0100 Wim Taymans + + * gst/gstatomicqueue.c: + atomicqueue: fix subtle race + Fix a race where the reader would see the updated the tail pointer before the + write could write the data into the queue. Fix this by having a separate reader + tail pointer that is only incremented after the writer wrote the data. + +2012-02-24 11:00:21 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + * plugins/elements/gstcapsfilter.c: + * win32/common/libgstbase.def: + basetransform: fix reconfigure methods + Rename gst_base_transform_suggest to gst_base_transform_reconfigure_sink because + that is what it does. Also remove the caps and size because that is not needed. + Rename gst_base_transform_reconfigure to gst_base_transform_reconfigure_src. + Remove some old unused code in capsfilter. + +2012-02-24 10:23:27 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstmeta.c: + * gst/gstmeta.h: + * libs/gst/net/gstnetaddressmeta.c: + * tests/check/gst/gstmeta.c: + * win32/common/libgstreamer.def: + meta: flesh out the metadata transform + Flesh out the transform method. Add a type and extra info to the transform + function so that implementation can transform the metadata. + Remove the copy function and replace with the more generic transform. + +2012-02-24 10:23:17 +0100 Wim Taymans + + * docs/design/part-meta.txt: + docs: update docs + +2012-02-23 08:48:22 -0800 David Schleef + + * tests/check/Makefile.am: + Fix gap in Makefile + +2012-02-23 08:48:10 -0800 David Schleef + + * gst/gstmemory.c: + spelling fix + +2011-12-26 16:45:20 -0800 David Schleef + + * gst/gstpoll.c: + poll: fix spelling of writable + +2012-02-23 15:32:33 +0100 Wim Taymans + + * gst/gstmemory.h: + memory: add user_data to GstMapInfo + Add extra pointers to GstMapInfo so that implementations can use these to store + extra info. + +2012-02-23 15:32:19 +0100 Wim Taymans + + * gst/gstbufferpool.h: + bufferpool: improve docs + +2012-02-23 12:09:31 +0000 Tim-Philipp Müller + + * NEWS: + * RELEASE: + Update NEWS and RELEASE as well + +2012-02-23 11:59:22 +0100 Wim Taymans + + * docs/libs/gstreamer-libs-sections.txt: + docs: remove transform lock + +2012-02-23 10:36:57 +0000 Tim-Philipp Müller + + * configure.ac: + * docs/plugins/gstreamer-plugins.hierarchy: + * docs/plugins/inspect/plugin-coreelements.xml: + * docs/plugins/inspect/plugin-coreindexers.xml: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstversion.h: + Bump version after releases + +2012-02-23 11:08:26 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + basetransform: remove transform lock + This is not needed anymore by the baseclass. subclasses should do their own + locking when needed. + +2012-02-23 10:12:44 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetrans: cleanups + Clean up the setcaps function. + The passthrough variable is protected with the object lock. + +2012-02-22 15:26:05 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + basetransform: improve propose_allocation + Always call the propose_allocation method and provide a default implementation + that passes the query on in passthrough mode so that subclasses can also call + this. Also pass if the transform is in passthrough mode so that the + implementation can adjust its algorithm. + +2012-02-22 12:24:34 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + basetrans: improve fixate_caps function + Make it possible to also implement non-inplace fixate functions. Let the fixate + function make the caps writable when needed because some fixate functions might + not need to modify the caps. + +2012-02-22 02:02:50 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstmemory.c: + * gst/gstmemory.h: + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbytewriter.c: + * plugins/elements/gstfakesrc.c: + * tests/check/gst/gstbuffer.c: + * tests/check/gst/gstmemory.c: + * tests/check/libs/bitreader.c: + * tests/check/libs/bytereader.c: + * tests/check/libs/typefindhelper.c: + memory: make _new_wrapped take user_data and notify + Make it possible to configure a GDestroyNotify and user_data for + gst_memory_new_wrapped() this allows for more flexible wrapping of foreign + memory blocks. + +2012-02-02 13:45:25 -0500 Ryan Lortie + + * autogen.sh: + build: avoid touching .po files during 'make' + A simple workaround to deal with GNU gettext automake integration + failing to deal with git. + https://bugzilla.gnome.org/show_bug.cgi?id=669207 + +2012-02-21 21:06:17 +0000 Tim-Philipp Müller + + * plugins/elements/gstinputselector.c: + input-selector: default to sync-streams=true + I think this is the expected behaviour, and we couldn't do this + in 0.10 for backwards-compatibility reasons, so change it now. + +2012-02-21 16:39:05 +0100 Wim Taymans + + * tests/check/elements/queue.c: + tests: fix queue unit test after queue changes + +2012-02-21 16:38:37 +0100 Wim Taymans + + * plugins/elements/gstqueue.c: + queue: remove some old code + +2012-02-21 16:37:11 +0100 Wim Taymans + + * gst/gstpad.c: + pad: handle NULL callbacks + When we have a matching NULL callback, also consider the 'callback' marshalled, + this way blocking probes with a NULL callback actually work. + +2012-02-21 12:52:44 +0100 Wim Taymans + + * plugins/elements/gstqueue.c: + queue: remove weird link behaviour + Remove the link functions and always start the pad task on the srcpad. If + applications need to autoplug they can put a blocking probe on the srcpad like + they would with any other element. + +2012-02-21 12:52:18 +0100 Wim Taymans + + * plugins/elements/gstfakesrc.c: + fakesrc: handle pts/dts + +2012-02-21 12:46:44 +0100 Wim Taymans + + * plugins/elements/gstfakesink.c: + fakesink: remove custom marshaller + +2012-02-21 12:43:18 +0100 Wim Taymans + + * plugins/elements/gstidentity.c: + identity: also debug dts/pts + +2012-02-21 12:13:28 +0100 Wim Taymans + + * plugins/elements/gstfakesink.c: + fakesink: debug pts and dts + +2012-02-21 12:12:21 +0100 Wim Taymans + + * plugins/elements/gstidentity.c: + identity: remove custom marshaller + +2011-11-24 18:40:40 +0100 Matej Knopp + + * tests/check/gst/gstpad.c: + Unit test for queue src caps notification + +2012-02-20 14:37:11 +0100 Wim Taymans + + * tests/check/gst/gstsegment.c: + tests: fix useless segment test + +2012-02-20 14:29:30 +0100 Wim Taymans + + * gst/gstsegment.c: + segment: don't use duration in clipping + Don't use the duration in the segment for calculating clipping values. + The duration is expressed in stream time and clipping is done on unrelated + timestamp values. + This used to be interesting for elements that used the segment structure to + implement seeking because then they would use stream-time for the segment + start/stop values and the duration could be used as a fallback when the stop + position was not set. Now that the complete segment event is passed between + elements we cannot do this anymore because some elements might store the + duration and start/stop values with different time bases in the segment. + +2012-02-20 14:22:00 +0100 Wim Taymans + + * gst/gstinfo.c: + info: debug segment duration as well + +2012-02-20 11:46:36 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: copy metadata when using a pool + also copy the metadata when we allocated a new buffer from a pool + +2012-01-26 03:02:48 -0500 Matej Knopp + + * libs/gst/net/gstnettimepacket.c: + nettimepacket: fix printf format warning in debug message + https://bugzilla.gnome.org/show_bug.cgi?id=664491 + +2012-02-18 01:04:18 +0100 Wim Taymans + + * gst/gstmemory.c: + memory: fix more docs + +2012-02-17 15:53:58 -0800 Edward Hervey + + * docs/gst/gstreamer-sections.txt: + * gst/gstevent.h: + * gst/gstmemory.h: + doc fixups + +2012-02-17 15:09:56 -0800 Edward Hervey + + * libs/gst/base/gstbasesrc.c: + basesrc: Move variable and assignment to where it's needed + +2012-02-17 15:09:06 -0800 Edward Hervey + + * libs/gst/base/gstbasetransform.c: + basetransform: Handle return value of decide_allocation vmethod + If it fails, properly propagate the error + +2012-02-17 15:08:32 -0800 Edward Hervey + + * gst/gstvalue.c: + gstvalue: Remove useless assignment + +2012-02-17 15:07:56 -0800 Edward Hervey + + * gst/gstvalue.c: + gstvalue: Gracefully handle NULL Gvalue + Avoids unreferencing NULL pointer + +2012-02-18 00:03:41 +0100 Wim Taymans + + * gst/gstpad.c: + pad: make some errors critical + When we have no chain function or when we are operating the pad in the wrong + mode, emit a critical instead of posting an error message. This is certainly a + programming error and we cannot always post a message (like when the pad has no + parent) + +2012-02-18 00:03:13 +0100 Wim Taymans + + * gst/gstinfo.c: + info: also debug position of segment + +2012-02-17 23:59:28 +0100 Wim Taymans + + * win32/common/config.h: + * win32/common/gstversion.h: + win32: back to development + +2012-02-17 11:02:40 +0100 Wim Taymans + + * configure.ac: + configure: back to development + === release 0.11.2 === -2012-02-17 Wim Taymans +2012-02-17 11:01:16 +0100 Wim Taymans + * ChangeLog: + * NEWS: + * RELEASE: * configure.ac: - releasing 0.11.2, "A Shiny white Tooth" + * docs/plugins/gstreamer-plugins.args: + * docs/plugins/gstreamer-plugins.hierarchy: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * 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/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: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstversion.h: + RELEASE 0.11.2 2012-02-15 17:12:09 +0100 Mark Nauwelaerts @@ -536,10 +45937,6 @@ * libs/gst/controller/Makefile.am: * libs/gst/controller/gstargbcontrolbinding.c: * libs/gst/controller/gstargbcontrolbinding.h: - * libs/gst/controller/gstcontrolbindingargb.c: - * libs/gst/controller/gstcontrolbindingargb.h: - * libs/gst/controller/gstcontrolbindingdirect.c: - * libs/gst/controller/gstcontrolbindingdirect.h: * libs/gst/controller/gstdirectcontrolbinding.c: * libs/gst/controller/gstdirectcontrolbinding.h: * tests/benchmarks/controller.c: @@ -1032,7 +46429,6 @@ 2012-01-26 11:38:29 +0100 Sebastian Dröge * tests/check/Makefile.am: - * tests/check/libs/collectpads.c: * tests/check/libs/collectpads2.c: * tests/check/libs/gstlibscpp.cc: * tests/check/libs/libsabi.c: @@ -1968,6 +47364,11 @@ Only reserve 6 extra flags instead of 10 so that more media specific flags are available. +2012-01-03 15:26:54 +0100 Wim Taymans + + * plugins/elements/gstdataurisrc.c: + GST_FLOW_UNEXPECTED -> GST_FLOW_EOS + 2012-01-03 15:25:31 +0100 Wim Taymans * gst/gstcompat.h: @@ -2237,8 +47638,6 @@ * gst/gstbin.c: * gst/gstelement.c: * gst/gstelement.h: - * gst/gstindex.c: - * gst/gstindex.h: * gst/gstindexfactory.c: * gst/gstindexfactory.h: * gst/gstregistrybinary.c: @@ -2254,7 +47653,6 @@ * plugins/indexers/gstfileindex.c: * plugins/indexers/gstindexers.c: * plugins/indexers/gstindexers.h: - * plugins/indexers/gstmemindex.c: * tools/gst-inspect.c: * tools/gst-launch.c: index: remove GstIndex and GstIndexFactory for now @@ -3374,6 +48772,10 @@ * plugins/elements/gstqueue.c: queue: source and sink pads proxy caps +2011-11-28 23:20:32 +0000 Tim-Philipp Müller + + Merge commit '7521b597f4dc49d8d168f368f0e7ebaf98a72156' into 0.11 + 2011-11-28 21:15:31 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 @@ -3440,6 +48842,12 @@ without having to complicate the calling code. https://bugzilla.gnome.org/show_bug.cgi?id=662664 +2011-11-28 13:08:27 +0000 Vincent Penquerc'h + + * plugins/elements/gstdataurisrc.c: + various: fix pad template ref leaks + https://bugzilla.gnome.org/show_bug.cgi?id=662664 + 2011-11-28 13:54:43 +0100 Wim Taymans * gst/gstpad.c: @@ -4265,6 +49673,11 @@ Make that implizit with attaching/detaching controlsources. This is a lot easier and has less invalid state (controlled property without control source). +2011-11-13 23:55:56 +0000 Tim-Philipp Müller + + * plugins/elements/gstdataurisrc.c: + Update for GstURIHandler get_protocols() changes + 2011-11-13 23:25:23 +0000 Tim-Philipp Müller * plugins/elements/gstfdsink.c: @@ -5041,11 +50454,7 @@ * gst/gstobject.c: * gst/gstobject.h: * libs/gst/controller/Makefile.am: - * libs/gst/controller/gstcontroller.c: - * libs/gst/controller/gstcontroller.h: * libs/gst/controller/gstcontrollerprivate.h: - * libs/gst/controller/gstcontrolsource.c: - * libs/gst/controller/gstcontrolsource.h: * libs/gst/controller/gsthelper.c: * libs/gst/controller/gstinterpolationcontrolsource.c: * libs/gst/controller/gstinterpolationcontrolsource.h: @@ -5563,6 +50972,11 @@ * gst/gstbuffer.h: buffer: improve docs +2011-10-28 15:16:43 +0200 Wim Taymans + + * plugins/elements/gstdataurisrc.c: + make elements compile again + 2011-10-28 13:02:26 +0200 Sebastian Dröge * libs/gst/base/gstbytewriter.h: @@ -6447,8 +51861,6 @@ * docs/libs/gstreamer-libs-docs.sgml: * docs/libs/gstreamer-libs-sections.txt: * libs/gst/base/Makefile.am: - * libs/gst/base/gstdataqueue.c: - * libs/gst/base/gstdataqueue.h: * plugins/elements/Makefile.am: * plugins/elements/gstdataqueue.c: * plugins/elements/gstdataqueue.h: @@ -6511,6 +51923,11 @@ * gst/gstbuffer.c: buffer: improve docs +2011-10-04 18:38:50 +0200 Wim Taymans + + * plugins/elements/gstdataurisrc.c: + dataurisrc: port to 0.11 + 2011-10-04 17:39:17 +0200 Wim Taymans Merge branch 'master' into 0.11 @@ -9726,7 +55143,6 @@ 2011-06-03 12:43:32 +0200 Wim Taymans * docs/design/draft-allocation.txt: - * docs/design/draft-bufferpool.txt: * docs/design/part-bufferpool.txt: docs: update bufferpool design doc Move the bufferpool design doc from draft to part and merge it with @@ -13606,8 +59022,6 @@ 2010-10-13 15:39:55 -0700 David Schleef - * gst/audioparsers/gstbaseparse.c: - * gst/audioparsers/gstbaseparse.h: * libs/gst/base/gstbaseparse.c: * libs/gst/base/gstbaseparse.h: baseparse: Create baseparse library @@ -14161,8 +59575,6 @@ 2009-11-28 18:13:31 +0100 Mark Nauwelaerts - * gst/aacparse/gstbaseparse.c: - * gst/aacparse/gstbaseparse.h: * gst/audioparsers/gstbaseparse.c: * gst/audioparsers/gstbaseparse.h: audioparsers: rename 'aacparse' plugin to generic 'audioparsers' plugin @@ -15520,7 +60932,6 @@ 2011-03-08 18:05:42 +0000 Wim Taymans - * docs/design/draft-buffer2.txt: * docs/design/part-meta.txt: docs: rename draft to official doc @@ -15902,11 +61313,9 @@ * gst/gstbuffer.c: * gst/gstbuffer.h: * gst/gstbuffermeta.c: - * gst/gstbuffermeta.h: * gst/gstmeta.c: * gst/gstmeta.h: * tests/check/Makefile.am: - * tests/check/gst/gstbuffermeta.c: * tests/check/gst/gstmeta.c: metadata: Rename to GstMeta Rename to the shorter GstMeta @@ -16491,7 +61900,6 @@ 2011-02-15 17:20:08 +0100 Wim Taymans - * docs/design/draft-progress.txt: * docs/design/part-progress.txt: design: make progress draft official @@ -17479,6 +62887,11 @@ docs: fix typo Signed-off-by: Zhang Wanming +2010-12-30 18:02:06 -0800 David Schleef + + * plugins/elements/gstdataurisrc.c: + dataurisrc: use g_ascii_strcasecmp() + 2010-12-31 01:09:40 +0000 Tim-Philipp Müller * tests/icles/output-selector-test.c: @@ -24257,7 +69670,6 @@ * Makefile.am: * autogen.sh: - * check-checks.m4: * configure.ac: * m4/.gitignore: * m4/Makefile.am: @@ -24614,6 +70026,12 @@ * gst/gettext.h: gettext: build fixes: #if -> #ifdef +2010-03-22 13:16:33 +0100 Benjamin Otte + + * plugins/elements/gstdataurisrc.c: + Add -Wwrite-strings + and fix its warnings + 2010-03-18 10:22:09 +0200 Stefan Kost * gst/gstbin.c: @@ -25787,6 +71205,12 @@ * libs/gst/check/gstcheck.c: docs: fix gtk-doc chunk for gst_check_element_push_buffer_list() +2010-02-13 15:28:39 +0000 Tim-Philipp Müller + + * tests/check/elements/dataurisrc.c: + tests: add unit test for dataurisrc + Requires fixes from core git, so bump core requirement to git as well. + 2010-02-15 00:31:16 +0000 Tim-Philipp Müller * po/af.po: @@ -26149,6 +71573,25 @@ parent bin. Fixes #607842 +2010-01-28 00:07:14 +0000 Tim-Philipp Müller + + * plugins/elements/gstdataurisrc.c: + dataurisrc: add start function so we can error out properly if no uri is set + Also save a set URI after it has been parsed successfully, so that _get_uri() + actually works. + +2010-01-27 23:46:32 +0000 Tim-Philipp Müller + + * plugins/elements/gstdataurisrc.c: + dataurisrc: don't post error message when setting the URI failed + There's a gboolean return for that, and the messages don't really + add anything useful. + +2010-01-27 23:39:14 +0000 Tim-Philipp Müller + + * plugins/elements/gstdataurisrc.c: + dataurisrc: must release the object lock before using GST_ELEMENT_ERROR + 2010-01-26 18:59:50 +0000 Tim-Philipp Müller * configure.ac: @@ -26236,6 +71679,26 @@ application development manual. Fixes #608127 +2010-01-25 12:12:32 +0100 Sebastian Dröge + + * plugins/elements/gstdataurisrc.c: + dataurisrc: Remove role attribute from links + +2010-01-25 11:56:33 +0100 Sebastian Dröge + + * plugins/elements/gstdataurisrc.c: + dataurisrc: Add docs and integrate into build system + Fixes again bug #596885. + +2010-01-25 11:12:47 +0100 Sebastian Dröge + + * plugins/elements/gstdataurisrc.c: + * plugins/elements/gstdataurisrc.h: + dataurisrc: Add data: URI source element + This is slightly based on the WebKit data: URI source + but supports more parts of RFC 2397. + Fixes bug #596885. + 2010-01-24 23:12:22 +0200 Stefan Kost * win32/common/libgstreamer.def: @@ -26445,7 +71908,6 @@ * docs/faq/Makefile.am: * docs/faq/developing.xml: * docs/faq/faq.xml: - * docs/faq/gst-uninstalled: * scripts/gst-uninstalled: scripts: move gst-uninstalled from docs/faq to scripts Don't include the long gst-uninstalled script in verbatim in the faq anymore @@ -27416,7 +72878,6 @@ * libs/gst/helpers/.gitignore: * libs/gst/helpers/Makefile.am: * libs/gst/helpers/gst-plugin-scanner.c: - * libs/gst/helpers/plugin-scanner.c: * tests/check/Makefile.am: * tests/examples/manual/Makefile.am: plugin-scanner: rename plugin-scanner helper binary to gst-plugin-scanner @@ -27881,7 +73342,6 @@ 2009-10-29 11:18:20 +0100 Sebastian Dröge - * gst/playback/gstqueue2.c: * plugins/elements/gstqueue2.c: queue2: Move queue2 to gstreamer coreplugins Fixes bug #599996. @@ -31548,7 +77008,6 @@ 2009-07-10 18:35:21 +0100 Wim Taymans - * docs/design/draft-framestep.txt: * docs/design/part-framestep.txt: docs: more framestep docs out of draft @@ -32133,7 +77592,6 @@ 2009-06-13 14:53:24 +0200 Thomas Vander Stichele - * scripts/cvs-update.sh: * scripts/git-update.sh: * scripts/git-version.sh: Update scripts/cvs-update.sh to git-update.sh; add git-version.sh @@ -33358,9 +78816,6 @@ 2009-05-14 12:30:23 +0200 Wim Taymans * docs/design/draft-ghostpads.txt: - * docs/design/draft-latency.txt: - * docs/design/draft-missing-plugins.txt: - * docs/design/draft-stream-status.txt: * docs/design/part-latency.txt: * docs/design/part-missing-plugins.txt: * docs/design/part-stream-status.txt: @@ -35584,7 +81039,6 @@ 2009-02-14 13:35:48 +0000 Tim-Philipp Müller - * docs/faq/cvs.xml: * docs/faq/developing.xml: * docs/faq/faq.xml: * docs/faq/getting.xml: @@ -72724,10 +118178,8 @@ * check/Makefile.am: * check/gst/gstevent.c: - * check/gst/gstevents.c: * tests/check/Makefile.am: * tests/check/gst/gstevent.c: - * tests/check/gst/gstevents.c: put some make-up on the gstevent test Original commit message from CVS: put some make-up on the gstevent test @@ -72755,7 +118207,6 @@ * check/Makefile.am: * check/elements/.gitignore: * check/elements/fakesrc.c: - * check/elements/gstfakesrc.c: * check/elements/identity.c: * check/gst-libs/controller.c: * check/gst-libs/gdp.c: @@ -72775,8 +118226,6 @@ * check/gst/gstsystemclock.c: * check/gst/gsttag.c: * check/gst/gstvalue.c: - * check/gstcheck.c: - * check/gstcheck.h: * check/pipelines/cleanup.c: * check/pipelines/simple_launch_lines.c: * check/states/sinks.c: @@ -72797,7 +118246,6 @@ * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/fakesrc.c: - * tests/check/elements/gstfakesrc.c: * tests/check/elements/identity.c: * tests/check/generic/sinks.c: * tests/check/gst/gst.c: @@ -72816,8 +118264,6 @@ * tests/check/gst/gstsystemclock.c: * tests/check/gst/gsttag.c: * tests/check/gst/gstvalue.c: - * tests/check/gstcheck.c: - * tests/check/gstcheck.h: * tests/check/libs/controller.c: * tests/check/libs/gdp.c: * tests/check/pipelines/cleanup.c: @@ -74848,7 +120294,6 @@ * check/gst.supp: * check/gst/gst.c: * check/gst/gstbuffer.c: - * check/gst/gstdata.c: * check/gst/gstghostpad.c: * check/gst/gstminiobject.c: * configure.ac: @@ -74859,7 +120304,6 @@ * tests/check/gst.supp: * tests/check/gst/gst.c: * tests/check/gst/gstbuffer.c: - * tests/check/gst/gstdata.c: * tests/check/gst/gstghostpad.c: * tests/check/gst/gstminiobject.c: * tools/gst-launch.c: