2009-12-02 1 views
0

파이썬에서 'glimagesink'요소를 사용하려고합니다. 요소 (내부의 GObject)는 client-draw-callback 속성을 가지며 (적어도 C++에서는) 함수 포인터 (bool func(uint t, uint w, uint h))를 포함해야합니다.pygst - glimagesink 콜백

작업 C++ 코드 :

나는 TypeError: could not convert argument to correct param type

내가 파이썬에서 glimagesink 또는 glfilterapp)를 사용하는 방법에 어떤 문서를 찾을 수있는, element.set_property('client-draw-callback', myfunc)을 시도하고하는 ctypes와 함수 포인터를 생성하지만, 모든 시간은 말한다했습니다

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) 

답변

0

이것은 (내가 알 수있는 한 문제는 아니지만) 이 API가 최근에 변경되었으며 이제는 전달할 수있는 데이터의 무효 포인터를 기대한다는 점에 유의해야합니다. 콜백을 연결할 때 user_data (또는 NULL) 핸들.

gboolean drawCallback (GLuint texture, GLuint width, GLuint height, gpointer data) 
+0

그냥 #gstreamer를 검사했는데, 분명히 API를 Python에서 사용할 수 없습니다. – tmatth