Instead just check that the caps intersect with the pad template.
The elements should properly accept/refuse the caps in setcaps().
Shaves off calling the default implementation of acceptcaps which does
an expensive gst_pad_get_caps() (so if you have 50 of those elements in
a row, you'd be doing factorial(50) gst_pad_get_caps...).
Does not break any module unit test and most apps work fine.
https://bugzilla.gnome.org/show_bug.cgi?id=622740
Make sure clock->clockid is unreffed before clock->master.
gst_clock_id_unschedule (clock->clockid) tries to access clock->master. If
clock->master is unreffed before and it's deallocated, _unschedule could access
free'd memory.
They are actually *not* const functions because on architectures
without int128 instructions the parameters were changed.
gcc re-used the parameters on the stack for multiple calls though
and the changed parameters were used for the second call then.
Fixes bug #623003.
Add a minimal gst_xml_get_type() function, so that gobject-introspection doesn't
break the compilation if we're compiling with GST_REMOVE_DEPRECATED defined or
--disable-loadsave having been passed to configure. Until someone figures out
a better way at least.
Since everything GstXML related has been deprecated, we can now skip the
libxml includes from the public headers when GST_DISABLE_DEPRECATED is
defined.
See #463435.
Pipeline serialisation to and from XML is horribly broken for all
but the most simple use cases, and will likely never be fixed.
Make sure everyone playing around with these tools is aware of
this, to avoid frustration. See countless bug reports in bugzilla.
Fixes bug #622685.
This feature is primarily intended for use in plugin modules' unit tests.
Consider the following situation: gst-plugins-good is built against an
installed GStreamer core. An older version of gst-plugins-good is also
installed in that prefix, along with random other plugin modules. Now,
when doing 'make check' in the just-built gst-plugins-good tree, we
want to only load plugins from GStreamer core, gst-plugins-base, and
gst-plugins-good, but not random other modules (we don't want any unit
tests to fail just because some module in gst-plugins-bad has a broken
plugin_init, for example). Also, we want to only load gst-plugins-good
modules from the locally-built source tree, but not any of the older
gst-plugins-good modules installed. This is usually assured by loading
the ones in the source tree first (by adding that path first to the
right environment variables), but it gets tricky when plugins are
moved, removed, merged, or renamed, or the plugin filename changes.
Note that 'make check' should really work right without doing
'make install' or uninstalling the old gst-plugins-good package (or
any other gst-plugins-foo package) first.
Enter GST_PLUGIN_LOADING_WHITELIST. This environment variable may
contain source-package@path-prefix pairs separated by the platform
search path separator (G_SEARCHPATH_SEPARATOR_S). The source package
and path prefix are separated by the '@' character. The path prefix is
entirely optional, as is the '@' separator if no path is given.
It is also possible to filter based on plugin names instead of the name
of the source-package by specifying one or more plugin names separated
by commas before the optional path prefix.
In short, the following match patterns are possible:
plugin1,plugin2@pathprefix or
plugin1,plugin2@* or just
plugin1,plugin2 or
source-package@pathprefix or
source-package@* or just
source-package
So for our gst-plugins-good unit test example above, we would set the
environment variable on *nix to something like this (will likely be a
relative path in practice):
gstreamer:gst-plugins-base:gst-plugins-good@/path/to/src/gst-plugins-good
Fixes#619815 and #619717.
Adds a new tag to inform about the image orientation and how
to rotate and flip it before display.
Note that this tag is a string with a predefined set of
possible values.
API: GST_TAG_IMAGE_ORIENTATION
Fixes#619508
Forgot those when adding the original API, just like the API markers
in the commit message:
API: GST_TRACE
API: GST_TRACE_OBJECT
API: GST_CAT_TRACE
API: GST_CAT_TRACE_OBJECT
API: GST_LEVEL_TRACE
Fixes compilation with --disable-gst-debug
A pad is 'negotiable' when its container element is in a state greater
than GST_STATE_READY
API:gst_pad_is_negotiable
API:gst_pad_set_negotiable
API:GST_PAD_NEGOTIABLE
https://bugzilla.gnome.org/show_bug.cgi?id=618644
This allows removing structures from caps without them being freed. Helpful when
plugins need to move around structures without having to do an expensive structure
copy.
API:gst_caps_steal_structure
https://bugzilla.gnome.org/show_bug.cgi?id=621527