static void
gst_dvd_read_src_init (GstDvdReadSrc * src)
{
+ GstCaps *src_caps = gst_static_pad_template_get_caps (&srctemplate);
src->dvd = NULL;
src->vts_file = NULL;
src->vmg_file = NULL;
src->pending_clut_event = NULL;
gst_pad_use_fixed_caps (GST_BASE_SRC_PAD (src));
- gst_pad_set_caps (GST_BASE_SRC_PAD (src),
- gst_static_pad_template_get_caps (&srctemplate));
+ gst_pad_set_caps (GST_BASE_SRC_PAD (src), src_caps);
+ gst_caps_unref (src_caps);
}
static gboolean
static void
gst_dvd_sub_parse_init (GstDvdSubParse * parse)
{
+ GstCaps *src_caps = gst_static_pad_template_get_caps (&src_template);
parse->sinkpad = gst_pad_new_from_static_template (&sink_template, "sink");
gst_pad_set_chain_function (parse->sinkpad,
GST_DEBUG_FUNCPTR (gst_dvd_sub_parse_chain));
parse->srcpad = gst_pad_new_from_static_template (&src_template, "src");
gst_pad_use_fixed_caps (parse->srcpad);
- gst_pad_set_caps (parse->srcpad,
- gst_static_pad_template_get_caps (&src_template));
+ gst_pad_set_caps (parse->srcpad, src_caps);
gst_element_add_pad (GST_ELEMENT (parse), parse->srcpad);
/* remainder */
parse->adapter = gst_adapter_new ();
gst_dvd_sub_parse_reset (parse);
+ gst_caps_unref (src_caps);
}
static void