else
GST_VIDEO_INFO_INTERLACE_MODE (&ffmpegdec->input_state->info) =
GST_VIDEO_INTERLACE_MODE_PROGRESSIVE;
- gst_ffmpegviddec_negotiate (ffmpegdec, TRUE);
+ if (!gst_ffmpegviddec_negotiate (ffmpegdec, TRUE))
+ goto negotiation_error;
}
if (G_UNLIKELY (out_frame->output_buffer == NULL))
else
GST_VIDEO_INFO_INTERLACE_MODE (&ffmpegdec->input_state->info) =
GST_VIDEO_INTERLACE_MODE_PROGRESSIVE;
- gst_ffmpegviddec_negotiate (ffmpegdec, TRUE);
+ if (!gst_ffmpegviddec_negotiate (ffmpegdec, TRUE))
+ goto negotiation_error;
}
/* check if we are dealing with a keyframe here, this will also check if we
len = -1;
goto beach;
}
+
+negotiation_error:
+ {
+ GST_WARNING_OBJECT (ffmpegdec, "Error negotiating format");
+ *ret = GST_FLOW_NOT_NEGOTIATED;
+ goto beach;
+ }
}