[Bug 724481] bufferpool: Doesn't reset buffers when releasing them to the pool

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Sun Feb 23 13:03:32 PST 2014


https://bugzilla.gnome.org/show_bug.cgi?id=724481
  GStreamer | gstreamer (core) | git

--- Comment #3 from Nicolas Dufresne <nicolas.dufresne at collabora.co.uk> 2014-02-23 21:24:32 UTC ---
It's not super solidly formed in my mind yes, but the general idea is that when
a buffer comes back into the pool, the memory are detached (but kept in cache)
and the GstBuffer + Metas are simply discarded. When a buffer is acquired, a
clean GstBuffer and reconstructed metas are created and cached memory is added.
In this scenario, the memory being available is now bound to when the memory is
released, rather then when the buffer comes back into the pool.

Now, where is the cache implemented, I have no idea, might be in the allocator
like what Olivier wanted, of might be a separate object (e.g. we could have a
GstV4l2Queue, that better fit with V4L2 and is being used by the pool to
reconstruct the buffers from cache. I'm open to suggestion, but the key would
be to track the memory refcound of memory reuse, and to not truct the
GstBuffers that comes back into the pool.

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list