Stefan Kost [Fri, 11 Sep 2009 18:20:57 +0000 (21:20 +0300)]
binaryregistry: don't crash in cleaning up on error.
Don't dereference NULL pointers.
David Schleef [Mon, 20 Jul 2009 19:54:00 +0000 (12:54 -0700)]
debug: use dummy code to avoid spurious semicolons
Fixes bug #589173.
Wim Taymans [Thu, 10 Sep 2009 09:53:09 +0000 (11:53 +0200)]
whitespace fixes
Wim Taymans [Thu, 10 Sep 2009 09:41:56 +0000 (11:41 +0200)]
pluginfeature: improve version check
Also parse the nano of the version and assume that X.Y.Z-1.1 >= X.Y.Z
With this change we can also check development versions against the version of
the upcomming release.
Sebastian Dröge [Thu, 10 Sep 2009 08:05:38 +0000 (10:05 +0200)]
taglist: Add FIXME for 0.11 to not typedef GstTagList to be a GstStructure
See bug #518934.
David Schleef [Wed, 9 Sep 2009 23:29:10 +0000 (16:29 -0700)]
Fix typo in inline documentation
Tim-Philipp Müller [Wed, 9 Sep 2009 16:57:54 +0000 (17:57 +0100)]
Update common
Sebastian Dröge [Wed, 9 Sep 2009 16:38:29 +0000 (18:38 +0200)]
utils: Add a comment to the scaling functions to explain why the rounding is correct
Wim Taymans [Wed, 9 Sep 2009 14:45:17 +0000 (16:45 +0200)]
ghostpad: don't unref NULL caps
Caps can be NULL so don't call unref on it unconditionally, instead use an
existing exit pad for the function.
Sebastian Dröge [Wed, 9 Sep 2009 12:53:16 +0000 (14:53 +0200)]
utils: Use gcc's __uint128_t for 64bit unsigned integer scaling
This is available in newer gcc releases and it should only exist
on platforms that provide some native 128bit integer arithmetic
instructions.
The x86-64 assembly for this is still kept for non-gcc compilers
that don't provide __uint128_t magic.
Stefan Kost [Wed, 9 Sep 2009 06:38:54 +0000 (09:38 +0300)]
design: add ideas for buffer management
Right now we're operating suboptimal when talking to kernel interfaces. Write
doesn some ideas.
Wim Taymans [Mon, 7 Sep 2009 16:27:08 +0000 (18:27 +0200)]
fix whitespace
Wim Taymans [Thu, 3 Sep 2009 17:06:28 +0000 (19:06 +0200)]
adapter: fix whitespace
Benjamin Otte [Mon, 7 Sep 2009 14:14:57 +0000 (16:14 +0200)]
docs: Fix typo in gst_value_union()
Tim-Philipp Müller [Sun, 6 Sep 2009 18:43:47 +0000 (19:43 +0100)]
bitreader, bytereader: add some FIXME 0.11 comments and fix indenting
Tim-Philipp Müller [Fri, 4 Sep 2009 16:15:35 +0000 (17:15 +0100)]
bytereader: add unchecked and inline versions of the float getters/peekers
API: gst_byte_reader_get_float*_unchecked()
Tim-Philipp Müller [Fri, 4 Sep 2009 15:52:06 +0000 (16:52 +0100)]
bytereader: add inline versions of the most common getters and setters
Tim-Philipp Müller [Wed, 2 Sep 2009 10:20:04 +0000 (11:20 +0100)]
bytereader: add inlined _unchecked() variants for some functions
API: gst_byte_reader_skip_unchecked()
API: gst_byte_reader_peek_*_unchecked()
API: gst_byte_reader_get_*_unchecked()
API: gst_byte_reader_{peek,get,dup}_data_unchecked()
Sebastian Dröge [Sat, 5 Sep 2009 10:30:07 +0000 (12:30 +0200)]
introspection: Strip Gst prefix from all types/functions
Sebastian Dröge [Sat, 5 Sep 2009 10:22:37 +0000 (12:22 +0200)]
introspection: Fix for out-of-tree builds
Sebastian Dröge [Sat, 5 Sep 2009 10:04:59 +0000 (12:04 +0200)]
introspection: Fix out-of-tree build
Sebastian Dröge [Sat, 5 Sep 2009 09:51:55 +0000 (11:51 +0200)]
introspection: Fix build if gir-repository is not installed
Sebastian Dröge [Sat, 5 Sep 2009 07:36:21 +0000 (09:36 +0200)]
net: Add gobject-introspection support
Sebastian Dröge [Sat, 5 Sep 2009 07:34:30 +0000 (09:34 +0200)]
dataprotocol: Add gobject-introspection support
Because of a bug in gobject-introspection this is disabled for now.
Sebastian Dröge [Sat, 5 Sep 2009 07:28:48 +0000 (09:28 +0200)]
controller: Add gobject-introspection support
Sebastian Dröge [Sat, 5 Sep 2009 07:27:04 +0000 (09:27 +0200)]
check: Add gobject-introspection support
Sebastian Dröge [Sat, 5 Sep 2009 07:23:19 +0000 (09:23 +0200)]
gstbase: Add gobject-introspection support
Sebastian Dröge [Fri, 4 Sep 2009 18:56:43 +0000 (20:56 +0200)]
gst: Add gobject-introspection support
Partially fixes bug #550616.
Sebastian Dröge [Sat, 5 Sep 2009 08:19:23 +0000 (10:19 +0200)]
Automatic update of common submodule
From 94f95e3 to 19fa4f3
Tim-Philipp Müller [Fri, 4 Sep 2009 18:37:15 +0000 (19:37 +0100)]
docs: fix docs for gst_byte_reader_{get|peek}_float*()
Wim Taymans [Fri, 4 Sep 2009 09:35:59 +0000 (11:35 +0200)]
event: whitespace fixes
Aurelien Grimaud [Fri, 4 Sep 2009 07:51:26 +0000 (09:51 +0200)]
bin: Only unref EOS message after it is not used anymore
Fixes bug #594107.
Wim Taymans [Wed, 2 Sep 2009 16:54:06 +0000 (18:54 +0200)]
states: post structure change on sinkpads
Post the structure change messages on the sinkpads of the elements. This allows
us to catch unlinked pads earlier without ending up with inconsistent element
degrees.
Wim Taymans [Wed, 2 Sep 2009 16:13:22 +0000 (18:13 +0200)]
bin: avoid false 'loop detected' warnings
When we detect a pad unlink in progress, we will not be updating the degree of
the parent element. This can cause false loop detected warnings because the
degree counter is invalid. Handle this case by marking the iterator as 'dirty'
when we detect a pad unlink and avoid emiting the warning in this case. We have
to continue our state change as good as we can, we will eventually resync when
the pad unlink completed.
Wim Taymans [Tue, 1 Sep 2009 14:49:56 +0000 (16:49 +0200)]
basesrc: whitespace fixes
Wim Taymans [Tue, 1 Sep 2009 14:49:22 +0000 (16:49 +0200)]
buffer: whitespace fixes
Jan Schmidt [Tue, 1 Sep 2009 11:07:31 +0000 (12:07 +0100)]
dist: Don't list the streams subdir twice in examples Makefile
Listing the 'streams' subdir twice in DIST_SUBDIRS breaks distcheck.
Jan Schmidt [Tue, 1 Sep 2009 11:05:51 +0000 (12:05 +0100)]
gstbin: Don't propagate a NULL cached index to added elements
When an element is added to the bin, only set the index if we have a
cached index, rather than setting a NULL index on elements that might
have a default index object of their own.
Jan Schmidt [Sun, 19 Jul 2009 20:23:18 +0000 (21:23 +0100)]
docs: Add a note about regenerating the changelog in the release script
Tim-Philipp Müller [Tue, 1 Sep 2009 09:03:35 +0000 (10:03 +0100)]
element: don't take object lock for g_critical() and flesh out warning message some more
Sebastian Dröge [Tue, 1 Sep 2009 08:21:31 +0000 (10:21 +0200)]
iterator: Add unit test for the single iterator
Sebastian Dröge [Tue, 1 Sep 2009 08:20:59 +0000 (10:20 +0200)]
iterator: Only visit the element a single time in the single iterator
Sebastian Dröge [Tue, 1 Sep 2009 05:27:25 +0000 (07:27 +0200)]
iterator: Fix single iterator for NULL objects and non-GTypeInstance objects
Fixes bug #593719.
Stefan Kost [Mon, 31 Aug 2009 21:00:57 +0000 (00:00 +0300)]
debug: more detail in wrong-state-on-dispose error.
Also tell in which state the element actualy is and if it is eventualy
state-locked.
Wim Taymans [Mon, 31 Aug 2009 18:38:07 +0000 (20:38 +0200)]
iterator: fix docs for _new_single().
Tim-Philipp Müller [Mon, 31 Aug 2009 15:56:22 +0000 (16:56 +0100)]
docs: it's its
The panda says no!
Mark Nauwelaerts [Sat, 29 Aug 2009 18:44:36 +0000 (20:44 +0200)]
registry: fill in elementfactory when registering element
elementfactory field is filled in by gst_element_base_class_init,
but it needs some info set on the element's type, so have it
available prior to class structure creation spinning up.
This affects elements that have a well-known/public type (e.g. pipeline)
and can be created by other means than gst_element_factory_make
(which will also fill in the element's factory).
Wim Taymans [Mon, 31 Aug 2009 09:45:17 +0000 (11:45 +0200)]
utils: use 128bits division on x86_64
Руслан Ижбулатов [Sat, 29 Aug 2009 00:44:51 +0000 (04:44 +0400)]
systemclock: fix compilation of win32 code
Fixes #593460.
Wim Taymans [Fri, 28 Aug 2009 16:37:44 +0000 (18:37 +0200)]
bin: cache index
Cache the last index that was set with _set_index() and return this in the
_get_index() call.
Set the cached index on newly added elements.
Fixes #566881
Wim Taymans [Fri, 28 Aug 2009 16:35:54 +0000 (18:35 +0200)]
element: better type checks
Add GST_CLOCK typecheck for _set_clock().
Allow setting NULL indexes on element (clear the current index)
Some whitespace fixes.
Wim Taymans [Fri, 28 Aug 2009 16:14:23 +0000 (18:14 +0200)]
element; whitespace fixes
Wim Taymans [Fri, 28 Aug 2009 16:06:45 +0000 (18:06 +0200)]
defs: add gst_iterator_new_single to defs
Wim Taymans [Fri, 28 Aug 2009 16:03:44 +0000 (18:03 +0200)]
adapter: whitespace fixes
Thijs Vermeir [Fri, 28 Aug 2009 15:59:15 +0000 (17:59 +0200)]
Check suggested caps for proxy alloc
Because we are trying to resolve a suggestion here we don't need
to check on caps for proxy_alloc but we need to check on the
suggested caps instead.
Wim Taymans [Fri, 28 Aug 2009 15:49:11 +0000 (17:49 +0200)]
queue: whitespace fixes
Wim Taymans [Fri, 28 Aug 2009 15:02:30 +0000 (17:02 +0200)]
systemclock: use preformance counters on windows
Based on clock implementation by Håvard Graff <havard.graff@tandberg.com>
Try to get the time on windows using the performance counters. These have a much
higher resolution and accuracy than the regular getcurrenttime(). Be careful to
fall back to regular getcurrenttime() or posix clocks when performance counters
are not available.
Wim Taymans [Fri, 28 Aug 2009 14:07:16 +0000 (16:07 +0200)]
systemclock: fix indentation
Wim Taymans [Fri, 28 Aug 2009 13:32:26 +0000 (15:32 +0200)]
utils: use shift instead of division
We can use a shift for scaling the denominator instead of a divide since the
denom is always positive. This avoids having the compiler generate code for the
different rounding rules when scaling negative values.
Wim Taymans [Fri, 28 Aug 2009 11:45:38 +0000 (13:45 +0200)]
utils: make inlining explicit
Wim Taymans [Fri, 28 Aug 2009 10:43:43 +0000 (12:43 +0200)]
utils: optimize for x86_64 with some inline asm
64bit x86 has native 64x64->128 bit multiply that we can use with some inline
assembler to speed up large multiplications.
Use bsr to find the number of leading zeros more efficiently.
Wim Taymans [Fri, 28 Aug 2009 10:33:37 +0000 (12:33 +0200)]
utils: factor out the leading zero count code
Wim Taymans [Fri, 28 Aug 2009 10:30:41 +0000 (12:30 +0200)]
utils: pass correction factor around
Pass the correction factor around to get rid of the enum, some code
and some branches.
Wim Taymans [Fri, 28 Aug 2009 10:21:28 +0000 (12:21 +0200)]
utils: whitespace fixes
Wim Taymans [Fri, 28 Aug 2009 10:19:34 +0000 (12:19 +0200)]
utils: move common correction code in a macro
Wim Taymans [Mon, 24 Aug 2009 16:01:07 +0000 (18:01 +0200)]
basesink: whitespace fixes
Sebastian Dröge [Wed, 26 Aug 2009 14:51:32 +0000 (16:51 +0200)]
iterator: Allow to use NULL as object for the single iterator
Sebastian Dröge [Wed, 26 Aug 2009 14:39:19 +0000 (16:39 +0200)]
iterator: API: Add gst_iterator_new_single()
This allows "iteration" over a single object of some type,
which happens often for the GstPadIterIntLinksFunction for example.
Wim Taymans [Mon, 24 Aug 2009 15:57:16 +0000 (17:57 +0200)]
basesrc: return result of _set_caps()
Wim Taymans [Mon, 24 Aug 2009 15:56:32 +0000 (17:56 +0200)]
basesink: whitespace fixes
David Schleef [Sat, 22 Aug 2009 21:22:31 +0000 (14:22 -0700)]
It's __GNUC__, not _GNUC_
This appears to be an 8 year old bug.
Tim-Philipp Müller [Fri, 21 Aug 2009 08:59:58 +0000 (09:59 +0100)]
docs: add link to cgit tarball download of gst-template in PWG
So people who can't use git for some reason still can get hold
of the code. See #591069.
Tim-Philipp Müller [Thu, 20 Aug 2009 10:54:40 +0000 (11:54 +0100)]
pluginfeature: add guard to gst_plugin_feature_type_name_filter
So we don't just crash if there's a refcounting bug somewhere else.
Sebastian Dröge [Wed, 19 Aug 2009 14:24:39 +0000 (16:24 +0200)]
docs: Don't talk about the deprecated libgnome and GNOME-VFS
Instead talk about GIO and change the option parsing example to
not initialize libgnome but only GTK.
Fixes bug #592233.
Sebastian Dröge [Wed, 19 Aug 2009 13:25:41 +0000 (15:25 +0200)]
examples: Link rtpool-test to libpthread for using the POSIX threads
Also the other streams example can run without pthreads therefore
enable it even if pthreads are not available.
Fixes bug #592314.
Sebastian Dröge [Tue, 18 Aug 2009 12:45:23 +0000 (14:45 +0200)]
tools: Use iterate_internal_links instead of deprecated get_internal_links
Sebastian Dröge [Tue, 18 Aug 2009 12:45:02 +0000 (14:45 +0200)]
multiqueue: Use iterate_internal_links instead of deprecated get_internal_links
Sebastian Dröge [Tue, 18 Aug 2009 12:05:40 +0000 (14:05 +0200)]
gstpad: Add some DISABLE_DEPRECATED markers in the header too
The internal links function is deprecated since some time and
there already were GST_REMOVE_DEPRECATED markers in the source file,
now add them to the header too.
Fixes bug #592209.
Sebastian Dröge [Tue, 18 Aug 2009 09:38:38 +0000 (11:38 +0200)]
docs: Update the design docs for bin state changes according to last commit
Antoine Tremblay [Tue, 18 Aug 2009 09:36:36 +0000 (11:36 +0200)]
gstbin: Don't try to change children's state if they're already in the state we want
Fixes bug #368536.
Sebastian Dröge [Tue, 18 Aug 2009 09:33:17 +0000 (11:33 +0200)]
ghostpad: Always get the proxypad's ghostpad via the ghostpad in the src caps change notify handler
Before the signal handler would get the ghostpad passed as second
argument but it could've already been unreffed and destroyed.
This would then lead to crashes and all that.
Now we get the ghostpad from the proxy pad, which we get from the
target pad as it's peer.
Fixes bug #591318.
Laurent Glayal [Tue, 18 Aug 2009 06:45:08 +0000 (08:45 +0200)]
filesink: Add property to allow to append to an already existing file
Fixes bug #591441.
Sebastian Dröge [Fri, 14 Aug 2009 09:53:14 +0000 (11:53 +0200)]
configure: Remove duplicated check for clock_gettime
Sebastian Dröge [Fri, 14 Aug 2009 09:12:50 +0000 (11:12 +0200)]
gstutils: Add special random unit test for 64 scaling functions
This tests 100000 random multiplications/divisions of all scaling
function variants and compares the result with the result that is
generated by GMP on the same input.
For this check for GSL and GMP during configure but only use
it for this single unit test.
Testing functions were provided by Kipp Cannon <kcannon@ligo.caltech.edu>
Sebastian Dröge [Thu, 13 Aug 2009 14:31:01 +0000 (16:31 +0200)]
gstutils: Add new scaling functions to the docs
Sebastian Dröge [Thu, 13 Aug 2009 14:20:46 +0000 (16:20 +0200)]
gstutils: Add (very) minimal unit test for the new rounding scaling functions
Kipp Cannon [Thu, 13 Aug 2009 14:10:31 +0000 (16:10 +0200)]
gstutils: API: Add rounding to nearest and next integer versions of the 64 bit integer scaling functions
The new functions are
gst_util_uint64_scale_int_round()
gst_util_uint64_scale_int_ceil()
gst_util_uint64_scale_round()
gst_util_uint64_scale_ceil()
Fixes bug #590919.
Kipp Cannon [Wed, 12 Aug 2009 09:10:05 +0000 (11:10 +0200)]
gstutils: Revert parts of last change to optimize the scaling functions again
Partially fixes bug #590919.
Sebastian Dröge [Tue, 11 Aug 2009 07:16:38 +0000 (09:16 +0200)]
gstutils: Fix violations of strict-aliasing rules in gst_util_uint64_scale()
Kipp Cannon [Tue, 11 Aug 2009 07:10:47 +0000 (09:10 +0200)]
gstutils: Refactor gst_util_uint64_scale()
This will later make it possible to provide rounding versions
of it without much code duplication.
Partially fixes bug #590919.
Jonas Holmberg [Tue, 11 Aug 2009 13:20:18 +0000 (15:20 +0200)]
bufferlist: update doc string
Sebastian Dröge [Tue, 11 Aug 2009 11:21:35 +0000 (13:21 +0200)]
gstsegment: Actually start==stop==segment_start is inside the segment
Still the old code was wrong as it claimed that start==stop<segment_start
would be inside the segment and returned insane clipping differences.
Sebastian Dröge [Tue, 11 Aug 2009 11:03:03 +0000 (13:03 +0200)]
gstsegment: Fix unit test and add an additional test
The previous test assumed that start=stop=segment_start will
be inside the segment but this is wrong.
Sebastian Dröge [Tue, 11 Aug 2009 10:59:13 +0000 (12:59 +0200)]
gstsegment: Clipping should detect start=stop<segment_start as outside the segment
Before it returned that [start,stop] is inside the segment and that the
difference between segment_start and start needs to be clipped. If the
clipping is done on a buffer (like in baseaudiosink) this will result
in the data pointer being at a invalid memory position.
Fixes bug #589849.
Sebastian Dröge [Tue, 11 Aug 2009 03:47:21 +0000 (05:47 +0200)]
gstbus: Unref pipeline after usage in test_custom_main_context unit test
This makes the core unit tests valgrind clean again.
Edward Hervey [Tue, 11 Aug 2009 01:54:55 +0000 (02:54 +0100)]
docs: add Edward's git plugin moving howto to moving-plugins document
Tim-Philipp Müller [Mon, 10 Aug 2009 13:30:34 +0000 (14:30 +0100)]
checks: don't forget to include config.h in the GstObject unit test
Tim-Philipp Müller [Mon, 10 Aug 2009 12:05:57 +0000 (13:05 +0100)]
checks: try to fix GstObject unit test on OSX
Seems like we get SIGBUS instead of SIGSEGV here when GLib crashes
where it shouldn't crash (and we even have a unit test for that!).
Tim-Philipp Müller [Mon, 10 Aug 2009 11:01:48 +0000 (12:01 +0100)]
checks: set pipelines to NULL state in parse-launch unit test
Fixes timeouts in gst_task_cleanup_all().
Tim-Philipp Müller [Mon, 10 Aug 2009 10:42:25 +0000 (11:42 +0100)]
checks: set pipeline back to NULL state in GstBus unit test
Fixes timeout in gst_task_cleanup_all().