static gboolean gst_ivf_parse_stop (GstBaseParse * parse) { GstIvfParse *const ivf = GST_IVF_PARSE (parse); gst_ivf_parse_reset (ivf); return TRUE; }
static void gst_ivf_parse_finalize (GObject * object) { GstIvfParse *const ivf = GST_IVF_PARSE (object); GST_DEBUG_OBJECT (ivf, "finalizing"); gst_ivf_parse_reset (ivf); G_OBJECT_CLASS (parent_class)->finalize (object); }
static void gst_ivf_parse_dispose (GObject * object) { GstIvfParse *ivf = GST_IVF_PARSE (object); GST_DEBUG_OBJECT (ivf, "disposing"); gst_ivf_parse_reset (ivf); G_OBJECT_CLASS (parent_class)->dispose (object); }
static gboolean gst_ivf_parse_start (GstBaseParse * parse) { GstIvfParse *const ivf = GST_IVF_PARSE (parse); gst_ivf_parse_reset (ivf); /* Minimal file header size needed at start */ gst_base_parse_set_min_frame_size (parse, IVF_FILE_HEADER_SIZE); /* No sync code to detect frame boundaries */ gst_base_parse_set_syncable (parse, FALSE); return TRUE; }
/* initialize the new element * instantiate pads and add them to element * set pad calback functions * initialize instance structure */ static void gst_ivf_parse_init (GstIvfParse * ivf, GstIvfParseClass * gclass) { /* sink pad */ ivf->sinkpad = gst_pad_new_from_static_template (&sink_factory, "sink"); gst_pad_set_chain_function (ivf->sinkpad, GST_DEBUG_FUNCPTR (gst_ivf_parse_chain)); /* src pad */ ivf->srcpad = gst_pad_new_from_static_template (&src_factory, "src"); gst_pad_use_fixed_caps (ivf->srcpad); gst_element_add_pad (GST_ELEMENT (ivf), ivf->sinkpad); gst_element_add_pad (GST_ELEMENT (ivf), ivf->srcpad); /* reset */ gst_ivf_parse_reset (ivf); }
/* initialize the new element * instantiate pads and add them to element * set pad calback functions * initialize instance structure */ static void gst_ivf_parse_init (GstIvfParse * ivf) { gst_ivf_parse_reset (ivf); }