}
static gboolean
-gst_ffmpegdeinterlace_sink_setcaps (GstPad * pad, GstCaps * caps)
+gst_ffmpegdeinterlace_sink_setcaps (GstPad * pad, GstObject * parent,
+ GstCaps * caps)
{
- GstFFMpegDeinterlace *deinterlace =
- GST_FFMPEGDEINTERLACE (gst_pad_get_parent (pad));
+ GstFFMpegDeinterlace *deinterlace = GST_FFMPEGDEINTERLACE (parent);
GstStructure *structure = gst_caps_get_structure (caps, 0);
const gchar *imode;
AVCodecContext *ctx;
GstCaps *caps;
gst_event_parse_caps (event, &caps);
- ret = gst_ffmpegdeinterlace_sink_setcaps (pad, caps);
+ ret = gst_ffmpegdeinterlace_sink_setcaps (pad, parent, caps);
gst_event_unref (event);
break;
}
deinterlace->reconfigure = FALSE;
GST_OBJECT_UNLOCK (deinterlace);
if ((caps = gst_pad_get_current_caps (deinterlace->srcpad))) {
- gst_ffmpegdeinterlace_sink_setcaps (deinterlace->sinkpad, caps);
+ gst_ffmpegdeinterlace_sink_setcaps (deinterlace->sinkpad, parent, caps);
gst_caps_unref (caps);
}
} else {