Sebastian Dröge
26ca7546a7
pad: Drop sticky events pushed on flushing srcpads instead of activating them immediately
2011-05-27 11:45:16 +02:00
Wim Taymans
86c8b721b2
pad: refactor _push_event
...
Rework _push_event() a little so that it drops events on blocking pads.
Make sure that events are forwarded when we unblock.
Add counter on the pad to keep track of busy pads.
2011-05-26 19:45:14 +02:00
Wim Taymans
dd9fb5ebfd
pad: refactor pre and post chain code
2011-05-26 18:21:09 +02:00
Wim Taymans
af42e44af5
pad: keep counter for active pads
...
Keep a counter to mark the amount of threads currently pushing data on the pad.
2011-05-26 17:50:15 +02:00
Wim Taymans
40228b4aa5
pad: refactor pre push code
...
Refactor the code that is executed as the first step of a push operation where
we check the probes and blocking and resolve the peer.
2011-05-26 17:39:17 +02:00
Wim Taymans
118e325a03
pad: remove pad cache
...
Remove the pad cache as this is going to be reworked for new pad blocking and
probes.
2011-05-26 17:08:03 +02:00
Wim Taymans
aaba029298
pad: simplify handling of buffer lists
...
Implement a default buffer-list function in case the element doesn't implement
one.
Also pass buffer-lists to the have-data signal, this allows us to remove some
backward compatibility code.
2011-05-26 16:48:14 +02:00
Wim Taymans
f4f4fa5e8f
pad: remove old gst_pad_set_blocked methods
2011-05-26 16:17:31 +02:00
Sebastian Dröge
007b16b024
Merge branch 'master' into 0.11
2011-05-26 13:36:48 +02:00
Tim-Philipp Müller
8a3721a1ca
gst: we can now use GLib 2.24 API unconditionally
2011-05-25 16:02:10 +01:00
Руслан Ижбулатов
d56b3ec5aa
systemclock: Placate gcc by defining EWOULDBLOCK to something
2011-05-25 12:04:14 +02:00
Руслан Ижбулатов
54a9d8038d
poll: Fix WAKE_EVENT() to behave posixly on Windows
2011-05-25 12:04:14 +02:00
Stefan Kost
e0c92982e9
registrybinary: small cleanups
...
Remove unneeded braces from string define. Small doc improvement.
2011-05-24 20:30:11 +03:00
Stefan Kost
75ba14c79b
preset: use guint for the version number parts
...
Use unsigned integers for extra safety (like we do in plugin version parsing).
2011-05-24 20:30:11 +03:00
Wim Taymans
0d546490f6
remove some more deprecated methods
2011-05-24 18:39:41 +02:00
Wim Taymans
7da32991df
padtemplate: remove unused flag
2011-05-24 18:29:48 +02:00
Wim Taymans
2c221a5729
feature: use object name
...
Remove the name property from the plugin feature and port code to use the object
name instead.
2011-05-24 18:17:24 +02:00
Wim Taymans
65b427bf8e
remove old glib check
2011-05-24 18:16:36 +02:00
Wim Taymans
7e6d579301
scheduling: port to new scheduling query
2011-05-24 17:39:56 +02:00
Wim Taymans
5fa3082e19
query: add SCHEDULING query
...
Add a new query to replace the checkgetrange function.
2011-05-24 17:39:56 +02:00
Sebastian Dröge
0bcb5a421a
pad: Add gst_pad_sticky_events_iterate() function
2011-05-24 16:17:53 +02:00
Sebastian Dröge
53e53386d7
debugutils: Fix for GstIterator API changes
2011-05-24 13:28:38 +02:00
Sebastian Dröge
de1c3bdd5a
Revert "debugutils: Fix for GstIterator API changes"
...
This reverts commit e1cc3176d6
.
This is not the 0.11 branch...
2011-05-24 13:28:00 +02:00
Sebastian Dröge
e1cc3176d6
debugutils: Fix for GstIterator API changes
2011-05-24 13:27:38 +02:00
Wim Taymans
483c0fe490
Merge branch 'master' into 0.11
...
Conflicts:
gst/gstpad.h
2011-05-24 09:48:44 +02:00
Kipp Cannon
696a9a694f
clock: improve the GST_TIME_FORMAT/ARGS docs
2011-05-24 00:26:40 +03:00
Stefan Kost
1718abcbbb
docs: hide this from the docs
2011-05-23 23:40:20 +03:00
Wim Taymans
32ea413a40
event: use GST_SEGMENT_FORMAT for segments
2011-05-23 18:30:19 +02:00
Wim Taymans
8380949994
pad: improve debugging
2011-05-23 18:14:27 +02:00
Stefan Kost
01d8d7d718
deprecation-guards: fixup for commit 9ff4ec3104
...
Remove the deprecation guards for GST_PLUGIN_DEFINE_STATIC again (even though it
is deprecated) as we use it in the tests. Remove "_" for intlinkfunc.
2011-05-20 15:50:30 +03:00
Wim Taymans
e8080ab874
element: add method to get metadata
...
Add a method to get the metadata from a klass.
2011-05-20 12:45:06 +02:00
Wim Taymans
1c5c5177f3
factory: fix typo
2011-05-20 12:45:06 +02:00
Wim Taymans
a9edf7c6aa
Merge branch 'master' into 0.11
...
Conflicts:
docs/plugins/gstreamer-plugins.hierarchy
2011-05-20 12:07:45 +02:00
Wim Taymans
31a314ac5b
pad: add pending event for sticky events
...
Change the sticky event array so that it contains a pending and an active event.
Events on the sinkpad are copied to the pending array and after the eventfunc
returned TRUE, moved to the active event. This allows us to queue new events
like when we do per-pad offsets without removing the currently active event.
Remove the active argument from the gst_pad_get_sticky_event() method, the
pending events are not something we want to expose.
2011-05-20 11:36:25 +02:00
Stefan Kost
aa2bfc9b7f
preset: include cleanup
...
Only have include in the installed header we need to use it. Move the includes
needed by the implementation to the c file.
2011-05-20 00:39:10 +03:00
Wim Taymans
e83d5320a2
pad: apply pad offset on sinkpad events too
...
Apply the pad offset in the send_event() function as well.
2011-05-19 19:01:09 +02:00
Wim Taymans
e8b8c4aaa6
pad: add per-pad offsets
...
When linking pads and when copying a segment event from the sourc pad to the
sinkpad, apply the src and sinkpad offsets to the segment base. Make sure that
we only modify the event stored on the sinkpad and never the one on the source
pad.
When changing the pad offset, perform the segment copy with the updated offsets.
When pushing a segment event, apply the srcpad offset before sending the event
to the peer pad.
This part is missing the adjustment of the segment event on the sinkpad, which
is for a later patch.
2011-05-19 18:34:43 +02:00
Wim Taymans
c8340e7762
pad: add methods to adjust the offset
...
Add methods to adjust the offset. This will be used to change the segment events
with an offset so that we can tweak the timing of the stream on a per-pad base.
2011-05-19 18:34:43 +02:00
Wim Taymans
4a646e0e76
Merge branch 'master' into 0.11
...
Conflicts:
gst/gstghostpad.h
2011-05-19 11:30:06 +02:00
Wim Taymans
be01ecf530
pad: store sticky events on flushing sinkpads too
...
First store the sticky event on the sinkpad in the inactive state, then check
for the flushing flag. We want to have the events on sinkpads at all times,
ready to be activated when the pad becomes active.
2011-05-18 19:43:44 +02:00
Wim Taymans
500125ab4f
pad: move caps check to central location
...
Make a function to call the eventfunc and perform a caps check when we are
dispatching a caps event.
This makes sure that all code paths correctly check that the caps are
acceptable before sending the caps to the eventfunction.
2011-05-18 18:53:35 +02:00
Wim Taymans
25989f3c8d
ghostpad: avoid calling setcaps too many times
...
Don't call setcaps, the caps event will take care of propagating the caps on all
pads.
2011-05-18 18:52:22 +02:00
Wim Taymans
dc520c11bc
query: add allocation query name
...
Add ALLOCATION query name and guard some functions against invalid queries.
2011-05-18 18:48:03 +02:00
Sebastian Dröge
a46c9c2a62
event: Make SEGMENT event parsing API more consistent with the others
2011-05-18 16:56:43 +02:00
Sebastian Dröge
99962c72e4
pad: Don't forget to take the object lock when getting a sticky event
2011-05-18 16:29:10 +02:00
Sebastian Dröge
6b30f0b056
pad: Add function to get sticky events from a pad
...
API: gst_pad_get_sticky_event()
2011-05-18 16:26:54 +02:00
Wim Taymans
b1676b8c30
event: fix event copy
...
Fix parent refcount on event copy.
Fix unit test.
2011-05-18 15:43:20 +02:00
Wim Taymans
fa6bcde7e3
pad: notify caps property change in callsetcaps
...
Notify the caps property change in the backwards compatible function to call the
setcaps function.
2011-05-18 15:29:25 +02:00
Stefan Kost
79b22cb2ed
docs: use the same name for the argument in prototype and docs
2011-05-18 15:03:46 +03:00
Wim Taymans
e39182a085
Merge branch 'master' into 0.11
...
Conflicts:
gst/gstminiobject.c
gst/gstpad.c
gst/gstpad.h
gst/gstplugin.h
libs/gst/base/gstbaseparse.c
2011-05-18 13:14:57 +02:00