Commit graph

5135 commits

Author SHA1 Message Date
Tim-Philipp Müller 00697e8529 xml: keep dummy gst_xml_get_type() function for g-i even if rest of GstXML is removed
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.
2010-06-26 10:35:38 +01:00
Tim-Philipp Müller 71f3a6f0f7 Don't include <libxml/parser.h> from public headers if GST_DISABLE_DEPRECATED is defined
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.
2010-06-26 10:35:38 +01:00
Stefan Kost 8fffa2d790 dot-dump: terminate truncated strings and escape special chars
Fixes syntax errors in generated dot files for caps with strings.
2010-06-25 21:25:10 +03:00
Edward Hervey 27b4868157 pad: more documentation regarding the new flags 2010-06-25 18:55:18 +02:00
Wim Taymans d4e1fdb0c7 pad: make the NOTHING link check flag be 0
Make the pad link check of NOTHING be 0. This way we have a flag for each
feature and 0 when no flags are set.
2010-06-25 18:28:07 +02:00
Sebastian Dröge 5f4a965f67 gstxml: Deprecate GstXml and related functions
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.
2010-06-25 18:25:40 +02:00
Tim-Philipp Müller 3410d665d7 binaryregistry: ignore the plugin cache if the filter environment has changed
Make sure that we properly update the registry and the cache file whenever
the filter environment changes or there's no more filter set.
2010-06-23 17:56:51 +01:00
Tim-Philipp Müller 9c6b87510e pluginloading: add support for whitelisting based on plugin or source module name and path
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.
2010-06-23 17:56:51 +01:00
Edward Hervey 4a999b5e43 gstghostpad: We don't need any checks when linking target pad
https://bugzilla.gnome.org/show_bug.cgi?id=622504
2010-06-23 18:42:40 +02:00
Edward Hervey 5faf5620f3 gstutils: New gst_element_link_pads_full method
Links the elements with the specified pad linking checks.

API:gst_element_link_pads_full

https://bugzilla.gnome.org/show_bug.cgi?id=622504
2010-06-23 18:42:40 +02:00
Edward Hervey 625c4e2d80 GstPad: Add new pad linking method with configurable checks.
To be used for cases where we don't need all checks to be validated.

API: gst_pad_link_full
API: GstPadLinkCheck

https://bugzilla.gnome.org/show_bug.cgi?id=622504
2010-06-23 18:42:35 +02:00
Thiago Santos 7a34c1cd18 tag: Adds GST_TAG_IMAGE_ORIENTATION tag
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
2010-06-23 11:57:20 -03:00
Tim-Philipp Müller ddb11b4f2d gstobject: deprecate gst_object_{set|get}_name_prefix()
The name prefix stuff has never been used for anything and it doesn't
look like we'll ever want to use it for anything.

Fixes #621006.
2010-06-22 18:53:15 +01:00
Johan Dahlin 23faba0190 Add gobject-introspection annotations for GstPadIntLinkFunction
Fixes build with latest gobject-introspection from git.

https://bugzilla.gnome.org/show_bug.cgi?id=622025
2010-06-22 15:01:20 +01:00
Tim-Philipp Müller fb40cafa5a registry: also skip .deps dirs when scanning for plugins
No need to descend into .deps dirs in uninstalled setups, we know
these don't contain any plugins.
2010-06-19 13:06:45 +01:00
Thiago Santos 9ee11a2af4 taglist: add gst_tag_list_peek_string_index to avoid a copy
Adds a variation of the _get_string_index function that doesn't copy
the string.

API: gst_tag_list_peek_string_index

https://bugzilla.gnome.org/show_bug.cgi?id=621896
2010-06-18 11:49:21 -03:00
Johan Dahlin 2ecfa42fad elementfactory: Add an allow-none annotation
https://bugzilla.gnome.org/show_bug.cgi?id=621773
2010-06-16 19:03:21 +02:00
Johan Dahlin c041915989 miniobject: Add introspection annotations
These are required to know how to unref/ref and
convert to/from a GValue.

https://bugzilla.gnome.org/show_bug.cgi?id=621773
2010-06-16 19:03:21 +02:00
Johan Dahlin ff3f95b167 event: Add out annotations
https://bugzilla.gnome.org/show_bug.cgi?id=621773
2010-06-16 19:03:21 +02:00
Johan Dahlin 6ab6dcf931 query: Add out annotations
https://bugzilla.gnome.org/show_bug.cgi?id=621773
2010-06-16 19:03:21 +02:00
Johan Dahlin f6f292c83e message: Add out annotations
https://bugzilla.gnome.org/show_bug.cgi?id=621773
2010-06-16 19:03:20 +02:00
Benjamin Gaignard 5d44b1a381 element: Improve gst_element_get_name() docs
Fixes bug #621660.
2010-06-15 18:49:41 +02:00
Edward Hervey 4a11063768 Revert "GstPad: Add GST_PAD_NEGOTIABLE GstPadFlag"
This reverts commit dc38e75d88.

boom
2010-06-15 11:54:19 +02:00
Edward Hervey 3df54c45bf Revert "gstpad: Return pad template in get_caps if pad is not negotiable"
This reverts commit 7460321a60.

crack
2010-06-15 11:54:19 +02:00
Edward Hervey 19334dbb85 Revert "pad: fix comment"
This reverts commit 8e92cb4a7d.

whatever...
2010-06-15 11:54:19 +02:00
Edward Hervey 27a58ed70d Revert "element: only clear negotiable when going to NULL"
This reverts commit 8f5ec1f737.

bleeeeh
2010-06-15 11:54:19 +02:00
Tim-Philipp Müller 29cc802269 info: add dummy TRACE log level macros for when debugging is disabled
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
2010-06-15 10:46:08 +01:00
Wim Taymans 8f5ec1f737 element: only clear negotiable when going to NULL
Don't clear the negotiable flag when going to READY because then it will never
be set to TRUE again.
2010-06-14 18:07:23 +02:00
Wim Taymans 8e92cb4a7d pad: fix comment 2010-06-14 17:33:16 +02:00
Edward Hervey 7460321a60 gstpad: Return pad template in get_caps if pad is not negotiable
https://bugzilla.gnome.org/show_bug.cgi?id=618644
2010-06-14 17:08:14 +02:00
Edward Hervey dc38e75d88 GstPad: Add GST_PAD_NEGOTIABLE GstPadFlag
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
2010-06-14 17:08:14 +02:00
Sebastian Dröge 4d8320e4c6 gstvalue: Add some more assertions and checks for valid input parameters 2010-06-14 15:45:11 +02:00
Tim-Philipp Müller 6edfcc3705 docs: add Since: tag for new gst_caps_steal_structure 2010-06-14 12:28:57 +01:00
Tim-Philipp Müller a76412747d docs: fix example to use a category name that actually exists 2010-06-14 12:28:42 +01:00
Edward Hervey 32adac81ee gstcaps: New gst_caps_steal_structure() method
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
2010-06-14 13:16:18 +02:00
Sebastian Dröge 603c04f4fa gstvalue: Don't initialize arrays from variables 2010-06-14 08:18:00 +02:00
Sebastian Dröge 6fd7c5bda0 element: Store result of strtol in an unused variable to really fix a compiler warning... 2010-06-14 08:11:35 +02:00
Sebastian Dröge fe378a9067 element: Cast return value to void to prevent compiler warning 2010-06-13 20:52:36 +02:00
Sebastian Dröge 48438b6cc7 gstvalue: Add some assertion guards against invalid parameters to public API 2010-06-13 18:00:22 +02:00
Sebastian Dröge e6e29192bc Remove some dead assignments 2010-06-13 17:08:48 +02:00
Sebastian Dröge 6ff314c75a pad: Fix iterator aggregation of all pads in the internal links fallback
g_list_prepend() returns the new head of the list and not
using this will create a memory leak and a single-element list.
2010-06-13 16:27:39 +02:00
Sebastian Dröge 18f23bc0b0 iterator: Add new FIXME for 0.11 and update gst_iterator_find_custom docs
The compare function should only unref the element if it's
not the matching element.

Also the FIXME in _fold() is not relevant because the ref/unref
happens in the fold function.
2010-06-13 15:25:24 +02:00
Sebastian Dröge c4ccbe093e iterator: If the iterator resync in find_custom() just retry 2010-06-13 11:25:53 +02:00
Martin Bisson ab0763f0e8 value: Fixed serialization for short fourccs.
"Y16 " and "Y8  " were not displayed properly because the space
character is not alnum.  A unit test is also included.

Fixes bug #621282.
2010-06-12 08:07:34 +02:00
Stefan Kost ccc5e23a39 debugutils: fix comment typo even more 2010-06-09 12:17:03 +03:00
Stefan Kost fdbf9239b3 docs: update docs (format and search path).
Remove obsolete xml registry cache extension. Tell that content and location is
internal detail. Docuemnt the plugin search order.
2010-06-09 12:15:52 +03:00
Stefan Kost 012cf2862f comments: add a few comments to the sparsely documented plugin loader 2010-06-09 12:15:52 +03:00
Zaheer Abbas Merali 8f1cd236ec debugutils: fix comment typo 2010-06-08 11:41:11 +02:00
Stefan Kost 2d2ec4e3d5 caps: use gst_caps_append_structure_unchecked() macro once more 2010-06-08 12:19:49 +03:00
Stefan Kost c5f85a1cda caps: use a safer name for temporary var. to not shadow one from outer scope 2010-06-08 12:19:22 +03:00