gst/elements/gstcapsfilter.c: Reimplement using basetransform, fixes buffer_alloc...
authorAndy Wingo <wingo@pobox.com>
Thu, 4 Aug 2005 19:40:43 +0000 (19:40 +0000)
committerAndy Wingo <wingo@pobox.com>
Thu, 4 Aug 2005 19:40:43 +0000 (19:40 +0000)
commite20ed97cb2d772212934d880cfb3be3c548180ca
tree74466edbd138565cdb598feb00d633e2c7479035
parent8ff106a019756b677bd8d32bd993ad39adf922ce
gst/elements/gstcapsfilter.c: Reimplement using basetransform, fixes buffer_alloc proxying among other things.

Original commit message from CVS:
2005-08-04  Andy Wingo  <wingo@pobox.com>

* gst/elements/gstcapsfilter.c: Reimplement using basetransform,
fixes buffer_alloc proxying among other things.

* gst/base/gstbasetransform.c:
* gst/base/gstbasetransform.h:
Revert patch to gstbasetransform from 7-28 removing
delay_configure.

* gst/base/gstbasetransform.h (GstBaseTransformClass.get_size):
* gst/base/gstbasetransform.c (gst_base_transform_get_size):
Semantics changed, should return not the size of the output buffer
but the byte size of a buffer with a given caps.

* gst/base/gstbasetransform.c (gst_base_transform_getcaps): Better
debug object.
(gst_base_transform_configure_caps): Don't set out_size here: (in,
out) are not the pad caps until setcaps finishes.
(gst_base_transform_buffer_alloc): Proxy the buffer_alloc for the
not-in-place case as well. Deal with changing from in-place to
not-in-place within calling pad_alloc_buffer. Still a bit
concerned about the overhead here...
ChangeLog
gst/base/gstbasetransform.c
gst/base/gstbasetransform.h
gst/elements/gstcapsfilter.c
libs/gst/base/gstbasetransform.c
libs/gst/base/gstbasetransform.h
plugins/elements/gstcapsfilter.c