platform/upstream/gstreamer.git
7 years agodownloadbuffer: unlock mutex in error case
Wim Taymans [Fri, 10 Mar 2017 09:12:49 +0000 (10:12 +0100)]
downloadbuffer: unlock mutex in error case

7 years agogstvalue: Do more checks when guessing at flagset strings
Jan Schmidt [Thu, 9 Mar 2017 01:09:57 +0000 (12:09 +1100)]
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

7 years agomultiqueue: Make min-interleave-time a configurable property
Jan Schmidt [Thu, 9 Mar 2017 01:09:57 +0000 (12:09 +1100)]
multiqueue: Make min-interleave-time a configurable property

Remove a FIXME about making the minimum interleave
buffering a configurable property

7 years agoelementfactory: promote factory not found log message to WARNING
Tim-Philipp Müller [Wed, 8 Mar 2017 14:51:42 +0000 (14:51 +0000)]
elementfactory: promote factory not found log message to WARNING

In most cases people really want to know when an element
could not be created.

7 years agoinputselector: Always proxy position/duration query
Seungha Yang [Mon, 6 Mar 2017 23:21:48 +0000 (08:21 +0900)]
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

7 years agoinfo: document that logging macros don't need newlines at the end
Tim-Philipp Müller [Fri, 3 Mar 2017 12:53:26 +0000 (12:53 +0000)]
info: document that logging macros don't need newlines at the end

https://bugzilla.gnome.org/show_bug.cgi?id=779459

7 years agopad: add since marker to docs for new API
Tim-Philipp Müller [Fri, 24 Feb 2017 21:35:27 +0000 (21:35 +0000)]
pad: add since marker to docs for new API

7 years agowin32: update .def file for new API
Tim-Philipp Müller [Fri, 24 Feb 2017 21:33:49 +0000 (21:33 +0000)]
win32: update .def file for new API

7 years agoregistry: Only scan plugin files that end with an extension
Thibault Saunier [Fri, 24 Feb 2017 13:23:01 +0000 (10:23 -0300)]
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

7 years agopad: Add API to get the current state of a task
Thibault Saunier [Fri, 17 Feb 2017 18:48:17 +0000 (15:48 -0300)]
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

7 years agomeson: Add an option to disable usage of libunwind
Thibault Saunier [Mon, 13 Feb 2017 18:18:59 +0000 (15:18 -0300)]
meson: Add an option to disable usage of libunwind

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=778193

7 years agomeson: Update version
Sebastian Dröge [Fri, 24 Feb 2017 13:59:35 +0000 (15:59 +0200)]
meson: Update version

7 years agoBack to development
Sebastian Dröge [Fri, 24 Feb 2017 13:37:30 +0000 (15:37 +0200)]
Back to development

7 years agoRelease 1.11.2
Sebastian Dröge [Fri, 24 Feb 2017 13:06:46 +0000 (15:06 +0200)]
Release 1.11.2

7 years agoUpdate .po files
Sebastian Dröge [Fri, 24 Feb 2017 10:44:17 +0000 (12:44 +0200)]
Update .po files

7 years agovalue: Add deserialization for arrays/lists outside GstStructures
Vivia Nikolaidou [Thu, 23 Feb 2017 18:52:39 +0000 (20:52 +0200)]
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

7 years agovalue: Add a type abbreviation for GstFlagSet in serialization
Sebastian Dröge [Thu, 23 Feb 2017 18:50:38 +0000 (20:50 +0200)]
value: Add a type abbreviation for GstFlagSet in serialization

7 years agovalue: Always add the type name to elements when serializing arrays/lists
Vivia Nikolaidou [Thu, 23 Feb 2017 18:47:30 +0000 (20:47 +0200)]
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.

7 years agovalue: Move list/array serialization/deserialization functions from GstStructure...
Vivia Nikolaidou [Thu, 23 Feb 2017 18:22:03 +0000 (20:22 +0200)]
value: Move list/array serialization/deserialization functions from GstStructure to GstValue

https://bugzilla.gnome.org/show_bug.cgi?id=777375

7 years agoparamspecs: Add GstParamSpecArray for GST_TYPE_ARRAY typed properties
Vivia Nikolaidou [Thu, 23 Feb 2017 18:16:17 +0000 (20:16 +0200)]
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

7 years agobytereader: fix peek value when scanning for 00 00 01 with non-0 offset
Tim-Philipp Müller [Tue, 21 Feb 2017 20:23:51 +0000 (20:23 +0000)]
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

7 years agoinfo: put () around macro arguments
Wim Taymans [Mon, 20 Feb 2017 11:16:32 +0000 (12:16 +0100)]
info: put () around macro arguments

Put braces around macro arguments or else we might run into problems
with operater precedence.

7 years agodeviceproviderfactory: ignore empty classes
Wim Taymans [Mon, 20 Feb 2017 09:45:57 +0000 (10:45 +0100)]
deviceproviderfactory: ignore empty classes

7 years agodeviceproviderfactory: compare class against NULL
Wim Taymans [Mon, 20 Feb 2017 09:25:50 +0000 (10:25 +0100)]
deviceproviderfactory: compare class against NULL

gstdeviceproviderfactory.c:501:20: error: comparison between pointer and zero character constant [-Werror=pointer-compare]
     if (classes[0] == '\0')

7 years agomeson: Fix build with latest upstream git
Nirbheek Chauhan [Sat, 18 Feb 2017 11:19:40 +0000 (16:49 +0530)]
meson: Fix build with latest upstream git

Trivial incorrect include_directories() call

7 years agogstconfig: Fix unaligned access support for the openrisc architecture
Peter Korsgaard [Sat, 18 Feb 2017 09:03:24 +0000 (10:03 +0100)]
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

7 years agogstbasesink: xref symbol in docs
Stefan Sauer [Wed, 15 Feb 2017 20:37:31 +0000 (21:37 +0100)]
gstbasesink: xref symbol in docs

7 years agopad: revert the content changes from previous commit
Stefan Sauer [Wed, 15 Feb 2017 19:58:49 +0000 (20:58 +0100)]
pad: revert the content changes from previous commit

The default behaviour when returning GST_PAD_PROBE_OK is unrelated to
the other return code.

7 years agopad: fix docs for GstPadProbeReturn
Stefan Sauer [Wed, 15 Feb 2017 19:37:40 +0000 (20:37 +0100)]
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).

7 years agomeson: dist meson build files
Tim-Philipp Müller [Mon, 24 Oct 2016 21:47:29 +0000 (22:47 +0100)]
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.

7 years agotests: add 2 unit tests for non-flush seek with gstbaseparse
Julien Isorce [Tue, 31 Jan 2017 09:55:59 +0000 (09:55 +0000)]
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

7 years agoparse: Don't translate the "bin" element name
Sebastian Dröge [Tue, 31 Jan 2017 19:19:18 +0000 (21:19 +0200)]
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

7 years agosegment: Modifiy inside segment condition
Seungha Yang [Fri, 15 Apr 2016 11:54:42 +0000 (20:54 +0900)]
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

7 years agoinfo: Check libunwind return codes
Thibault Saunier [Thu, 26 Jan 2017 16:35:27 +0000 (16:35 +0000)]
info: Check libunwind return codes

7 years agomeson: libs: Add gir to the source list of the dependency
Thibault Saunier [Wed, 18 Jan 2017 21:16:26 +0000 (18:16 -0300)]
meson: libs: Add gir to the source list of the dependency

7 years agoPort gtk-doc comments to their equivalent markdown syntax
Thibault Saunier [Mon, 16 Jan 2017 14:26:16 +0000 (11:26 -0300)]
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

7 years agogst: Fix includes so that files can be built separately
Thibault Saunier [Wed, 11 Jan 2017 20:25:08 +0000 (17:25 -0300)]
gst: Fix includes so that files can be built separately

It used to work but it has broke in the 1.10 cycle.

7 years agogstpoll: Encode in utf-8
Thibault Saunier [Wed, 18 Jan 2017 13:56:38 +0000 (10:56 -0300)]
gstpoll: Encode in utf-8

7 years agoGstStream/GstStreamCollection: add g_autoptr() support
Brendan Shanks [Thu, 26 Jan 2017 23:32:31 +0000 (15:32 -0800)]
GstStream/GstStreamCollection: add g_autoptr() support

https://bugzilla.gnome.org/show_bug.cgi?id=777810

7 years agobaseparse: correctly handle non-flush seek
Julien Isorce [Thu, 26 Jan 2017 16:51:21 +0000 (16:51 +0000)]
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

7 years agocheck: Add API to filter g_warning/g_critical etc
Stian Selnes [Tue, 24 May 2016 12:57:54 +0000 (14:57 +0200)]
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

7 years agobin: update the docs for the event forwarding
Stefan Sauer [Wed, 18 Jan 2017 21:39:33 +0000 (22:39 +0100)]
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.

7 years agoparse: Don't hold element's object lock while querying element pads' caps
Sebastian Dröge [Wed, 18 Jan 2017 13:07:58 +0000 (15:07 +0200)]
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

7 years agogstbin: Quieten a noisy FIXME about duration caching
Jan Schmidt [Sun, 15 Jan 2017 22:41:19 +0000 (09:41 +1100)]
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.

7 years agoidentity: Add ts-offset property.
Jan Schmidt [Tue, 14 Jul 2015 13:11:11 +0000 (13:11 +0000)]
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

7 years agodatetime: fix potential out-of-bound read on malformed datetime string
Tim-Philipp Müller [Sun, 15 Jan 2017 11:52:44 +0000 (11:52 +0000)]
datetime: fix potential out-of-bound read on malformed datetime string

https://bugzilla.gnome.org/show_bug.cgi?id=777263

7 years agomeson: bump version
Tim-Philipp Müller [Fri, 13 Jan 2017 12:34:43 +0000 (12:34 +0000)]
meson: bump version

7 years agoBack to development
Sebastian Dröge [Thu, 12 Jan 2017 14:32:38 +0000 (16:32 +0200)]
Back to development

7 years agoRelease 1.11.1
Sebastian Dröge [Thu, 12 Jan 2017 13:29:15 +0000 (15:29 +0200)]
Release 1.11.1

7 years agoUpdate .po files
Sebastian Dröge [Thu, 12 Jan 2017 12:35:22 +0000 (14:35 +0200)]
Update .po files

7 years agopo: Update translations
Sebastian Dröge [Thu, 12 Jan 2017 12:34:18 +0000 (14:34 +0200)]
po: Update translations

7 years agoUpdate .po files
Sebastian Dröge [Thu, 12 Jan 2017 12:26:55 +0000 (14:26 +0200)]
Update .po files

7 years agotools: update gst-inspect man page
Mark Nauwelaerts [Thu, 5 Jan 2017 12:45:37 +0000 (13:45 +0100)]
tools: update gst-inspect man page

7 years agomeson: Do not generate .pc files for libgstcheck on windows
Thibault Saunier [Thu, 5 Jan 2017 13:32:03 +0000 (10:32 -0300)]
meson: Do not generate .pc files for libgstcheck on windows

The lib is not built

7 years agomeson: generate pkg-config -uninstalled pc files
Guillaume Desmottes [Wed, 4 Jan 2017 11:10:45 +0000 (12:10 +0100)]
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

7 years agopad: clarify docs for GST_PAD_PROBE_DROP
Tim-Philipp Müller [Tue, 3 Jan 2017 12:30:02 +0000 (12:30 +0000)]
pad: clarify docs for GST_PAD_PROBE_DROP

7 years agoqueue: Don't generate GST_FLOW_ERROR without logging
Jan Schmidt [Mon, 2 Jan 2017 15:13:30 +0000 (02:13 +1100)]
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.

7 years agopadtemplate: Fix null pointer dereference on invalid static caps
Jan Schmidt [Mon, 2 Jan 2017 15:12:27 +0000 (02:12 +1100)]
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.

7 years agocaps: Fix null pointer dereference on invalid static caps
Jan Schmidt [Mon, 2 Jan 2017 15:11:27 +0000 (02:11 +1100)]
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.

7 years agostructure: reword comment for gst_structure_parse_string()
Stefan Sauer [Fri, 30 Dec 2016 18:42:57 +0000 (19:42 +0100)]
structure: reword comment for gst_structure_parse_string()

The comment was a bit confusing. Turn it into gtkdoc style and reword it.

7 years agoinfo: re-eval GST_DEBUG env var for late categories
Stefan Sauer [Wed, 28 Dec 2016 20:47:03 +0000 (21:47 +0100)]
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.

7 years agogst-uninstalled: Default to python3
Edward Hervey [Thu, 29 Dec 2016 16:04:04 +0000 (17:04 +0100)]
gst-uninstalled: Default to python3

It's 2016, unless you've specified a different version of python,
we'll default to python3

7 years agobaseparse: also unset DISCONT on buffers in reverse playback fragments
Mark Nauwelaerts [Wed, 28 Dec 2016 12:45:54 +0000 (13:45 +0100)]
baseparse: also unset DISCONT on buffers in reverse playback fragments

7 years agogst-launch: Add a '--types' option to filter elements by types to print
Thibault Saunier [Thu, 22 Dec 2016 00:58:53 +0000 (21:58 -0300)]
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

7 years agotools: gst-launch: set GST_GL_XINITTHREADS
Nicolas Dechesne [Thu, 22 Dec 2016 17:45:10 +0000 (18:45 +0100)]
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

7 years agogstpreset: Lower some debug logs level
Thibault Saunier [Thu, 22 Dec 2016 19:13:22 +0000 (16:13 -0300)]
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.

7 years agomeson: Fix order of C source and header in mkenums
Nirbheek Chauhan [Thu, 22 Dec 2016 18:09:39 +0000 (23:39 +0530)]
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.

7 years agomeson: use gnome.mkenums() with template files for enum file gen
Tim-Philipp Müller [Sat, 17 Dec 2016 14:35:19 +0000 (14:35 +0000)]
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.

7 years agoelement: Add guard to gst_element_release_pad() to ensure the pad belongs to this...
Sebastian Dröge [Thu, 22 Dec 2016 10:05:56 +0000 (12:05 +0200)]
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.

7 years agogstrusage: explicitly register to hooks
Stefan Sauer [Wed, 21 Dec 2016 21:18:17 +0000 (22:18 +0100)]
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.

7 years agomeson: Add several missing features from configure.ac
Nirbheek Chauhan [Wed, 21 Dec 2016 18:19:11 +0000 (23:49 +0530)]
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.

7 years agobuild: Remove unused functions
Nirbheek Chauhan [Wed, 21 Dec 2016 04:03:39 +0000 (09:33 +0530)]
build: Remove unused functions

fgetpos, fsetpos, mmap, posix_memalign. None of these are used anywhere
in the codebase.

7 years agomeson: Derive defines from header/function names
Nirbheek Chauhan [Wed, 21 Dec 2016 03:30:22 +0000 (09:00 +0530)]
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.

7 years agogststructure: simplify test
Stefan Sauer [Wed, 21 Dec 2016 09:02:45 +0000 (10:02 +0100)]
gststructure: simplify test

We can compare structures, that is what the caps fucntion that was used before
would call anyway.

7 years agotracerrecord: improve the values flags docs
Stefan Sauer [Tue, 20 Dec 2016 20:08:09 +0000 (21:08 +0100)]
tracerrecord: improve the values flags docs

7 years agolatency: the latency is not an aggregated value
Stefan Sauer [Tue, 20 Dec 2016 20:07:14 +0000 (21:07 +0100)]
latency: the latency is not an aggregated value

The logged latencies are individual meassurements.

7 years agoleaks: Allow user to set the flags to use to retrieve stack traces
Thibault Saunier [Fri, 2 Dec 2016 11:29:11 +0000 (08:29 -0300)]
leaks: Allow user to set the flags to use to retrieve stack traces

https://bugzilla.gnome.org/show_bug.cgi?id=775541

7 years agoleaks: Allow tracing Gst(Mini)Object reffing operations
Thibault Saunier [Thu, 1 Dec 2016 20:35:45 +0000 (17:35 -0300)]
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

7 years agoleaks: Allow passing a GstStructure to configure the tracer
Thibault Saunier [Wed, 30 Nov 2016 20:05:56 +0000 (17:05 -0300)]
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

7 years agotypefind: Switch to normal mode before have-type
Jan Schmidt [Tue, 20 Dec 2016 13:40:10 +0000 (00:40 +1100)]
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.

7 years agomultiqueue: Protect against spurious wakeups of the condition variable
Sebastian Dröge [Tue, 13 Dec 2016 19:12:23 +0000 (21:12 +0200)]
multiqueue: Protect against spurious wakeups of the condition variable

7 years agobasesink: fix a use after free case
Fabrice Bellet [Wed, 30 Nov 2016 20:17:55 +0000 (21:17 +0100)]
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().

7 years agocheck: fix typo in docs
Tim-Philipp Müller [Fri, 16 Dec 2016 18:30:20 +0000 (18:30 +0000)]
check: fix typo in docs

7 years agomeson: Don't search for python3 twice
Nirbheek Chauhan [Fri, 16 Dec 2016 18:15:08 +0000 (23:45 +0530)]
meson: Don't search for python3 twice

7 years agocheck: export new global variable
Tim-Philipp Müller [Fri, 16 Dec 2016 18:14:29 +0000 (18:14 +0000)]
check: export new global variable

7 years agocheck: Avoid possible double free
Thibault Saunier [Fri, 16 Dec 2016 16:59:51 +0000 (13:59 -0300)]
check: Avoid possible double free

7 years agocheck: Allow listing unit tests names
Thibault Saunier [Fri, 2 Dec 2016 14:59:43 +0000 (11:59 -0300)]
check: Allow listing unit tests names

Adding options while running gst_check_init

https://bugzilla.gnome.org/show_bug.cgi?id=775540

7 years agotracers/stats: log optional fields instead of GST_CLOCK_TIME_NONE
Stefan Sauer [Thu, 15 Dec 2016 14:37:45 +0000 (15:37 +0100)]
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.

7 years agoautogen.sh: drop a leftover docbook related bit
Josep Torra [Fri, 16 Dec 2016 14:05:46 +0000 (15:05 +0100)]
autogen.sh: drop a leftover docbook related bit

7 years agovalue: add structure intersect/union/is_subset/fixate implementations
Matthew Waters [Thu, 8 Dec 2016 10:01:52 +0000 (21:01 +1100)]
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

7 years agotests/structure: add some more is_subset checks
Matthew Waters [Thu, 8 Dec 2016 04:41:40 +0000 (15:41 +1100)]
tests/structure: add some more is_subset checks

Explicitly testing extra/missing fields and name differences

7 years agotests: meta: add test for gst_buffer_iterate_meta*()
Tim-Philipp Müller [Wed, 14 Dec 2016 18:19:00 +0000 (18:19 +0000)]
tests: meta: add test for gst_buffer_iterate_meta*()

https://bugzilla.gnome.org/show_bug.cgi?id=775727

7 years agobuffer: add gst_buffer_iterate_meta_filtered()
Tim-Philipp Müller [Sat, 3 Dec 2016 13:05:03 +0000 (13:05 +0000)]
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

7 years agobuffer: mark gst_buffer_iterate_meta() as 'skip' for bindings
Tim-Philipp Müller [Wed, 14 Dec 2016 15:22:30 +0000 (15:22 +0000)]
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

7 years agog-i: Fix annotations for gst_event_new_select_streams() and gst_event_parse_select_st...
Iñaki García Etxebarria [Wed, 14 Dec 2016 05:56:55 +0000 (06:56 +0100)]
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

7 years agogstpad: only warn on performance penalty if not using the template caps
Reynaldo H. Verdejo Pinochet [Wed, 14 Dec 2016 07:25:39 +0000 (23:25 -0800)]
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

7 years agoqueue/queue2: Protect against spurious condition variable wakeups
Sebastian Dröge [Tue, 13 Dec 2016 18:51:17 +0000 (20:51 +0200)]
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

7 years agoqueue/queue2: Ensure that the streaming thread is unlocked after deactivating the...
Sebastian Dröge [Tue, 13 Dec 2016 18:00:55 +0000 (20:00 +0200)]
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

7 years agogstvalue: add serialisation for GTypes
Stefan Sauer [Mon, 12 Dec 2016 21:14:24 +0000 (22:14 +0100)]
gstvalue: add serialisation for GTypes

We need this in the GstTracerRecord. This will serialize GTypes to the typename
and vice versa.

7 years agogst: Fix building with msvc
Thibault Saunier [Tue, 13 Dec 2016 12:20:09 +0000 (13:20 +0100)]
gst: Fix building with msvc