Hi,

On Sunday 26 April 2009 09:22:30 Zorgh wrote:
> Hi,
>
> I'm trying to install ARtoolkit on Ubuntu 8.10 "Intrepid" (Linux
> 2.6.27-11-generic on x86_64).
>
> The uvcvideo driver implements the Video4Linux 2 (V4L2) API. V4L1 is not
> supported.
>
> I applied a patch to add support for Video 4 Linux 2 devices into the
> artoolkit based on the artk 2.72.1 tarball.
>
> ubu...@ubuntu:/tmp$ v4l-info
>
> ### v4l2 device info [/dev/video0] ###
> general info
>     VIDIOC_QUERYCAP
>     driver                  : "uvcvideo"
>     card                    : "Philips SPC 1330NC"
>     bus_info                : "0000:00:1d.7"
>     version                 : 0.1.0
>     capabilities            : 0x4000001 [VIDEO_CAPTURE,STREAMING]
>
> I succeeded to compile but I get a black window screen :
>
> /ubu...@ubuntu:/usr/local/ARToolKit/bin$ ./simpleLite
> Control 9963793 is not supported
> Camera image size (x,y) = (640,480)
> *** Camera Parameter ***
> --------------------------------------
> SIZE = 640, 480
> Distortion factor = 318.500000 263.500000 26.200000 1.012757
> 700.95147 0.00000 316.50000 0.00000
> 0.00000 726.09418 241.50000 0.00000
> 0.00000 0.00000 1.00000 0.00000
> --------------------------------------
> FittingMode (Z): COMPENSATED IMAGE
> ProcMode (X)   : FULL IMAGE
> DrawMode (C)   : TEXTURE MAPPING (FULL RESOLUTION)
> TemplateMatchingMode (M)   : Color Template
> MatchingPCAMode (P)   : Without PCA
> ar2VideoCapNext: Error calling VIDIOC_QBUF: 22
> ar2VideoCapNext: Error calling VIDIOC_QBUF: 22/



> A test is not validated in source code :
>
> /if (-1 == ioctl (fd, VIDIOC_QUERYCTRL, &queryctrl)) {
>     if (errno != EINVAL) {
>       fprintf(stderr, "Error calling VIDIOC_QUERYCTRL\n");
>       return 1;
>      } else {
>        printf ("Control %d is not supported\n", type);
>        return 1;
>      }
>    } else if (queryctrl.flags & V4L2_CTRL_FLAG_DISABLED) {
>      printf ("Control %s is not supported\n", queryctrl.name);
>      return 1;
>    } else {

ARtoolkit tries to set the V4L2_CID_BLACK_LEVEL control. That control isn't 
supported by your camera (it's actually deprecated), and the driver returns an 
error. Nothing unexpected or wrong here.

> /In dmesg, I get :
>
> /[98915.123356] uvcvideo: Dropping payload (out of sync).
> [98915.123358] uvcvideo: Dropping payload (out of sync).
> [98915.125794] uvcvideo: uvc_v4l2_ioctl
> [98915.125798] VIDIOC_QBUF<7>uvcvideo: Queuing buffer 1.
> [98915.125854] uvcvideo: uvc_v4l2_ioctl
> [98915.125856] VIDIOC_DQBUF<7>uvcvideo: Dropping payload (out of sync).
> [98915.128281] uvcvideo: Dropping payload (out of sync)./
>
> How can I fix it ?

First of all, have you tested your camera with a supported application ? 
luvcview is a good candidate.

The "Dropping payload (out of sync)" messages do not necessarily indicate an 
error. A few of them can be printed when starting video capture, the driver 
just needs to synchronize to the video stream. Do they keep being printed over 
and over or are there only a few of them ?

Best regards,

Laurent Pinchart

_______________________________________________
Linux-uvc-devel mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/linux-uvc-devel

Reply via email to