Sebastian Dröge [Wed, 24 Oct 2012 09:58:35 +0000 (11:58 +0200)]
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 <havard.graff@tandberg.com>.
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.
Douglas Bagnall [Fri, 12 Apr 2013 01:50:39 +0000 (13:50 +1200)]
manual: Patch manual to refer to porting guide
https://bugzilla.gnome.org/show_bug.cgi?id=697845
Sreerenj Balachandran [Sat, 13 Apr 2013 16:43:10 +0000 (19:43 +0300)]
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
Tim-Philipp Müller [Sun, 14 Apr 2013 16:54:22 +0000 (17:54 +0100)]
Automatic update of common submodule
From 2736592 to 3cb3d3c
Tim-Philipp Müller [Sun, 14 Apr 2013 16:25:35 +0000 (17:25 +0100)]
Automatic update of common submodule
From aed87ae to 2736592
Tim-Philipp Müller [Sun, 14 Apr 2013 10:33:41 +0000 (11:33 +0100)]
printf: disable some unused printf variants
Tim-Philipp Müller [Sun, 14 Apr 2013 10:23:10 +0000 (11:23 +0100)]
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
Tim-Philipp Müller [Sat, 13 Apr 2013 11:18:28 +0000 (12:18 +0100)]
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
Tim-Philipp Müller [Sat, 13 Apr 2013 11:00:12 +0000 (12:00 +0100)]
gst-inspect: only add a '*' for non-'gpointer' pointers
Spotted by Jose Antonio Santos Cadena.
https://bugzilla.gnome.org/show_bug.cgi?id=697791
Gwenole Beauchesne [Fri, 12 Apr 2013 12:48:29 +0000 (14:48 +0200)]
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 <gwenole.beauchesne@intel.com>
https://bugzilla.gnome.org/show_bug.cgi?id=697872
Tim-Philipp Müller [Sat, 13 Apr 2013 10:35:49 +0000 (11:35 +0100)]
po: add new translatable strings
Tim-Philipp Müller [Fri, 12 Apr 2013 22:58:52 +0000 (23:58 +0100)]
printf: don't build if debugging subsystem was disabled
Tim-Philipp Müller [Wed, 10 Apr 2013 10:51:37 +0000 (11:51 +0100)]
printf: deal with some of the HAVE_FOO used in the printf code
Probably needs some more work for MSVC.
Tim-Philipp Müller [Mon, 8 Apr 2013 18:42:27 +0000 (19:42 +0100)]
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
Tim-Philipp Müller [Sun, 7 Apr 2013 19:11:21 +0000 (20:11 +0100)]
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.
Tim-Philipp Müller [Sun, 7 Apr 2013 17:21:00 +0000 (18:21 +0100)]
printf: fix up dodgy use of #if HAVE_FOO and #if !HAVE_FOO
Should use #ifdef and #ifndef.
Tim-Philipp Müller [Sun, 7 Apr 2013 16:36:29 +0000 (17:36 +0100)]
printf: mark internal functions as internal
Tim-Philipp Müller [Sun, 7 Apr 2013 16:29:02 +0000 (17:29 +0100)]
printf: skip pointer extension signifier chars after %p
So they don't get printed after the serialised pointer string.
Tim-Philipp Müller [Sun, 7 Apr 2013 16:21:10 +0000 (17:21 +0100)]
printf: don't leak serialised pointer extension strings
Tim-Philipp Müller [Sun, 7 Apr 2013 16:02:55 +0000 (17:02 +0100)]
printf: handle old GST_PTR_FORMAT %P and GST_SEGMENT_FORMAT %Q defines too
For binary backwards compatibility.
Tim-Philipp Müller [Sun, 7 Apr 2013 15:41:40 +0000 (16:41 +0100)]
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
Tim-Philipp Müller [Sat, 30 Mar 2013 18:28:38 +0000 (18:28 +0000)]
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
Tim-Philipp Müller [Sat, 30 Mar 2013 17:20:13 +0000 (17:20 +0000)]
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
Tim-Philipp Müller [Sat, 30 Mar 2013 15:13:32 +0000 (15:13 +0000)]
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
Wim Taymans [Fri, 12 Apr 2013 15:13:15 +0000 (16:13 +0100)]
taglist: avoid triggering an assertion
When deserialization of the structure fails, return a NULL taglist instead of
asserting.
Jose Antonio Santos Cadenas [Thu, 11 Apr 2013 12:54:32 +0000 (14:54 +0200)]
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
Tim-Philipp Müller [Thu, 11 Apr 2013 21:32:39 +0000 (22:32 +0100)]
docs: document type change of playbin's connection-speed property in porting docs
Wim Taymans [Thu, 11 Apr 2013 13:31:01 +0000 (14:31 +0100)]
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().
Wim Taymans [Thu, 11 Apr 2013 13:04:45 +0000 (14:04 +0100)]
nettimeprovider: notify of changed bound address
Notify when the bound address is known, just like the port.
Wim Taymans [Thu, 11 Apr 2013 12:55:47 +0000 (13:55 +0100)]
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.
Douglas Bagnall [Thu, 11 Apr 2013 03:05:08 +0000 (15:05 +1200)]
Toggle upstream and downstream in RECONFIGURE paragraph.
Douglas Bagnall [Wed, 10 Apr 2013 22:11:25 +0000 (10:11 +1200)]
GstCollectPads documentation: gst_collect_pads_read is gone.
Stefan Sauer [Wed, 10 Apr 2013 19:24:38 +0000 (21:24 +0200)]
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.
Olivier Crête [Tue, 9 Apr 2013 23:37:06 +0000 (19:37 -0400)]
capsfeatures: Init debug category before ever using it
Stefan Sauer [Tue, 9 Apr 2013 18:59:36 +0000 (20:59 +0200)]
Automatic update of common submodule
From 04c7a1e to aed87ae
Руслан Ижбулатов [Wed, 3 Apr 2013 17:32:54 +0000 (21:32 +0400)]
Use xlstproc instead of docbook2html
Tim-Philipp Müller [Tue, 9 Apr 2013 09:17:45 +0000 (10:17 +0100)]
netclientclock: bind socket before querying local address
Fails on windows otherwise.
https://bugzilla.gnome.org/show_bug.cgi?id=697608
Руслан Ижбулатов [Mon, 8 Apr 2013 09:14:35 +0000 (13:14 +0400)]
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
Руслан Ижбулатов [Mon, 8 Apr 2013 11:30:07 +0000 (15:30 +0400)]
clock: Do use HAVE_CLOCK_GETTIME
Fixes #697549
Руслан Ижбулатов [Mon, 8 Apr 2013 10:42:15 +0000 (14:42 +0400)]
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
Руслан Ижбулатов [Tue, 9 Apr 2013 05:22:39 +0000 (09:22 +0400)]
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
David Schleef [Sat, 6 Apr 2013 23:09:54 +0000 (16:09 -0700)]
gst-launch: Fix space in fault message
Sebastian Dröge [Sat, 6 Apr 2013 20:10:58 +0000 (22:10 +0200)]
capsfeatures: Copy ANY flag when copying caps features too
Sebastian Dröge [Sat, 6 Apr 2013 19:49:25 +0000 (21:49 +0200)]
caps: Handle ANY caps features properly in more places
Sebastian Dröge [Sat, 6 Apr 2013 19:21:39 +0000 (21:21 +0200)]
caps: Add test for operations on caps with ANY features
Sebastian Dröge [Sat, 6 Apr 2013 19:09:49 +0000 (21:09 +0200)]
caps: Properly handle ANY caps features in caps operations
Stefan Sauer [Fri, 5 Apr 2013 19:10:48 +0000 (21:10 +0200)]
bus: update signal docs for gst_bus_enable_sync_message_emission()
Wim Taymans [Fri, 5 Apr 2013 08:15:37 +0000 (10:15 +0200)]
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.
Tim-Philipp Müller [Thu, 4 Apr 2013 22:12:52 +0000 (23:12 +0100)]
caps: fix caps feature leak
Fixes leaks in 14 core unit tests including
gst/gstcaps.
Wim Taymans [Thu, 4 Apr 2013 17:16:23 +0000 (19:16 +0200)]
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
Wim Taymans [Thu, 4 Apr 2013 17:07:29 +0000 (19:07 +0200)]
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
Wim Taymans [Thu, 4 Apr 2013 17:06:35 +0000 (19:06 +0200)]
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
Wim Taymans [Thu, 4 Apr 2013 15:59:10 +0000 (17:59 +0200)]
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.
Wim Taymans [Thu, 4 Apr 2013 15:46:09 +0000 (17:46 +0200)]
caps: update docs, is_subset() works now
Wim Taymans [Thu, 4 Apr 2013 14:39:23 +0000 (16:39 +0200)]
bufferpool: fix docs
Wim Taymans [Thu, 4 Apr 2013 14:20:24 +0000 (16:20 +0200)]
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()
Wim Taymans [Thu, 4 Apr 2013 13:45:23 +0000 (15:45 +0200)]
pad: clarify docs
Wim Taymans [Thu, 4 Apr 2013 13:45:15 +0000 (15:45 +0200)]
pad: improve debug
Wim Taymans [Thu, 4 Apr 2013 08:17:30 +0000 (10:17 +0200)]
segment: don't WARN, just DEBUG
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=696911
Nicolas Dufresne [Sat, 30 Mar 2013 11:06:59 +0000 (11:06 +0000)]
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
Wim Taymans [Wed, 3 Apr 2013 15:29:51 +0000 (17:29 +0200)]
defs: update
Wim Taymans [Wed, 3 Apr 2013 14:02:34 +0000 (16:02 +0200)]
gst: add stream flags
Brendan Long [Wed, 3 Apr 2013 00:17:00 +0000 (18:17 -0600)]
porting-to-1.0.txt: subtitle text media types changed as well
https://bugzilla.gnome.org/show_bug.cgi?id=697153
Tim-Philipp Müller [Tue, 2 Apr 2013 22:51:06 +0000 (23:51 +0100)]
docs: more since markers and other docs fixes
Tim-Philipp Müller [Tue, 2 Apr 2013 22:21:39 +0000 (23:21 +0100)]
docs: add since markers to capsfeatures docs
Tim-Philipp Müller [Tue, 2 Apr 2013 22:18:42 +0000 (23:18 +0100)]
scripts: add some more modules to git-update.sh
https://bugzilla.gnome.org/show_bug.cgi?id=697058
Tim-Philipp Müller [Tue, 2 Apr 2013 22:04:51 +0000 (23:04 +0100)]
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
Sebastian Dröge [Tue, 2 Apr 2013 20:13:22 +0000 (22:13 +0200)]
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.
Tim-Philipp Müller [Mon, 1 Apr 2013 21:13:10 +0000 (22:13 +0100)]
info: minor cosmetic changes
Let's not use ugly leading underscores for
static functions.
Tim-Philipp Müller [Mon, 1 Apr 2013 20:23:21 +0000 (21:23 +0100)]
info: fix object printing of caps features in debug log
Stefan Sauer [Mon, 1 Apr 2013 14:38:43 +0000 (16:38 +0200)]
draft-tracing: update draft design with timer ideas
Stefan Sauer [Sat, 30 Mar 2013 16:03:44 +0000 (17:03 +0100)]
info: refactor pretty printing objects
Extract formatters into local functions. Change the structure filtering so that
it works for taglists too.
Stefan Sauer [Sat, 30 Mar 2013 15:39:38 +0000 (16:39 +0100)]
element: make post_message and query more alike
Sebastian Dröge [Mon, 1 Apr 2013 08:20:01 +0000 (10:20 +0200)]
gst-inspect: Print caps features too
Sebastian Dröge [Mon, 1 Apr 2013 08:19:25 +0000 (10:19 +0200)]
capsfeatures: For copying features it's not required to have no parent refcount
Sebastian Dröge [Mon, 1 Apr 2013 08:19:01 +0000 (10:19 +0200)]
caps: Set features' parent refcount in gst_caps_set_features() too
Sebastian Dröge [Mon, 1 Apr 2013 08:18:39 +0000 (10:18 +0200)]
caps: Set sysmem features if explicitely requested
Sebastian Dröge [Sun, 31 Mar 2013 17:09:46 +0000 (19:09 +0200)]
design: Add the caps features and describe how the caps operations actually work
Sebastian Dröge [Sat, 30 Mar 2013 14:35:19 +0000 (15:35 +0100)]
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.
Tim-Philipp Müller [Sun, 31 Mar 2013 14:30:19 +0000 (15:30 +0100)]
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
Tim-Philipp Müller [Sun, 6 Jan 2013 20:27:54 +0000 (20:27 +0000)]
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
Sebastian Dröge [Sun, 31 Mar 2013 09:26:32 +0000 (11:26 +0200)]
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.
Stefan Sauer [Sat, 30 Mar 2013 13:04:28 +0000 (14:04 +0100)]
design: add initial tracing design doc
Sebastian Dröge [Sat, 30 Mar 2013 10:47:29 +0000 (11:47 +0100)]
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.
Josep Torra [Sat, 30 Mar 2013 09:24:27 +0000 (10:24 +0100)]
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
Stefan Sauer [Fri, 29 Mar 2013 18:01:59 +0000 (19:01 +0100)]
childproxy: fix gir warning
Edward Hervey [Fri, 29 Mar 2013 17:49:14 +0000 (18:49 +0100)]
Revert "pwg: Fix example"
This reverts commit
5d64f27d881274a40f0441bb8c5b3816fdfc5b9e.
*sigh*
Edward Hervey [Tue, 6 Nov 2012 08:41:58 +0000 (09:41 +0100)]
pwg: Fix example
Edward Hervey [Sun, 11 Nov 2012 12:52:25 +0000 (13:52 +0100)]
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.
Sebastian Dröge [Thu, 28 Mar 2013 14:35:13 +0000 (15:35 +0100)]
gst: Add new GstContext miniobject for sharing contexts in a pipeline
Stefan Sauer [Thu, 28 Mar 2013 15:42:50 +0000 (16:42 +0100)]
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.
Mark Nauwelaerts [Wed, 27 Mar 2013 17:25:08 +0000 (18:25 +0100)]
baseparse: reset next_pts upon SEGMENT event
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=691481
Mark Nauwelaerts [Tue, 26 Feb 2013 18:58:49 +0000 (19:58 +0100)]
baseparse: more inter-timestamp tracking
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=691481
Olivier Crête [Tue, 26 Mar 2013 23:22:18 +0000 (19:22 -0400)]
buffer: Add annotations and pygi friendly extraction function
API: gst_buffer_extract_dup
Wim Taymans [Wed, 27 Mar 2013 16:08:51 +0000 (17:08 +0100)]
porting: hopefully clarify a little
David Schleef [Tue, 26 Mar 2013 01:11:54 +0000 (18:11 -0700)]
Update docs for gst_pad_create_stream_id_printf()
To indicate that format strings should be alpha sortable.
Sebastian Dröge [Mon, 25 Mar 2013 08:16:05 +0000 (09:16 +0100)]
caps: Add unit test for GST_CAPS_{ANY,NONE} and GST_STATIC_CAPS_{ANY,NONE}
https://bugzilla.gnome.org/show_bug.cgi?id=696435
Sebastian Dröge [Mon, 25 Mar 2013 08:19:24 +0000 (09:19 +0100)]
caps: Fix gst_static_caps_get(GST_STATIC_CAPS_NONE)
https://bugzilla.gnome.org/show_bug.cgi?id=696435
Nicolas Dufresne [Fri, 22 Mar 2013 01:00:54 +0000 (21:00 -0400)]
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
Tim-Philipp Müller [Sun, 24 Mar 2013 17:53:35 +0000 (17:53 +0000)]
toc: some documentation updates