From: Youness Alaoui Date: Thu, 19 Apr 2012 08:27:01 +0000 (+0000) Subject: v4l2src: Allow mpeg-ts cameras to negociate format X-Git-Tag: 1.19.3~509^2~7104 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=09dabd4be60c1f0a2e3132a23abcfa97d544b800;p=platform%2Fupstream%2Fgstreamer.git v4l2src: Allow mpeg-ts cameras to negociate format This removes an ugly hack until the reason for the hack can be documented --- diff --git a/sys/v4l2/gstv4l2object.c b/sys/v4l2/gstv4l2object.c index 74d1e83..92df04f 100644 --- a/sys/v4l2/gstv4l2object.c +++ b/sys/v4l2/gstv4l2object.c @@ -2235,10 +2235,16 @@ gst_v4l2_object_set_format (GstV4l2Object * v4l2object, GstCaps * caps) GST_V4L2_CHECK_OPEN (v4l2object); GST_V4L2_CHECK_NOT_ACTIVE (v4l2object); + /* MPEG-TS source cameras don't get their format set for some reason. + * It looks wrong and we weren't able to track down the reason for that code + * so it is disabled until someone who has an mpeg-ts camera complains... + */ +#if 0 /* Only unconditionally accept mpegts for sources */ if ((v4l2object->type == V4L2_BUF_TYPE_VIDEO_CAPTURE) && (pixelformat == GST_MAKE_FOURCC ('M', 'P', 'E', 'G'))) goto done; +#endif memset (&format, 0x00, sizeof (struct v4l2_format)); format.type = v4l2object->type; diff --git a/sys/v4l2/v4l2src_calls.c b/sys/v4l2/v4l2src_calls.c index fa9a55c..1104d70 100644 --- a/sys/v4l2/v4l2src_calls.c +++ b/sys/v4l2/v4l2src_calls.c @@ -215,8 +215,14 @@ gst_v4l2src_set_capture (GstV4l2Src * v4l2src, guint32 pixelformat, gint fd = v4l2src->v4l2object->video_fd; struct v4l2_streamparm stream; + /* MPEG-TS source cameras don't get their format set for some reason. + * It looks wrong and we weren't able to track down the reason for that code + * so it is disabled until someone who has an mpeg-ts camera complains... + */ +#if 0 if (pixelformat == GST_MAKE_FOURCC ('M', 'P', 'E', 'G')) return TRUE; +#endif g_signal_emit_by_name (v4l2src, "prepare-format", v4l2src->v4l2object->video_fd, pixelformat, width, height);