linux-media.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: NTSC/PAL resolution support for "EasyCap" device
       [not found] <1464691129.3878.59.camel@hadess.net>
@ 2016-06-02 22:37 ` Laurent Pinchart
  2016-06-03 10:53   ` Bastien Nocera
  0 siblings, 1 reply; 4+ messages in thread
From: Laurent Pinchart @ 2016-06-02 22:37 UTC (permalink / raw)
  To: Bastien Nocera; +Cc: linux-media

Hi Bastien,

(CC'ing the linux-media mailing list)

On Tuesday 31 May 2016 12:38:49 Bastien Nocera wrote:
> Hey,
> 
> I saw your commits to add quirks for Arkmicro "webcams". I recently
> bought a dirt cheap "EasyCap" device on eBay, but it only seems to
> support 640x480 instead of the native "NRSC" resolution as mentioned on
> the device's box.
> 
> $ v4l2-ctl --list-formats-ext -d /dev/video0 
> ioctl: VIDIOC_ENUM_FMT
> 	Index       : 0
> 	Type        : Video Capture
> 	Pixel Format: 'MJPG' (compressed)
> 	Name        : Motion-JPEG
> 		Size: Discrete 640x480
> 			Interval: Discrete 0.017s (60.000 fps)
> 			Interval: Discrete 0.033s (30.000 fps)
> 			Interval: Discrete 0.067s (15.000 fps)
> 			Interval: Discrete 0.200s (5.000 fps)
> 		Size: Discrete 352x288
> 			Interval: Discrete 0.017s (60.000 fps)
> 			Interval: Discrete 0.033s (30.000 fps)
> 			Interval: Discrete 0.067s (15.000 fps)
> 			Interval: Discrete 0.200s (5.000 fps)
> 
> Device is:
> Bus 003 Device 066: ID 18ec:5850 Arkmicro Technologies Inc. 
> 
> In your professional opinion, should I try using UVC_QUIRK_PROBE_DEF
> or UVC_QUIRK_PROBE_MINMAX as a quirk for this device? Is there a stand-
> alone driver somewhere that I can use for testing (rather than
> recompiling a whole kernel)?

Those quirks will not affect the available resolutions.

UVC devices expose a list of resolutions they support through the USB 
descriptors, and the uvcvideo device merely uses that list to expose supported 
resolutions to userspace.

If the device doesn't expose resolutions other than the above two, the box 
could be lying, or the device could use non-standard extensions to UVC to 
support additional resolutions. The first step would be to try the camera in a 
Windows machine to see if additional resolutions are available (without 
installing any additional device-specific software).

> Let me know if you prefer that I send this to the media list.

Done :-)

-- 
Regards,

Laurent Pinchart


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: NTSC/PAL resolution support for "EasyCap" device
  2016-06-02 22:37 ` NTSC/PAL resolution support for "EasyCap" device Laurent Pinchart
@ 2016-06-03 10:53   ` Bastien Nocera
  2016-06-03 11:08     ` Laurent Pinchart
  0 siblings, 1 reply; 4+ messages in thread
From: Bastien Nocera @ 2016-06-03 10:53 UTC (permalink / raw)
  To: Laurent Pinchart; +Cc: linux-media

On Fri, 2016-06-03 at 01:37 +0300, Laurent Pinchart wrote:
> Hi Bastien,
> 
> (CC'ing the linux-media mailing list)
> 
> On Tuesday 31 May 2016 12:38:49 Bastien Nocera wrote:
> > Hey,
> > 
> > I saw your commits to add quirks for Arkmicro "webcams". I recently
> > bought a dirt cheap "EasyCap" device on eBay, but it only seems to
> > support 640x480 instead of the native "NRSC" resolution as
> > mentioned on
> > the device's box.
> > 
> > $ v4l2-ctl --list-formats-ext -d /dev/video0 
> > ioctl: VIDIOC_ENUM_FMT
> > 	Index       : 0
> > 	Type        : Video Capture
> > 	Pixel Format: 'MJPG' (compressed)
> > 	Name        : Motion-JPEG
> > 		Size: Discrete 640x480
> > 			Interval: Discrete 0.017s (60.000 fps)
> > 			Interval: Discrete 0.033s (30.000 fps)
> > 			Interval: Discrete 0.067s (15.000 fps)
> > 			Interval: Discrete 0.200s (5.000 fps)
> > 		Size: Discrete 352x288
> > 			Interval: Discrete 0.017s (60.000 fps)
> > 			Interval: Discrete 0.033s (30.000 fps)
> > 			Interval: Discrete 0.067s (15.000 fps)
> > 			Interval: Discrete 0.200s (5.000 fps)
> > 
> > Device is:
> > Bus 003 Device 066: ID 18ec:5850 Arkmicro Technologies Inc. 
> > 
> > In your professional opinion, should I try using
> > UVC_QUIRK_PROBE_DEF
> > or UVC_QUIRK_PROBE_MINMAX as a quirk for this device? Is there a
> > stand-
> > alone driver somewhere that I can use for testing (rather than
> > recompiling a whole kernel)?
> 
> Those quirks will not affect the available resolutions.

OK. I also made my own testing tree to copy/paste those devices.

> UVC devices expose a list of resolutions they support through the USB 
> descriptors, and the uvcvideo device merely uses that list to expose supported 
> resolutions to userspace.

Full lsusb below.

> If the device doesn't expose resolutions other than the above two, the box 
> could be lying, or the device could use non-standard extensions to UVC to 
> support additional resolutions. The first step would be to try the camera in a 
> Windows machine to see if additional resolutions are available (without 
> installing any additional device-specific software).

I should be able to find a Windows somewhere, but which application
should I use to see if those resolutions are indeed available?

BTW, given the price of the device, I'd be fine getting one for you to
test (6€ from eBay, shipping included).

> > Let me know if you prefer that I send this to the media list.
> 
> Done :-)

Bus 003 Device 009: ID 18ec:5850 Arkmicro Technologies Inc. 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass          239 Miscellaneous Device
  bDeviceSubClass         2 
  bDeviceProtocol         1 Interface Association
  bMaxPacketSize0        64
  idVendor           0x18ec Arkmicro Technologies Inc.
  idProduct          0x5850 
  bcdDevice            1.00
  iManufacturer           1 ARKMICRO
  iProduct                2 USB2.0 PC CAMERA
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          516
    bNumInterfaces          4
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              200mA
    Interface Association:
      bLength                 8
      bDescriptorType        11
      bFirstInterface         0
      bInterfaceCount         2
      bFunctionClass         14 Video
      bFunctionSubClass       3 Video Interface Collection
      bFunctionProtocol       0 
      iFunction               0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass        14 Video
      bInterfaceSubClass      1 Video Control
      bInterfaceProtocol      0 
      iInterface              0 
      VideoControl Interface Descriptor:
        bLength                13
        bDescriptorType        36
        bDescriptorSubtype      1 (HEADER)
        bcdUVC               1.00
        wTotalLength           51
        dwClockFrequency       48.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           0x00000000
      VideoControl Interface Descriptor:
        bLength                11
        bDescriptorType        36
        bDescriptorSubtype      5 (PROCESSING_UNIT)
      Warning: Descriptor too short
        bUnitID                 2
        bSourceID               1
        wMaxMultiplier          0
        bControlSize            2
        bmControls     0x0000063f
          Brightness
          Contrast
          Hue
          Saturation
          Sharpness
          Gamma
          Gain
          Power Line Frequency
        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               2
        iTerminal               0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0010  1x 16 bytes
        bInterval              10
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass        14 Video
      bInterfaceSubClass      2 Video Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      VideoStreaming Interface Descriptor:
        bLength                            14
        bDescriptorType                    36
        bDescriptorSubtype                  1 (INPUT_HEADER)
        bNumFormats                         1
        wTotalLength                      133
        bEndPointAddress                  131
        bmInfo                              0
        bTerminalLink                       3
        bStillCaptureMethod                 2
        bTriggerSupport                     1
        bTriggerUsage                       0
        bControlSize                        1
        bmaControls( 0)                    11
      VideoStreaming Interface Descriptor:
        bLength                            11
        bDescriptorType                    36
        bDescriptorSubtype                  6 (FORMAT_MJPEG)
        bFormatIndex                        1
        bNumFrameDescriptors                2
        bFlags                              1
          Fixed-size samples: Yes
        bDefaultFrameIndex                  1
        bAspectRatioX                       0
        bAspectRatioY                       0
        bmInterlaceFlags                 0x00
          Interlaced stream or variable: No
          Fields per frame: 1 fields
          Field 1 first: No
          Field pattern: Field 1 only
          bCopyProtect                      0
      VideoStreaming Interface Descriptor:
        bLength                            42
        bDescriptorType                    36
        bDescriptorSubtype                  7 (FRAME_MJPEG)
        bFrameIndex                         1
        bmCapabilities                   0x00
          Still image unsupported
        wWidth                            640
        wHeight                           480
        dwMinBitRate                   128000
        dwMaxBitRate                 11059200
        dwMaxVideoFrameBufferSize      614400
        dwDefaultFrameInterval         333333
        bFrameIntervalType                  4
        dwFrameInterval( 0)            166666
        dwFrameInterval( 1)            333333
        dwFrameInterval( 2)            666666
        dwFrameInterval( 3)           2000000
      VideoStreaming Interface Descriptor:
        bLength                            42
        bDescriptorType                    36
        bDescriptorSubtype                  7 (FRAME_MJPEG)
        bFrameIndex                         2
        bmCapabilities                   0x00
          Still image unsupported
        wWidth                            352
        wHeight                           288
        dwMinBitRate                   128000
        dwMaxBitRate                 11059200
        dwMaxVideoFrameBufferSize      202752
        dwDefaultFrameInterval         333333
        bFrameIntervalType                  4
        dwFrameInterval( 0)            166666
        dwFrameInterval( 1)            333333
        dwFrameInterval( 2)            666666
        dwFrameInterval( 3)           2000000
      VideoStreaming Interface Descriptor:
        bLength                            18
        bDescriptorType                    36
        bDescriptorSubtype                  3 (STILL_IMAGE_FRAME)
        bEndpointAddress                    0
        bNumImageSizePatterns               2
        wWidth( 0)                        640
        wHeight( 0)                       480
        wWidth( 1)                        352
        wHeight( 1)                       288
        bNumCompressionPatterns             2
        bCompression( 0)                    1
        bCompression( 1)                    2
        bCompression( 2)                    5
        bCompression( 3)                   14
      VideoStreaming Interface Descriptor:
        bLength                             6
        bDescriptorType                    36
        bDescriptorSubtype                 13 (COLORFORMAT)
        bColorPrimaries                     0 (Unspecified)
        bTransferCharacteristics            0 (Unspecified)
        bMatrixCoefficients                 0 (Unspecified)
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass        14 Video
      bInterfaceSubClass      2 Video Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x00c0  1x 192 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       2
      bNumEndpoints           1
      bInterfaceClass        14 Video
      bInterfaceSubClass      2 Video Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x0180  1x 384 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       3
      bNumEndpoints           1
      bInterfaceClass        14 Video
      bInterfaceSubClass      2 Video Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       4
      bNumEndpoints           1
      bInterfaceClass        14 Video
      bInterfaceSubClass      2 Video Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x0280  1x 640 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       5
      bNumEndpoints           1
      bInterfaceClass        14 Video
      bInterfaceSubClass      2 Video Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x0320  1x 800 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       6
      bNumEndpoints           1
      bInterfaceClass        14 Video
      bInterfaceSubClass      2 Video Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x03c0  1x 960 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       7
      bNumEndpoints           1
      bInterfaceClass        14 Video
      bInterfaceSubClass      2 Video Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x0a80  2x 640 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       8
      bNumEndpoints           1
      bInterfaceClass        14 Video
      bInterfaceSubClass      2 Video Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x0b20  2x 800 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       9
      bNumEndpoints           1
      bInterfaceClass        14 Video
      bInterfaceSubClass      2 Video Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x0be0  2x 992 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting      10
      bNumEndpoints           1
      bInterfaceClass        14 Video
      bInterfaceSubClass      2 Video Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x1380  3x 896 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting      11
      bNumEndpoints           1
      bInterfaceClass        14 Video
      bInterfaceSubClass      2 Video Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x13e8  3x 1000 bytes
        bInterval               1
    Interface Association:
      bLength                 8
      bDescriptorType        11
      bFirstInterface         2
      bInterfaceCount         2
      bFunctionClass          1 Audio
      bFunctionSubClass       1 Control Device
      bFunctionProtocol       0 
      iFunction               4 USB2.0 MIC
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      1 Control Device
      bInterfaceProtocol      0 
      iInterface              4 USB2.0 MIC
      AudioControl Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      1 (HEADER)
        bcdADC               1.00
        wTotalLength           40
        bInCollection           1
        baInterfaceNr( 0)       3
      AudioControl Interface Descriptor:
        bLength                12
        bDescriptorType        36
        bDescriptorSubtype      2 (INPUT_TERMINAL)
        bTerminalID             1
        wTerminalType      0x0201 Microphone
        bAssocTerminal          0
        bNrChannels             2
        wChannelConfig     0x0003
          Left Front (L)
          Right Front (R)
        iChannelNames           0 
        iTerminal               0 
      AudioControl Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      3 (OUTPUT_TERMINAL)
        bTerminalID             3
        wTerminalType      0x0101 USB Streaming
        bAssocTerminal          0
        bSourceID               2
        iTerminal               0 
      AudioControl Interface Descriptor:
        bLength                10
        bDescriptorType        36
        bDescriptorSubtype      6 (FEATURE_UNIT)
        bUnitID                 2
        bSourceID               1
        bControlSize            1
        bmaControls( 0)      0x00
        bmaControls( 1)      0x03
          Mute Control
          Volume Control
        bmaControls( 2)      0x03
          Mute Control
          Volume Control
        iFeature                0 
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              4 USB2.0 MIC
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass         1 Audio
      bInterfaceSubClass      2 Streaming
      bInterfaceProtocol      0 
      iInterface              4 USB2.0 MIC
      AudioStreaming Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (AS_GENERAL)
        bTerminalLink           3
        bDelay                  1 frames
        wFormatTag              1 PCM
      AudioStreaming Interface Descriptor:
        bLength                11
        bDescriptorType        36
        bDescriptorSubtype      2 (FORMAT_TYPE)
        bFormatType             1 (FORMAT_TYPE_I)
        bNrChannels             1
        bSubframeSize           2
        bBitResolution         16
        bSamFreqType            1 Discrete
        tSamFreq[ 0]        48000
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x0060  1x 96 bytes
        bInterval               4
        bRefresh                0
        bSynchAddress           0
        AudioControl Endpoint Descriptor:
          bLength                 7
          bDescriptorType        37
          bDescriptorSubtype      1 (EP_GENERAL)
          bmAttributes         0x01
            Sampling Frequency
          bLockDelayUnits         0 Undefined
          wLockDelay              0 Undefined
Device Qualifier (for other device speed):
  bLength                10
  bDescriptorType         6
  bcdUSB               2.00
  bDeviceClass          239 Miscellaneous Device
  bDeviceSubClass         2 
  bDeviceProtocol         1 Interface Association
  bMaxPacketSize0        64
  bNumConfigurations      1
can't get debug descriptor: Resource temporarily unavailable
Device Status:     0x0000

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: NTSC/PAL resolution support for "EasyCap" device
  2016-06-03 10:53   ` Bastien Nocera
@ 2016-06-03 11:08     ` Laurent Pinchart
  2016-06-03 11:35       ` Bastien Nocera
  0 siblings, 1 reply; 4+ messages in thread
From: Laurent Pinchart @ 2016-06-03 11:08 UTC (permalink / raw)
  To: Bastien Nocera; +Cc: linux-media

Hi Bastien,

On Friday 03 Jun 2016 12:53:31 Bastien Nocera wrote:
> On Fri, 2016-06-03 at 01:37 +0300, Laurent Pinchart wrote:
> > On Tuesday 31 May 2016 12:38:49 Bastien Nocera wrote:
> >> Hey,
> >> 
> >> I saw your commits to add quirks for Arkmicro "webcams". I recently
> >> bought a dirt cheap "EasyCap" device on eBay, but it only seems to
> >> support 640x480 instead of the native "NRSC" resolution as
> >> mentioned on the device's box.
> >> 
> >> $ v4l2-ctl --list-formats-ext -d /dev/video0 
> >> ioctl: VIDIOC_ENUM_FMT
> >> 
> >> 	Index       : 0
> >> 	Type        : Video Capture
> >> 	Pixel Format: 'MJPG' (compressed)
> >> 	Name        : Motion-JPEG
> >> 	
> >> 		Size: Discrete 640x480
> >> 		
> >> 			Interval: Discrete 0.017s (60.000 fps)
> >> 			Interval: Discrete 0.033s (30.000 fps)
> >> 			Interval: Discrete 0.067s (15.000 fps)
> >> 			Interval: Discrete 0.200s (5.000 fps)
> >> 		
> >> 		Size: Discrete 352x288
> >> 		
> >> 			Interval: Discrete 0.017s (60.000 fps)
> >> 			Interval: Discrete 0.033s (30.000 fps)
> >> 			Interval: Discrete 0.067s (15.000 fps)
> >> 			Interval: Discrete 0.200s (5.000 fps)
> >> 
> >> Device is:
> >> Bus 003 Device 066: ID 18ec:5850 Arkmicro Technologies Inc. 
> >> 
> >> In your professional opinion, should I try using
> >> UVC_QUIRK_PROBE_DEF or UVC_QUIRK_PROBE_MINMAX as a quirk for this device?
> >> Is there a stand-alone driver somewhere that I can use for testing
> >> (rather than recompiling a whole kernel)?
> > 
> > Those quirks will not affect the available resolutions.
> 
> OK. I also made my own testing tree to copy/paste those devices.
> 
> > UVC devices expose a list of resolutions they support through the USB 
> > descriptors, and the uvcvideo device merely uses that list to expose
> > supported  resolutions to userspace.
> 
> Full lsusb below.

Thanks. The device only advertises two resolutions, 640x480 and 352x288.

> > If the device doesn't expose resolutions other than the above two, the
> > box could be lying, or the device could use non-standard extensions to UVC
> > to support additional resolutions. The first step would be to try the
> > camera in a  Windows machine to see if additional resolutions are
> > available (without installing any additional device-specific software).
> 
> I should be able to find a Windows somewhere, but which application
> should I use to see if those resolutions are indeed available?

My (lack of) Windows knowledge doesn't allow me to answer that question, but 
I'm sure searching online will give you answers.

> BTW, given the price of the device, I'd be fine getting one for you to
> test (6€ from eBay, shipping included).

Thanks, but I'm already overwhelmed with work, I'd rather have you performing 
the tests. Beside, I have no Windows machine :-)

-- 
Regards,

Laurent Pinchart


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: NTSC/PAL resolution support for "EasyCap" device
  2016-06-03 11:08     ` Laurent Pinchart
@ 2016-06-03 11:35       ` Bastien Nocera
  0 siblings, 0 replies; 4+ messages in thread
From: Bastien Nocera @ 2016-06-03 11:35 UTC (permalink / raw)
  To: Laurent Pinchart; +Cc: linux-media

On Fri, 2016-06-03 at 14:08 +0300, Laurent Pinchart wrote:
> 
<snip>
> > Full lsusb below.
> 
> Thanks. The device only advertises two resolutions, 640x480 and
> 352x288.

As I read.

> > > If the device doesn't expose resolutions other than the above
> > > two, the
> > > box could be lying, or the device could use non-standard
> > > extensions to UVC
> > > to support additional resolutions. The first step would be to try
> > > the
> > > camera in a  Windows machine to see if additional resolutions are
> > > available (without installing any additional device-specific
> > > software).
> > 
> > I should be able to find a Windows somewhere, but which application
> > should I use to see if those resolutions are indeed available?
> 
> My (lack of) Windows knowledge doesn't allow me to answer that
> question, but 
> I'm sure searching online will give you answers.

"AMCap" seems to be the simplest software for that purpose, and it only
shows "640x480".

> > BTW, given the price of the device, I'd be fine getting one for you
> > to
> > test (6€ from eBay, shipping included).
> 
> Thanks, but I'm already overwhelmed with work, I'd rather have you
> performing 
> the tests. Beside, I have no Windows machine :-)

I've started the process of yelling at the vendor.

Cheers

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2016-06-03 11:35 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <1464691129.3878.59.camel@hadess.net>
2016-06-02 22:37 ` NTSC/PAL resolution support for "EasyCap" device Laurent Pinchart
2016-06-03 10:53   ` Bastien Nocera
2016-06-03 11:08     ` Laurent Pinchart
2016-06-03 11:35       ` Bastien Nocera

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).