[gst-devel] gst-python problem: refcount for gst.Buffer too big?

Edward Hervey bilboed at gmail.com
Fri Apr 21 08:18:07 CEST 2006


On 4/21/06, Артём Попов <artfwo at gmail.com> wrote:
> Hi all,
> I'm trying to write a gst element in python, based on
> GstBaseTransform. The core of such an element would be "transform" and
> "transform_ip" methods, with receive GstBuffer arguments. Both of
> these methods don't work for me, due to too large reference count of
> Buffers passed to them. By the way, the "transform" method requires
> "get_unit_size" virtual method to be implemented, the patch is here:
> http://bugzilla.gnome.org/show_bug.cgi?id=339248
> in "transform_ip", buffer refcount is 3, and that makes the buffer unwritable
> in "transform", both buffer refcounts are 2, what makes output buffer
> unwritable as well...
> def transform_ip (self, outbuf):
>     print outbuf.__grefcount__ # always prints 3
>     return gst.FLOW_OK
> def transform (self, inbuf, outbuf):
>     print inbuf.__grefcount__ # always prints 2
>     print outbuf.__grefcount__ # always prints 2
>     return gst.FLOW_OK
> "gst_buffer_is_writable" checks, that the buffer refcount should be 1,
> and gst-python uses just that to enable or disable data writing to the
> buffer. So, how can I solve (or maybe workaround) this problem?
> Thanks. --Artem

  Would it be possible to see your code ? Seeing how you name your
methods, I doubt it'll work properly.

  Otherwise, we did refcount once too much, the bug and patch are
available here (I can't commit right now since cvs is frozen) :


  Please comment on the bug if it doesn't solve your issues.


> -------------------------------------------------------
> Using Tomcat but need to do more? Need to support web services, security?
> Get stuff done quickly with pre-integrated technology to make your job easier
> Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
> http://sel.as-us.falkag.net/sel?cmdlnk&kid0709&bid&3057&dat1642
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel

Edward Hervey
Junior developer / Fluendo S.L.

More information about the gstreamer-devel mailing list