After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 616237 - Stop allocating buffers for any caps
Stop allocating buffers for any caps
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
git master
Other Linux
: Normal normal
: 0.11.0
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2010-04-19 23:29 UTC by Benjamin Otte (Company)
Modified: 2011-05-25 18:45 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Benjamin Otte (Company) 2010-04-19 23:29:43 UTC
In various places - I've found GstBaseTransform's suggest feature and gst_pad_buffer_alloc_unchecked() so far - GStreamer decides to allocate a memory buffer as a fallback when calling the bufferalloc function failed.
This is bad for caps that require a GstBuffer subclass - such as video/x-raw-gl and video/x-cairo. In fact, I believe gst-plugins-gl is currently broken as it does not check buffers at all and assumes all buffers are GL buffers.
It is also not possible to work around this behavior as peer pads without bufferalloc functions will always cause this to happen.

I'm filing this as I have no clue if and how to fix it. Currently I'm working around this by manual checks, but that is ugly and required in a lot of places when subclassing.
Comment 1 Sebastian Dröge (slomo) 2011-05-25 18:45:40 UTC
This is now fixed in 0.11 with the buffer metadata, the ALLOCATION query and the RENEGOTIATE event.