Wim Taymans [Tue, 7 Dec 2010 17:14:38 +0000 (18:14 +0100)]
pad: remove get_caps_reffed variants
Make the _get_caps functions behave like the _get_caps_reffed variants and
remove the _reffed variants. This means that _get_caps doesn't return a writable
caps anymore and an explicit _make_writable() is needed before modifying the
caps.
Wim Taymans [Tue, 7 Dec 2010 17:12:53 +0000 (18:12 +0100)]
porting: update porting doc
Wim Taymans [Tue, 7 Dec 2010 15:52:47 +0000 (16:52 +0100)]
pad: Clean up .h file
Wim Taymans [Tue, 7 Dec 2010 14:53:56 +0000 (15:53 +0100)]
Merge branch 'master' into 0.11
Wim Taymans [Tue, 7 Dec 2010 14:33:04 +0000 (15:33 +0100)]
element: rework GstElementDetails
Clean up the GstElement structure
Replace GstElementDetails with metadata
Wim Taymans [Tue, 7 Dec 2010 14:31:27 +0000 (15:31 +0100)]
plugin: remove deprecated methods
Remove more deprecated methods and fix unit test.
Wim Taymans [Tue, 7 Dec 2010 14:21:06 +0000 (15:21 +0100)]
check: remove deprecated tests
Wim Taymans [Tue, 7 Dec 2010 14:20:12 +0000 (15:20 +0100)]
check: fix object unit test
Wim Taymans [Tue, 7 Dec 2010 14:19:34 +0000 (15:19 +0100)]
object: fix docs
Edward Hervey [Tue, 7 Dec 2010 12:19:10 +0000 (13:19 +0100)]
libs: Add -I$(top_srcdir)/libs to g-ir-scanner commands
Without this, it will fail finding all headers.
Stefan Kost [Tue, 7 Dec 2010 10:57:40 +0000 (12:57 +0200)]
plugin: recommend "--gst-disable-registry-fork" as well
Disabling forking helps with debugging the cause of the crash in gdb.
Stefan Kost [Tue, 7 Dec 2010 10:56:44 +0000 (12:56 +0200)]
docs: some notes about our plugin docs workflow
Wim Taymans [Tue, 7 Dec 2010 10:58:34 +0000 (11:58 +0100)]
object: Removed deprecated fields and methods
Make GstObject extend from GInitiallyUnowned, remove the FLOATING flag and use
GObject methods for managing the floating ref.
Remove class lock, it was a workaround for a glib < 2.8 bug.
Remove the parent-set and parent-unset signals, attempt to implement with notify
but disabled because deadlocks in deep-notify.
Wim Taymans [Mon, 6 Dec 2010 19:03:46 +0000 (20:03 +0100)]
porting: mention removal of protocol property
Wim Taymans [Mon, 6 Dec 2010 18:40:03 +0000 (19:40 +0100)]
libs: remove deprecated code
Wim Taymans [Mon, 6 Dec 2010 18:24:30 +0000 (19:24 +0100)]
docs: update porting doc
Wim Taymans [Mon, 6 Dec 2010 18:18:31 +0000 (19:18 +0100)]
remove deprecated symbols and methods
Wim Taymans [Mon, 6 Dec 2010 12:51:50 +0000 (13:51 +0100)]
porting: Add porting doc
Wim Taymans [Mon, 6 Dec 2010 12:48:31 +0000 (13:48 +0100)]
plan: fix typo
Wim Taymans [Thu, 11 Nov 2010 09:38:57 +0000 (10:38 +0100)]
plan: add something about GVariant registry
Wim Taymans [Mon, 8 Nov 2010 17:39:39 +0000 (18:39 +0100)]
add some use-cases
Wim Taymans [Mon, 8 Nov 2010 13:08:36 +0000 (14:08 +0100)]
more updates
Wim Taymans [Mon, 8 Nov 2010 11:14:12 +0000 (12:14 +0100)]
more updates
Wim Taymans [Mon, 8 Nov 2010 10:18:05 +0000 (11:18 +0100)]
more updates
Wim Taymans [Thu, 4 Nov 2010 18:30:58 +0000 (19:30 +0100)]
work on todo list for 0.11 work
Wim Taymans [Mon, 6 Dec 2010 12:21:45 +0000 (13:21 +0100)]
more 0.10 -> 0.11
Wim Taymans [Mon, 6 Dec 2010 11:03:29 +0000 (12:03 +0100)]
configure: open 0.11 branch
Wim Taymans [Mon, 6 Dec 2010 10:18:01 +0000 (11:18 +0100)]
poll: return wakeup event in GPollFD
Mark Nauwelaerts [Mon, 6 Dec 2010 10:07:38 +0000 (11:07 +0100)]
pad: add some debug to fast push path
... so we don't loose track at times it is needed the most.
Edward Hervey [Sun, 5 Dec 2010 14:58:48 +0000 (15:58 +0100)]
basesink: Don't forget to unref the cached ClockId
Edward Hervey [Sun, 5 Dec 2010 13:46:28 +0000 (14:46 +0100)]
gstcheck: Don't check pad refcount too early
Because of the new pad caching system, the peer pad might still
have a reference on a pad. We therefore delay the refcount checking
til 'after' we unlink the pad from any potential peer.
Edward Hervey [Sun, 5 Dec 2010 13:11:45 +0000 (14:11 +0100)]
gstbin: Make element names clearer in debug statements
Replaces confusing messages like:
"Name name is not unique in bin bin, not adding"
by
"Name 'name' is not unique in bin 'bin', not adding"
David Schleef [Sun, 5 Dec 2010 05:06:34 +0000 (21:06 -0800)]
registry: Fix permissions if umask is broken
Fixes: #564056.
Tim-Philipp Müller [Sat, 4 Dec 2010 14:23:59 +0000 (14:23 +0000)]
build: remove trailing whitespaces after backslash in Makefile.am
Koop Mast [Sat, 4 Dec 2010 13:14:39 +0000 (13:14 +0000)]
configure: fix test so it works with FreeBSD's /bin/sh
Use '=' instead of '=='. Fixes:
configure: working c++ compiler found: yes
test: xyes: unexpected operator
http://bugzilla-attachments.gnome.org/attachment.cgi?id=175692
David Schleef [Fri, 3 Dec 2010 19:29:30 +0000 (11:29 -0800)]
Use g_snprintf() instead of snprintf()
Benjamin Gaignard [Fri, 3 Dec 2010 15:44:23 +0000 (16:44 +0100)]
Add build system for Android
Wim Taymans [Fri, 3 Dec 2010 15:02:09 +0000 (16:02 +0100)]
clock: init variables in _reinit()
Properly initialize variables in _reinit() too
Wim Taymans [Thu, 21 Oct 2010 16:08:51 +0000 (18:08 +0200)]
clock: make sync clock wait lockfree
Make the common case lockfree.
Tim-Philipp Müller [Fri, 3 Dec 2010 12:04:23 +0000 (12:04 +0000)]
binaryregistry: use function introduced in GLib 2.22 unconditionally
Wim Taymans [Fri, 3 Dec 2010 11:42:10 +0000 (12:42 +0100)]
poll: small cleanups
Wim Taymans [Wed, 3 Nov 2010 17:38:11 +0000 (18:38 +0100)]
poll: make sure we remove the readfd messages
Wim Taymans [Wed, 3 Nov 2010 17:16:08 +0000 (18:16 +0100)]
poll: add method to get a GPollFD
Wim Taymans [Wed, 3 Nov 2010 16:56:24 +0000 (17:56 +0100)]
poll: Refactor and make more lockfree
Refactor the wakeup of the poll thread.
Always make a control socket to make things easier.
Make more methods lockfree.
Wim Taymans [Thu, 21 Oct 2010 00:02:29 +0000 (02:02 +0200)]
poll: move lock to where it makes more sense
Wim Taymans [Wed, 20 Oct 2010 23:15:44 +0000 (01:15 +0200)]
poll: make timer polls lockfree
Make sure we don't take a mutex in the normal code path of the timer
poll.
Mark Nauwelaerts [Thu, 2 Dec 2010 16:51:58 +0000 (17:51 +0100)]
multiqueue: return upon input when already eos
... rather than hanging incoming thread (as considered full in eos).
Mark Nauwelaerts [Thu, 2 Dec 2010 16:49:04 +0000 (17:49 +0100)]
caps: fix doc typo
Mark Nauwelaerts [Sat, 16 Oct 2010 14:16:17 +0000 (16:16 +0200)]
gst-inspect: remove some commented code
Stefan Kost [Fri, 3 Dec 2010 11:52:03 +0000 (13:52 +0200)]
gstobject: add stdio.h for snprint
Edward Hervey [Fri, 3 Dec 2010 10:27:17 +0000 (11:27 +0100)]
pipeline: Use an object as first argument to GST_WARNING_OBJECT
Edward Hervey [Sat, 11 Apr 2009 13:04:41 +0000 (15:04 +0200)]
micro-optim: if (x) is cheaper than if (x > 0) for unsigned integers
Edward Hervey [Fri, 10 Apr 2009 07:01:22 +0000 (09:01 +0200)]
gstquery: Use structure property directly, avoid function variable.
All functions in this file can access the structure field of a query directly.
This avoids having to call gst_query_get_structure() to get it, along with being
able to remove some function variables that were used to store the result of that
function.
Edward Hervey [Fri, 10 Apr 2009 06:51:02 +0000 (08:51 +0200)]
gstinfo: remove useless ternary operator usage.
Edward Hervey [Tue, 14 Sep 2010 11:08:57 +0000 (13:08 +0200)]
gstevent: Use structure property directly, avoid function variable.
All functions in this file can access the structure field of an event directly.
This avoids having to call gst_query_get_structure() to get it, along with being
able to remove some function variables that were used to store the result of that
function.
Wim Taymans [Fri, 3 Dec 2010 10:19:27 +0000 (11:19 +0100)]
pad: add push cache to bufferlists
Add the push cahce for the bufferlist push code path as well.
Wim Taymans [Fri, 3 Dec 2010 10:11:24 +0000 (11:11 +0100)]
pad: don't cache the peer chainfunc
There is no need to cache the peer chainfunction as we can just as efficiently
get to it from the peer object. Also not caching the chain function works better
because then we automatically get the new chainfunctions when they change.
Wim Taymans [Fri, 3 Dec 2010 09:52:39 +0000 (10:52 +0100)]
pad: clear pad cache when installing probes
Move the method to clear the pad cache into _private.h
Clear the pad cache when installing pad probes.
Wim Taymans [Wed, 20 Oct 2010 15:11:11 +0000 (17:11 +0200)]
pad: explicitly inline some functions
Wim Taymans [Wed, 13 Oct 2010 00:48:56 +0000 (02:48 +0200)]
pad: remove unused variable
Wim Taymans [Wed, 13 Oct 2010 00:42:23 +0000 (02:42 +0200)]
pad: invalidate caches on flush and pad block
Wim Taymans [Wed, 13 Oct 2010 00:20:43 +0000 (02:20 +0200)]
pad: don't unref NULL caps
Wim Taymans [Wed, 13 Oct 2010 00:17:28 +0000 (02:17 +0200)]
pad: add invalidate function
More small optimisations, remove the unneeded valid boolean.
Add function to invalide the cache.
Invalidate the cache on unlink.
Wim Taymans [Tue, 12 Oct 2010 23:37:52 +0000 (01:37 +0200)]
pad: small cleanup
Wim Taymans [Tue, 12 Oct 2010 23:25:27 +0000 (01:25 +0200)]
pad: improve pad push caching
Build the cache while we push data. When we don't have a cache, we run the
slowpath and collect cacheable properties. When all conditions are met, keep the
cached data around so that we can more efficiently push data around.
Wim Taymans [Tue, 12 Oct 2010 10:29:49 +0000 (12:29 +0200)]
pad: prototype of pad push cache
Prototype of how we can cache the peer and caps for a pad link.
Stefan Kost [Fri, 3 Dec 2010 10:23:27 +0000 (12:23 +0200)]
docs: fix previous extract.pl commit
Make it also work in the srcdir=builddir case again.
Wim Taymans [Wed, 20 Oct 2010 09:58:06 +0000 (11:58 +0200)]
task: avoid task lock for each iteration
Make the task state an atomic variable so that we can avoid taking and releasing
the task lock for each iteration.
Stefan Kost [Fri, 3 Dec 2010 08:18:19 +0000 (10:18 +0200)]
docs: fix example matching in extract.pl
When building with $srcdir != $builddir output would contain the builddir path.
Strip the path when scanning the xml for the example markers.
Stefan Kost [Fri, 19 Nov 2010 13:06:05 +0000 (15:06 +0200)]
docs: query doc improvements
More xrefs. Mentioned that some queries need a running pipeline.
Stefan Kost [Fri, 19 Nov 2010 09:43:40 +0000 (11:43 +0200)]
elementfactory: clarify list item types in comments
Stefan Kost [Fri, 19 Nov 2010 08:29:34 +0000 (10:29 +0200)]
padtemplate: add two FIXME0.11: comments
Stefan Kost [Fri, 19 Nov 2010 08:23:54 +0000 (10:23 +0200)]
padtemplate: allow disablinbg the template name conformance checks
Stefan Kost [Thu, 18 Nov 2010 14:31:30 +0000 (16:31 +0200)]
padtemplate: the supplied caps may not be NULL
There is a earlier g_return_val_if_fail check. Also
gst_static_pad_template_get does not have such a check.
Andoni Morales Alastruey [Wed, 3 Nov 2010 15:37:10 +0000 (16:37 +0100)]
fakesink: Print sink-message events like a message and the GstMessage structure
Stefan Kost [Mon, 1 Nov 2010 13:32:43 +0000 (15:32 +0200)]
design-docs: add html output using asciidoc
Unify the ad-hoc markup to be asciidoc style in many places. Add a "html" target
to Makefile to generate the output.
Stefan Kost [Tue, 19 Oct 2010 11:27:20 +0000 (14:27 +0300)]
gstobject: more default name generation more efficient
Save ~2000 malloc/memcpy/free pairs at startup by running to_lower in-place.
Also skip the numbers as we can.
Stefan Kost [Mon, 18 Oct 2010 11:45:16 +0000 (14:45 +0300)]
pluginfeature: use the parent_class from G_DEFINE_TYPE macro and drop extra copy
Stefan Kost [Wed, 20 Oct 2010 11:27:16 +0000 (14:27 +0300)]
elementfactory: use g_intern_string for interface names
Stefan Kost [Mon, 18 Oct 2010 10:29:53 +0000 (13:29 +0300)]
registry: also intern the static caps
Stefan Kost [Thu, 2 Dec 2010 22:00:09 +0000 (00:00 +0200)]
elementfactory: meta-data can be NULL
Thiago Santos [Thu, 2 Dec 2010 19:28:43 +0000 (16:28 -0300)]
gstdatetime: Fix handling of timezones
Fix returning of timezones on systems with gdatetime
to use floats on the math expression to avoid
truncating the fractional part.
Also adds a test for covering this case.
Edward Hervey [Thu, 2 Dec 2010 18:44:41 +0000 (19:44 +0100)]
gstdataqueue: Don't break ABI
The order of the field was wrong, and the size of the structure didn't
end up being the same.
Wim Taymans [Thu, 25 Nov 2010 17:48:09 +0000 (18:48 +0100)]
basesink: rework position reporting code
Unify the different position reporting code paths to make it more
understandable.
Use start_time to get more accurate position reporting in paused.
Fix unit tests for more accurate reporting.
Wim Taymans [Thu, 25 Nov 2010 15:06:07 +0000 (16:06 +0100)]
basesink: perform wait_preroll in a while loop
We need to continue calling wait_preroll() as long as the need_preroll variable
is true.
Wim Taymans [Wed, 17 Nov 2010 15:46:30 +0000 (16:46 +0100)]
utils: return immediately for -1 conversion
When we are asked to convert -1, we can return immediately with a -1 return
value.
Wim Taymans [Wed, 17 Nov 2010 15:42:00 +0000 (16:42 +0100)]
utils: a convert query can have a -1 input value
It is allowed to pass -1 to the src_val for a convert.
Wim Taymans [Tue, 16 Nov 2010 11:20:37 +0000 (12:20 +0100)]
basesink: also preroll after a flush with async=false
Make sure to preroll after a flush even when we are async=false.
Add unit test.
Fixes #634965
Wim Taymans [Mon, 15 Nov 2010 17:20:27 +0000 (18:20 +0100)]
adapter: improve docs a little.
Wim Taymans [Mon, 15 Nov 2010 17:17:36 +0000 (18:17 +0100)]
check: lock src state to avoid error cases
Lock the state of the src element or else the pipeline might go into the error
state when we set it to PAUSED later.
Wim Taymans [Mon, 15 Nov 2010 11:49:05 +0000 (12:49 +0100)]
pipeline: avoid using invalid clock times
Be extra careful to not use invalid clock times but give a warning instead. This
should make things work better with faulty clock implementations.
Wim Taymans [Thu, 11 Nov 2010 09:41:18 +0000 (10:41 +0100)]
caps: improve some comments about the zigzag intersection
Edward Hervey [Thu, 2 Dec 2010 12:04:30 +0000 (13:04 +0100)]
docs: Add unused symbols to proper sections
Edward Hervey [Thu, 2 Dec 2010 12:03:57 +0000 (13:03 +0100)]
docs: Add GstDateTime section and update it for latest symbols
Edward Hervey [Tue, 19 Oct 2010 16:09:53 +0000 (18:09 +0200)]
queue2: Only call update_buffering if needed.
update_buffering is so big it will never be inlined (and shouldn't),
we therefore move the check outside of it.
Edward Hervey [Tue, 19 Oct 2010 15:45:16 +0000 (17:45 +0200)]
queue2: Avoid re-checking many times whether an item is a buffer
Avoids calling 6 times gst_buffer_get_type() for every item coming
through queue2
Edward Hervey [Tue, 19 Oct 2010 15:43:56 +0000 (17:43 +0200)]
queue2: Reduce amount of time locks are taken
Edward Hervey [Tue, 19 Oct 2010 15:42:39 +0000 (17:42 +0200)]
queue2: Fixup documentation of some properties
Edward Hervey [Tue, 19 Oct 2010 15:40:13 +0000 (17:40 +0200)]
queue2: Avoid useless segment_to_running_time() calculations.
* Cache src and sink time
* Use a boolean to known whether src/sink time needs to be recalculated
Avoids 50% of calls to gst_segment_to_running_time()
Edward Hervey [Wed, 20 Oct 2010 15:41:28 +0000 (17:41 +0200)]
basesink: Re-using GstClockID instead of constantly recreating one
Makes _sink_wait_clock at least 2 times faster.
https://bugzilla.gnome.org/show_bug.cgi?id=632778