0

我正在尝试将'glimagesink'元素与python一起使用。元素(内部是 GObject)具有client-draw-callback应该(至少在 C++ 中)包含函数 ( bool func(uint t, uint w, uint h)) 指针的属性。我已经尝试过element.set_property('client-draw-callback', myfunc),并使用 ctypes 创建函数指针,但每次都说,TypeError: could not convert argument to correct param type

我可以找到任何关于在 python 中使用 glimagesink 或 glfilterapp 的文档):

工作 C++ 代码:

gboolean drawCallback (GLuint texture, GLuint width, GLuint height)

{ ... } 

GstElement* glimagesink = gst_element_factory_make ("glimagesink", "glimagesink0");
g_object_set(G_OBJECT(glimagesink), "client-draw-callback", drawCallback, NULL)
4

1 回答 1

0

这不是您遇到的问题(据我所知),但重要的是要注意此 API 最近发生了变化,现在它需要一个 void 数据指针,它允许您将句柄传递给 user_data (或NULL)当你连接你的回调。

gboolean drawCallback (GLuint texture, GLuint width, GLuint height, gpointer data)
于 2010-02-15T16:28:28.023 回答