web-dev-qa-db-fra.com

Logitech streamcam ne proposant pas tous les modes sur Manjaro

J'ai acheté un StreamCam Logitech pour obtenir une entrée Webcam 1080P60 et j'ai été utilisé pour webcams qui travaillent simplement sous Linux. Cela fonctionne, mais pour une vidéo non compressée, le meilleur mode que je puisse définir est 1080p avec tous les 5 fps. Je ne suis pas en mesure d'utiliser le mode 1080P60 que cette caméra prend en charge (elle le dit même au-dessus de la lentille). MIJPEG MIJPEG même comprimé ne va que 30fps sur 1920x1080. V4L2-CTL Flat Out refuse une tentative de définir des valeurs de FPS plus élevées et relève simplement de 5fps.

dmesg dit ce qui suit lorsque je le branches:

[  415.860457] usb 3-4: New USB device found, idVendor=046d, idProduct=0893, bcdDevice= 0.17
[  415.860460] usb 3-4: New USB device strings: Mfr=0, Product=2, SerialNumber=3
[  415.860462] usb 3-4: Product: Logitech StreamCam
[  415.860463] usb 3-4: SerialNumber: 599D4A05
[  415.908735] uvcvideo: Found UVC 1.00 device Logitech StreamCam (046d:0893)
[  415.919323] uvcvideo 3-4:1.0: Entity type for entity Processing 3 was not initialized!
[  415.919326] uvcvideo 3-4:1.0: Entity type for entity Extension 14 was not initialized!
[  415.919327] uvcvideo 3-4:1.0: Entity type for entity Extension 6 was not initialized!
[  415.919329] uvcvideo 3-4:1.0: Entity type for entity Extension 8 was not initialized!
[  415.919330] uvcvideo 3-4:1.0: Entity type for entity Extension 9 was not initialized!
[  415.919332] uvcvideo 3-4:1.0: Entity type for entity Extension 10 was not initialized!
[  415.919333] uvcvideo 3-4:1.0: Entity type for entity Extension 11 was not initialized!
[  415.919334] uvcvideo 3-4:1.0: Entity type for entity Camera 1 was not initialized!
[  415.919400] input: Logitech StreamCam as /devices/pci0000:00/0000:00:01.2/0000:01:00.0/0000:02:08.0/0000:04:00.3/usb3/3-4/3-4:1.0/input/input19
[  415.942811] usb 3-4: current rate 16000 is different from the runtime rate 24000
[  415.958807] usb 3-4: current rate 16000 is different from the runtime rate 32000
[  415.974807] usb 3-4: current rate 16000 is different from the runtime rate 48000
[  415.997674] hid-generic 0003:046D:0893.0006: hiddev0,hidraw0: USB HID v1.11 Device [Logitech StreamCam] on usb-0000:04:00.3-4/input5
[  416.646810] usb 3-4: current rate 16000 is different from the runtime rate 48000
[  416.678806] usb 3-4: current rate 16000 is different from the runtime rate 48000
[  416.710805] usb 3-4: current rate 16000 is different from the runtime rate 48000

Cela vient de v4L2-CTL:

ioctl: VIDIOC_ENUM_FMT
    Type: Video Capture

    [0]: 'YUYV' (YUYV 4:2:2)
        Size: Discrete 640x480
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.000 fps)
            Interval: Discrete 0.050s (20.000 fps)
            Interval: Discrete 0.067s (15.000 fps)
            Interval: Discrete 0.100s (10.000 fps)
            Interval: Discrete 0.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 176x144
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.000 fps)
            Interval: Discrete 0.050s (20.000 fps)
            Interval: Discrete 0.067s (15.000 fps)
            Interval: Discrete 0.100s (10.000 fps)
            Interval: Discrete 0.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 320x240
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.000 fps)
            Interval: Discrete 0.050s (20.000 fps)
            Interval: Discrete 0.067s (15.000 fps)
            Interval: Discrete 0.100s (10.000 fps)
            Interval: Discrete 0.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 424x240
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.000 fps)
            Interval: Discrete 0.050s (20.000 fps)
            Interval: Discrete 0.067s (15.000 fps)
            Interval: Discrete 0.100s (10.000 fps)
            Interval: Discrete 0.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 640x360
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.000 fps)
            Interval: Discrete 0.050s (20.000 fps)
            Interval: Discrete 0.067s (15.000 fps)
            Interval: Discrete 0.100s (10.000 fps)
            Interval: Discrete 0.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 848x480
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.000 fps)
            Interval: Discrete 0.050s (20.000 fps)
            Interval: Discrete 0.067s (15.000 fps)
            Interval: Discrete 0.100s (10.000 fps)
            Interval: Discrete 0.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 960x540
            Interval: Discrete 0.067s (15.000 fps)
            Interval: Discrete 0.100s (10.000 fps)
            Interval: Discrete 0.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 1280x720
            Interval: Discrete 0.100s (10.000 fps)
            Interval: Discrete 0.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 1600x896
            Interval: Discrete 0.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 1920x1080
            Interval: Discrete 0.200s (5.000 fps)
    [1]: 'MJPG' (Motion-JPEG, compressed)
        Size: Discrete 640x480
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.000 fps)
            Interval: Discrete 0.050s (20.000 fps)
            Interval: Discrete 0.067s (15.000 fps)
            Interval: Discrete 0.100s (10.000 fps)
            Interval: Discrete 0.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 176x144
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.000 fps)
            Interval: Discrete 0.050s (20.000 fps)
            Interval: Discrete 0.067s (15.000 fps)
            Interval: Discrete 0.100s (10.000 fps)
            Interval: Discrete 0.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 320x240
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.000 fps)
            Interval: Discrete 0.050s (20.000 fps)
            Interval: Discrete 0.067s (15.000 fps)
            Interval: Discrete 0.100s (10.000 fps)
            Interval: Discrete 0.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 424x240
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.000 fps)
            Interval: Discrete 0.050s (20.000 fps)
            Interval: Discrete 0.067s (15.000 fps)
            Interval: Discrete 0.100s (10.000 fps)
            Interval: Discrete 0.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 640x360
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.000 fps)
            Interval: Discrete 0.050s (20.000 fps)
            Interval: Discrete 0.067s (15.000 fps)
            Interval: Discrete 0.100s (10.000 fps)
            Interval: Discrete 0.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 848x480
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.000 fps)
            Interval: Discrete 0.050s (20.000 fps)
            Interval: Discrete 0.067s (15.000 fps)
            Interval: Discrete 0.100s (10.000 fps)
            Interval: Discrete 0.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 960x540
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.000 fps)
            Interval: Discrete 0.050s (20.000 fps)
            Interval: Discrete 0.067s (15.000 fps)
            Interval: Discrete 0.100s (10.000 fps)
            Interval: Discrete 0.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 1280x720
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.000 fps)
            Interval: Discrete 0.050s (20.000 fps)
            Interval: Discrete 0.067s (15.000 fps)
            Interval: Discrete 0.100s (10.000 fps)
            Interval: Discrete 0.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 1600x896
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.000 fps)
            Interval: Discrete 0.050s (20.000 fps)
            Interval: Discrete 0.067s (15.000 fps)
            Interval: Discrete 0.100s (10.000 fps)
            Interval: Discrete 0.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)
        Size: Discrete 1920x1080
            Interval: Discrete 0.033s (30.000 fps)
            Interval: Discrete 0.042s (24.000 fps)
            Interval: Discrete 0.050s (20.000 fps)
            Interval: Discrete 0.067s (15.000 fps)
            Interval: Discrete 0.100s (10.000 fps)
            Interval: Discrete 0.133s (7.500 fps)
            Interval: Discrete 0.200s (5.000 fps)

Enfin, j'ai les deux /dev/video0 et /dev/video1 Après avoir branché la caméra, mais seulement video0 marchera.

Je ne pense pas que ce soit parce que cela ne se reconnaît pas comme USB3 et que cela n'a donc pas assez de bande passante pour 1080p60 non compressé, car l'inspectant avec lsusb -vvv J'ai compris:

Bus 004 Device 003: ID 046d:0893 Logitech, Inc. 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               3.20
  bDeviceClass          239 Miscellaneous Device
  bDeviceSubClass         2 
  bDeviceProtocol         1 Interface Association
  bMaxPacketSize0         9
  idVendor           0x046d Logitech, Inc.
  idProduct          0x0893 
  bcdDevice            3.17
  iManufacturer           0 
  iProduct                2 Logitech StreamCam
[...]
  SuperSpeed USB Device Capability:
    bLength                10
    bDescriptorType        16
    bDevCapabilityType      3
    bmAttributes         0x00
    wSpeedsSupported   0x000e
      Device can operate at Full Speed (12Mbps)
      Device can operate at High Speed (480Mbps)
      Device can operate at SuperSpeed (5Gbps)

Et enfin, j'utilise un récent 56 noyau:

$ uname -r
5.6.3-2-MANJARO
6
Anpan

Je suppose que ma vieille réponse était fausse. J'ai récemment acheté le Streamcam Logitech moi-même et pour moi, cela fonctionne sous Ubuntu 20.04 (noyau 5.4.0) sur mon ordinateur portable basé sur Intel. Je reçois les mêmes messages de noyau que posté par @anpan au OP (voir aussi ma réponse à @ Adam-Przedniczek's question sur askubunt . Utilisation guvcview J'ai réussi à enregistrer une vidéo à 1920 × 1080 @ 60fps (note, le Cheese _ n'enregistre pas à 60fps, mais c'est probablement parce que je ne peux pas définir cette option n'importe où dans ses paramètres).

Cependant, je reçois un comportement erratique (noyau oopses, le streamcam disparaissant du bus USB, suspendu guvcview) lorsque j'essaie d'exécuter le streamcam à 1920 × 1080 (n'importe quel tarif de trame) sur mon ordinateur de bureau qui a une AMD B450 Chipset et Ryzen 5 3600 CPU.

Donc, peut-être que votre problème est lié au contrôleur USB que vous utilisez. Avez-vous un processeur Intel ou un de AMD? Quel est le contrôleur USB auquel vous connectez le streamcam? Sur mon ordinateur portable basé sur Intel, c'est:

$ Sudo lspci -v -s 00:14.0|less
00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller (rev 21) (prog-if 30 [XHCI])
        Subsystem: Lenovo Sunrise Point-LP USB 3.0 xHCI Controller
        Flags: bus master, medium devsel, latency 0, IRQ 125
        Memory at 2fe1010000 (64-bit, non-prefetchable) [size=64K]
        Capabilities: [70] Power Management version 2
        Capabilities: [80] MSI: Enable+ Count=1/8 Maskable- 64bit+
        Kernel driver in use: xhci_hcd

Ancienne réponse

Je pense que cela peut avoir quelque chose à voir avec le manque de support complet pour UVC (classe vidéo USB) V1.5 à Linux. la page Wikipedia pour UVC dit ce qui suit sur Support Linux:

La détection des périphériques UVC 1.5 a été introduite dans Linux Kernel version 4.5, mais la prise en charge du pilote des caractéristiques spécifiques UVC 1.5 ou des périphériques UVC 1.5 spécifiques n'a pas été ajoutée et les charges utiles MPEG-2 et VP8 ne sont pas encore pris en charge. Le résultat est que certains périphériques UVC 1.5 qui soutiennent également UVC 1.1 fonctionnent correctement.

Vos informations de journal indiquent que la caméra est détectée comme UVC V1.00. Je suppose que les 60fps nécessitent le support TS MPEG-2.

4
ph0t0nix