GstBufferPool * pool, GstAllocator * allocator,
GstAllocationParams * params, GstQuery * query);
-static void gst_gl_base_mixer_finalize (GObject * object);
-
static void
gst_gl_base_mixer_class_init (GstGLBaseMixerClass * klass)
{
g_type_class_add_private (klass, sizeof (GstGLBaseMixerPrivate));
- gobject_class->finalize = GST_DEBUG_FUNCPTR (gst_gl_base_mixer_finalize);
-
gobject_class->get_property = gst_gl_base_mixer_get_property;
gobject_class->set_property = gst_gl_base_mixer_set_property;
}
static void
-gst_gl_base_mixer_finalize (GObject * object)
-{
- GstGLBaseMixer *mix = GST_GL_BASE_MIXER (object);
-
- if (mix->priv->other_context) {
- gst_object_unref (mix->priv->other_context);
- mix->priv->other_context = NULL;
- }
-
- G_OBJECT_CLASS (parent_class)->finalize (object);
-}
-
-static void
gst_gl_base_mixer_set_context (GstElement * element, GstContext * context)
{
GstGLBaseMixer *mix = GST_GL_BASE_MIXER (element);
mix->priv->pool = NULL;
}
- if (mix->display) {
- gst_object_unref (mix->display);
- mix->display = NULL;
- }
-
if (mix->context) {
gst_object_unref (mix->context);
mix->context = NULL;
return ret;
switch (transition) {
+ case GST_STATE_CHANGE_READY_TO_NULL:
+ if (mix->priv->other_context) {
+ gst_object_unref (mix->priv->other_context);
+ mix->priv->other_context = NULL;
+ }
+
+ if (mix->display) {
+ gst_object_unref (mix->display);
+ mix->display = NULL;
+ }
+ break;
default:
break;
}
g_mutex_clear (&glimage_sink->drawing_lock);
- if (glimage_sink->other_context) {
- gst_object_unref (glimage_sink->other_context);
- glimage_sink->other_context = NULL;
- }
-
g_free (glimage_sink->display_name);
GST_DEBUG ("finalized");
break;
}
case GST_STATE_CHANGE_READY_TO_NULL:
+ if (glimage_sink->other_context) {
+ gst_object_unref (glimage_sink->other_context);
+ glimage_sink->other_context = NULL;
+ }
+
if (glimage_sink->display) {
gst_object_unref (glimage_sink->display);
glimage_sink->display = NULL;
const GValue * value, GParamSpec * pspec);
static void gst_gl_test_src_get_property (GObject * object, guint prop_id,
GValue * value, GParamSpec * pspec);
-static void gst_gl_test_src_dispose (GObject * object);
static gboolean gst_gl_test_src_setcaps (GstBaseSrc * bsrc, GstCaps * caps);
static GstCaps *gst_gl_test_src_getcaps (GstBaseSrc * bsrc, GstCaps * filter);
gobject_class->set_property = gst_gl_test_src_set_property;
gobject_class->get_property = gst_gl_test_src_get_property;
- gobject_class->dispose = gst_gl_test_src_dispose;
g_object_class_install_property (gobject_class, PROP_PATTERN,
g_param_spec_enum ("pattern", "Pattern",
}
static void
-gst_gl_test_src_dispose (GObject * object)
-{
- GstGLTestSrc *src = GST_GL_TEST_SRC (object);
-
- if (src->other_context)
- gst_object_unref (src->other_context);
- src->other_context = NULL;
-
- G_OBJECT_CLASS (parent_class)->dispose (object);
-}
-
-static void
gst_gl_test_src_set_property (GObject * object, guint prop_id,
const GValue * value, GParamSpec * pspec)
{
src->context = NULL;
}
- if (src->display) {
- gst_object_unref (src->display);
- src->display = NULL;
- }
-
return TRUE;
}
return ret;
switch (transition) {
+ case GST_STATE_CHANGE_READY_TO_NULL:
+ if (src->other_context) {
+ gst_object_unref (src->other_context);
+ src->other_context = NULL;
+ }
+
+ if (src->display) {
+ gst_object_unref (src->display);
+ src->display = NULL;
+ }
+ break;
default:
break;
}
const GValue * value, GParamSpec * pspec);
static void gst_gl_base_filter_get_property (GObject * object, guint prop_id,
GValue * value, GParamSpec * pspec);
-static void gst_gl_base_filter_finalize (GObject * object);
static void gst_gl_base_filter_set_context (GstElement * element,
GstContext * context);
gobject_class->set_property = gst_gl_base_filter_set_property;
gobject_class->get_property = gst_gl_base_filter_get_property;
- gobject_class->finalize = gst_gl_base_filter_finalize;
GST_BASE_TRANSFORM_CLASS (klass)->query = gst_gl_base_filter_query;
GST_BASE_TRANSFORM_CLASS (klass)->start = gst_gl_base_filter_start;
}
static void
-gst_gl_base_filter_finalize (GObject * object)
-{
- GstGLBaseFilter *filter = GST_GL_BASE_FILTER (object);
-
- if (filter->priv->other_context) {
- gst_object_unref (filter->priv->other_context);
- filter->priv->other_context = NULL;
- }
-
- G_OBJECT_CLASS (gst_gl_base_filter_parent_class)->finalize (object);
-}
-
-static void
gst_gl_base_filter_set_property (GObject * object, guint prop_id,
const GValue * value, GParamSpec * pspec)
{
switch (transition) {
case GST_STATE_CHANGE_READY_TO_NULL:
+ if (filter->priv->other_context) {
+ gst_object_unref (filter->priv->other_context);
+ filter->priv->other_context = NULL;
+ }
+
if (filter->display) {
gst_object_unref (filter->display);
filter->display = NULL;