On Tue, Jan 26, 2010 at 4:12 PM, Bram Senders <b...@luon.net> wrote:
[snip]
> This seems to be the case because GStreamer's v4l2src element want to
> get a camera attribute which seems to be not supported by the driver.
> For example, gst-launch says:
> ====
> $ gst-launch v4l2src ! filesink location=foo
> Setting pipeline to PAUSED ...
> ERROR: Pipeline doesn't want to pause.
> ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Failed
> getting controls attributes on device '/dev/video0'.
> Additional debug info:
> v4l2_calls.c(264): gst_v4l2_fill_lists ():
> /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
> Failed querying control 9963795 on device '/dev/video0'. (5 -
> Input/output error)
> Setting pipeline to NULL ...
> Freeing pipeline ...
> ====

I managed to "fix" this by applying the following patch to GStreamer's
v4l2src element (from the gst-plugins-good collection):
====
--- sys/v4l2/v4l2_calls.c.old   2010-01-28 14:20:58.000000000 +0100
+++ sys/v4l2/v4l2_calls.c       2010-01-28 12:14:34.000000000 +0100
@@ -243,6 +243,10 @@
       GST_DEBUG_OBJECT (e, "checking private CIDs");
       n = V4L2_CID_PRIVATE_BASE;
     }
+    if (n == 9963795) {
+      GST_DEBUG_OBJECT (e, "NOT checking control %08x", n);
+      continue;
+    }
     GST_DEBUG_OBJECT (e, "checking control %08x", n);

     control.id = n;
====

It is only this specific control that causes trouble by making the UVC
driver throw an I/O error.  It feels like this isn't really the place
to fix this, though, so maybe this I/O error should occur in the first
place?  Anybody who can help me with that?

Cheers,

Bram Senders
b...@luon.net
_______________________________________________
Linux-uvc-devel mailing list
Linux-uvc-devel@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/linux-uvc-devel

Reply via email to