Wim Taymans
a59bc0ab02
basetransform: remove obsolete code
...
Remove some obsolete code.
Don't try to reconfigure when we don't have sink caps.
2011-05-11 18:09:03 +02:00
Sebastian Dröge
437c92b403
bin: Dereference GstQuery** before passing it to GST_QUERY_TYPE_NAME
2011-05-11 16:47:33 +02:00
Wim Taymans
905100cdbe
event: update the structure when needed
...
When we get the structure of an event, make sure it also contains the fields
that we keep in fast variables, this way we can easily serialize and debug
the events. We would probably later simply prefer to register a transform
function to G_TYPE_STRING and G_TYPE_BYTEARRAY etc..
2011-05-11 16:06:50 +02:00
Wim Taymans
e2452c8c78
caps: cleanups
...
We don't need to check if the type is 0, the init function is only called once
in the beginning.
2011-05-11 16:06:50 +02:00
Wim Taymans
0bfbce4463
event: clean up some macros
...
Avoid executing a method for GST_TYPE_EVENT but instead use the type variable
directly. We can do this because we register it before anything else.
2011-05-11 16:06:49 +02:00
Sebastian Dröge
9ec1673cae
bus: Fix GST_DEBUG parameters to be consistent with the format string
2011-05-11 15:49:11 +02:00
Sebastian Dröge
ef673656b7
basetransform: Implement support for pad reconfiguration again
2011-05-11 15:26:02 +02:00
Sebastian Dröge
07c5caac50
capsfilter: Fix deadlock, gst_pad_get_current_caps() already takes the pad's object lock
2011-05-11 15:19:39 +02:00
Wim Taymans
fa28e2c5e6
event: example of how to optimize events
...
Use a structure for the QoS event by 'extending' the GstEventImpl structure.
This should avoid allocation of GstStructures and its contents.
2011-05-11 11:06:36 +02:00
Wim Taymans
cf4fbc005c
query: allow _make_writable on query handlers
...
Pass a GstQuery ** to the query handlers so that they can make the query
writable before using a setter on it.
Port code to new API.
2011-05-10 18:36:33 +02:00
Wim Taymans
b905c4d215
porting: update porting doc
2011-05-10 16:46:15 +02:00
Wim Taymans
84a1f4ba7f
element: use request_new_pad_full as the default
...
Add GstCaps to request_new_pad so that request_new_pad_full can be removed.
Fix elements.
2011-05-10 16:41:36 +02:00
Wim Taymans
fbf306449e
porting: update porting doc
2011-05-10 16:23:08 +02:00
Wim Taymans
df4a8e2f23
query: make sure query is writable
...
Make sure the Query is writable before executing the setters.
2011-05-10 15:41:54 +02:00
Wim Taymans
933446ec44
query: Hide GstStructure in queries
...
Hide the GstStructure from the query API.
Rename some methods to match the more common names in GObject libraries.
Add some more useful query API.
2011-05-10 15:33:53 +02:00
Wim Taymans
108dff2210
message: hide the message structure field
...
Make a private structure to hold the GstStructure bits of the message.
Add some more useful macros like we have for events.
2011-05-10 13:34:10 +02:00
Wim Taymans
8f13bb9e27
caps: fix the macros a little
2011-05-10 12:29:06 +02:00
Wim Taymans
bd540bfb66
event: Hide the GstStructure
...
Hide the GstStructure of the event in the implementation specific part so that
we can change it.
Add methods to check and make the event writable.
Add a new method to get a writable GstStructure of the element.
Avoid directly accising the event structure.
2011-05-10 11:50:16 +02:00
Wim Taymans
7f24a48387
event: _qos_full -> _qos
2011-05-09 18:48:55 +02:00
Wim Taymans
c07b57fc05
segment: remove _full version
...
Rename the _full versions of the functions to the normal function names.
2011-05-09 17:51:07 +02:00
Wim Taymans
d63829fc9a
segment: remove abs_rate from segment structure
...
Remove the abs_rate field from the segment structure, we can trivially compute
it when needed.
2011-05-09 16:39:13 +02:00
Wim Taymans
b5456cc6f4
caps: remove caps from buffers and pads
...
Remove the GstCaps from buffers and pads. We now use CAPS events to negotiate
formats between element.
2011-05-09 16:21:28 +02:00
Wim Taymans
4eed658be1
basetransform: Use CAPs event
...
Use the caps event to configure basetransform.
Remove force_alloc hack, we don't need this in 0.11 with new upstream
negotiation.
Avoid getting some pad caps.
2011-05-09 15:08:51 +02:00
Wim Taymans
f127a416fa
basesink: add some more debug
2011-05-09 15:08:51 +02:00
Edward Hervey
448ff3dcd0
win32: Add new symbols
2011-05-09 13:45:49 +02:00
Edward Hervey
b84afab3fa
gstbuffer: Fix unitialized variables
2011-05-09 13:45:49 +02:00
Wim Taymans
22d64af104
tools: avoid using pad caps
...
Avoid directly accessing the pad caps, use gst_pad_get_current_caps() instead.
2011-05-09 10:54:10 +02:00
Wim Taymans
24573211c6
Merge branch 'master' into 0.11
2011-05-08 13:14:55 +02:00
Wim Taymans
d34ca6140b
basesink: use CAPS event instead of setcaps function
2011-05-08 13:07:13 +02:00
Wim Taymans
ba6b915651
base: avoid using buffer caps
...
Comment all code using buffer caps.
Rework capsfilter code a little.
Fix some unit tests
2011-05-08 12:46:17 +02:00
Wim Taymans
bf7c80b5f6
pad: improve caps event handling
...
Fix replace of caps events when linking: we need to unref the old ones.
Make sure we pass error values around.
Move backward compat code into the default handler for now.
2011-05-08 12:43:26 +02:00
Wim Taymans
73f3b3fb75
event: don't ref the caps
...
Use a different way of getting the caps from the caps event so that no
refcounting happens.
2011-05-08 12:38:05 +02:00
Wim Taymans
d43cdfbf37
buffer: avoid using buffer caps
2011-05-08 12:37:44 +02:00
Tim-Philipp Müller
dccde2652f
baseparse: don't post loads of empty taglists
...
Only post bitrate updates if there's something to post, don't
post empty taglists if nothing changed.
2011-05-06 23:44:15 +01:00
Wim Taymans
02e5feb2bf
pad: avoid using the old GST_PAD_CAPS
...
Don't use GST_PAD_CAPS but instead use the new gst_pad_get_current_caps()
method.
Avoid setting caps on buffers.
2011-05-06 19:04:54 +02:00
Wim Taymans
62b1a5a7be
pad: add 2 new caps methods
...
Add method to get the currently configured caps on the pad.
Add a method to check if caps are configured on a pad.
2011-05-06 19:03:33 +02:00
Wim Taymans
b35a700d3e
pad: implement fixed caps with an object flag
...
Implement fixed caps with an object flag instead of a custom getcaps function.
2011-05-06 17:59:33 +02:00
Wim Taymans
92b4c8967b
pad: don't use buffer caps for negotiation
...
Don't use the buffer caps for negotiation anymore but use the CAPS events.
Make the _set_caps method produce the CAPS event, add some backward
compatibility code to trigger the setcaps functions on src and sinkpads.
Remove all negotiation code from the chain functions.
Don't use the GST_PAD_CAPS variable anymore to store the caps but retrieve the
caps from the sticky event array.
2011-05-06 17:39:09 +02:00
Wim Taymans
e444493793
selector: don't unset caps
2011-05-06 17:39:09 +02:00
Wim Taymans
8ca3f9e71a
typefind: don't unset caps
2011-05-06 17:39:08 +02:00
Wim Taymans
5f06f3b0ae
check: let the normal code unset caps
2011-05-06 17:39:08 +02:00
Wim Taymans
cac9e8fee2
outputselector: handle NULL pads in some cases
2011-05-06 17:39:08 +02:00
Wim Taymans
dcc5570f7f
bin: let the pad clean up in activate
2011-05-06 17:39:08 +02:00
Wim Taymans
3d949e988b
element: don't mess with pad caps in activate
...
When deactivating a pad, let the pad decide what fields to clear.
2011-05-06 17:39:08 +02:00
Wim Taymans
3122f429cd
event: only allow fixed caps in caps event
2011-05-06 17:39:08 +02:00
Sebastian Dröge
903dadef17
event: Improve documentation of gst_event_new_reconfigure()
2011-05-06 13:01:24 +02:00
Wim Taymans
ac1e42402a
porting: update porting doc
2011-05-06 12:23:01 +02:00
Wim Taymans
fb3da828e5
element: rename gst_element_lost_state_full()
...
Rename gst_element_lost_state_full() to gst_element_lost_state() and
remove the old method name.
2011-05-06 12:19:16 +02:00
Wim Taymans
0637aa95c5
pad: clean up the .h file a bit
2011-05-06 12:09:00 +02:00
Wim Taymans
4372869e80
pad: implement more sticky events
...
Remove the context again, adding an extra layer of refcounting and object
creation to manage an array is too complicated and inefficient. Use a simple
array again.
Also implement event updates when calling gst_pad_chain() and
gst_event_send_event() directly.
2011-05-06 11:14:02 +02:00