Stefan Sauer
a1599f5f7e
controller: merge controller into gstobject
...
This make the controller even more lightweight (no extra object, no extra lock,
less indirections). For object that don't use the controller the only 'overhead'
is a 3 unused fields in the gst_object structure.
2011-11-10 22:47:07 +02:00
Vincent Penquerc'h
86a45f236e
gstbuffer: remove incorrect assertion
...
Offset and sizes have no bearing on each other here.
2011-11-10 14:17:33 +00:00
Edward Hervey
7a285354d2
gst: More introspection annotations
2011-11-10 13:54:03 +01:00
Edward Hervey
abab1b1d01
gstmemory: Register a GBoxed GType
...
Allows using it from g-i
2011-11-10 13:54:02 +01:00
Edward Hervey
deb8e74cad
introspection: Add --warn-all to introspection scanner
...
... and let's get fixing all those docs !
2011-11-10 13:54:02 +01:00
Wim Taymans
13754e87fc
element: add a default set_clock implementation
...
Add a default set_clock implementation and avoid doing work in the vmethod
trampoline. This requires subclasses to chain up.
2011-11-10 12:09:57 +01:00
Wim Taymans
2227d80f93
element: don't do anything in the vmethod trampoline
...
Avoid doing stuff in the vmethod trampoline, just let the default
implementation of the method take care of things.
2011-11-10 12:08:51 +01:00
Wim Taymans
996d3dd5e4
element: fix some docs
2011-11-10 12:08:15 +01:00
Wim Taymans
37318a8cd2
pad: remove GstPadFixateCapsFunction
...
The fixate caps function was not used externally and we have vmethods in the
base classes where it is needed.
Update some docs.
simplify some fixate functions in the base classes. Also pass the untruncated
caps to the vmethod.
2011-11-10 10:58:42 +01:00
Wim Taymans
b133bea426
pad: don't store events on flushing pads
...
check the flushing state of the pad before storing the event.
2011-11-09 17:43:49 +01:00
Wim Taymans
b7966c0c7d
pad: make an ACCEPT_CAPS query
...
Replace the acceptcaps function with a query.
2011-11-09 17:36:00 +01:00
Wim Taymans
756f6eb3f2
pad: refuse events in flushing
...
when we are flushing, don't store the event on the pad but simply return FALSE.
Don't deactivate the srcpad, we need it to be active in order to push the
caps. Downstream can change the scheduling mode of an active pad.
2011-11-09 17:25:30 +01:00
Wim Taymans
6ed869c9f4
element: remove more query_types
2011-11-09 17:23:37 +01:00
Wim Taymans
a22c2716cd
Merge branch 'master' into 0.11
2011-11-09 12:03:28 +01:00
Wim Taymans
6cc7254166
remove query types
...
It was not really useful
2011-11-09 11:47:10 +01:00
Vincent Penquerc'h
d9e5c529ba
gstvalue: consider lists and ranges equal if they hold the same set
...
This fixes caps operations when different elements advertise some
of their caps' properties differently (eg, for audio channels, either
a range from 1 to 2, or a list of 1 and 2).
https://bugzilla.gnome.org/show_bug.cgi?id=663643
2011-11-09 11:24:55 +01:00
Wim Taymans
ac9e5533b5
pad: add more queries
...
Add more query functions to prepare for doing more with queries
2011-11-09 11:22:36 +01:00
Wim Taymans
642a4697fe
pad: install query probes
...
Fire query probes according to updated design doc.
2011-11-08 17:32:11 +01:00
Wim Taymans
4660beaba8
pad: remove lock/unlock_full versions of stream-lock
2011-11-08 15:51:48 +01:00
Wim Taymans
1013c6c79b
pad: add defines for query probes
2011-11-08 15:48:34 +01:00
Wim Taymans
79aeef49b8
buffer: update docs
2011-11-08 13:13:55 +01:00
Wim Taymans
9c0d8ca718
Merge branch 'master' into 0.11
...
Conflicts:
gst/gstelement.h
gst/gstghostpad.c
gst/gstminiobject.c
2011-11-08 12:54:15 +01:00
Wim Taymans
ce09010267
pad: add pull mode probes
...
Allow probes to inspect the offset and size from a probe in pull mode and allow
the probe to modify the buffer.
Update design doc a little.
2011-11-08 12:47:33 +01:00
Wim Taymans
ba3028aeeb
pad: Add GstPadProbeInfo
...
Make a new GstPadProbeInfo structure and pass this in the probe callback. This
allows us to add more things later and also allow the callback to replace or
modify the passed object.
2011-11-08 11:04:19 +01:00
Stefan Sauer
1713aaa4c5
event: log creation of qos events at LOG level instead at INFO
2011-11-08 09:15:30 +01:00
Stefan Sauer
93941a2517
buffer: improve parameter docs
2011-11-08 09:15:30 +01:00
Tim-Philipp Müller
16dcd5e958
docs: fix Since: markers for API added after 0.10.35
2011-11-08 00:32:36 +00:00
Wim Taymans
c9a4037805
Merge branch 'master' into 0.11
...
Conflicts:
gst/gstvalue.c
2011-11-07 17:17:39 +01:00
Wim Taymans
24e596a1fb
pad: rework pad probes
...
Make a separate cookie to detect chancges in the list of probes and keeping
track of what hooks have been invoked yet.
Remove the requirement to have probes on srcpads in push mode and sinkpads in
pull mode.
Add some more debug.
Keep track of what callbacks got executed. If no callback is called and we are a
blocking pad, let the item pass. This allows you to block pads on selected
items only.
Explicitly have an UPSTREAM and DOWNSTREAM PadProbeType. This allows you to only
block the pad on upstream or downstream items.
Add convenience macros to only block on downstream/upstream items.
2011-11-07 17:15:17 +01:00
Vincent Penquerc'h
9121a30f9a
gstcaps: remove unneeded use of gint64
...
https://bugzilla.gnome.org/show_bug.cgi?id=662777
2011-11-07 15:17:35 +00:00
Vincent Penquerc'h
b37d06aed8
gstvalue: quicker version of intersection when we do not need the result
...
https://bugzilla.gnome.org/show_bug.cgi?id=662777
2011-11-07 15:17:19 +00:00
Vincent Penquerc'h
d9901a6288
gststructure: simplify return statement in gst_structure_can_intersect
...
https://bugzilla.gnome.org/show_bug.cgi?id=662777
2011-11-07 15:17:14 +00:00
Vincent Penquerc'h
afc80c10d1
gststructure: early out when we know a value cannot be a subset
...
If two values can be ordered, but are unequal, they are
necessarily distinct, thus one cannot be a subset of the other.
https://bugzilla.gnome.org/show_bug.cgi?id=662777
2011-11-07 15:17:04 +00:00
Vincent Penquerc'h
29c97fe780
gstvalue: quicker test for substraction emptiness
...
When we do not care about the actual resulting set,
but only whether it is empty of not, we can skip a fair bit
of GValue juggling.
Add a function that does so, since we cannot just pass NULL
to the existing API as it may be part of the API contract.
https://bugzilla.gnome.org/show_bug.cgi?id=662777
2011-11-07 15:16:52 +00:00
Vincent Penquerc'h
7090257a83
gststructure: rejig test ordering for speed
...
https://bugzilla.gnome.org/show_bug.cgi?id=662777
2011-11-07 15:16:26 +00:00
Wim Taymans
4fa22944e9
caps: fix compilation
2011-11-07 10:40:23 +01:00
Wim Taymans
b7fac4d093
Merge branch 'master' into 0.11
...
Conflicts:
libs/gst/base/gstbasetransform.c
2011-11-07 10:01:27 +01:00
Tim-Philipp Müller
ee3032a6c9
Revert "controller: fix g_return statement"
...
This reverts commit 593d2b297b
.
gst_controller_set_disabled () returns a void.
2011-11-06 00:07:10 +00:00
Stefan Sauer
618be218e8
controller: the object needs a ref to the controller for the convenience api
...
Add a hack to ensure the object will have a ref to the controller once we
create it. Fixes the audio example (that uses the controller api directly).
2011-11-05 11:02:42 +01:00
Stefan Sauer
593d2b297b
controller: fix g_return statement
2011-11-05 11:02:42 +01:00
Stefan Sauer
95c6fde6ac
controller: logging tweaks
...
Don't log in _new before we have the log category. Use _OBJECT variants.
2011-11-05 11:02:42 +01:00
Tim-Philipp Müller
be70cebc31
gst: fix some compiler warnings
...
gstobject.c: In function 'gst_object_has_active_automation':
gstobject.c:1076:3: error: 'return' with no value, in function returning non-void
gstcontroller.c: In function 'gst_controller_is_active':
gstcontroller.c:509:3: error: 'return' with no value, in function returning non-void
2011-11-05 01:27:54 +00:00
Stefan Sauer
efd4402ee0
controller: add api to check for active controllers (needed for e.g. volume)
2011-11-04 20:50:58 +01:00
Stefan Sauer
0f2d8ab5c2
controller: remove obsolete comments from api transition
2011-11-04 20:32:32 +01:00
Stefan Sauer
9a27b9c056
controller: move to core/gstobject
...
Move the controller to gstobject as a simple delegate. The controller and
controlsource are not classes in core. The controlsources stay separate as a lib
for now. This way we can avoid the qdata lookups.
Also remove controller_init(). There is no more need to link to controller for
elements.
Also sanitize the API. We now have functions to add properties like we had
methods to remove that. That avoids then ref count hacks we had in _new.
2011-11-04 20:11:51 +01:00
Wim Taymans
a38c8b759c
bin: fix the iterator copy
2011-11-04 19:17:06 +01:00
Wim Taymans
c2c9776027
Merge branch 'master' into 0.11
...
Conflicts:
gst/gstbin.c
2011-11-04 19:11:19 +01:00
Sjoerd Simons
57074fc025
caps: Add gst_caps_is_strictly_equal
2011-11-04 17:49:55 +00:00
Wim Taymans
b6fbeb8fed
pad: make probes work on all pads
...
fixes #644907
2011-11-04 18:19:14 +01:00
Peteris Krisjanis
795e836ce3
introspection: add Value annotations for GST_SECOND, GST_MSECOND, GST_USECOND, GST_NSECOND constants
...
gobject-introspection won't parse them properly otherwise.
Still need to force the right type though (either GstClockTime or
guint64), but Type: xyz has no effect for me here, so someone with
a newer g-i needs to test this.
Some other defines are also missing, e.g. GST_CLOCK_TIME_NONE.
2011-11-04 00:19:56 +00:00
Tim-Philipp Müller
d2c713a9b5
bin: use statically allocated GQueue
...
Because we can.
2011-11-03 22:58:50 +00:00
Wim Taymans
2cb971589d
task: don't use lock/unlock_full
2011-11-03 14:14:54 +01:00
Wim Taymans
a1d82bec39
Merge branch 'master' into 0.11
...
Conflicts:
gst/gstghostpad.c
2011-11-03 11:30:52 +01:00
Wim Taymans
e91b1ee412
pad: small cleanup
2011-11-03 11:15:11 +01:00
Nicolas Dufresne
391568efde
ghostpad: Don't cache internal proxy pad target
...
The internal proxy pad target is simply a cache of the internal proxy pad
peer. This patch uses the well implement GstPad peer handling to obtain the
target. This fixes issues with target not being set in both direction when
two ghostpads are linked together (empty bin).
https://bugzilla.gnome.org/show_bug.cgi?id=658517
2011-11-03 09:27:00 +01:00
Wim Taymans
6c627481b3
utils: remove _found_tags_ API
...
remove gst_element_found_tags() and gst_element_found_tags_for_pad(), they are
nothing more than a wrapper around gst_pad_push_event()
2011-11-02 12:06:47 +01:00
Wim Taymans
289d2d62ba
buffer: improve docs
2011-11-02 08:59:44 +01:00
Wim Taymans
7f6495d713
event: make GstSegment argument const
2011-11-02 08:59:44 +01:00
Wim Taymans
d9dc9f9d52
task: api cleanup
...
gst_task_create() -> gst_task_new()
2011-11-02 08:59:44 +01:00
Wim Taymans
e4725d9df2
structure: cleanup API
...
gst_structure_empty_new() -> gst_structure_new_empty()
gst_structure_id_empty_new() -> gst_structure_new_id_empty()
gst_structure_id_new() -> gst_structure_new_id()
2011-11-02 08:59:44 +01:00
Wim Taymans
89fd4ded72
meta: remove timing metadata
...
This is now on buffers by default
2011-11-02 08:59:43 +01:00
Wim Taymans
88e12228cf
bufferlist: clean up API
...
gst_buffer_list_len() -> gst_buffer_list_length()
gst_buffer_list_sized_new() -> gst_buffer_list_new_sized()
2011-11-02 08:59:43 +01:00
Tim-Philipp Müller
4f004eff38
pad: rename GstActivateMode to GstPadActivateMode
...
These might be useful:
sed -i -e 's/GstActivateMode/GstPadActivateMode/g' `git grep GstActivateMode | sed -e 's/:.*//' | sort -u`
sed -i -e 's/GST_ACTIVATE_/GST_PAD_ACTIVATE_/g' `git grep GST_ACTIVATE_ | sed -e 's/:.*//' | sort -u`
2011-11-01 00:25:02 +00:00
Tim-Philipp Müller
bffc9207b5
pad: rename GstProbeType and GstProbeReturn to GstPadProbe{Type,Return}
...
Better now than later in the cycle. These might come in handy:
sed -i -e 's/GstProbeReturn/GstPadProbeReturn/g' `git grep GstProbeReturn | sed -e 's/:.*//' | sort -u`
sed -i -e 's/GST_PROBE_/GST_PAD_PROBE_/g' `git grep GST_PROBE_ | sed -e 's/:.*//' | sort -u`
sed -i -e 's/GstProbeType/GstPadProbeType/g' `git grep GstProbeType | sed -e 's/:.*//' | sort -u`
2011-11-01 00:15:17 +00:00
Tim-Philipp Müller
f19b7d1125
taglist: remove gst_tag_list_get_*long*()
...
No one uses this or should ever need to use it, since
the size is architecture-specific anyway. If normal
integers don't do, one should use 64-bit integers.
2011-10-31 23:32:17 +00:00
Tim-Philipp Müller
221c9423d3
filter: remove gst_filter_run() and deprecated filter func
...
If someone wants to resurrect this, please use a less
generic name space for it.
2011-10-31 14:16:05 +00:00
Tim-Philipp Müller
cfff518cee
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
gst/gstpluginfeature.c
2011-10-31 14:03:15 +00:00
Tim-Philipp Müller
4e7944b0b9
taglist: rename _new() to _new_empty() and new_full*() to new*()
2011-10-30 22:24:25 +00:00
Tim-Philipp Müller
d9f95e8920
filter: deprecate gst_filter_run()
...
It's not really used outside of core at all, and has
serious namespace issues. If anyone feels the need to
revive this one, please use a less generic name space.
API: deprecate gst_filter_run()
API: deprecate GstFilterFunc
2011-10-30 21:55:05 +00:00
Tim-Philipp Müller
8008837986
registry: don't use soon-to-be-deprecated gst_filter_run()
...
Lines-of-code savings are negligible anyway.
2011-10-30 21:47:39 +00:00
Tim-Philipp Müller
19b4c9c793
pluginfeature: deprecate gst_plugin_feature_type_name_filter()
...
It's only used internally anyway and the helper struct
has namespace issues.
API: deprecated gst_plugin_feature_type_name_filter()
API: deprecated GstTypeNameData
2011-10-30 21:47:26 +00:00
Tim-Philipp Müller
dc7ec44486
taglist: make opaque
...
Hide the fact that it's just a GstStructure from the API. We
may want to change this in future (e.g. to add refcounting).
Also, it caused problems for bindings (though that's mostly
the way we typedefed it to GstStructure).
2011-10-30 10:14:15 +00:00
Tim-Philipp Müller
3a4f580bb2
Merge remote-tracking branch 'origin/master' into 0.11
2011-10-30 10:00:28 +00:00
Tim-Philipp Müller
606c53fc94
taglist: add to_string and new_from_string functions
...
We want to make GstTagList opaque and not have people use
GstStructure API on it.
API: gst_tag_list_to_string()
API: gst_tag_list_new_from_string()
2011-10-30 09:58:16 +00:00
Tim-Philipp Müller
002446820e
Merge remote-tracking branch 'origin/master' into 0.11
2011-10-30 09:31:39 +00:00
Tim-Philipp Müller
911c078c2b
taglist: avoid pointless tag name -> quark lookups
...
We never get a tag name quark from a caller, it's always a
string, from which we'll try to look up our tag info in the
hash table, so change the hash table key from quark to string.
Avoids a bunch of pointless string => quark lookup in the
global quark table. We need to do an extra string => quark
conversion now when we copy a taglist, but in that case we're
in a slow path anyway.
2011-10-30 09:26:52 +00:00
Tim-Philipp Müller
cdade325ae
taglist: add gst_tag_list_is_equal()
...
API: gst_tag_list_is_equal()
2011-10-30 01:44:00 +01:00
Tim-Philipp Müller
bc1a37e64f
structure: identical structures are definitely equal
2011-10-29 23:52:22 +01:00
Tim-Philipp Müller
948980bf11
taglist: fix string for GST_TAG_ARTIST_SORTNAME
...
For historical reasons it was mapped to a musicbrainz prefix,
but it's not really musicbrainz-specific at all.
2011-10-29 20:06:54 +01:00
Tim-Philipp Müller
5842e3fc38
elementfactory: move private functions for registry to private header
2011-10-29 19:59:05 +01:00
Wim Taymans
66e4966aee
buffer: fix docs some more
2011-10-28 16:45:23 +02:00
Wim Taymans
a70934e4ef
segment: remove GST_SEEK_TYPE_CUR
2011-10-28 16:23:49 +02:00
Wim Taymans
8b6431a4de
buffer: improve docs
2011-10-28 16:23:49 +02:00
Wim Taymans
0941cc9fb8
compat: add timestamp compat defines
2011-10-28 12:26:27 +02:00
Wim Taymans
80fc568747
buffer: add pts/dts to buffers
2011-10-28 12:15:44 +02:00
Wim Taymans
d9c8ab67a0
caps: add empty_simple variants
2011-10-27 17:09:04 +02:00
Johan Boulé
3406549cf6
caps: use G_GNUC_NULL_TERMINATED for gst_caps_new_simple() and gst_caps_new_full()
...
If you get warnings, use gst_caps_new_empty().
https://bugzilla.gnome.org/show_bug.cgi?id=343346
2011-10-27 14:56:24 +01:00
Wim Taymans
852851edab
Merge branch 'master' into 0.11
...
Conflicts:
libs/gst/base/gstbasetransform.c
2011-10-27 15:27:19 +02:00
Tim-Philipp Müller
c00c8903ca
structure: use G_GNUC_NULL_TERMINATED for gst_structure_new()
...
If you get a warning, use gst_structure_empty_new().
https://bugzilla.gnome.org/show_bug.cgi?id=343346
2011-10-27 13:25:08 +01:00
Stefan Sauer
b7ae6c46a3
event: clarify docs for step event
2011-10-26 12:24:29 +02:00
Tim-Philipp Müller
dd9f244f03
registry: add support for GST_REGISTRY_REUSE_PLUGIN_SCANNER=no
...
This will make sure we spawn a new plugin scanner helper for each plugin
to be introspected, which helps with making sure we don't load too many
shared objects (libs, plugins) at the same time on systems where there
is a hard limit like on Android.
A better version might re-use the scanner for up to N times, though
it's not clear whether that would actually improve things dramatically.
https://bugzilla.gnome.org/show_bug.cgi?id=662091
2011-10-26 11:20:16 +01:00
Thiago Santos
27ce89812a
caps: No need to require writable caps for _append/_merge second caps
...
The second caps ownership is transfered, no need to require it to
be writable from the caller function. Instead, _append and _merge
make it writable on their own.
Discovered because of an assertion on encoding-profile.c in
_get_input_caps using _merge but not passing writable caps.
2011-10-21 10:23:04 -03:00
Stefan Sauer
b6d34084f2
interfaces: clean up the use of iface and class/klass
2011-10-21 14:20:40 +02:00
Stefan Sauer
ea030c9452
docs: spelling and formatting fixes
2011-10-21 11:21:17 +02:00
Edward Hervey
df6044f7eb
Merging origin/master
...
Conflicts:
gst/gstbin.c
gst/gstbus.c
gst/gstdebugutils.c
gst/gstpad.c
libs/gst/base/gstbaseparse.c
libs/gst/base/gstbasesrc.c
2011-10-21 10:52:46 +02:00
Stefan Sauer
ad438461a6
pad: not only describe conditions in the docs, also check them in the code
...
When blocking pads, check if the pad is in the rigt direction. Log some info
for the developer and return FALSE, instead of just locking up.
2011-10-20 09:51:11 +02:00
René Stadler
5800757369
Revert gst_plugin_feature_get_name to const string return
...
Returning a newly allocated string makes no sense. It's unexpected for a
getter, and also this behaves differently in 0.10, so it would make future
merges harder.
Except for these two places here in core which were updated for the new
semantic, the return value is getting leaked all over the place.
2011-10-19 23:40:10 +02:00
Edward Hervey
7460061645
gstobject: Add (skip) annotation to gst_object_ref_sink
2011-10-19 12:12:36 +02:00
Edward Hervey
88095c406e
gstiterator: Add skip annotation for creating GstIterator
...
Not really useful for bindings
2011-10-19 11:59:29 +02:00
Johan Dahlin
2f069b106e
introspection: Skip gst_poll apis
...
https://bugzilla.gnome.org/show_bug.cgi?id=657640
2011-10-19 10:24:17 +02:00
Johan Dahlin
9200776841
introspection: Skip GType and GValue transform apis
...
These do not make sense to expose to language bindings
https://bugzilla.gnome.org/show_bug.cgi?id=657640
2011-10-19 10:24:11 +02:00
Johan Dahlin
6cd0287bdb
introspection: Skip gst_init_get_option_group
...
It uses GOptionGroup which is not wrappable
https://bugzilla.gnome.org/show_bug.cgi?id=657640
2011-10-19 10:23:57 +02:00
Johan Dahlin
df7d090ecc
introspection: Add missing annotations
...
https://bugzilla.gnome.org/show_bug.cgi?id=657640
2011-10-19 10:23:53 +02:00
Johan Dahlin
d0e94754f0
introspection: Rename gst_bus_add_watch_full to gst_bus_add_watch
...
https://bugzilla.gnome.org/show_bug.cgi?id=657640
2011-10-19 10:23:45 +02:00
Johan Dahlin
61d5670b27
Sync documentation arguments
...
The introspection scanner warns if the header and the source
uses mismatching parameter names.
https://bugzilla.gnome.org/show_bug.cgi?id=657640
2011-10-19 10:20:31 +02:00
Johan Dahlin
22acd34c42
Add gst_structure_get_type
...
https://bugzilla.gnome.org/show_bug.cgi?id=657640
2011-10-19 10:20:31 +02:00
Thiago Santos
3ab02d8fdc
message: protect against null message sources
...
Message sources can be null, check if it is before trying to
access its name.
2011-10-18 19:29:13 -03:00
Stefan Sauer
2e6b434730
logging: more logging and prefer human readable details over memory locations
2011-10-18 15:24:21 +02:00
Stefan Sauer
a98208770b
debugutils: improve display of ghost- and proxypads
...
Handle virtual links between ghost and proxypads when iterating pads instead of
when linking. Besides using less code this provides a more accurate picture.
2011-10-18 15:24:21 +02:00
René Stadler
5239679c09
pad: fix buffer/event leak when pad is flushing
...
Apparently this got lost while refactoring probes.
2011-10-17 21:40:46 +02:00
René Stadler
221836f452
caps: fix race condition and memory leak in gst_static_caps_get
...
This was leaking the PtrArray from caps->priv, as set up by the other call to
gst_caps_init. Also, the thread safety issue presented in the comment above was
not taken care of anymore. We now zero the refcount again when publishing the
structure.
Fixes #661629 .
2011-10-17 13:59:49 +02:00
Edward Hervey
631bf1f3af
gstregistry: Don't leak feature name
2011-10-17 09:51:15 +02:00
Tim-Philipp Müller
d42923b014
bus: give watch source a name
...
Give our GSource a meaningful name. Source names can be
used for debugging and profiling, for example with
systemtap or gdb.
2011-10-16 21:14:03 +01:00
Edward Hervey
d829425fb9
gstbuffer: Add transfer annotations for gst_buffer_join()
2011-10-16 21:13:56 +01:00
Wim Taymans
8e4f006c57
fix more parent_class
2011-10-16 14:45:03 +02:00
Wim Taymans
40bb69827c
Merge branch 'master' into 0.11
...
Conflicts:
gst/gstevent.h
2011-10-16 14:20:33 +02:00
Wim Taymans
2f09c5a9c5
padtemplate: clean up parent_class
2011-10-16 14:19:36 +02:00
Wim Taymans
65a7c66053
pad: clean up parent_class handling
2011-10-16 14:19:36 +02:00
Edward Hervey
ca2ba294d7
gstbuffer: Add transfer annotations for gst_buffer_join()
2011-10-14 09:35:09 +02:00
Stefan Sauer
72d4bbd8db
bus: fix typo in the docs
2011-10-13 17:33:06 +02:00
Stefan Sauer
32b90e667d
debugutils: show if an element is state-locked
2011-10-13 16:49:01 +02:00
Stefan Sauer
735068218e
logging: use _OBJECT variants more
2011-10-13 16:49:01 +02:00
Sebastian Dröge
e8d3870214
buffer: Use an inline function instead of a macro for gst_buffer_replace()
...
This gives us type checks by the compiler and more useful compiler errors.
2011-10-13 10:19:34 +02:00
Sebastian Dröge
ef32fd0d15
event: Use an inline function instead of a macro for gst_event_replace()
...
This gives us type checks by the compiler and more useful compiler errors.
2011-10-13 10:18:51 +02:00
Thiago Santos
a171e684ac
ghostpad: Do not unref the internal pad twice
...
g_value_unset should already unref the internal proxypad, no
need to do it again
2011-10-12 18:14:46 -03:00
René Stadler
eab6465ba8
event: add transfer type for gst_event_new_caps argument
...
These annotations are useful to humans as well...
2011-10-12 14:37:31 +02:00
René Stadler
724d52300e
event: fix gst_event_new_segment transfer type
2011-10-12 13:31:48 +02:00
Edward Hervey
917bfc5df7
gst: More 'transfer' annotations
2011-10-11 13:51:37 +02:00
Tim-Philipp Müller
56e27b0546
utils: catch invalid instance sizes in gst_type_register_static_full()
...
Add guards to catch overly large instance sizes.
https://bugzilla.gnome.org/show_bug.cgi?id=660955
2011-10-10 19:41:33 +01:00
Tim-Philipp Müller
01c11ebf08
utils: remove gst_type_register_static_full()
...
It was only really used by GST_BOILERPLATE, and that is no more.
https://bugzilla.gnome.org/show_bug.cgi?id=660955
2011-10-10 19:30:34 +01:00
Edward Hervey
009bc19528
ghostpad: If we don't control a pad/template, return proper caps
...
If there's a filter, we can return that in _get_caps()
2011-10-10 17:04:39 +02:00
Edward Hervey
86656b44af
gstpad: Specify transfer full for gst_pad_get_caps()
...
It increments the reference count of the returned caps.
2011-10-10 16:55:19 +02:00
Edward Hervey
42fcb1175b
gstpad: Add debug to know what events are transferred between pads
2011-10-10 16:55:19 +02:00
Edward Hervey
2ba6017363
gstpad: Unset EOS event on FLUSH_STOP
2011-10-10 16:54:40 +02:00
Edward Hervey
a930f67697
gstpad: Don't ignore downstream FlowReturn with IDLE probes
...
If pushgin downstream returned a non-ok value (like GST_FLOW_WRONG_STATE),
we don't want to end up returning a different value (GST_FLOW_OK in this
case) if IDLE probes are present.
2011-10-10 16:53:32 +02:00
Wim Taymans
f44b54ebc9
compat: add compat define for UNEXPECTED
2011-10-10 11:36:23 +02:00
Wim Taymans
ea012d3dd7
pad: GST_FLOW_UNEXPECTED -> GST_FLOW_EOS
2011-10-10 11:33:51 +02:00
Tim-Philipp Müller
534e077c18
elementfactory: don't export private _gst_elementclass_factory quark
2011-10-08 20:46:55 +01:00
Tim-Philipp Müller
ac40ab45b3
info: make _gst_debug_init() private for now
...
This was a FIXME for 0.11. I guess a case could be made to keep it around
separately for apps or libraries that only want to use GStreamer's debugging
system, but it seems more likely they'd just copy the two source files into
their own tree if the case. Also, things like types wouldn't be initialised
without gst_init(). We can still make it public again if anyone needs it,
but then we should make it a proper function and not hide it behind
underscores.
2011-10-08 20:15:46 +01:00
Tim-Philipp Müller
21ec07eab0
Merge remote-tracking branch 'origin/master' into symbol-exports
2011-10-08 19:54:06 +01:00
Tim-Philipp Müller
01d87250a8
gstparse: prefix generated parser functions so they don't get exported
...
Don't export those 35-something random _gst_parse_yy* symbols. These were
never in any header files and also blacklisted from our .def files, in
case anyone wonders.
2011-10-08 14:34:04 +01:00
Tim-Philipp Müller
5df82c88c9
info: rename __gst_debug_* to _gst_debug_* and fix symbol export regexp
...
Only export GStreamer symbols with one leading underscore, not two
or more leading underscores.
Requires a rebuild of the entire stack, sorry.
2011-10-08 14:27:12 +01:00
Wim Taymans
e10666a9d0
Merge branch 'master' into 0.11
2011-10-08 14:25:02 +02:00
Wim Taymans
c57c1e9b59
info: port to 0.11
2011-10-08 09:41:54 +02:00
Wim Taymans
ee1f861ec1
Merge branch 'master' into 0.11
...
Conflicts:
gst/gstpad.c
2011-10-08 09:28:02 +02:00
Thiago Santos
52613b4d14
pipeline: Use pipeline category for one more log message
...
Makes debugging easier.
2011-10-07 13:36:38 -03:00
Robert Swain
138bb17bf9
GST_PTR_FORMAT: Add GstBuffer ptr format and use in GST_SCHEDULING
...
GstBuffer pointers can now be printed using GST_PTR_FORMAT. This is used
in the very useful GST_SCHEDULING debug logs in gstpad.c and allows for
easier and more information tracking of buffer progress through a
pipeline with just debug logging.
2011-10-07 16:38:52 +02:00
Edward Hervey
045fcd8b0a
gstbufferpool: Use glib compat macros for atomic pointers
2011-10-05 11:20:37 +02:00
Wim Taymans
90a4f75650
buffer: improve docs
2011-10-04 18:55:09 +02:00
Wim Taymans
544aa9773a
Merge branch 'master' into 0.11
2011-10-04 17:39:17 +02:00
Edward Hervey
314a24c4ac
gstevent: specify (transfer) for gst_event_new_segment
2011-10-04 15:56:28 +02:00
Wim Taymans
4f8bb4085f
Merge branch 'master' into 0.11
...
Conflicts:
libs/gst/base/gstbaseparse.c
2011-10-03 10:06:17 +02:00
Edward Hervey
a7f8e4a230
gstquery: Make debugging message more informative
...
For all the newcomers out there who still don't know the values of
GstQueryType enum by heart...
... and old-timers who've got better things to do :)
2011-10-03 09:31:59 +02:00
Tim-Philipp Müller
eeed491170
gst.h: include header for atomic queue
2011-09-30 14:52:01 +01:00
Wim Taymans
eda44fbc22
memory: fix memory alignment
...
Fix compilation when POSIX_MEMALIGN is not set.
Debug the configured alignment.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=660300
2011-09-28 18:47:02 +02:00
Wim Taymans
422d1245c1
pad: improve debug
2011-09-28 18:44:12 +02:00
Wim Taymans
8a1f401dfd
docs: fix docs
2011-09-26 20:47:35 +02:00
Wim Taymans
52cb649834
Merge branch 'master' into 0.11
2011-09-26 19:25:22 +02:00
Wim Taymans
dc8b6a555d
segment: improve API docs a little
2011-09-26 19:24:19 +02:00
Raimo Järvi
6637d983d3
gst: Fix compiler warnings on 64 bit mingw-w64
...
Fixes bug #660083 .
2011-09-26 12:17:30 +02:00
Edward Hervey
10e7159cf8
Merge branch 'master' into 0.11
...
Conflicts:
gst/gstcaps.c
gst/gstpad.c
libs/gst/base/gstbasesink.c
libs/gst/base/gstbasesink.h
libs/gst/base/gstbasetransform.c
2011-09-23 13:09:25 +02:00
Stas Sergeev
b090a376d4
pad: Set caps on pad before checking if the pad is linked
...
This allows the setcaps handler and notify::caps to link
the pad downstream and doesn't require hacks to always
provide a peer to the pad, like in decodebin2.
2011-09-19 14:08:16 +02:00
Fabrizio (Misto) Milo
7be3899653
caps: use g_value_take_string() and gst_value_get_caps() instead of accessing internal fields
2011-09-19 09:50:11 +02:00
Tim-Philipp Müller
b15ae28ad2
pad: add more debug logging for other chain function code path as well
2011-09-16 13:38:41 +01:00
Tim-Philipp Müller
a08402bdfd
pad: fix up printf format in debug message
...
Which I messed up.
2011-09-16 13:13:30 +01:00
Vincent Penquerc'h
91c217c714
pad: make some debug traces more useful
...
https://bugzilla.gnome.org/show_bug.cgi?id=659139
2011-09-16 12:07:21 +01:00
Tim-Philipp Müller
98ee2979d1
caps: move log messages for caps creation/freeing into TRACE category
...
Reduce SPAM for GST_CAPS:5.
2011-09-10 18:24:49 +01:00
Sebastian Dröge
22ba786807
pad: Only do the subset check in gst_pad_accept_caps() if the pad claims to accept the caps
2011-09-09 12:56:20 +02:00
Sebastian Dröge
7476186217
Revert "Revert "pad: Check for subsets, not non-empty intersections to check if caps are compatible""
...
This reverts commit 2bfada5581
.
Conflicts:
gst/gstpad.c
For 0.11 we want to enforce that only subsets of the pad
caps are allowed. This breaks backward compatibility for
some elements, which is why we only print a warning in
0.10.
2011-09-08 14:32:26 +02:00
Sebastian Dröge
7a82ed41f8
Revert "pad: Use gst_pad_accept_caps() instead of manually checking when configuring a sinkpad"
...
This reverts commit d3cad28da9
.
It causes performance problems because acceptcaps() propagates downstream.
2011-09-08 14:29:00 +02:00
Sebastian Dröge
43538e2e75
Merge branch 'master' into 0.11
...
Conflicts:
docs/design/draft-buffer2.txt
docs/design/part-TODO.txt
docs/design/part-block.txt
docs/design/part-bufferlist.txt
docs/design/part-caps.txt
docs/design/part-element-transform.txt
docs/design/part-events.txt
docs/design/part-negotiation.txt
gst/gstcaps.c
gst/gstevent.h
gst/gstghostpad.c
gst/gstinterface.c
gst/gstpad.c
gst/gstpad.h
gst/gstutils.c
libs/gst/base/gstbasesink.c
libs/gst/base/gstbasesrc.c
libs/gst/base/gstbasetransform.c
libs/gst/base/gsttypefindhelper.c
plugins/elements/gstcapsfilter.c
plugins/elements/gsttee.c
tests/check/generic/sinks.c
tools/gst-launch.1.in
2011-09-08 14:28:23 +02:00
Sebastian Dröge
d3cad28da9
pad: Use gst_pad_accept_caps() instead of manually checking when configuring a sinkpad
2011-09-08 13:42:53 +02:00
Sebastian Dröge
79b5e89015
pad: Print a g_warning() if pad accept caps that are not a subset of its caps
...
In 0.11 only subsets are supported again as documented instead of also
allowing non-empty intersections.
2011-09-08 13:42:53 +02:00
Sebastian Dröge
2bfada5581
Revert "pad: Check for subsets, not non-empty intersections to check if caps are compatible"
...
This reverts commit 0c5d502073
.
See bug #658541 .
2011-09-08 13:42:52 +02:00
Piotr Fusik
14f5518f3d
docs, gst: typo fixes
...
https://bugzilla.gnome.org/show_bug.cgi?id=658449
2011-09-07 18:03:17 +01:00
Stefan Sauer
83eb2d42fa
docs: escape % in docblob
2011-09-07 14:08:35 +02:00
Stas Sergeev
fcadf09779
ghostpad: Use gst_pad_set_caps() instead of manually changing caps
...
gst_pad_set_caps() does essentially the same but additionally calls
the pad's setcaps function.
Fixes bug #658076 .
2011-09-07 13:38:47 +02:00
Sebastian Dröge
0c5d502073
pad: Check for subsets, not non-empty intersections to check if caps are compatible
...
Pads should only accept caps that are a subset of the pad caps, e.g.
they should accept only caps that have a non-empty intersection and
at least all fields of the pad caps.
Without this a pad that wants for example
"video/x-h264,stream-format=byte-stream"
will be happy to accept
"video/x-h264".
2011-09-06 12:35:41 +02:00
Wim Taymans
a952de69dd
miniobject: change to GST_DEFINE_MINI_OBJECT_TYPE
...
Append _TYPE to the macro for consistency with other similar macros.
2011-08-29 17:06:18 +02:00
Wim Taymans
f3b0d3cdbe
init: add _get_type() functions
...
Remove gst_mini_object_register() and add a GST_DEFINE_MINI_OBJECT macro to
define a _get_type() function for the boxed miniobject.
Remove a bunch of custom _get_type() functions and replace them with the
miniobject macro.
Rename some _init method to _priv_*_initialize() like the rest of them.
Inspired by patch from Johan Dahlin and see bug #657603
2011-08-29 15:34:30 +02:00
Wim Taymans
4145598972
gst: add some _priv prefixes to private methods
2011-08-29 13:27:26 +02:00
Wim Taymans
1e59b651ba
mini-object: use ref/unref directly in boxed copy/free
...
GLib will not call our copy/free with a NULL object
2011-08-29 12:38:54 +02:00
Wim Taymans
5cf8e68944
Merge branch 'master' into 0.11
...
Conflicts:
gst/gstmessage.c
gst/gstquery.c
gst/gstregistrychunks.c
gst/gstsegment.c
libs/gst/base/gstbasetransform.c
libs/gst/base/gstbasetransform.h
libs/gst/base/gsttypefindhelper.c
plugins/elements/gsttypefindelement.c
2011-08-26 14:37:54 +02:00
Wim Taymans
cc1686352d
buffer: improve flags
...
Rename DROP to DECODE_ONLY.
Add DROPPABLE flag to mark buffers that can be dropped to save bandwidth without
destroying the stream.
2011-08-26 14:17:23 +02:00
Josep Torra
185ab7f325
docs: add since 0.10.36 on the new _NONE enum values
2011-08-26 14:11:15 +02:00
Josep Torra
306e317ae9
typefind: add GST_TYPE_FIND_NONE and use it
...
Fixes warning #188 : enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:15 +02:00
Josep Torra
1db007e5bb
parse: use GST_PARSE_FLAG_NONE instead of 0
...
Fixes warning #188 : enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:14 +02:00
Josep Torra
b26c5b99f2
value: explicitly cast to the enum type
...
Fixes warning #188 : enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:14 +02:00
Josep Torra
b57683d258
utils: minor changes related to enum types
...
Fixes warning #188 : enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:14 +02:00
Josep Torra
c0749e7762
trace: add GST_ALLOC_TRACE_NONE for consistency and use it
...
Fixes warning #188 : enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:14 +02:00
Josep Torra
97442ad1a3
task: explicitly cast to the enum type
...
Fixes warning #188 : enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:14 +02:00
Josep Torra
95b96b57a2
tagsetter: use GST_TAG_MERGE_UNDEFINED instead of FALSE
...
Fixes warning #188 : enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:14 +02:00
Josep Torra
c0b0b977d7
segment: use GST_SEEK_FLAG_NONE instead of 0
...
Fixes warning #188 : enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:14 +02:00
Josep Torra
9f8fe424c7
registrychunks: explicitly cast to the enum types
...
Fixes warning #188 : enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:14 +02:00
Josep Torra
ec157ebed9
query: minor changes related to enum types
...
Fixes warning #188 : enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:13 +02:00
Josep Torra
480d415419
padtemplate: explicitly cast to the enum types
...
Fixes warning #188 : enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:13 +02:00
Josep Torra
746813344d
pad: explicitly cast to the enum type
...
Fixes warning #188 : enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:13 +02:00
Josep Torra
c27ce79ba1
message: explicitly cast to the right enum types
...
Fixes warning #188 : enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:13 +02:00
Josep Torra
2a6ba0b29d
info: explicitly cast to the enum type
...
Fixes warning #188 : enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:13 +02:00
Josep Torra
e5d00246cf
index: explicitly cast to the enum type
...
Fixes warning #188 : enumerated type mixed with another type reported by ICC.
2011-08-26 14:11:13 +02:00