Thiago Santos [Fri, 27 Nov 2009 16:42:36 +0000 (13:42 -0300)]
gstevent: fix docs
Fix flush stops docs, those are serialized, not out of bounds.
Probably a copy and paste mistake.
Stefan Kost [Fri, 27 Nov 2009 14:39:37 +0000 (16:39 +0200)]
docs: fix broken xrefs
Stefan Kost [Fri, 27 Nov 2009 14:39:37 +0000 (16:39 +0200)]
docs: fix broken xrefs
Stefan Kost [Fri, 27 Nov 2009 14:39:01 +0000 (16:39 +0200)]
docs: add missing section to libs-docs
Stefan Kost [Fri, 27 Nov 2009 12:18:02 +0000 (14:18 +0200)]
docs: make links work (needs recent gtk-doc)
Stefan Kost [Fri, 27 Nov 2009 12:17:35 +0000 (14:17 +0200)]
docs: add missing parameter docs
Stefan Kost [Fri, 27 Nov 2009 12:16:54 +0000 (14:16 +0200)]
docs: enable docs for GstObjectClass to fix links
Stefan Kost [Fri, 27 Nov 2009 12:15:08 +0000 (14:15 +0200)]
gstobject: add FIXME-0.11 comments
Stefan Kost [Wed, 25 Nov 2009 16:25:01 +0000 (18:25 +0200)]
docs: better way to link class methods
Stefan Kost [Wed, 25 Nov 2009 16:24:16 +0000 (18:24 +0200)]
docs: use '*' instead of xxx to avoid creating a broekn xref
Stefan Kost [Wed, 25 Nov 2009 15:37:33 +0000 (17:37 +0200)]
docs: fix more bogus xrefs
Stefan Kost [Wed, 25 Nov 2009 15:27:30 +0000 (17:27 +0200)]
docs: add docs for GstPluginFlags
This also makes links to them work.
Tim-Philipp Müller [Wed, 25 Nov 2009 15:39:44 +0000 (15:39 +0000)]
docs: improve GstMixer and GstTuner docs
Mention that elements implementing GstMixer and GstTuner need to be
in the right state before they can be used. Also mention GLib
functions for converting filenames to and from URIs.
Fixes #602877.
Stefan Kost [Wed, 25 Nov 2009 14:44:05 +0000 (16:44 +0200)]
docs: fix xrefs in docs
Fix typos in xrefs, links to non existing functions and rework plural forms.
Stefan Kost [Wed, 25 Nov 2009 12:41:26 +0000 (14:41 +0200)]
docs: remove gtkdoc header as these things don't come up on our docs even
Stefan Kost [Wed, 25 Nov 2009 12:23:53 +0000 (14:23 +0200)]
docs: add missing parameter doc string
Stefan Kost [Wed, 25 Nov 2009 12:21:50 +0000 (14:21 +0200)]
docs: document new event in enum
Stefan Kost [Wed, 25 Nov 2009 12:18:14 +0000 (14:18 +0200)]
docs: fix gtk-doc syntax for doc-blob start
Wim Taymans [Mon, 23 Nov 2009 10:34:07 +0000 (11:34 +0100)]
query: whitespace fixes
Wim Taymans [Mon, 23 Nov 2009 10:33:48 +0000 (11:33 +0100)]
docs: fix grammar
Jan Schmidt [Sat, 21 Nov 2009 15:37:34 +0000 (16:37 +0100)]
basesrc: Add gst_base_src_new_seamless_segment()
Merge new function from resindvd into the primary GstBaseSrc for
starting a new seamless segment.
API: gst_base_src_new_seamless_segment()
Tim-Philipp Müller [Fri, 20 Nov 2009 16:00:47 +0000 (16:00 +0000)]
bytewriter: fix compiler warning
Some gcc versions warn about bytewriter writing to memory accessed
via a const guint8 pointer, despite our explicit cast to guint8 *.
Work around that by using an intermediary variable.
Fixes #598526.
Sebastian Dröge [Fri, 20 Nov 2009 08:33:48 +0000 (09:33 +0100)]
check: Only check for gmp/gsl if building of tests is not disabled
Jan Schmidt [Thu, 19 Nov 2009 18:00:05 +0000 (19:00 +0100)]
basesink: Clamp the base time correctly in position reporting
When clamping the base time, correctly use 'now', instead of
'-now' - the intent is to prevent 'now-base' ever being
negative, which would cause a position report outside the segment.
Fixes: #602419
David Schleef [Mon, 9 Nov 2009 18:52:42 +0000 (10:52 -0800)]
gstplugin: Add C++ escape for gst_plugin_desc define
In order to properly export the gst_plugin_desc symbol
from DLLs in MSVC, it needs to be extern "C".
Tim-Philipp Müller [Thu, 19 Nov 2009 12:59:28 +0000 (12:59 +0000)]
parse/grammar.y: remove unused ERROR define
Tim-Philipp Müller [Thu, 19 Nov 2009 10:29:38 +0000 (10:29 +0000)]
Automatic update of common submodule
From
1861252 to
53a2485
Priit Laes [Mon, 16 Nov 2009 13:47:57 +0000 (15:47 +0200)]
check: fix symbol exporting when building under et_EE locale
[A-Z] regexp fails under et_EE locale because Z in Estonian alphabet is
located after S and therefore characters starting with 'TUV...' are not
in the range anymore.
Fixes bug #602093.
Sebastian Dröge [Wed, 18 Nov 2009 06:59:36 +0000 (07:59 +0100)]
basesink: Handle the new sink-message event
Sebastian Dröge [Wed, 18 Nov 2009 06:52:24 +0000 (07:52 +0100)]
event: API: Add sink-message event
gst_event_new_sink_message()
gst_event_parse_sink_message()
This event is used for sending a GstMessage downstream and synchronized
with the stream, to be posted by the sink once it reaches the sink.
Fixes bug #602275.
Tim-Philipp Müller [Mon, 16 Nov 2009 00:12:22 +0000 (00:12 +0000)]
plugin-scanner: rename plugin-scanner helper binary to gst-plugin-scanner
and install into a different directory $(libexecdir/gstreamer-0.10) so that
everything is versioned properly.
NOTE: run 'make clean' after updating; if you are running an uninstalled setup,
you will need to update your gst-uninstalled script (unless it's symlinked
to gstreamer core master) and exit/enter your uninstalled environment to get
the updated environment. If you are running an installed setup, you should
run 'make uninstall' before merging this change or remove the old
plugin-scanner binary manually.
Fixes #601698.
Tim-Philipp Müller [Wed, 18 Nov 2009 09:10:37 +0000 (09:10 +0000)]
Revert "structure: don't check type twice"
This reverts commit
f864187bf5fdfaf71f2e038949e403a42e6daf0e.
Reverting this as it changes behaviour and the documentation is
ambiguous about whether the caller must check the type first or
not (call must check type vs. returns NULL if not a string). If
GLib has been compiled with G_DISABLE_CHECKS then g_value_get_string()
may return complete garbage even if the value does not contain
a string. Better play it safe, esp. since the extra check is just
an integer comparison. For fundamental types we could return values
from the GValue structure directly if we really wanted to bypass
the extra check.
Stefan Kost [Tue, 17 Nov 2009 15:06:08 +0000 (17:06 +0200)]
structure: don't check type twice
Sebastian Dröge [Tue, 17 Nov 2009 17:35:55 +0000 (18:35 +0100)]
event: Add step event quark
Tim-Philipp Müller [Tue, 17 Nov 2009 10:02:36 +0000 (10:02 +0000)]
gst-uninstalled: add paths for gst-qa-system
Tim-Philipp Müller [Tue, 17 Nov 2009 09:06:48 +0000 (09:06 +0000)]
docs: set GST_PLUGIN_SCANNER when calling gtkdoc-scangobj
Otherwise the docs build won't work properly
Stefan Kost [Mon, 16 Nov 2009 11:58:10 +0000 (13:58 +0200)]
structure: remove some blank lines (previous gst-indent failure)
Stefan Kost [Mon, 16 Nov 2009 11:53:44 +0000 (13:53 +0200)]
structure: use local variable earlier
Stefan Kost [Mon, 16 Nov 2009 11:49:32 +0000 (13:49 +0200)]
structure: don't check enum types twice.
G_VALUE_HOLDS_ENUM(value) is defined as G_TYPE_CHECK_VALUE_TYPE (value,
G_TYPE_ENUM). Just check for the right enum-type right away.
Jan Schmidt [Sat, 14 Nov 2009 22:35:07 +0000 (22:35 +0000)]
check: Add a debug status to the systemclock test
Next time it fails on a buildbot we can see which clock id
return it is getting.
Wim Taymans [Mon, 16 Nov 2009 17:25:45 +0000 (18:25 +0100)]
TODO: remove stepping from TODO
Remove the frame stepping API from the TODO list.
Wim Taymans [Mon, 16 Nov 2009 13:02:07 +0000 (14:02 +0100)]
basesink: fix position reporting
Only update the current stream time after we checked if we got a new step
event. This improves the position reporting by the sink.
See #595958
Sebastian Dröge [Mon, 16 Nov 2009 08:49:46 +0000 (09:49 +0100)]
utils: API: Add multiplication and addition functions for fractions
gst_util_fraction_add()
gst_util_fraction_multiply()
These work on plain integers instead of GValues to
keep the overhead as low as possible.
Sebastian Dröge [Mon, 16 Nov 2009 08:29:10 +0000 (09:29 +0100)]
gstutils: API: Add fraction helper functions
gst_util_greatest_common_divisor()
gst_util_double_to_fraction()
gst_util_fraction_to_double()
Using these instead of going over GValue has much lower overhead.
Also add float<->fraction transform functions for GValue.
Stefan Kost [Fri, 13 Nov 2009 13:45:52 +0000 (15:45 +0200)]
debug: add more debug logging to help tracking parsing errors
Ole André Vadla Ravnås [Fri, 13 Nov 2009 10:42:02 +0000 (11:42 +0100)]
miniobject: avoid race when recycling buffers
Avoid a race where a miniobject is recycled and quickly freed, which causes the
g_type_free_instance() to be called on the same object twice.
Ref the object before calling the finalize method and check if we still need to
free it afterward.
Also add a unit test for this case.
Fixes #601587
Stefan Kost [Thu, 12 Nov 2009 15:02:40 +0000 (17:02 +0200)]
whitespace: remove blanks in doc-comment
Руслан Ижбулатов [Fri, 6 Nov 2009 12:42:57 +0000 (15:42 +0300)]
registry: Import _priv_gst_dll_handle into gstregistry.c
Fixes bug #601668.
Руслан Ижбулатов [Thu, 12 Nov 2009 11:10:06 +0000 (14:10 +0300)]
tests: Do not list libgstcheck as a requirement for tests/examples/manual
Fixes bug #601669.
Jan Schmidt [Wed, 11 Nov 2009 17:12:19 +0000 (17:12 +0000)]
basesink: Fix treating base_time as unsigned in position calculation
Element base_time is a signed quantity, which leads to basesink returning
a position of 0 when dealing with a negative base time - which are quite
legal when clocks (such as the audio clock) are close to 0.
This doesn't manifest in normal pipelines, of course - but can happen
(at least) when manually setting the base time on a pipeline.
Sebastian Dröge [Tue, 10 Nov 2009 17:03:43 +0000 (18:03 +0100)]
registry: API: Add gst_{default,}_registry_get_feature_list_cookie()
This returns the internal feature list cookie, which changes every
time a feature is added or removed. This can be used by elements
to check if they should update their cached feature lists.
Thiago Santos [Tue, 10 Nov 2009 14:55:34 +0000 (11:55 -0300)]
queue2: fix printf format
Cast the variable to gint to conform to the printf format used.
It is casted rather than changing the format because the
message is created with a cast to gint too.
Thiago Santos [Tue, 10 Nov 2009 13:10:56 +0000 (10:10 -0300)]
queue2: avoid crashing due to negative percent
queue2 would crash when using small buffer sizes because
it would overflow when calculating the percentage, resulting
in the buffering GstMessage not being created and trying to be
used. This patch uses a gint64 instead of a gint to do the
percentage math, making it harder to overflow.
Thiago Santos [Tue, 10 Nov 2009 12:52:30 +0000 (09:52 -0300)]
queue2: Fix small doc typo
Tim-Philipp Müller [Tue, 10 Nov 2009 00:57:00 +0000 (00:57 +0000)]
registrychunks: fix compilation with debugging disabled
Add ugly ifdef to fix unused variable warning when compiling with
debug logging disabled.
Stefan Kost [Mon, 9 Nov 2009 14:20:52 +0000 (16:20 +0200)]
planning: add thoughts about foreign registry cache updates
Stefan Kost [Mon, 9 Nov 2009 12:55:54 +0000 (14:55 +0200)]
inspect: allow to get plugin-install-info for all installed plugins
If no plugin is given, print the info for all plugins. This can be used as a
starting point to generate a profile about what the gstreamer installation can
potentialy handle (e.g. for MTP or DLNA).
Wim Taymans [Mon, 9 Nov 2009 11:42:35 +0000 (12:42 +0100)]
docs: don't forget to unref the pad
Tim-Philipp Müller [Sat, 7 Nov 2009 20:22:49 +0000 (20:22 +0000)]
gst-launch: wake up less often to check if we've been interrupted
Check if we've been interrupted only four times per second instead
of twenty times per second, to wake up the cpu less often and
save power (see bug #600922).
Tim-Philipp Müller [Thu, 5 Nov 2009 21:18:26 +0000 (21:18 +0000)]
gstconfig.h: add define to force printf format checking for debug messages
Force printf format checking for debug messages if GST_DISABLE_PRINTF_EXTENSION
is defined. This is useful to quickly check code for printf format mismatches
in debugging messages that would usually not be caught (with glibc+gcc and
printf extensions being used).
To use: make clean; make CFLAGS='-g -O2 -DGST_DISABLE_PRINTF_EXTENSION'
Edward Hervey [Thu, 5 Nov 2009 20:09:28 +0000 (21:09 +0100)]
tests: Make sure we use the local libgstbase and not a stray outside one.
Theoretically we should also do this for all local libraries to make sure
we don't test with a 'stray' outside library.
Tim-Philipp Müller [Thu, 5 Nov 2009 18:36:38 +0000 (18:36 +0000)]
docs: fix typo
Tim-Philipp Müller [Thu, 5 Nov 2009 15:59:31 +0000 (15:59 +0000)]
taglist: avoid looking up GstTagInfo twice in a row
Pass the info structure to our internal function if already available.
Also clean up warnings for unknown tags.
Edward Hervey [Thu, 5 Nov 2009 17:55:30 +0000 (18:55 +0100)]
gstregistrychunks: We're certain plugin_name is an intern string.
The only place this method is called from creates the plugin_name argument
with g_intern_string().
Shaves off 1% from registry loading.
Bastien Nocera [Wed, 4 Nov 2009 19:33:58 +0000 (19:33 +0000)]
implement buffering-left argument to buffer messages
Using the current fill level of the queue, and the average input
rate, we can determine how long it will take to finish downloading
the whole stream to the temporary file.
Fixes #600726
Wim Taymans [Thu, 5 Nov 2009 14:13:04 +0000 (15:13 +0100)]
query: whitespace fixes
Wim Taymans [Thu, 5 Nov 2009 13:02:28 +0000 (14:02 +0100)]
ghostpad: fix locking
Stefan Kost [Thu, 5 Nov 2009 12:29:50 +0000 (14:29 +0200)]
ghostpad: don't release mutex twice
Stefan Kost [Thu, 5 Nov 2009 12:29:12 +0000 (14:29 +0200)]
ghostpad: skip type check in internal api
Wim Taymans [Thu, 5 Nov 2009 11:36:10 +0000 (12:36 +0100)]
pad: indentation fix
Stefan Kost [Thu, 5 Nov 2009 10:54:32 +0000 (12:54 +0200)]
pad: rename new api from _refed to _reffed.
Due to popular demand rename the new api as we still can.
API: gst_pad_get_caps_reffed(), gst_pad_peer_get_caps_reffed()
Stefan Kost [Wed, 4 Nov 2009 20:42:52 +0000 (22:42 +0200)]
element: access padtemplate list directly to avoid call and type check.
Sebastian Dröge [Wed, 4 Nov 2009 17:58:26 +0000 (18:58 +0100)]
event: Add a FIXME 0.11 for having flush events that don't reset running time
Jan Schmidt [Wed, 4 Nov 2009 17:52:21 +0000 (17:52 +0000)]
registrychunks: Fix a printf compile warning on 64-bit platforms
Sebastian Dröge [Wed, 4 Nov 2009 16:15:59 +0000 (17:15 +0100)]
ghostpad: Make sure that nobody sets the proxypad or ghostpad itself as target
Doing this will lead to very interesting crashes, like stack overflows.
Jan Schmidt [Wed, 4 Nov 2009 11:35:46 +0000 (11:35 +0000)]
plugin loader: Don't fail after a short read/write
The logic to handle short reads/writes was incorrect, causing the
packet handler to attempt to handle incomplete packets.
Grow the packet transmit buffer in proportion to observed usage,
causing fewer reallocs.
Add some more debug in the registry chunks code.
Jan Schmidt [Wed, 4 Nov 2009 01:51:38 +0000 (01:51 +0000)]
plugin loader: Don't crash on bogus plugin details
When invalid registry chunks are received from the child, and parsing
fails, don't access an invalid plugin pointer. Instead attempt to
figure out which plugin caused the problem and blacklist it.
Jan Schmidt [Wed, 4 Nov 2009 01:54:36 +0000 (01:54 +0000)]
gst-indent: Use the same logic to find gnuindent as the git hook
Stefan Kost [Tue, 3 Nov 2009 15:30:14 +0000 (17:30 +0200)]
build: include stdio.h for FILE
Tim-Philipp Müller [Tue, 3 Nov 2009 01:18:42 +0000 (01:18 +0000)]
docs: add another example to the gst-launch man page
Add an example that shows how to refer to specific pads by name
when constructing a pipeline string. Fixes #600382.
Tim-Philipp Müller [Mon, 2 Nov 2009 08:48:51 +0000 (08:48 +0000)]
gsttypefind: avoid one more run-time type check
Sebastian Dröge [Mon, 2 Nov 2009 08:22:37 +0000 (09:22 +0100)]
structure: API: Add gst_structure_id_has_field{,_typed}
Edward Hervey [Mon, 2 Nov 2009 07:28:20 +0000 (08:28 +0100)]
gsttypefind: Use _CAST variants when the type has alredy been checked.
This avoids checking the type n_typefinders * 4 times when loading the
registry.
Sebastian Dröge [Sun, 1 Nov 2009 10:24:40 +0000 (11:24 +0100)]
ghostpad: Implement iterate internal links
The internally linked pad of the ghost pad is its
proxy pad, which is the pad that is linked to the ghost
pads target.
Sebastian Dröge [Sat, 31 Oct 2009 15:56:17 +0000 (16:56 +0100)]
parser: Make sure that signal user data is freed by setting a GClosureNotify
...instead of using a second mechanism and storing the user data
inside the GObjects qdata.
Sebastian Dröge [Sat, 31 Oct 2009 15:49:03 +0000 (16:49 +0100)]
parser: Use GSlice for allocating the structs
Sebastian Dröge [Sat, 31 Oct 2009 15:43:26 +0000 (16:43 +0100)]
parser: Always get DelayedLink information from the objects qdata
This makes sure that it is always valid.
Edward Hervey [Sat, 31 Oct 2009 08:48:19 +0000 (09:48 +0100)]
po: queue2 has moved to core
Sebastian Dröge [Thu, 29 Oct 2009 10:41:33 +0000 (11:41 +0100)]
queue2: Add to the docs
Sebastian Dröge [Thu, 29 Oct 2009 10:38:21 +0000 (11:38 +0100)]
queue2: Use "Queue 2" as long name
Sebastian Dröge [Thu, 29 Oct 2009 10:35:08 +0000 (11:35 +0100)]
queue2: Use GST_BOILERPLATE_FULL() and add pad templates/set details in base_init
Sebastian Dröge [Thu, 29 Oct 2009 10:30:57 +0000 (11:30 +0100)]
queue2: Use gst_element_class_set_details_simple()
Sebastian Dröge [Thu, 29 Oct 2009 10:30:11 +0000 (11:30 +0100)]
queue2: Integrate into coreplugins
Sebastian Dröge [Thu, 29 Oct 2009 10:21:36 +0000 (11:21 +0100)]
queue2: Move struct declarations to a separate header
Sebastian Dröge [Thu, 29 Oct 2009 10:18:20 +0000 (11:18 +0100)]
queue2: Move queue2 to gstreamer coreplugins
Fixes bug #599996.
Tim-Philipp Müller [Wed, 28 Oct 2009 00:59:35 +0000 (00:59 +0000)]
Remove GST_DEBUG_FUNCPTR where they're pointless
There's not much point in using GST_DEBUG_FUNCPTR with GObject
virtual functions such as get_property, set_propery, finalize and
dispose, since they'll never be used by anyone anyway. Saves a
few bytes and possibly a sixteenth of a polar bear.
Wim Taymans [Tue, 27 Oct 2009 14:23:00 +0000 (15:23 +0100)]
queue2: add custom acceptcaps function
Mark Nauwelaerts [Thu, 6 Aug 2009 10:18:36 +0000 (12:18 +0200)]
queue2: post error message when pausing task if so appropriate
If a downstream element returns an error while upstream has already
put all data into queue2 (including EOS), upstream will no longer
chain into queue2, so it is up to queue2 to perform some
EOS handling / message posting in such cases. See #589991.
Wim Taymans [Tue, 14 Jul 2009 15:03:35 +0000 (17:03 +0200)]
queue2: fix leak and improve buffering
Keep track of the max requested position and compare this to the write position
in the temp file to get the current amount of buffered data.
Fix memleak of all incomming buffers.
Fixes #588551
Wim Taymans [Fri, 10 Jul 2009 20:01:39 +0000 (21:01 +0100)]
queue2: flush differently, avoiding deadlocks
Don't flush the file by closing and opening it but instead use g_freopen. This
avoids a deadlock in shutdown because we emit the temp-location property change
with the wrong lock held.