Discussion:
[linux-uvc-devel] Slow webcam under linux 3.17.6
Erich Duda
2014-12-18 00:00:17 UTC
Permalink
Hi,
I am trying to run webcam on laptop under Fedora 21 with linux kernel
3.17.6. I had problem with my integrated webcam (13d3:5130) so I decided
to buy external webcam (0c45:6341 Microdia Defender G-Lens 2577 HD720p
Camera). However, symptoms were the same.

When I run some webcam viewer (cheese), it takes some time until a first
picture is shown and it is refreshed again after several minutes. I have
observed that the picture is refreshed when load of CPU is high. When I
tried to run (for increase load of CPU)

$ while true; do echo 1; done

so the webcam worked well.

dmesg when I connected the external webcam

[13384.540765] usb 1-4: new high-speed USB device number 7 using ehci-pci
[13384.773144] usb 1-4: New USB device found, idVendor=0c45, idProduct=6341
[13384.773150] usb 1-4: New USB device strings: Mfr=2, Product=1,
SerialNumber=0
[13384.773153] usb 1-4: Product: USB 2.0 Camera
[13384.773156] usb 1-4: Manufacturer: Sonix Technology Co., Ltd.
[13384.777465] uvcvideo: Found UVC 1.00 device USB 2.0 Camera (0c45:6341)
[13384.791423] input: USB 2.0 Camera as
/devices/pci0000:00/0000:00:12.2/usb1/1-4/1-4:1.0/input/input23
[13384.801464] usb 1-4: 3:1: cannot get freq at ep 0x84
[13385.116817] usb 1-4: 3:1: cannot get freq at ep 0x84
[13385.119812] usb 1-4: 3:1: cannot get freq at ep 0x84
[13385.169091] usb 1-4: 3:1: cannot get freq at ep 0x84
[13385.171944] usb 1-4: 3:1: cannot get freq at ep 0x84
[13385.365562] retire_capture_urb: 1278 callbacks suppressed

dmesg when I used the webcam

[15382.903774] uvcvideo: uvc_v4l2_open
[15382.951296] uvcvideo: Resuming interface 0
[15382.951307] uvcvideo: Resuming interface 1
[15382.956106] uvcvideo: uvc_v4l2_ioctl(VIDIOC_QUERYCAP)
[15382.956159] uvcvideo: uvc_v4l2_release
[15382.958244] uvcvideo: uvc_v4l2_open
[15382.958269] uvcvideo: uvc_v4l2_ioctl(VIDIOC_QUERYCAP)
[15382.958584] uvcvideo: uvc_v4l2_release
[15382.964254] uvcvideo: uvc_v4l2_open
[15382.965014] uvcvideo: uvc_v4l2_ioctl(VIDIOC_QUERYCAP)
[15382.965172] uvcvideo: uvc_v4l2_ioctl(VIDIOC_QUERYCAP)
[15382.965176] uvcvideo: uvc_v4l2_ioctl(VIDIOC_G_FMT)
[15382.965181] uvcvideo: uvc_v4l2_ioctl(VIDIOC_G_PARM)
[15382.965189] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FMT)
[15382.965202] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMESIZES)
[15382.965204] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMESIZES)
[15382.965206] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMESIZES)
...
[15382.965262] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMESIZES)
[15382.965264] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMESIZES)
[15382.965265] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMESIZES)
[15382.965267] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FMT)
[15382.965268] uvcvideo: uvc_v4l2_ioctl(VIDIOC_QUERYCAP)
[15382.965271] uvcvideo: uvc_v4l2_ioctl(VIDIOC_G_INPUT)
[15382.965273] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUMINPUT)
[15382.965661] uvcvideo: uvc_v4l2_ioctl(VIDIOC_QUERYCTRL)
[15382.965674] uvcvideo: uvc_v4l2_ioctl(VIDIOC_QUERYCAP)
[15382.965719] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUMINPUT)
[15382.965756] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUMINPUT)
[15382.965896] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUMSTD)
[15382.965900] uvcvideo: Unsupported ioctl 0xc0485619
[15382.965904] uvcvideo: uvc_v4l2_ioctl(VIDIOC_QUERYCTRL)
[15382.965961] uvcvideo: uvc_v4l2_ioctl(VIDIOC_QUERYCTRL)
[15382.965967] uvcvideo: uvc_v4l2_ioctl(VIDIOC_QUERYCTRL)
[15382.965972] uvcvideo: uvc_v4l2_ioctl(VIDIOC_QUERYCTRL)
[15382.965976] uvcvideo: uvc_v4l2_ioctl(VIDIOC_QUERYCTRL)
[15382.965981] uvcvideo: uvc_v4l2_ioctl(VIDIOC_QUERYCTRL)
[15382.965984] uvcvideo: uvc_v4l2_ioctl(VIDIOC_QUERYCTRL)
[15382.965988] uvcvideo: uvc_v4l2_ioctl(VIDIOC_QUERYCTRL)
[15382.965992] uvcvideo: uvc_v4l2_ioctl(VIDIOC_QUERYCTRL)
[15382.965996] uvcvideo: uvc_v4l2_ioctl(VIDIOC_QUERYCTRL)
[15382.966001] uvcvideo: uvc_v4l2_ioctl(VIDIOC_G_STD)
[15382.966002] uvcvideo: Unsupported ioctl 0x80085617
[15382.966005] uvcvideo: uvc_v4l2_ioctl(VIDIOC_G_INPUT)
[15382.966206] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FMT)
[15382.966212] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FMT)
[15382.966287] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMESIZES)
[15382.966290] uvcvideo: uvc_v4l2_ioctl(VIDIOC_TRY_FMT)
[15382.966294] uvcvideo: Trying format 0x56595559 (YUYV): 640x480.
[15382.966297] uvcvideo: Using default frame interval 33333.3 us (30.0 fps).
[15382.989868] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMEINTERVALS)
[15382.989890] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMEINTERVALS)
[15382.989894] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMEINTERVALS)
[15382.989898] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMEINTERVALS)
[15382.989900] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMEINTERVALS)
[15382.989903] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMEINTERVALS)
[15382.989905] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMEINTERVALS)
[15382.989948] uvcvideo: uvc_v4l2_ioctl(VIDIOC_CROPCAP)
[15382.989960] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMESIZES)
[15382.989963] uvcvideo: uvc_v4l2_ioctl(VIDIOC_TRY_FMT)
[15382.989966] uvcvideo: Trying format 0x56595559 (YUYV): 640x360.
[15382.989970] uvcvideo: Using default frame interval 33333.3 us (30.0 fps).
[15383.019280] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMEINTERVALS)
[15383.019301] uvcvideo: uvc_v4l2_ioctl(VIDIOC_ENUM_FRAMEINTERVALS)
...
[15389.008863] uvcvideo: Dropping payload (out of sync).
[15389.008865] uvcvideo: Dropping payload (out of sync).
[15389.008866] uvcvideo: Dropping payload (out of sync).
[15389.008868] uvcvideo: USB isochronous frame lost (-18).
[15389.008869] uvcvideo: Dropping payload (out of sync).
[15389.008871] uvcvideo: USB isochronous frame lost (-18).
[15389.008872] uvcvideo: Dropping payload (out of sync).
[15389.008874] uvcvideo: USB isochronous frame lost (-18).
[15389.008876] uvcvideo: Dropping payload (out of sync).
[15389.008878] uvcvideo: Dropping payload (out of sync).
[15389.012811] uvcvideo: USB isochronous frame lost (-18).
[15389.012817] uvcvideo: USB isochronous frame lost (-18).
[15389.012821] uvcvideo: Dropping payload (out of sync).
[15389.012823] uvcvideo: Dropping payload (out of sync).
[15389.012824] uvcvideo: Dropping payload (out of sync).
[15389.012826] uvcvideo: Dropping payload (out of sync).
[15389.012829] uvcvideo: Dropping payload (out of sync).
...
[15775.262473] uvcvideo: Dropping payload (out of sync).
[15775.262475] uvcvideo: Dropping payload (out of sync).
[15775.262476] uvcvideo: Dropping payload (out of sync).
[15775.262480] uvcvideo: frame 2739 stats: 0/385/640 packets, 0/0/640
pts (!early initial), 639/640 scr, last pts/stc/sof
1562672349/1564592456/725

Note: Webcams work on Windows in the same laptop so hardware is not buggy.

Thank you.

Cheers

Erich

Loading...