winegstreamer: Handle sink event caps in a separate helper.
This commit is contained in:
parent
f39156ee6a
commit
4f349d442a
1 changed files with 19 additions and 16 deletions
|
@ -233,16 +233,8 @@ static gboolean transform_sink_query_cb(GstPad *pad, GstObject *parent, GstQuery
|
|||
return gst_pad_query_default(pad, parent, query);
|
||||
}
|
||||
|
||||
static gboolean transform_sink_event_cb(GstPad *pad, GstObject *parent, GstEvent *event)
|
||||
static void transform_sink_event_caps(struct wg_transform *transform, GstEvent *event)
|
||||
{
|
||||
struct wg_transform *transform = gst_pad_get_element_private(pad);
|
||||
|
||||
GST_LOG("transform %p, type \"%s\".", transform, GST_EVENT_TYPE_NAME(event));
|
||||
|
||||
switch (event->type)
|
||||
{
|
||||
case GST_EVENT_CAPS:
|
||||
{
|
||||
GstCaps *caps;
|
||||
|
||||
gst_event_parse_caps(event, &caps);
|
||||
|
@ -252,8 +244,19 @@ static gboolean transform_sink_event_cb(GstPad *pad, GstObject *parent, GstEvent
|
|||
|
||||
gst_caps_unref(transform->output_caps);
|
||||
transform->output_caps = gst_caps_ref(caps);
|
||||
}
|
||||
|
||||
static gboolean transform_sink_event_cb(GstPad *pad, GstObject *parent, GstEvent *event)
|
||||
{
|
||||
struct wg_transform *transform = gst_pad_get_element_private(pad);
|
||||
|
||||
GST_LOG("transform %p, type \"%s\".", transform, GST_EVENT_TYPE_NAME(event));
|
||||
|
||||
switch (event->type)
|
||||
{
|
||||
case GST_EVENT_CAPS:
|
||||
transform_sink_event_caps(transform, event);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
GST_WARNING("Ignoring \"%s\" event.", GST_EVENT_TYPE_NAME(event));
|
||||
break;
|
||||
|
|
Loading…
Add table
Reference in a new issue