mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-27 10:40:34 +00:00
ffdeinterlace: Set "interlaced=false" in the source pad's caps
https://bugzilla.gnome.org/show_bug.cgi?id=622736
This commit is contained in:
parent
9b3c3305f3
commit
7f12d83a39
1 changed files with 12 additions and 1 deletions
|
@ -112,6 +112,9 @@ gst_ffmpegdeinterlace_sink_setcaps (GstPad * pad, GstCaps * caps)
|
|||
GST_FFMPEGDEINTERLACE (gst_pad_get_parent (pad));
|
||||
GstStructure *structure = gst_caps_get_structure (caps, 0);
|
||||
AVCodecContext *ctx;
|
||||
GValue interlaced = { 0 };
|
||||
GstCaps *srcCaps;
|
||||
GstFlowReturn ret;
|
||||
|
||||
if (!gst_structure_get_int (structure, "width", &deinterlace->width))
|
||||
return FALSE;
|
||||
|
@ -136,7 +139,15 @@ gst_ffmpegdeinterlace_sink_setcaps (GstPad * pad, GstCaps * caps)
|
|||
avpicture_get_size (deinterlace->pixfmt, deinterlace->width,
|
||||
deinterlace->height);
|
||||
|
||||
return gst_pad_set_caps (deinterlace->srcpad, caps);
|
||||
srcCaps = gst_caps_copy (caps);
|
||||
g_value_init (&interlaced, G_TYPE_BOOLEAN);
|
||||
g_value_set_boolean (&interlaced, FALSE);
|
||||
gst_caps_set_value (srcCaps, "interlaced", &interlaced);
|
||||
g_value_unset (&interlaced);
|
||||
|
||||
ret = gst_pad_set_caps (deinterlace->srcpad, srcCaps);
|
||||
gst_caps_unref (srcCaps);
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
Loading…
Reference in a new issue