Ejemplo n.º 1
0
static void gst_imx_ipu_blitter_finalize(GObject *object)
{
	GstImxIpuBlitter *ipu_blitter = GST_IMX_IPU_BLITTER(object);

	if (ipu_blitter->input_frame != NULL)
		gst_buffer_unref(ipu_blitter->input_frame);
	if (ipu_blitter->output_frame != NULL)
		gst_buffer_unref(ipu_blitter->output_frame);
	if (ipu_blitter->fill_frame != NULL)
		gst_buffer_unref(ipu_blitter->fill_frame);

	if (ipu_blitter->allocator != NULL)
		gst_object_unref(ipu_blitter->allocator);

	if (ipu_blitter->priv != NULL)
	{
		gst_imx_ipu_close();
		g_slice_free1(sizeof(GstImxIpuBlitterPrivate), ipu_blitter->priv);
	}

	G_OBJECT_CLASS(gst_imx_ipu_blitter_parent_class)->finalize(object);
}
Ejemplo n.º 2
0
static void gst_imx_ipu_blitter_finalize(GObject *object)
{
	GstImxIpuBlitter *ipu_blitter = GST_IMX_IPU_BLITTER(object);

	gst_imx_ipu_blitter_flush(GST_IMX_BASE_BLITTER(object));

	if (ipu_blitter->dummy_black_buffer != NULL)
		gst_buffer_unref(ipu_blitter->dummy_black_buffer);

	if (ipu_blitter->allocator != NULL)
		gst_object_unref(GST_OBJECT(ipu_blitter->allocator));

	if (ipu_blitter->priv != NULL)
	{
		gst_imx_ipu_close();
		g_slice_free1(sizeof(GstImxIpuBlitterPrivate), ipu_blitter->priv);
	}

	GST_INFO_OBJECT(object, "shut down IPU blitter");

	G_OBJECT_CLASS(gst_imx_ipu_blitter_parent_class)->finalize(object);
}