summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Clark <rob@ti.com>2010-12-04 13:21:02 -0600
committerRob Clark <rob@ti.com>2010-12-04 20:01:18 -0600
commit6c6e42582bb53f4e061b2b0aae711f9a94987626 (patch)
tree27f4d7c8705dbab4cf01fdb244d0d0fbd352e6db
parent63867fc44b8b3bd2d6afd05eeef646a1ccff2d03 (diff)
viddec: add interlaced support
-rw-r--r--src/gstducatividdec.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gstducatividdec.c b/src/gstducatividdec.c
index dca6162..ed6c7a5 100644
--- a/src/gstducatividdec.c
+++ b/src/gstducatividdec.c
@@ -452,11 +452,14 @@ gst_ducati_viddec_set_caps (GstPad * pad, GstCaps * caps)
if (klass->parse_caps (self, s)) {
GstCaps *outcaps;
+ gboolean interlaced = FALSE;
gst_structure_get_fraction (s, "framerate", &frn, &frd);
self->stride = 4096; /* TODO: don't hardcode */
+ gst_structure_get_boolean (s, "interlaced", &interlaced);
+
/* update output/padded sizes:
*/
klass->update_buffer_size (self);
@@ -472,6 +475,10 @@ gst_ducati_viddec_set_caps (GstPad * pad, GstCaps * caps)
"framerate", GST_TYPE_FRACTION, frn, frd,
NULL);
+ if (interlaced) {
+ gst_caps_set_simple (outcaps, "interlaced", G_TYPE_BOOLEAN, TRUE, NULL);
+ }
+
GST_DEBUG_OBJECT (self, "outcaps: %" GST_PTR_FORMAT, outcaps);
ret = gst_pad_set_caps (self->srcpad, outcaps);