Commit 9196e0a3 authored by Wim Taymans's avatar Wim Taymans
Browse files

y4m: fix negotiation

parent 02034ce7
......@@ -155,9 +155,7 @@ gst_y4m_encode_setcaps (GstPad * pad, GstCaps * vscaps)
if (!gst_video_info_from_caps (&info, vscaps))
goto invalid_format;
filter->info = info;
switch (GST_VIDEO_INFO_FORMAT (&filter->info)) {
switch (GST_VIDEO_INFO_FORMAT (&info)) {
case GST_VIDEO_FORMAT_I420:
filter->colorspace = "420";
break;
......@@ -174,6 +172,8 @@ gst_y4m_encode_setcaps (GstPad * pad, GstCaps * vscaps)
goto invalid_format;
}
filter->info = info;
/* the template caps will do for the src pad, should always accept */
ret = gst_pad_set_caps (filter->srcpad,
gst_static_pad_template_get_caps (&y4mencode_src_factory));
......@@ -270,7 +270,7 @@ gst_y4m_encode_chain (GstPad * pad, GstObject * parent, GstBuffer * buf)
GstClockTime timestamp;
/* check we got some decent info from caps */
if (GST_VIDEO_INFO_FORMAT (&filter->info) != GST_VIDEO_FORMAT_UNKNOWN)
if (GST_VIDEO_INFO_FORMAT (&filter->info) == GST_VIDEO_FORMAT_UNKNOWN)
goto not_negotiated;
timestamp = GST_BUFFER_TIMESTAMP (buf);
......@@ -299,7 +299,7 @@ gst_y4m_encode_chain (GstPad * pad, GstObject * parent, GstBuffer * buf)
/* ERRORS */
not_negotiated:
{
GST_ELEMENT_ERROR ("filter", CORE, NEGOTIATION, (NULL),
GST_ELEMENT_ERROR (filter, CORE, NEGOTIATION, (NULL),
("format wasn't negotiated before chain function"));
gst_buffer_unref (buf);
return GST_FLOW_NOT_NEGOTIATED;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment