dvdspu: pass dvdspu argument to set_caps functions

https://bugzilla.gnome.org/show_bug.cgi?id=663750
This commit is contained in:
Arnaud Vrac 2013-09-02 17:07:49 +02:00 committed by Jan Schmidt
parent 344fe03f09
commit 35e6d79d40

View file

@ -90,7 +90,8 @@ static gboolean gst_dvd_spu_src_query (GstPad * pad, GstObject * parent,
static GstCaps *gst_dvd_spu_video_proxy_getcaps (GstPad * pad, static GstCaps *gst_dvd_spu_video_proxy_getcaps (GstPad * pad,
GstCaps * filter); GstCaps * filter);
static gboolean gst_dvd_spu_video_set_caps (GstPad * pad, GstCaps * caps); static gboolean gst_dvd_spu_video_set_caps (GstDVDSpu * dvdspu, GstPad * pad,
GstCaps * caps);
static GstFlowReturn gst_dvd_spu_video_chain (GstPad * pad, GstObject * parent, static GstFlowReturn gst_dvd_spu_video_chain (GstPad * pad, GstObject * parent,
GstBuffer * buf); GstBuffer * buf);
static gboolean gst_dvd_spu_video_event (GstPad * pad, GstObject * parent, static gboolean gst_dvd_spu_video_event (GstPad * pad, GstObject * parent,
@ -104,7 +105,8 @@ static GstFlowReturn gst_dvd_spu_subpic_chain (GstPad * pad, GstObject * parent,
GstBuffer * buf); GstBuffer * buf);
static gboolean gst_dvd_spu_subpic_event (GstPad * pad, GstObject * parent, static gboolean gst_dvd_spu_subpic_event (GstPad * pad, GstObject * parent,
GstEvent * event); GstEvent * event);
static gboolean gst_dvd_spu_subpic_set_caps (GstPad * pad, GstCaps * caps); static gboolean gst_dvd_spu_subpic_set_caps (GstDVDSpu * dvdspu, GstPad * pad,
GstCaps * caps);
static void gst_dvd_spu_clear (GstDVDSpu * dvdspu); static void gst_dvd_spu_clear (GstDVDSpu * dvdspu);
static void gst_dvd_spu_flush_spu_info (GstDVDSpu * dvdspu, static void gst_dvd_spu_flush_spu_info (GstDVDSpu * dvdspu,
@ -315,9 +317,8 @@ gst_dvd_spu_src_query (GstPad * pad, GstObject * parent, GstQuery * query)
} }
static gboolean static gboolean
gst_dvd_spu_video_set_caps (GstPad * pad, GstCaps * caps) gst_dvd_spu_video_set_caps (GstDVDSpu * dvdspu, GstPad * pad, GstCaps * caps)
{ {
GstDVDSpu *dvdspu = GST_DVD_SPU (gst_pad_get_parent (pad));
gboolean res = FALSE; gboolean res = FALSE;
GstVideoInfo info; GstVideoInfo info;
gint i; gint i;
@ -339,7 +340,6 @@ gst_dvd_spu_video_set_caps (GstPad * pad, GstCaps * caps)
res = TRUE; res = TRUE;
done: done:
gst_object_unref (dvdspu);
return res; return res;
} }
@ -405,7 +405,7 @@ gst_dvd_spu_video_event (GstPad * pad, GstObject * parent, GstEvent * event)
GstCaps *caps; GstCaps *caps;
gst_event_parse_caps (event, &caps); gst_event_parse_caps (event, &caps);
res = gst_dvd_spu_video_set_caps (pad, caps); res = gst_dvd_spu_video_set_caps (dvdspu, pad, caps);
if (res) if (res)
res = gst_pad_push_event (dvdspu->srcpad, event); res = gst_pad_push_event (dvdspu->srcpad, event);
else else
@ -1057,7 +1057,7 @@ gst_dvd_spu_subpic_event (GstPad * pad, GstObject * parent, GstEvent * event)
GstCaps *caps; GstCaps *caps;
gst_event_parse_caps (event, &caps); gst_event_parse_caps (event, &caps);
res = gst_dvd_spu_subpic_set_caps (pad, caps); res = gst_dvd_spu_subpic_set_caps (dvdspu, pad, caps);
gst_event_unref (event); gst_event_unref (event);
break; break;
} }
@ -1184,9 +1184,8 @@ done:
} }
static gboolean static gboolean
gst_dvd_spu_subpic_set_caps (GstPad * pad, GstCaps * caps) gst_dvd_spu_subpic_set_caps (GstDVDSpu * dvdspu, GstPad * pad, GstCaps * caps)
{ {
GstDVDSpu *dvdspu = GST_DVD_SPU (gst_pad_get_parent (pad));
gboolean res = FALSE; gboolean res = FALSE;
GstStructure *s; GstStructure *s;
SpuInputType input_type; SpuInputType input_type;
@ -1212,7 +1211,6 @@ gst_dvd_spu_subpic_set_caps (GstPad * pad, GstCaps * caps)
DVD_SPU_UNLOCK (dvdspu); DVD_SPU_UNLOCK (dvdspu);
res = TRUE; res = TRUE;
done: done:
gst_object_unref (dvdspu);
return res; return res;
} }