gst_vaapidecode_init(GstVaapiDecode *decode, GstVaapiDecodeClass *klass)
{
GstElementClass * const element_class = GST_ELEMENT_CLASS(klass);
+ GstPadTemplate *pad_template;
decode->display = NULL;
decode->decoder = NULL;
decode->is_ready = FALSE;
/* Pad through which data comes in to the element */
- decode->sinkpad = gst_pad_new_from_template(
- gst_element_class_get_pad_template(element_class, "sink"),
- "sink"
- );
+ pad_template = gst_element_class_get_pad_template(element_class, "sink");
+ decode->sinkpad = gst_pad_new_from_template(pad_template, "sink");
+ gst_object_unref(pad_template);
decode->sinkpad_caps = NULL;
gst_pad_set_getcaps_function(decode->sinkpad, gst_vaapidecode_get_caps);
gst_element_add_pad(GST_ELEMENT(decode), decode->sinkpad);
/* Pad through which data goes out of the element */
- decode->srcpad = gst_pad_new_from_template(
- gst_element_class_get_pad_template(element_class, "src"),
- "src"
- );
+ pad_template = gst_element_class_get_pad_template(element_class, "src");
+ decode->srcpad = gst_pad_new_from_template(pad_template, "src");
+ gst_object_unref(pad_template);
decode->srcpad_caps = NULL;
gst_pad_use_fixed_caps(decode->srcpad);