Quelqu'un sait-il pourquoi ma webcam fonctionne dans luvcview mais pas dans cheese, vlc, firefox, etc ?
VLC ne semble pas capturer quoi que ce soit de la caméra. Le fromage fonctionne pendant environ 2 secondes, mais la vidéo est à moitié noire et traversée par des lignes horizontales. L'exemple getUserMedia de Firefox n'appelle jamais le callback loadeddata.
luvcview affiche correctement la vidéo de la webcam et est capable de la capturer dans un fichier avi. Avez-vous des indices sur la façon dont je devrais commencer à chercher ? Voici le dump lsusb de la webcam et la liste des formats supportés par luvcview :
$sudo lsusb -d 0bda:579f -v
Bus 001 Device 006: ID 0bda:579f Realtek Semiconductor Corp.
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.01
bDeviceClass 239 Miscellaneous Device
bDeviceSubClass 2 ?
bDeviceProtocol 1 Interface Association
bMaxPacketSize0 64
idVendor 0x0bda Realtek Semiconductor Corp.
idProduct 0x579f
bcdDevice 0.02
iManufacturer 3 11121119-000G824F6
iProduct 1 USB Camera
iSerial 2 200901010001
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 785
bNumInterfaces 2
bConfigurationValue 1
iConfiguration 4 USB Camera
bmAttributes 0x80
(Bus Powered)
MaxPower 500mA
Interface Association:
bLength 8
bDescriptorType 11
bFirstInterface 0
bInterfaceCount 2
bFunctionClass 14 Video
bFunctionSubClass 3 Video Interface Collection
bFunctionProtocol 0
iFunction 5 USB Camera
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 14 Video
bInterfaceSubClass 1 Video Control
bInterfaceProtocol 0
iInterface 5 USB Camera
VideoControl Interface Descriptor:
bLength 13
bDescriptorType 36
bDescriptorSubtype 1 (HEADER)
bcdUVC 1.00
wTotalLength 78
dwClockFrequency 15.000000MHz
bInCollection 1
baInterfaceNr( 0) 1
VideoControl Interface Descriptor:
bLength 18
bDescriptorType 36
bDescriptorSubtype 2 (INPUT_TERMINAL)
bTerminalID 1
wTerminalType 0x0201 Camera Sensor
bAssocTerminal 0
iTerminal 0
wObjectiveFocalLengthMin 0
wObjectiveFocalLengthMax 0
wOcularFocalLength 0
bControlSize 3
bmControls 0x00000004
Auto-Exposure Priority
VideoControl Interface Descriptor:
bLength 11
bDescriptorType 36
bDescriptorSubtype 5 (PROCESSING_UNIT)
Warning: Descriptor too short
bUnitID 2
bSourceID 1
wMaxMultiplier 0
bControlSize 2
bmControls 0x0000177f
Brightness
Contrast
Hue
Saturation
Sharpness
Gamma
White Balance Temperature
Backlight Compensation
Gain
Power Line Frequency
White Balance Temperature, Auto
iProcessing 0
bmVideoStandards 0x 9
None
SECAM - 625/50
VideoControl Interface Descriptor:
bLength 9
bDescriptorType 36
bDescriptorSubtype 3 (OUTPUT_TERMINAL)
bTerminalID 3
wTerminalType 0x0101 USB Streaming
bAssocTerminal 0
bSourceID 4
iTerminal 0
VideoControl Interface Descriptor:
bLength 27
bDescriptorType 36
bDescriptorSubtype 6 (EXTENSION_UNIT)
bUnitID 4
guidExtensionCode {8ca72912-b447-9440-b0ce-db07386fb938}
bNumControl 2
bNrPins 1
baSourceID( 0) 2
bControlSize 2
bmControls( 0) 0x00
bmControls( 1) 0x06
iExtension 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 6
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 14 Video
bInterfaceSubClass 2 Video Streaming
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 1
INTERFACE CLASS: 0f 24 01 02 8d 02 81 00 03 02 01 00 01 00 00
INTERFACE CLASS: 1b 24 04 01 08 59 55 59 32 00 00 10 00 80 00 00 aa 00 38 9b 71 10 01 00 00 00 00
INTERFACE CLASS: 22 24 05 01 00 80 02 e0 01 00 00 65 04 00 00 ca 08 00 60 09 00 15 16 05 00 02 15 16 05 00 2a 2c 0a 00
INTERFACE CLASS: 22 24 05 02 00 a0 00 78 00 00 50 46 00 00 a0 8c 00 00 96 00 00 15 16 05 00 02 15 16 05 00 2a 2c 0a 00
INTERFACE CLASS: 22 24 05 03 00 b0 00 90 00 00 d0 5c 00 00 a0 b9 00 00 c6 00 00 15 16 05 00 02 15 16 05 00 2a 2c 0a 00
INTERFACE CLASS: 22 24 05 04 00 40 01 f0 00 00 40 19 01 00 80 32 02 00 58 02 00 15 16 05 00 02 15 16 05 00 2a 2c 0a 00
INTERFACE CLASS: 22 24 05 05 00 00 05 d0 02 00 00 65 04 00 00 ca 08 00 20 1c 00 40 42 0f 00 02 40 42 0f 00 80 84 1e 00
INTERFACE CLASS: 22 24 05 06 00 00 05 20 03 00 00 e2 04 00 00 c4 09 00 40 1f 00 40 42 0f 00 02 40 42 0f 00 80 84 1e 00
INTERFACE CLASS: 1e 24 05 07 00 00 05 00 04 00 00 40 06 00 00 40 06 00 00 28 00 80 84 1e 00 01 80 84 1e 00
INTERFACE CLASS: 1e 24 05 08 00 80 07 38 04 00 40 e3 09 00 40 e3 09 00 48 3f 00 80 84 1e 00 01 80 84 1e 00
INTERFACE CLASS: 1a 24 03 00 05 80 02 e0 01 00 05 d0 02 00 05 20 03 00 04 00 03 80 07 38 04 00
INTERFACE CLASS: 06 24 0d 01 01 04
INTERFACE CLASS: 0b 24 06 02 08 01 01 00 00 00 00
INTERFACE CLASS: 22 24 07 01 00 80 02 e0 01 00 00 65 04 00 00 ca 08 00 60 09 00 15 16 05 00 02 15 16 05 00 2a 2c 0a 00
INTERFACE CLASS: 22 24 07 02 00 a0 00 78 00 00 50 46 00 00 a0 8c 00 00 96 00 00 15 16 05 00 02 15 16 05 00 2a 2c 0a 00
INTERFACE CLASS: 22 24 07 03 00 b0 00 90 00 00 d0 5c 00 00 a0 b9 00 00 c6 00 00 15 16 05 00 02 15 16 05 00 2a 2c 0a 00
INTERFACE CLASS: 22 24 07 04 00 40 01 f0 00 00 40 19 01 00 80 32 02 00 58 02 00 15 16 05 00 02 15 16 05 00 2a 2c 0a 00
INTERFACE CLASS: 22 24 07 05 00 00 05 d0 02 00 00 2f 0d 00 00 5e 1a 00 20 1c 00 15 16 05 00 02 15 16 05 00 2a 2c 0a 00
INTERFACE CLASS: 22 24 07 06 00 00 05 20 03 00 00 a6 0e 00 00 4c 1d 00 40 1f 00 15 16 05 00 02 15 16 05 00 2a 2c 0a 00
INTERFACE CLASS: 22 24 07 07 00 00 05 00 04 00 00 c0 12 00 00 80 25 00 00 28 00 15 16 05 00 02 15 16 05 00 2a 2c 0a 00
INTERFACE CLASS: 22 24 07 08 00 80 07 38 04 00 c0 a9 1d 00 80 53 3b 00 48 3f 00 15 16 05 00 02 15 16 05 00 2a 2c 0a 00
INTERFACE CLASS: 1a 24 03 00 05 80 02 e0 01 00 05 d0 02 00 05 20 03 00 04 00 03 80 07 38 04 00
INTERFACE CLASS: 06 24 0d 01 01 04
Binary Object Store Descriptor:
bLength 5
bDescriptorType 15
wTotalLength 12
bNumDeviceCaps 1
USB 2.0 Extension Device Capability:
bLength 7
bDescriptorType 16
bDevCapabilityType 2
bmAttributes 0x00000006
Link Power Management (LPM) Supported
Device Status: 0x0000
(Bus Powered)
$ luvcview -L
luvcview 0.2.6
SDL information:
Video driver: x11
A window manager is available
Device information:
Device path: /dev/video0
{ pixelformat = 'YUYV', description = 'YUV 4:2:2 (YUYV)' }
{ discrete: width = 640, height = 480 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 160, height = 120 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 176, height = 144 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 320, height = 240 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1280, height = 720 }
Time interval between frame: 1/10, 1/5,
{ discrete: width = 1280, height = 800 }
Time interval between frame: 1/10, 1/5,
{ discrete: width = 1280, height = 1024 }
Time interval between frame: 1/5,
{ discrete: width = 1920, height = 1080 }
Time interval between frame: 1/5,
{ pixelformat = 'MJPG', description = 'MJPEG' }
{ discrete: width = 640, height = 480 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 160, height = 120 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 176, height = 144 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 320, height = 240 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1280, height = 720 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1280, height = 800 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1280, height = 1024 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1920, height = 1080 }
Time interval between frame: 1/30, 1/15,
{ pixelformat = 'RGB3', description = 'RGB3' }
{ discrete: width = 640, height = 480 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 160, height = 120 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 176, height = 144 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 320, height = 240 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1280, height = 720 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1280, height = 800 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1280, height = 1024 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1920, height = 1080 }
Time interval between frame: 1/30, 1/15,
{ pixelformat = 'BGR3', description = 'BGR3' }
{ discrete: width = 640, height = 480 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 160, height = 120 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 176, height = 144 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 320, height = 240 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1280, height = 720 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1280, height = 800 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1280, height = 1024 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1920, height = 1080 }
Time interval between frame: 1/30, 1/15,
{ pixelformat = 'YU12', description = 'YU12' }
{ discrete: width = 640, height = 480 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 160, height = 120 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 176, height = 144 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 320, height = 240 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1280, height = 720 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1280, height = 800 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1280, height = 1024 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1920, height = 1080 }
Time interval between frame: 1/30, 1/15,
{ pixelformat = 'YV12', description = 'YV12' }
{ discrete: width = 640, height = 480 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 160, height = 120 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 176, height = 144 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 320, height = 240 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1280, height = 720 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1280, height = 800 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1280, height = 1024 }
Time interval between frame: 1/30, 1/15,
{ discrete: width = 1920, height = 1080 }
Time interval between frame: 1/30, 1/15,