Stefan Kost
43c9eb2791
trace: ensure messages are \0 terminated
2011-01-25 16:17:15 +02:00
Stefan Kost
f0b3839677
registry: remove dead code
...
The GError is only used for the mmap operations. If we have an error we handle
and clean it there already.
2011-01-25 16:17:14 +02:00
Sebastian Dröge
8163e51bad
clock: API: Add function to re-init periodic GstClockIDs
2011-01-24 19:15:29 +01:00
Vincent Penquerc'h
6b84f4573c
gstpluginloader: do not leak the description string
...
The description string was changed to an inlined string a while back.
(But: no need to intern the const strings here, we just use the interning
to avoid allocating duplicates and make memory management easier,
since the strings will be around for the life-time of the app anyway).
https://bugzilla.gnome.org/show_bug.cgi?id=640071
2011-01-24 16:44:04 +00:00
Wim Taymans
52978bd4e6
buffer: clarify docs
2011-01-24 16:35:25 +01:00
Mart Raudsepp
3a0a6b477a
docs: add missing "Since: 0.10.32" markers for GstClock
...
Since tags were missing for gst_clock_single_shot_id_reinit()
and GST_CLOCK_DONE.
2011-01-24 14:38:48 +00:00
Mart Raudsepp
e7569342b1
docs: add missing "Since: 0.10.31" marker for gst_structure_get_date_time()
2011-01-24 14:38:15 +00:00
Miguel Angel Cabrera Moya
d709f569ba
parse-launch: don't read past end of string if last character is an escape char
...
When the last character of a property value is a backslash
the unescaping code reads one byte pass the end of the string.
https://bugzilla.gnome.org/show_bug.cgi?id=639674
2011-01-24 14:24:32 +00:00
Raimo Järvi
0645c498f0
gstpoll: fix compiler warning with MingW
...
gstpoll.c: In function 'gst_poll_get_read_gpollfd':
gstpoll.c:692:10: warning: assignment makes integer from pointer without a cast
https://bugzilla.gnome.org/show_bug.cgi?id=638900
2011-01-11 12:47:49 +00:00
Edward Hervey
8edee55a3a
registry: Don't replace valid existing plugins by blacklisted ones
...
Only replace existing plugins by blacklisted ones if they correspond
to the exact same plugin. If they're not the same, keep the existing
valid one.
Fixes #638941
2011-01-10 11:38:19 +01:00
Tim-Philipp Müller
6e2db6374e
registry: ignore old libgstvalve.so and libgstselector.so plugins to minimize upgrade pain
...
Ignore plugins which have been moved into coreelements, so it's
still possible to just upgrade GStreamer core without having to
upgrade the whole stack.
2011-01-06 19:40:27 +00:00
Tim-Philipp Müller
cbdff26c10
Revert "padtemplate: allow disablinbg the template name conformance checks"
...
This reverts commit f9039c2204
.
We use -DG_DISABLE_ASSERTS for releases and pre-releases, but
don't want to disable pad name checking for releases in general,
I think. Need a better solution here. Fixes pad unit test in
pre-release/release mode.
2011-01-06 19:21:56 +00:00
Tim-Philipp Müller
8a9931f0a9
info: avoid unnecessary malloc/free for each log function call on MSVC
...
Avoid unnecessary malloc/free to get the file basename on MSVC to avoid
unnecessary overhead when doing GST_DEBUG=foo:5 or so (since it would be
done before the category log level filtering).
2011-01-06 17:35:13 +00:00
David Schleef
a0534cc81c
object: Fix creation of default name
...
Change the fixed allocation (!) to g_strdup_printf().
2011-01-05 13:42:18 -08:00
Edward Hervey
04ebbc9f5a
GstElement: Add a more flexible way to get request pads.
...
The new request_new_pad_full vmethod provides an additional caps field,
which allows elements to take better decision process.
Also, add a gst_element_request_pad() function to allow developers to be
able to specify which pad template they want a pad of.
Convert gstutils to use that new method instead of the old one when more
efficient.
This is useful for being able to request pads in a more flexible way,
especially when the element can provide pads whose caps depend on
runtime configuration and therefore can't provide pre-registered
pad templates.
API: GstElement::request_new_pad_full
API: gst_element_request_pad
https://bugzilla.gnome.org/show_bug.cgi?id=637300
2011-01-05 19:46:47 +01:00
Tim-Philipp Müller
daa9c92038
gst: remove safety check for GLib < 2.8
...
Don't worry about accidentally using GLib < 2.8 at runtime anymore.
2011-01-05 15:36:55 +00:00
Edward Hervey
f53948b332
gstdatetime: Disable usage of GDateTime on MacOSX
...
GLib's GDateTime doesn't handle properly the gmt offset. Therefore
use our own internal version instead on MacOSX.
See bug #638666
2011-01-05 11:26:13 +01:00
Edward Hervey
36d44b3e52
pluginloader: Always mark reception as complete after EXIT
...
Avoids waiting forever on gst_poll_wait when using the select
backend.
Fixes #637057
2011-01-04 14:45:40 +01:00
Tim-Philipp Müller
98900a43c1
gstinfo: don't use printf extensions if GLib isn't using the system printf
...
Might help with https://bugzilla.gnome.org/show_bug.cgi?id=638599
2011-01-04 00:55:47 +00:00
Edward Hervey
4f94b94bff
gstpoll: Fix for (p)select backend
...
We need to reset the revents field of each pollfd when reading the results
from select else we'll end up with stray info from previous calls to
select.
2011-01-03 20:37:59 +01:00
Tim-Philipp Müller
ee5b369ffd
gstvalue: make new gst_value_list_merge() work properly
...
Fix freeing of partially-inited list value when both values
passed are equal and we want to return a single non-list
value as result. Fixes unit test. Also fix up docs a bit.
https://bugzilla.gnome.org/show_bug.cgi?id=637776
2011-01-03 15:57:20 +00:00
Stefan Kost
373be6f14e
tags: don't produce duplicated entries when merging same value twice
...
Add a variant of gst_value_list_concat() that skips duplicates and use that when
merging taglists.
API: gst_value_list_merge()
2011-01-02 22:35:08 +00:00
Tim-Philipp Müller
8a7fc1d8c9
Revert "micro-optim: if (x) is cheaper than if (x > 0) for unsigned integers"
...
This reverts commit 6aa8ca37ee
.
See http://article.gmane.org/gmane.comp.video.gstreamer.devel/32282
2010-12-26 21:21:43 +00:00
Michael Smith
bdb6a9aeec
Fix GStatBuf definition for win32 when building against older glib.
...
Now matches upstream glib definition.
2010-12-22 16:36:50 -08:00
Tim-Philipp Müller
0e3410c100
miniobject: add gobject-introspection annotation
2010-12-22 22:36:05 +00:00
Sebastian Dröge
c81db31bfa
taglist: Don't leak copies of empty strings
2010-12-19 12:49:58 +01:00
Edward Hervey
3efb73c121
gst: documentation fixups and annotation
...
Reported by enabling the --warn-all option of g-ir-scanner
2010-12-17 19:14:41 +01:00
Edward Hervey
6c37015a29
gstdatetime: Fix documentation
...
second => seconds
microsecond argument was dropped
2010-12-17 15:48:34 +01:00
Stefan Kost
eb56687a6d
info: use the publicly visible address to fix the tests
...
The -Bsymbolic change causes us to get a different address when internaly
looking up the function than what application would get when the use the symbol
that they see. This made removing the default loghandler to fail, as it is set
internally and removed externaly.
2010-12-15 23:19:54 +02:00
Stefan Kost
4ef9bf1019
registry: maintain the typefind extension list order
2010-12-08 11:53:10 +02:00
Stefan Kost
4054ea491e
docs: add () to xref the function.
2010-12-08 11:53:10 +02:00
Tim-Philipp Müller
cc55b9772b
utils: remove some dead code, GST_DEBUG_COLOR is never defined
2010-12-07 19:35:55 +00:00
Tim-Philipp Müller
7b0e3356eb
utils: const-ify arguments to gst_object_default_error()
2010-12-07 19:35:24 +00:00
Tim-Philipp Müller
711f2d8abb
docs: gst_error_get_message() returns string in UTF-8, not current locale
...
We tell gettext to return everything in UTF-8 encoding.
2010-12-07 19:34:46 +00:00
Tim-Philipp Müller
3256c708be
docs: gst: more gobject introspection annotations
...
Many of these are superfluous, added for clarity.
2010-12-07 18:37:04 +00:00
Tim-Philipp Müller
0eaa25cbf5
pad: register gst_pad_get_fixed_caps_func() with the debug log system
2010-12-07 18:37:04 +00:00
Stefan Kost
6e97957b60
plugin: recommend "--gst-disable-registry-fork" as well
...
Disabling forking helps with debugging the cause of the crash in gdb.
2010-12-07 12:59:16 +02:00
Wim Taymans
8bf6b0c3fe
poll: return wakeup event in GPollFD
2010-12-06 11:20:35 +01:00
Mark Nauwelaerts
58868d4218
pad: add some debug to fast push path
...
... so we don't loose track at times it is needed the most.
2010-12-06 11:07:38 +01:00
Edward Hervey
c044024e2c
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"
2010-12-05 14:15:02 +01:00
David Schleef
5cdcdaee07
registry: Fix permissions if umask is broken
...
Fixes : #564056 .
2010-12-04 21:08:21 -08:00
David Schleef
66d2781877
Use g_snprintf() instead of snprintf()
2010-12-03 11:29:30 -08:00
Wim Taymans
bf979b0036
clock: init variables in _reinit()
...
Properly initialize variables in _reinit() too
2010-12-03 16:11:05 +01:00
Wim Taymans
ba7157dce6
clock: make sync clock wait lockfree
...
Make the common case lockfree.
2010-12-03 16:11:04 +01:00
Tim-Philipp Müller
f4e57cee5d
binaryregistry: use function introduced in GLib 2.22 unconditionally
2010-12-03 14:55:50 +00:00
Wim Taymans
77830123cf
poll: small cleanups
2010-12-03 15:50:38 +01:00
Wim Taymans
9bf56084cf
poll: make sure we remove the readfd messages
2010-12-03 15:50:38 +01:00
Wim Taymans
35d10af06d
poll: add method to get a GPollFD
2010-12-03 15:50:38 +01:00
Wim Taymans
22fa4470e2
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.
2010-12-03 15:50:38 +01:00
Wim Taymans
e266d4d397
poll: move lock to where it makes more sense
2010-12-03 15:50:38 +01:00
Wim Taymans
73ee14302f
poll: make timer polls lockfree
...
Make sure we don't take a mutex in the normal code path of the timer
poll.
2010-12-03 15:50:38 +01:00
Mark Nauwelaerts
efe3c70450
caps: fix doc typo
2010-12-03 13:35:38 +01:00
Stefan Kost
bd82021e86
gstobject: add stdio.h for snprint
2010-12-03 13:52:42 +02:00
Edward Hervey
fc7967a0b5
pipeline: Use an object as first argument to GST_WARNING_OBJECT
2010-12-03 12:03:43 +01:00
Edward Hervey
6aa8ca37ee
micro-optim: if (x) is cheaper than if (x > 0) for unsigned integers
2010-12-03 12:03:42 +01:00
Edward Hervey
5519b1fcb1
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.
2010-12-03 11:33:37 +01:00
Edward Hervey
3a9396d259
gstinfo: remove useless ternary operator usage.
2010-12-03 11:33:37 +01:00
Edward Hervey
6b002234cd
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.
2010-12-03 11:33:37 +01:00
Wim Taymans
cec2a42808
pad: add push cache to bufferlists
...
Add the push cahce for the bufferlist push code path as well.
2010-12-03 11:28:52 +01:00
Wim Taymans
59bc71c47a
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.
2010-12-03 11:28:52 +01:00
Wim Taymans
d3630379da
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.
2010-12-03 11:28:52 +01:00
Wim Taymans
2239038d76
pad: explicitly inline some functions
2010-12-03 11:28:52 +01:00
Wim Taymans
67d7c543b3
pad: remove unused variable
2010-12-03 11:28:52 +01:00
Wim Taymans
5e37ade932
pad: invalidate caches on flush and pad block
2010-12-03 11:28:52 +01:00
Wim Taymans
8abc14052a
pad: don't unref NULL caps
2010-12-03 11:28:52 +01:00
Wim Taymans
14542a0d46
pad: add invalidate function
...
More small optimisations, remove the unneeded valid boolean.
Add function to invalide the cache.
Invalidate the cache on unlink.
2010-12-03 11:28:52 +01:00
Wim Taymans
1c79181afd
pad: small cleanup
2010-12-03 11:28:52 +01:00
Wim Taymans
b83e66be46
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.
2010-12-03 11:28:52 +01:00
Wim Taymans
d59b7f81b7
pad: prototype of pad push cache
...
Prototype of how we can cache the peer and caps for a pad link.
2010-12-03 11:28:52 +01:00
Wim Taymans
1e1872137d
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.
2010-12-03 11:21:03 +01:00
Stefan Kost
898583b2a0
docs: query doc improvements
...
More xrefs. Mentioned that some queries need a running pipeline.
2010-12-03 09:50:32 +02:00
Stefan Kost
a4c5448eee
elementfactory: clarify list item types in comments
2010-12-03 09:50:31 +02:00
Stefan Kost
d4e2107987
padtemplate: add two FIXME0.11: comments
2010-12-03 09:50:31 +02:00
Stefan Kost
f9039c2204
padtemplate: allow disablinbg the template name conformance checks
2010-12-03 09:50:31 +02:00
Stefan Kost
20c173bada
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.
2010-12-03 09:50:31 +02:00
Stefan Kost
1c50dcd54f
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.
2010-12-03 09:50:31 +02:00
Stefan Kost
aa440a1e24
pluginfeature: use the parent_class from G_DEFINE_TYPE macro and drop extra copy
2010-12-03 09:50:31 +02:00
Stefan Kost
ffa8f100ce
elementfactory: use g_intern_string for interface names
2010-12-03 09:50:31 +02:00
Stefan Kost
d370a2437a
registry: also intern the static caps
2010-12-03 09:42:44 +02:00
Stefan Kost
2d17d86ba8
elementfactory: meta-data can be NULL
2010-12-03 00:00:09 +02:00
Thiago Santos
2f94ad3d6c
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.
2010-12-02 16:28:43 -03:00
Wim Taymans
a0cb088284
utils: return immediately for -1 conversion
...
When we are asked to convert -1, we can return immediately with a -1 return
value.
2010-12-02 19:10:45 +01:00
Wim Taymans
e84d563033
utils: a convert query can have a -1 input value
...
It is allowed to pass -1 to the src_val for a convert.
2010-12-02 19:10:45 +01:00
Wim Taymans
7590cee744
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.
2010-12-02 19:10:44 +01:00
Wim Taymans
d36903c1c2
caps: improve some comments about the zigzag intersection
2010-12-02 19:10:44 +01:00
Edward Hervey
b4285611ad
gstclock: New API to re-use a single shot GstClockID
...
API: gst_clock_single_shot_id_reinit
https://bugzilla.gnome.org/show_bug.cgi?id=632778
2010-12-02 19:04:56 +01:00
Wim Taymans
8412c2a656
segment: move g_return_if_fail to where it is needed
2010-12-02 19:03:35 +01:00
Sebastian Dröge
0ff0e6a434
version: Take nano version into account in GST_CHECK_VERSION()
...
If the nano is > 0 the current version should be handled the same as
micro + 1.
2010-12-02 19:02:08 +01:00
Sebastian Dröge
f2f7842f6b
pad: Set the event source object if none is set yet in gst_pad_push_event()
...
Otherwise the source will stay at NULL, the event is passed to the
peerpad via gst_pad_send_event() and then the peerpad is set as
source of the event instead of the originating pad.
2010-12-02 19:02:08 +01:00
David Hoyt
7199a4f1ff
gsttask: Set thread names on Windows with MSVC if a debugger is attached
...
Fixes bug #632168 .
2010-12-02 19:02:08 +01:00
Sebastian Dröge
a797b9f22b
macros: Define restrict keyword if not available
...
This change always defines the restrict keyword if a
non-C99 C compiler is used. In the case of GCC >= 4
it will be defined to __restrict__, in all other
cases to nothing. This allows to use the restrict
keyword unconditionally.
2010-12-02 19:02:07 +01:00
Tim-Philipp Müller
5cac987148
utils: avoid 'unused argument' warnings caused by GST_BOILERPLATE_FULL
...
The unused data parameter in the class_init trampoline function
seems to cause warnings with some c++ compilers.
https://bugzilla.gnome.org/show_bug.cgi?id=635869
2010-11-29 12:29:10 +00:00
Evan Nemerson
4906671694
introspection: Include exported packages information in GIRs
...
https://bugzilla.gnome.org/show_bug.cgi?id=635389
2010-11-21 00:36:30 +00:00
Tim-Philipp Müller
b84621e0d0
elementfactory: fix caps leak in element factory list utility functions
2010-11-18 00:29:19 +00:00
Thiago Santos
1b27e1e792
datetime: Add _from_unix_epoch variants
...
Adds 2 variants for the gst_date_time_from_unix_epoch function,
one for UTC and another for local time.
API: gst_date_time_new_from_unix_epoch_utc
API: gst_date_time_new_from_unix_epoch_local_time
Fixes #653031
https://bugzilla.gnome.org/show_bug.cgi?id=635031
2010-11-17 09:58:32 -03:00
Vladimir Eremeev
b804d53320
math-compat: don't re-define _USE_MATH_DEFINES if already defined
...
This avoids compiler warnings.
https://bugzilla.gnome.org/show_bug.cgi?id=633886
2010-11-03 14:21:02 +00:00
Edward Hervey
726e4479b7
elementfactory: Fix 64bit constant
...
Basically we're not meant to put anything more complex than simple numbers,
due to the definition of G_GUINT64_CONSTANT:
G_GUINT64_CONSTANT(val) (val##UL)
Which previously resulted in .... 1 << 49UL
2010-10-22 11:52:47 +02:00
Tim-Philipp Müller
5b25761f29
docs: add some gtk-doc Since: markers
...
Add some gtk-doc Since: markers, fix one Since: marker,
fix typo.
2010-10-16 16:53:49 +01:00
Thiago Santos
e9312870e5
datetime: Use seconds as double
...
Use seconds as double to make API similar to glib's
gdatetime. Also move timezone parameter to the
first position, just like glib's.
https://bugzilla.gnome.org/show_bug.cgi?id=628408
2010-10-13 11:48:57 -03:00
Thiago Santos
0d3c623b4b
gstdatetime: Move doc outside the ifdefs
...
Move the datetime documentation of the functions outside the
ifdefs
https://bugzilla.gnome.org/show_bug.cgi?id=628408
2010-10-13 11:28:52 -03:00